Estou construindo uma distribuição Linux (via Yocto) em um braço imx6 (Congatech Q7) (kernel 4.1, Xorg 1.18 module version 2.10.1) Eu tenho dois monitores 800x480 conectados no LVDS. Eu configurei com sucesso o hardware para executar espelhado com o X. Ele aparece e funciona como um campeão.
Eu preciso executar os monitores independentes. Eu posso trazer uma ou outra individualmente com o X. O hardware tem apenas 1 acelerador gráfico, portanto, preciso usar o dispositivo fb antigo.
Se eu não mostrar X, posso copiar as imagens de um lado para o outro dos dispositivos fb (fb0 e fb2) com sucesso. Então, tenho certeza que os dispositivos estão bem.
Quando eu configuro o fbdev (usando as mesmas opções que eu tive com a aceleração por tamanho. Ele informa um tamanho de 211x127. O tamanho é 800x480.
Eu já cheguei a um ponto morto sobre o que ver a seguir, espero que alguém da comunidade tenha se deparado com isso antes.
[3254904.461] (II) VIVANTE (0): configurando o tamanho físico da tela para 211 x 127
Snippet do Xorg.0.log
[3254904.080] (II) VIVANTE(0): [drm] Using the DRM lock SAREA also for drawables
[3254904.080] (II) VIVANTE(0): [drm] framebuffer handle = 0x44800000
[3254904.080] (II) VIVANTE(0): [drm] added 1 reserved context for kernel
[3254904.080] (II) VIVANTE(0): X context handle = 0x1
[3254904.080] (II) VIVANTE(0): [drm] installed DRM signal handler
[3254904.081] (II) VIVANTE(0): [DRI] installation complete
[3254904.081] (--) RandR disabled
[3254904.118] (II) AIGLX: Screen 0 is not DRI2 capable
[3254904.118] (EE) AIGLX: reverting to software rendering
[3254904.460] (II) AIGLX: enabled GLX_MESA_copy_sub_buffer
[3254904.461] (II) AIGLX: Loaded and initialized swrast
[3254904.461] (II) GLX: Initialized DRISWRAST GL provider for screen 0
[3254904.461] (II) VIVANTE(0): Setting screen physical size to 211 x 127
Meu arquivo xorg.conf:
Section "Device"
Identifier "fbB"
Driver "fb"
Option "fbdev" "/dev/fb0"
Option "vivante_fbdev" "/dev/fb0"
Option "HWcursor" "false"
Screen 1
EndSection
Section "Device"
Identifier "fbA"
Driver "vivante"
Option "fbdev" "/dev/fb2"
Option "vivante_fbdev" "/dev/fb2"
Option "HWcursor" "false"
Screen 0
EndSection
Section "Monitor"
Identifier "MonAlpha"
Modeline "U:800x480p-59" 33.26 800 840 968 1056 480 490 492 525 -hsync -vsync -csync
EndSection
Section "Monitor"
Identifier "MonBeta"
Modeline "U:800x480p-59" 33.26 800 840 968 1056 480 490 492 525 -hsync -vsync -csync
EndSection
Section "Screen"
Identifier "ScreenAlpha"
Monitor "MonAlpha"
Device "fbA"
Subsection "Display"
Modes "U:800x480p-59"
EndSubSection
EndSection
Section "Screen"
Identifier "ScreenBeta"
Monitor "MonBeta"
Device "fbB"
Subsection "Display"
Modes "U:800x480p-59"
EndSubSection
EndSection
Section "ServerLayout"
Identifier "Main Layout"
Screen 0 "ScreenAlpha"
Screen 1 "ScreenBeta" Absolute 0 480
EndSection
Section "ServerFlags"
Option "BlankTime" "0"
Option "StandbyTime" "0"
Option "SuspendTime" "0"
Option "OffTime" "0"
EndSection
Tags x11 linux display-settings arch-arm