CPU : i.MX6dl( Dual Lite, signle IPU)
Kernel : 3.0.35
I want to mirroring the fb0's data to LVDS and Parallel VGA(lcdif).
Basically, only one TFT LCD is output through LVDS, but I want to output the same video to the VGA side through the parallel port.
If I set the each LVDS and Parallel for individually, then it working well for output.
Now, I set like below diagram to output to both screens at the same time.
- HW Configuration
- Kernel
: linux-3.0.35/arch/arm/mach-mx6/ board-mx6dl_mvt.h
> add parallel pin for vga LCD
: linux-3.0.35/arch/arm/mach-mx6/ board-mx6q_mvt.c
> add lcdif struct.
: linux3.0.35/drivers/video/mxc/mxc_lcdif.c
> add "LCD-720P" resolution
- U-boot
configs/mx6dl_mvt.h
> add boot argument
As a result of testing after setting as above
If you output it at the same time, LVDS will output but Parallel will not. ("out over range" message on the screen of Parallel VGA side)
In addition, fsl_ipuv3_fb.txt describes the DI0 and DI1 of the IPU as follows.
For LDB/LVDS panel, there are two LVDS channels(LVDS0 and LVDS1) which can
transfer video data, these two channels can be used as
split/dual/single/separate mode.
-split mode means display data from DI0 or DI1 will send to both channels
LVDS0+LVDS1.
-dual mode means display data from DI0 or DI1 will be duplicated on LVDS0
and LVDS1, it said, LVDS0 and LVDS1 has the same content.
-single mode means only work for DI0/DI1->LVDS0 or DI0/DI1->LVDS1.
-separate mode means you can make DI0/DI1->LVDS0 and DI0/DI1->LVDS1 work
at the same time.
"ldb=spl0/1" -- split mode on DI0/1
"ldb=dul0/1" -- dual mode on DI0/1
"ldb=sin0/1" -- single mode on LVDS0/1
"ldb=sep0/1" -- separate mode begin from LVDS0/1
> 추가 적으로 아래 그림에 있는 mode를 split, dual, separate로도 각각 변경해 보았지만 결과는 마찬가지 입니다.
Which part need to be modified to output the same video (LVDS, VGA) on two screens?
try to change the lcd clock to true.
static struct ipuv3_fb_platform_data sabresd_fb_data[] = {
{ /*fb0*/
.disp_dev = "lcd",
.interface_pix_fmt = IPU_PIX_FMT_RGB565,
.mode_str = "CLAA-WVGA",
.default_bpp = 16,
.int_clk = true,
.late_init = false,
}
As you can see the above my setting,
already I tried . but not helpful.
have you already changed the clock? I don't find this settings, could you point to me again?
You can find below text what I wrote,
: linux-3.0.35/arch/arm/mach-mx6/ board-mx6q_mvt.c
> add lcdif struct.
Below this text,
I attached picture that my code.
You can see this struct..
static struct ipuv3_fb_platform_data mvt_fb_data[] = {
}