Problem with video output switching

From ThinkWiki
Revision as of 18:45, 23 November 2006 by Till (Talk | contribs) (Problems with Intel chipsets)
Jump to: navigation, search

Affected Models

Problem Description

It is not possible, using the FN-F7 key, to switch between the LCD and the external monitor in the following way

LCD --> external Monitor--> both -->LCD

however cloning is possible for the Intel chipsets, see below.

Problems with Intel chipsets

Disabling the internal LCD (e.g. when using an external Monitor) doesn't seem to work reliably.

  • For Xorg 7.022 one can clone the LCD display to an external monitor, adding the following lines to the Device section in the xorg.conf file:
Section "Device"
 Identifier	"Generic Video Card"
 Driver		"i810"
 Option          "Clone" "true"
 Option          "MonitorLayout" "CRT,LFP"

however you can not switch between these screens as described above, once you use FN-F7 the cloned display is lost.

  • i810switch doesn't have any effect. After disabling the LCD it is still on (but the status display of i810switch claims that is is switched off).
  • With ibm-acpi, # echo lcd_disable >/proc/acpi/ibm/video works, but # echo lcd_enable >/proc/acpi/ibm/video doesn't work - so one can't enable it anymore after disabling it. (the strange thing is that when switching to a console with ctrlaltF1 the LCD display is used for it, so there must be some way to enable it but I can't find out how to control this in X). I've tried this with version 0.8 and version 0.11 of ibm-acpi.
    • FnF7 lets me enable the internal LCD after I disabled it with # echo lcd_disable >/proc/acpi/ibm/video on my X41 but it corrupts the crt out

Problems with ATI chipsets

  • It is a known issue of xorgs radeon driver that FnF7 doesn't work.

You can force the radeon driver to enable both CRT and LCD using Option "MonitorLayout" "LVDS,CRT" in the "Device" section of /etc/X11/xorg.conf. The analogous option for fglrx is Option "ForceMonitors" "lvds,crt1"

The # radeontool light off and # radeontool dac off commands will disable the LCD and CRT if they're been enabled before in the X server, but the corresponding # radeontool light on and # radeontool dac on will not work if the displays have were not enabled when the X server started. Also note that turing off the CRT using this command will not reduce power consumption, nor allow fglrx to enable power saving modes.

You might try the following: Hit Ctrl+Alt+F1 to switch to a console, hit Fn+F7 to switch video, hit Alt+F7 to switch back to X.

fglrx-Driver

Output switching with the Closed-Source ati-driver works: Just use # aticonfig --query-monitor and e.g. # aticonfig --enable-monitor...". You can use those two commands in a script, and bind them to FnF7


Alternative solution: fglrx 8.28.8 will recognize FnF7 directly, if the key is enabled. This obviates the need for scripts which call aticonfig. To enable the hotkey, issue the command # echo enable,0xffff >/proc/acpi/ibm/hotkey. You'll want to have this run both at boot time, and after resume (on my T43, the hotkey mask is reset on resume). For Ubuntu, I've put a script with the command in both the /etc/acpi/resume.d, and /etc/acpi/start.d directories.

Related Links

Solutions

BIOSHotKeys

Try adding

Option "BiosHotKeys" "on"

to /etc/xorg.conf. For some reason, this is not the default, and will cause xorg to ignore the BIOS's request to switch modes! This fixes the problem for an X22, with xorg 6.9.0.