AnsweredAssumed Answered

Drive 1080p panel on two LVDS channels

Question asked by Previtali on May 18, 2018
Latest reply on May 20, 2018 by Previtali

Hi,

 
I'm working with an imx6duallite and I want to drive a 1920x1080 display with 2 LVDS channels but i came across a problem. Pictures are shown correctly on display but they have wrong colors (for example a blue bar during psplash is shown pink). It seems I'm using some wrong paramters. I read few thread where they told to active split-mode; I did it as you can see below, but it doesn't work.
 
my .dts has the following ldb:
 
&ldb {
  ipu_id = <1>;
  disp_id = <0>;
  ext_ref = <1>;
  mode = "sep0";
  sec_ipu_id = <1>;
  sec_disp_id = <1>;
  status = "okay";
  split-mode;

  lvds-channel@0{
    fsl,data-mapping = "spwg";
    fsl,data-width = <24>;
    crtc = "ipu1-di0";
    status = "okay";
  };

  lvds-channel@1{
    fsl,data-mapping = "spwg";
    fsl,data-width = <24>;
    crtc = "ipu1-di0";
    status = "okay";
  };
};
 
I also change the "bootargs" in u-boot to set "video" as:
 
video=mxcfb0:dev=ldb,LDB-19201080,if=RGB24,ldb=spl0 video=mxcfb1:off  
 
and in the ldb.c file I add the following: 
 
{
/* 1920x1080 @ 60 Hz */
" LDB-1920108 ",
60, //refresh
1920,  //xres
1080, //yres
7073, //pixclock
55, //left_margin
55, //right_margin
4, //upper_margin
4, //lower_margin
112, //hsync_len
12, //vsync_len
FB_SYNC_CLK_LAT_FALL,  // sync
FB_VMODE_NONINTERLACED,// vmode
FB_MODE_IS_DETAILED,   // flag
}, 
 
my display has the following parameters:
 
Clock frequency = 141.4 MHz
Refresh = 60 Hz
One line scannig period (Th) = 2142 clocks
Horizontal display period (Thd) = 1920 clocks
Frame period (Tv) = 1100 lines
Vertical display period (Tvd) = 1080 lines
 
Could  anyone tell me where is the mistake?
 
Thanks

Outcomes