Dual display LCD and HDMI

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Dual display LCD and HDMI

2,906 Views
vongocson
Contributor III

hi everyone

i'm using Linux Yocto 4.1.15 with imx6q sabresd sample board.

 start kit after that i want to show camera to dual display to LCD and HDMI same time. 

how to way setting, can you tell me?

  • device tree  mxcfb(0-4) -> 'disable' to 'okay'
  • u-boot :  setenv video 'video=mxcfb0:dev=hdmi,1920x1080M@60,if=RGB24 video=mxcfb0:dev=ldb,LCD-VGA,if=RGB666 ldb=spl0'
  • gstreamer 1.0 :  gst-launch-1.0  imxv4l2videosrc ! imxipuvideosink -> show camera

but it only show to HDMI.

best regard

son

0 Kudos
12 Replies

1,733 Views
yyuan
Contributor III

hi 

i have the same problem.

please  have you solved the problem?

how did you solve it?

thank you very much!

0 Kudos

1,733 Views
joanxie
NXP TechSupport
NXP TechSupport

refer to your uboot command, you use the same mxcfb0 to the dual display, try to use mxcfb1 for lvds.

0 Kudos

1,733 Views
vongocson
Contributor III

i have been change it

setenv video 'video=mxcfb0:dev=hdmi,1920x1080M@60,if=RGB24 video=mxcfb1:dev=ldb,LCD-VGA,if=RGB666 '

but it's not working.

0 Kudos

1,733 Views
marius_grigoras
NXP Employee
NXP Employee

Add you called/added this new parameter in mmcargs adding ${video} at the final?

Thank you,

Marius

0 Kudos

1,733 Views
vongocson
Contributor III

i did it with the command 

baudrate=115200
boot_fdt=try
bootcmd=mmc dev ${mmcdev};if mmc rescan; then if run loadbootscript; then run bootscript; else if run loadimage; then run mmcboot; else run netboot; fi; fi; else run netboot; fi
bootcmd_mfg=run mfgtool_args;bootz ${loadaddr} ${initrd_addr} ${fdt_addr};
bootdelay=1
bootscript=echo Running bootscript from mmc ...; source
console=ttymxc0
emmcdev=2
epdc_waveform=epdc_splash.bin
ethact=FEC
ethprime=FEC
fdt_addr=0x18000000
fdt_file=imx6q-hinoeng.dtb
fdt_high=0xffffffff
image=zImage
initrd_addr=0x12C00000
initrd_high=0xffffffff
ip_dyn=yes
loadaddr=0x12000000
loadbootscript=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};
loadfdt=fatload mmc ${mmcdev}:${mmcpart} ${fdt_addr} ${fdt_file}
loadimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${image}
mfgtool_args=setenv bootargs console=ttymxc0,115200 rdinit=/linuxrc g_mass_storage.stall=0 g_mass_storage.removable=1 g_mass_storage.file=/fat g_mass_storage.ro=1 g_mass_storage.idVendor=0x066F g_mass_storage.idProduct=0x37FF g_mass_storage.iSerialNumber="" enable_wait_mode=off
mmcargs=setenv bootargs console=${console},${baudrate} ${smp} root=${mmcroot} ${video}
mmcautodetect=yes
mmcboot=echo Booting from mmc ...; run mmcargs; if test ${boot_fdt} = yes || test ${boot_fdt} = try; then if run loadfdt; then bootz ${loadaddr} - ${fdt_addr}; else if test ${boot_fdt} = try; then bootz; else echo WARN: Cannot load the DT; fi; fi; else bootz; fi;
mmcdev=0
mmcpart=1
mmcroot=/dev/mmcblk1p2 rootwait rw
netargs=setenv bootargs console=${console},${baudrate} ${smp} root=/dev/nfs ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp
netboot=echo Booting from net ...; run netargs; if test ${ip_dyn} = yes; then setenv get_cmd dhcp; else setenv get_cmd tftp; fi; ${get_cmd} ${image}; if test ${boot_fdt} = yes || test ${boot_fdt} = try; then if ${get_cmd} ${fdt_addr} ${fdt_file}; then bootz ${loadaddr} - ${fdt_addr}; else if test ${boot_fdt} = try; then bootz; else echo WARN: Cannot load the DT; fi; fi; else bootz; fi;
script=boot.scr
update_emmc_firmware=if test ${ip_dyn} = yes; then setenv get_cmd dhcp; else setenv get_cmd tftp; fi; if ${get_cmd} ${update_sd_firmware_filename}; then if mmc dev ${emmcdev} 1; then setexpr fw_sz ${filesize} / 0x200; setexpr fw_sz ${fw_sz} + 1; mmc write ${loadaddr} 0x2 ${fw_sz}; fi; fi
update_sd_firmware=if test ${ip_dyn} = yes; then setenv get_cmd dhcp; else setenv get_cmd tftp; fi; if mmc dev ${mmcdev}; then if ${get_cmd} ${update_sd_firmware_filename}; then setexpr fw_sz ${filesize} / 0x200; setexpr fw_sz ${fw_sz} + 1; mmc write ${loadaddr} 0x2 ${fw_sz}; fi; fi
video=video=mxcfb0:dev=hdmi,1920x1080M@60,if=RGB24 video=mxcfb1:dev=ldb,LCD-VGA,if=RGB666

Environment size: 2751/8188 bytes

0 Kudos

1,732 Views
joanxie
NXP TechSupport
NXP TechSupport

when you use the command "echo 0 > /sys/class/graphics/fb1/blank" , you can see the penguin on lcd right? then did you try to play the video to dual display by gstreamer? still hdmi has video, lcd doesn't?

1,732 Views
vongocson
Contributor III

thanks for reply

yes, i 'm using gstreamer: 

gst-launch-1.0  imxv4l2videosrc ! imxipuvideosink

but only hdmi is run, lcd is doesn't

0 Kudos

1,732 Views
joanxie
NXP TechSupport
NXP TechSupport

you should add device you want to display, like "video-sink="imxv4l2sink device=/dev/video17" in the end of gstreamer command, video 16 is for fb0 ,video 17 is for fb1.

0 Kudos

1,732 Views
vongocson
Contributor III

sory, it's not work!

can you tell me how to do that?

best reagard

son

0 Kudos

1,732 Views
joanxie
NXP TechSupport
NXP TechSupport

pls try this command:
"echo 0 > /sys/class/graphics/fb1/blank"
could you see the penguin on the lcd too? if no, pls try the command as below:
"echo 0 > /sys/class/graphics/fb2/blank

dd if=/dev/urandom of=/dev/fb2"

0 Kudos

1,732 Views
vongocson
Contributor III

i tried it, but after that my screen (lcd) turns black.

so that i try the command 

"echo 0 > /sys/class/graphics/fb2/blank

dd if=/dev/urandom of=/dev/fb2"

->result:

dd: writing to '/dev/fb2': No space left on device
1201+0 records in
1200+0 records out
614400 bytes (614 kB) copied, 0.306399 s, 2.0 MB/s

best regard!

 

0 Kudos

1,732 Views
aravinthkumarja
Senior Contributor II

In dtsi also you have mention fb0 for HDMI and fb1 for ldb.

Regards,

Aravinth

0 Kudos