Yong Chang

Linaro ICS on MX53 QSB with 10.1 LVDS

Discussion created by Yong Chang on Apr 28, 2012
Latest reply on Aug 26, 2012 by Prashant Dalmia

Hi all,

 

For a couple of days, I have tried to make this work but no luck so far.

I have a MX53 QSB with 10.1 LVDS, and want to put ICS on it.

 

First, I built the Linaro 12.04 and flash it on Sa D card. The boot log message says,

 

[    0.997472] mxc_sdc_fb mxc_sdc_fb.0: register mxc display driver hdmi

[    1.034704] sii902x 1-0039: cound not find device

[    1.039101] mxc_sdc_fb mxc_sdc_fb.0: register mxc display driver failed with -22

[    1.039221] mxc_sdc_fb: probe of mxc_sdc_fb.0 failed with error -22

[    1.039350] mxc_sdc_fb mxc_sdc_fb.1: register mxc display driver vga

[    1.039693] _regulator_get: get() with no identifier

[    1.041684] imx-ipuv3 imx-ipuv3.0: Channel already disabled 9

[    1.041715] imx-ipuv3 imx-ipuv3.0: Channel already uninitialized 9

[    1.073733] imx-ipuv3 imx-ipuv3.0: IPU DMFC DP HIGH RESOLUTION: 1(0,1), 5B(2~5), 5F(6,7)

[    1.130436] Console: switching to colour frame buffer device 128x48

[    1.137100] imx-ipuv3 imx-ipuv3.0: Channel already disabled 10

[    1.137132] imx-ipuv3 imx-ipuv3.0: Channel already uninitialized 10

 

So,  I connected a VGA cable of a monitor to the QSB, and I got a ICS homescreen!

After I explored the source tree, I've changed:

 

/linaro_12.04/kernel/arch/arm/mach-mx5/board-mx53_loco.c

 

from:

static struct ipuv3_fb_platform_data loco_fb_data[] = {

{  

.disp_dev = "hdmi",  

.interface_pix_fmt = IPU_PIX_FMT_RGB24,  

.mode_str = "1920x1080M@60",  

.default_bpp = 16,  

.int_clk = false,  

},

{  

.disp_dev = "vga",  

.interface_pix_fmt = IPU_PIX_FMT_GBR24,  

.mode_str = "VGA-XGA",  

.default_bpp = 16,  

.int_clk = false,  

},

};

 

to:

static struct ipuv3_fb_platform_data loco_fb_data[] = {

.disp_dev = "ldb", 

.interface_pix_fmt = IPU_PIX_FMT_LVDS666, 

.mode_str = "LDB-XGA", 

.default_bpp = 16, 

.int_clk = false, 

},

.disp_dev = "vga", 

.interface_pix_fmt = IPU_PIX_FMT_GBR24, 

.mode_str = "VGA-XGA", 

.default_bpp = 16, 

.int_clk = false, 

},

};

 

FYI, this change is based on the following:

 

linaro_12.04/kernel/drivers/video/mxc/ldb.c

 

static struct fb_videomode ldb_modedb[] = {  

{  

"LDB-XGA", 60, 1024, 768, 15385,  

220, 40,  

21, 7,  

60, 10,  

0,  

FB_VMODE_NONINTERLACED,  

FB_MODE_IS_DETAILED,},  

{  

"LDB-1080P60", 60, 1920, 1080, 7692,  

100, 40,  

30, 3,  

10, 2,  

0,  

FB_VMODE_NONINTERLACED,  

FB_MODE_IS_DETAILED,},

};

 

 

Now I got the message that loading driver is successful;

 

[    0.987209] mxc_sdc_fb mxc_sdc_fb.0: register mxc display driver ldb

[    0.987432] _regulator_get: get() with no identifier

[    0.988918] imx-ipuv3 imx-ipuv3.0: Channel already disabled 9

[    0.988948] imx-ipuv3 imx-ipuv3.0: Channel already uninitialized 9

[    1.023814] imx-ipuv3 imx-ipuv3.0: IPU DMFC DP HIGH RESOLUTION: 1(0,1), 5B(2~5), 5F(6,7)

[    1.080494] Console: switching to colour frame buffer device 128x48

[    1.087180] imx-ipuv3 imx-ipuv3.0: Channel already disabled 10

[    1.087211] imx-ipuv3 imx-ipuv3.0: Channel already uninitialized 10

[    1.090924] mxc_sdc_fb mxc_sdc_fb.1: register mxc display driver vga

[    1.091256] _regulator_get: get() with no identifier

[    1.092121] imx-ipuv3 imx-ipuv3.0: Channel already disabled 7

[    1.092153] imx-ipuv3 imx-ipuv3.0: Channel already uninitialized 7

 

I also changed the bootargs by modifying 'linaro-image-tools' as follows:

video=mxcfb0:dev=ldb,ldb=sin0,if=LVDS666

 

But nothing shows up on the LVDS LCD.

 

On the second try, I modified '.int_clk=false' to '.int_clk=true', and I have these messages:

 

[    0.968804] mxc_sdc_fb mxc_sdc_fb.0: register mxc display driver ldb

[    0.969013] _regulator_get: get() with no identifier

[    0.969378] mxc_sdc_fb mxc_sdc_fb.1: register mxc display driver vga

[    0.969668] _regulator_get: get() with no identifier

 

and keep getting 'untracked pid' messages as well

 

[    4.488186] EXT4-fs (mmcblk0p3): mounted filesystem with ordered data mode. Opts: (null)

[    4.800121] EXT4-fs (mmcblk0p5): recovery complete

[    4.890774] EXT4-fs (mmcblk0p5): mounted filesystem with ordered data mode. Opts: (null)

[    5.307198] EXT4-fs (mmcblk0p6): recovery complete

[    5.316018] EXT4-fs (mmcblk0p6): mounted filesystem with ordered data mode. Opts: (null)

[    5.653836] init: cannot find '/system/etc/install-recovery.sh', disabling 'flash_recovery'

[    6.270619] warning: `rild' uses 32-bit capabilities (legacy support in use)

[    8.210851] init: untracked pid 978 exited

[   11.077496] init: untracked pid 1037 exited

[   15.968755] init: untracked pid 1047 exited

[   21.815889] init: untracked pid 1051 exited

[   26.238424] init: untracked pid 1056 exited

[   30.655908] init: untracked pid 1060 exited

.

.

.

.

How can I make this work? Any help will be appreciated!!!

 

Thanks,

Yong

Outcomes