Percebi que o desempenho do meu sistema em jogos 3D era medíocre comparado ao que eu experimentava no Windows, então procurei por melhores drivers gráficos no wiki do Arch Linux para descobrir que é sugerido usar o driver modesetting em vez do xf86-video-intel
driver (Não é possível postar mais de dois links. Aceite minha palavra ou pesquise a página Intel Graphics
.). Então, eu desinstalei o driver xf86-video-intel
e configurei um arquivo Xorg.conf, /etc/X11/xorg.conf.d/10-monitor.conf
. Apesar de procurar por todos os lugares possíveis erros na minha configuração, não consegui descobrir por que consegui apenas que um dos meus monitores ligasse meu padrão.
Minha configuração consiste no seguinte:
LVDS-1
. HDMI-1
. VGA-1
. Isso envia dados EDID incorretos, portanto, uso um modo personalizado para obter uma resolução 1368x768
. O efeito que eu quero é que a tela do laptop seja desativada, o monitor Dell seja o monitor principal e a Sharp TV seja um monitor estendido à direita do monitor Dell.
Esta é a minha configuração atual:
# DEVICES
Section "Device"
Identifier "Intel HD Graphics 4000"
Driver "modesetting"
Option "ModeDebug" "true"
EndSection
# MONITORS
# Primary Dell Monitor
Section "Monitor"
Identifier "HDMI-1" # HDMI Port 1 - HDMI-1
Option "Primary" "true" # Primary
Option "PreferredMode" "1920x1080" # 1920x1080
Option "Enable" "true" # Enable
EndSection
# Extended Sharp TV
Section "Monitor"
Identifier "VGA-1" # VGA Port 1 - VGA-1
Option "Primary" "false" # Extended
# Add custom mode, because TVs send inaccurate EDID data.
Mode "1368x768"
DotClock 85.25
HTimings 1368 1440 1576 1784
VTimings 768 771 781 798
Flags "-HSync" "+VSync"
EndMode
Option "PreferredMode" "1368x768" # 1368x768
Option "Enable" "true" # Enable
EndSection
# Disabled Laptop Screen
Section "Monitor"
Identifier "LVDS-1" # Built In Screen
Option "Enable" "false" # Disable
EndSection
# SCREENS
Section "Screen"
Identifier "Screen 0"
Device "Intel HD Graphics 4000"
Monitor "HDMI-1"
EndSection
Section "Screen"
Identifier "Screen 1"
Device "Intel HD Graphics 4000"
Monitor "VGA-1"
EndSection
# SERVER LAYOUTS
Section "ServerLayout"
Identifier "Layout"
Screen "Screen 0"
Screen "Screen 1" RightOf "Screen 0"
EndSection
Ao inicializar com essa configuração, isso é o log em /var/log/Xorg.0.log
, observe que eu ativei as mensagens de depuração do modesetting. A parte importante aqui é o (EE) modeset(0): failed to set mode: Invalid argument
.
Por curiosidade, tentei inicializar sem essa configuração, movendo /etc/X11/xorg.conf.d/10-monitor.conf
para minha área de trabalho. Este foi o resultado. Curiosamente, o (EE) modeset(0): failed to set mode: Invalid argument
ainda persiste.
Então, por que esse erro está acontecendo?
Informações do sistema: