Boot script for imx53 for different display modules

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Boot script for imx53 for different display modules

Jump to solution
1,790 Views
visakh
Contributor III

Hi,

My mx53 based board having HDMI,VGA and TV-OUT connectors. I am able to output through all the UI with different boot args. Is there any thing like IMX-6 as detecting  the cable and configuring the bootargs . ie in a restart bootargs should set automatic according as per the display connected. Need immediate response.

Labels (2)
0 Kudos
1 Solution
1,145 Views
weidong_sun
NXP TechSupport
NXP TechSupport


Ok,SV,

     For your another questions:

Also I would like to ask one more doubt to you. My board is having LTC3589 using PMIC, so if we are modifying the 10.4 build for smd , will it have any problem with HDMI power/I2C etc?(as smd uses da9053).

My answer:

At first , don't change smd source code directly, please add a new device for your android system. let me assume your project name is "auto", then your board name is imx53_auto. please follow these steps and try :

(1)Make a new directory for your board.

Entering "myandroid/device/fsl",and make a new directory: mkdir imx53_auto

(2)Copy all files in "myandroid/device/fsl/imx53_smd" to your new directory.

#cd imx53_auto

#cp ../imx53_smd/* ./

(3)Open BoardConfig.mk and modify board name

TARGET_BOOTLOADER_BOARD_NAME := AUTO

(4)Add a .mk file

Use gedit to Open 'myandroid/fsl/imx5x/imx53_smd.mk' , save it as "imx53_auto.mk", and modify like this :

PRODUCT_NAME := imx53_auto
PRODUCT_DEVICE := imx53_auto

PRODUCT_COPY_FILES += \
device/fsl/imx53_auto/required_hardware.xml:system/etc/permissions/required_hardware.xml \
device/fsl/imx53_auto/init.rc:root/init.freescale.rc \
        device/fsl/imx53_auto/vold.fstab:system/etc/vold.fstab \
device/fsl/imx53_auto/gpsreset.sh:system/etc/gpsreset.sh

(5)Open myandroid/device/fsl/imx5x/AndroidProduct.mk , and add your product .

add one line : $(LOCAL_DIR)/imx53_auto.mk

(6)Open 'myandroid/device/fsl/imx5x/vendorsetup.sh',and your product.

...

add_lunch_combo imx53_auto-eng

add_lunch_combo imx53_auto-user

(7)Compile android file system for your board.

in myandroid directory:

#export CROSS_COMPILE=~/myandroid/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-

#source build/envsetup.sh

#lunch imx53_auto-eng (note : or lunch imx53_auto-usr)

#make

Note : when you configure linux kenerl, you should select LTC3589, not DA9053, at same time, you had better create a new BSP file(such as mx53_auto.c) for your board by referring to mx53_smd.c and mx53_ard.c. I don't recommend you change EVK source code directly, because modifying directly maybe make your system in disorder.

    The above is only my personal experience ,just as you are designing a new EVK board based on i.MX53 for Freescale . :smileyhappy:

     you can do any modification on your own source code if you find some problem or don't match with your hardware.

      Just for your reference !

Regards,

Weidong

View solution in original post

0 Kudos
7 Replies
1,145 Views
weidong_sun
NXP TechSupport
NXP TechSupport

(1)HDMI On I.MX6:

HDMI is supported by i.mx6 SOC, due to HPD and CEC signanls on HDMI connector, HDMI driver can detect hot plug.

(2)VGA and TVOUT:

There is no analog video display inferface on i.mx6, So you will have to extend one, for example , attaching a RGB24 to DISP0 port and converting parallel digital video to analog RGB or CVBS output. as a reference, you can evaluate ch7026 which is manufactured by chrontel.

Regards,

Weidong

0 Kudos
1,145 Views
visakh
Contributor III

Dear Weldong Sun,

Thank you so much for the interest in topic and reply. Please note I need to work this dynamic switching of displays in Imx53 only. I am using customized imx53 board as I knew it that there are no TVE in Imx6.

So please guide me towards how can I enable all the displays in  same time. I can explain you the the current status and what i needed.

1. My board having all the 3 display possibilities 1.HDMI 2.VGA 3.TV-OUT

2. I drove all these displays with different bootargs.

3. What i wish is i can change the displays while the cable plugging in/detecting the cable, some thing like our personal computer does OR not exactly as all the displays in same time.

I will be great-full for the  swift and accurate response from you, and waiting for the same.

visakh.SV

0 Kudos
1,145 Views
weidong_sun
NXP TechSupport
NXP TechSupport

(1)By setting VGA to be primary in u-boot, anytime hot plug HDMI, display on HDMI should be OK.

(2)VGA and CVBS out are muxed on TVE PADs, So It is not easy to realize it.

0 Kudos
1,145 Views
visakh
Contributor III

Hi Sun,

how we can set VGA to primary in uboot, is it through simply boot args?. Did we need any other modification uboot boot-loader.? I am referring and modified the 10.4 build

Also I would like to ask one more doubt to you. My board is having LTC3589 using PMIC, so if we are modifying the 10.4 build for smd , will it have any problem with HDMI power/I2C etc?(as smd uses da9053).

0 Kudos
1,146 Views
weidong_sun
NXP TechSupport
NXP TechSupport


Ok,SV,

     For your another questions:

Also I would like to ask one more doubt to you. My board is having LTC3589 using PMIC, so if we are modifying the 10.4 build for smd , will it have any problem with HDMI power/I2C etc?(as smd uses da9053).

My answer:

At first , don't change smd source code directly, please add a new device for your android system. let me assume your project name is "auto", then your board name is imx53_auto. please follow these steps and try :

(1)Make a new directory for your board.

Entering "myandroid/device/fsl",and make a new directory: mkdir imx53_auto

(2)Copy all files in "myandroid/device/fsl/imx53_smd" to your new directory.

#cd imx53_auto

#cp ../imx53_smd/* ./

(3)Open BoardConfig.mk and modify board name

TARGET_BOOTLOADER_BOARD_NAME := AUTO

(4)Add a .mk file

Use gedit to Open 'myandroid/fsl/imx5x/imx53_smd.mk' , save it as "imx53_auto.mk", and modify like this :

PRODUCT_NAME := imx53_auto
PRODUCT_DEVICE := imx53_auto

PRODUCT_COPY_FILES += \
device/fsl/imx53_auto/required_hardware.xml:system/etc/permissions/required_hardware.xml \
device/fsl/imx53_auto/init.rc:root/init.freescale.rc \
        device/fsl/imx53_auto/vold.fstab:system/etc/vold.fstab \
device/fsl/imx53_auto/gpsreset.sh:system/etc/gpsreset.sh

(5)Open myandroid/device/fsl/imx5x/AndroidProduct.mk , and add your product .

add one line : $(LOCAL_DIR)/imx53_auto.mk

(6)Open 'myandroid/device/fsl/imx5x/vendorsetup.sh',and your product.

...

add_lunch_combo imx53_auto-eng

add_lunch_combo imx53_auto-user

(7)Compile android file system for your board.

in myandroid directory:

#export CROSS_COMPILE=~/myandroid/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-

#source build/envsetup.sh

#lunch imx53_auto-eng (note : or lunch imx53_auto-usr)

#make

Note : when you configure linux kenerl, you should select LTC3589, not DA9053, at same time, you had better create a new BSP file(such as mx53_auto.c) for your board by referring to mx53_smd.c and mx53_ard.c. I don't recommend you change EVK source code directly, because modifying directly maybe make your system in disorder.

    The above is only my personal experience ,just as you are designing a new EVK board based on i.MX53 for Freescale . :smileyhappy:

     you can do any modification on your own source code if you find some problem or don't match with your hardware.

      Just for your reference !

Regards,

Weidong

0 Kudos
1,145 Views
fabio_estevam
NXP Employee
NXP Employee

From the mx53 quick start boar Linux Release Notes:

"video=mxcdi1fb:GBR24,VGA-XGA di1_primary vga"

1,145 Views
weidong_sun
NXP TechSupport
NXP TechSupport

From Reference manual of MCIMX53, see page 4534:

Some natural limitations exist for CD operation. It is impossible to differentiate the

mixed CVBS/S-video, the component YPrPb and the component RGB connections

because in all these three cases a three-wire cable is used. So for these cases the software

should set a default option or allow user choosing the interface type.

So we can't do the detection between VGA and TV_OUT.

0 Kudos