I want to use a dual channel (1 channel for even, 1 channel for odd pixels) LVDS 1920x1080 display on a Digi Connectore platform. I already have a baseboard with the two channels connected, but what do i do to drive this? Did anyone already did this?
bootargs for ldb bridge look like:
ldb=split,di=0,ch0_map=SPWG,ch1_map=SPWG
And videomode looks like:
static struct fb_videomode tlv19201080p = {
.name = "TLV19201080P",
.refresh = 60, /* Refresh rate in Hz */
.xres = 1920, /* Resolution in the x axis */
.yres = 1080, /* Reslution in the y axis */
.pixclock = 13000, /* Pixelclock/dotclock,picoseconds. */
.left_margin = 30, /* Horizontal Back Porch (HBP) */
.right_margin = 30, /* Horizontal Front Porch (HFP) */
.upper_margin = 15, /* Vertical Back Porch (VBP) */
.lower_margin = 15, /* Vetical Front Porch (VFP) */
.hsync_len = 40, /* Horizontal sync pulse width */
.vsync_len = 10, /* Vertical sync pulse width */
.vmode = FB_VMODE_NONINTERLACED, //FB_VMODE_NONINTERLACED,/* Video mode */
.sync = FB_SYNC_EXT, /* Data clock polarity */
.flag = 0,
};
But for some reason, fysical screen is like a 1280x1080 screen (640 pixels are outside my screen region)
The freescale BSP had supported a 1080P dual channel LVDS panel already, and the uboot parameters is as followed:
"video=mxcdi0fb:RGB24,1080P60,bpp=32 ldb=di0,split di0_primary dmfc=3"
And in driver "ldb.c", the video mode is as followed:
struct fb_videomode mxcfb_ldb_modedb[] = {
{
"1080P60", 60, 1920, 1080, 7692,
100, 40,
30, 3,
10, 2,
0,
FB_VMODE_NONINTERLACED,
FB_MODE_IS_DETAILED,},
};
I am trying to display at 1080P dual channel LVDS panel.
I did test "video=mxcdi0fb:RGB24,1080P60,bpp=32 ldb=di0,split di0_primary dmfc=3"
but i got error message below
===================================================================================
mxc_ldb mxc_ldb: default di0 split mode
mxc_ipu mxc_ipu: Channel already disabled 9
mxc_ipu mxc_ipu: Channel already uninitialized 9
------------[ cut here ]------------
WARNING: at mm/page_alloc.c:1968 __alloc_pages_nodemask+0x16c/0x568()
Modules linked in:
[<8003d58c>] (unwind_backtrace+0x0/0xf0) from [<80068a44>] (warn_slowpath_common+0x4c/0x64)
[<80068a44>] (warn_slowpath_common+0x4c/0x64) from [<80068a74>] (warn_slowpath_null+0x18/0x1c)
[<80068a74>] (warn_slowpath_null+0x18/0x1c) from [<800a90b4>] (__alloc_pages_nodemask+0x16c/0x568)
[<800a90b4>] (__alloc_pages_nodemask+0x16c/0x568) from [<8003dfb0>] (__dma_alloc+0xec/0x2b8)
[<8003dfb0>] (__dma_alloc+0xec/0x2b8) from [<8003e198>] (dma_alloc_writecombine+0x1c/0x24)
[<8003e198>] (dma_alloc_writecombine+0x1c/0x24) from [<801ffe7c>] (mxcfb_set_par+0xd0/0x44c)
[<801ffe7c>] (mxcfb_set_par+0xd0/0x44c) from [<801f2cfc>] (fb_set_var+0x1b0/0x290)
[<801f2cfc>] (fb_set_var+0x1b0/0x290) from [<80201b84>] (mxcfb_probe+0x848/0x9f8)
[<80201b84>] (mxcfb_probe+0x848/0x9f8) from [<80233620>] (platform_drv_probe+0x18/0x1c)
[<80233620>] (platform_drv_probe+0x18/0x1c) from [<8023278c>] (driver_probe_device+0xc8/0x184)
[<8023278c>] (driver_probe_device+0xc8/0x184) from [<802328a8>] (__driver_attach+0x60/0x84)
[<802328a8>] (__driver_attach+0x60/0x84) from [<80231f9c>] (bus_for_each_dev+0x48/0x84)
[<80231f9c>] (bus_for_each_dev+0x48/0x84) from [<802318d8>] (bus_add_driver+0x98/0x214)
[<802318d8>] (bus_add_driver+0x98/0x214) from [<80232b94>] (driver_register+0xa8/0x138)
[<80232b94>] (driver_register+0xa8/0x138) from [<80038384>] (do_one_initcall+0x5c/0x1b8)
[<80038384>] (do_one_initcall+0x5c/0x1b8) from [<8000842c>] (kernel_init+0xac/0x168)
unwind: Unknown symbol address 8000842c
unwind: Index not found 8000842c
---[ end trace dec6997083161631 ]---
mxc_sdc_fb mxc_sdc_fb.0: Unable to allocate framebuffer memory
detected fb_set_par error, error code: -12
mxc_sdc_fb: probe of mxc_sdc_fb.0 failed with error -12
mxc_ipu mxc_ipu: Channel already disabled 7
mxc_ipu mxc_ipu: Channel already uninitialized 7
mxc_ipu mxc_ipu: Channel already disabled 10
mxc_ipu mxc_ipu: Channel already uninitialized 10
===================================================================================
do you have ant idea for solving about that problem.
Pls
what is dmfc=3?
environment
h/w:i.MX53 QSB s/w linux 2.6.35