I have a custom BSP with an i.MX6Q wroking fine. I support HDMI video and two LVDS channels but cannot ever get HDMI and LVDS to work simultaneously. Whichever video source I map to fb0 works fine but I never get the second video source to work. Here is my boot command line. With this command line I get HDMI video but not LVDS. If I switch fb0 and fb1, I then get LVDS video but not HDMI.
console=ttymxc0,115200 root=/dev/mmcblk0p1 rootwait rw ip=dchp video=mxcfb0:dev=hdmi,1280x720M@60,if=RGB24 video=mxcfb1:dev=ldb,LDB-XGA,if=RG666
Here is my xorg.conf file:
Section "InputDevice"
Identifier "Generic Keyboard"
Driver "kbd"
Option "XkbRules" "xorg"
Option "XkbModel" "pc105"
Option "XkbLayout" "us"
EndSection
Section "InputDevice"
Identifier "Configured Mouse"
Driver "mouse"
Option "CorePointer"
EndSection
Section "Device"
Identifier "i.MX Accelerated Framebuffer Device 0"
Driver "vivante"
Option "fbdev" "/dev/fb0"
Option "vivante_fbdev" "/dev/fb0"
Option "HWcursor" "false"
EndSection
Section "Device"
Identifier "i.MX Accelerated Framebuffer Device 1"
Driver "vivante"
Option "fbdev" "/dev/fb1"
EndSection
Section "Monitor"
Identifier "Configured Monitor 0"
EndSection
Section "Monitor"
Identifier "Configured Monitor 1"
EndSection
Section "Screen"
Identifier "Screen 0"
Monitor "Configured Monitor 0"
Device "i.MX Accelerated Framebuffer Device 0"
EndSection
Section "Screen"
Identifier "Screen 1"
Monitor "Configured Monitor 1"
Device "i.MX Accelerated Framebuffer Device 1"
EndSection
Section "ServerLayout"
Identifier "Xinerama Layout"
Screen "Screen 0"
Screen "Screen 1"
EndSection
Section "ServerFlags"
Option "Xinerama" "true"
EndSection
If I only have Screen 0, it works fine. If I add any reference to Screen 1, I get no video on either monitor.
Does all of this look correct? Any help will be grealty appreciated.
Nobody has any dual video experience. Any help will be appreciated. What causes the message "Screen 1 deleted because of no matching config section"?
Hi
Now i have a same problem when to use two diaplay on i.mx6q board.
My system is ubuntu。 And i what to use LVDS as the primary dispaly and use HDMI as the second one.
My u-boot's kernel parameters is bellow:
video=mxcfb0:dev=ldb,LDB-XGA,if=RGB666 video=mxcfb1:dev=hdmi,1920x1080M@60,if=RGB24
And my x window configure file is as bellow:
Section "InputDevice"
Identifier "Generic Keyboard"
Driver "kbd"
Option "XkbRules" "xorg"
Option "XkbModel" "pc105"
Option "XkbLayout" "us"
EndSection
Section "InputDevice"
Identifier "Configured Mouse"
Driver "mouse"
Option "CorePointer"
EndSection
Section "Device"
Identifier "LVDS"
Driver "vivante"
Option "fbdev" "/dev/fb0"
Option "vivante_fbdev" "/dev/fb0"
Option "HWcursor" "false"
EndSection
Section "Device"
Identifier "HDMI"
Driver "fbdev" /////////////// If i use "vivante", X window start will failed, it seems that "vivante" not support two display?
Option "fbdev" "/dev/fb2"
EndSection
Section "Monitor"
Identifier "LVDS Monitor"
EndSection
Section "Monitor"
Identifier "HDMI Monitor"
EndSection
Section "Screen"
Identifier "LVDS Screen"
Monitor "LVDS Monitor"
Device "LVDS"
EndSection
Section "Screen"
Identifier "HDMI Screen"
Monitor "HDMI Monitor"
Device "HDMI"
EndSection
Section "ServerLayout"
Identifier "Dual Layout"
Screen 0 "LVDS Screen"
Screen 1 "HDMI Screen" RightOf "LVDS Screen"
Option "Xinerama" "on"
EndSection
Then i get the two display worked, But somthing is wrong.
On the left of HDMI display there is a copy of lvds.
Is my settings wrong?
Do you know about this?
Thank you
Update: After reviewing the Xorg.0.log file, I found the following error:
Screen 1 deleted because of no matching config section.
This is obviously why I cannot see the second screen in the Ubuntu GUI. Does anybody have any ideas what the missing config section is?
Update: I still do not have dual video during uImage boot or when the GUI is displayed. I am able to use gstreamer to display a test pattern and an mp4 video on both displays. I can even run videos on both displays at the same time.
Obviously both monitors are usable so why does the secondary monitor not function early in the boot cycle or when the GUI is displayed? Should I see penguins on both displays during boot? Should I be able to run my GUI using both monitors?
Update: In my custom board configuration file I had disabled the imx6q_add_v4l2_output(0) call and when I added it again, the video improved. I still do not get dual video but the second monitor (LVDS) is in sync and appears usable but is just a black screen. This is my new command line:
console=ttymxc0,115200 root=/dev/mmcblk0p1 rootwait rw ip=dchp video=mxcfb0:dev=hdmi,1280x720M@60,if=RGB24 video=mxcfb1:dev=ldb,LDB-XGA,if=RGB666 ldb=sin0
This is my last attempt at a xorg.conf file:
Section "InputDevice"
Identifier "Generic Keyboard"
Driver "kbd"
Option "XkbRules" "xorg"
Option "XkbModel" "pc105"
Option "XkbLayout" "us"
EndSection
Section "InputDevice"
Identifier "Configured Mouse"
Driver "mouse"
Option "CorePointer"
EndSection
Section "Device"
Identifier "i.MX Accelerated Framebuffer Device 0"
Driver "vivante"
Screen 0
Option "fbdev" "/dev/fb0"
Option "vivante_fbdev" "/dev/fb0"
Option "HWcursor" "false"
EndSection
Section "Device"
Identifier "i.MX Accelerated Framebuffer Device 1"
Driver "vivante"
Screen 1
Option "fbdev" "/dev/fb1"
Option "vivante_fbdev" "/dev/fb1"
Option "HWcursor" "false"
EndSection
Section "Monitor"
Identifier "Configured Monitor 0"
EndSection
Section "Monitor"
Identifier "Configured Monitor 1"
EndSection
Section "Screen"
Identifier "Screen 0"
Device "i.MX Accelerated Framebuffer Device 0"
Monitor "Configured Monitor 0"
EndSection
Section "Screen"
Identifier "Screen 1"
Device "i.MX Accelerated Framebuffer Device 1"
Monitor "Configured Monitor 1"
Section "ServerLayout"
Identifier "Xinerama Layout"
Screen 0 "Screen 0" 0 0
Screen 1 "Screen 1" RightOf "Screen 0"
InputDevice "Generic Keyboard"
InputDevice "Configured Mouse"
Option "Xinerama" "on"
EndSection
Anybody know what could be wrong?
have you tried ldb=dul0/1 ? Regarding the xorg.conf, what are the related kernel logs when xserver loads?
I have same situation like Paul and I already try ldb=dul0/1 and any kernel parameter in the release note.My touch can work but LVDS got black screen. Could anyone tell me why? and I also get HDMI video but not LVDS. If I switch fb0 and fb1, I then get LVDS video but not HDMI. This is my command line setting :
bootargs=console=ttymxc0,115200 vmalloc=400M init=/init video=mxcfb0:dev=hdmi,1920x1080M@60,if=RGB24 video=mxcfb1:dev=ldb,LDB-XGA,if=RGB666 ldb=dul0 fbmem=28M,10M
What board are you using?
imx 6Q
Paul,
I think you need to add the 'ldb' kernel command line parameter, take at look at the release notes for more documentation.
Leo
Don't I already have that - video=mxcfb1:dev=ldb,LDB-XGA,if=RG666 - or is there another parameter required?
I think Leonardo is right. I don't have the i.MX6, but in my i.MX5 QSB I have the line below when I want two displays:
"video=mxcdi0fb:RGB666,800x480@60 di0_primary ldb=di0 video=mxcdi1fb:RGB666,800x480@60 ldb=di1"
It is another parameter. I am trying to copy & paste the release note documentation but the paste formatting is so bad, so look at the document for this.