I have a 24bit LVDS display that I am running on a custom imx6q board. The images look like they are being displayed at the wrong color depth and have some odd horizontal scan line artifacts.
I have modified drivers/video/mxc/ldb.c to add a new entry for my display:
static struct fb_videomode ldb_modedb[] = {
{
"LG-WVGA", 60, 800, 480, 30066, /*DE mode only. horizontal blanking 256 (85 + 85 + 86), vert blanking 45 (15 + 15 + 15) */
85, 85,
15, 15,
86, 15,
0,
FB_VMODE_NONINTERLACED,
FB_MODE_IS_DETAILED,},
I also modified my kernel board file to add a matching entry and made sure to specify IPU_PIX_FMT_RGB24
static struct ipuv3_fb_platform_data qmx6_fb_data[] = {
{ /*fb0*/
.disp_dev = "ldb", | |
.interface_pix_fmt = IPU_PIX_FMT_RGB24, | |
.mode_str = "LG-WVGA", | |
.default_bpp = 32, | |
.int_clk = false, | |
.late_init = false, | |
}, { | |
.disp_dev = "hdmi", | |
.interface_pix_fmt = IPU_PIX_FMT_RGB24, | |
.mode_str = "1920x1080M@60", | |
.default_bpp = 32, | |
.int_clk = false, | |
.late_init = false, | |
}, { | |
.disp_dev = "ldb", | |
.interface_pix_fmt = IPU_PIX_FMT_RGB24, | |
.mode_str = "LG-WVGA", | |
.default_bpp = 32, | |
.int_clk = false, | |
.late_init = false, | |
}, |
};
Is there something else I need to setup in u-boot in order to get a 24bit LVDS panel working? Could this be more related to the custom cable I have connecting the display to the board?
Hi Doug,
you can try to set the correct display setup in u-boot bootargs by adding: video=mxcfb0:dev=ldb,LG-WVGA,if=RGB24 ldb=sin0
However, by viewing the posted image, there may be a problem of clock polarity, you can try change your display setup with:
static struct fb_videomode ldb_modedb[] = {
{
"LG-WVGA", 60, 800, 480, 30066, /*DE mode only. horizontal blanking 256 (85 + 85 + 86), vert blanking 45 (15 + 15 + 15) */
85, 85,
15, 15,
86, 15,
FB_SYNC_CLK_LAT_FALL,
FB_VMODE_NONINTERLACED,
FB_MODE_IS_DETAILED,},
About the custom cable,the successful implementation of the cable is fundamental.
Hello everyone,
I have a toucshcreen display. It is DE mode only.
I dont have good view on the display. I only made some modifications at my_board.dtsi file.
Also, should I do something at ldb.c file? Because it is connected to board with LVDS connector.
Should I write my display parameters in ldb.c file?
Bootargs parameter is ldb=SVGA. So I have to write my display's parameters in SVGA? Right?
Thanks.
Have a nice day.