You are not logged in.

#1 2007-11-12 21:52:44

phildg
Member
Registered: 2006-03-10
Posts: 146

Kernel 2.6.23 and Fn F8 (VGA/LCD switch)

Hi,

Ever since updating to Kernel 2.6.23.1-x Fn F8 which switches between the external VGA output and the laptop screen has stopped working. The laptop is a Dell Inspiron 1150.

I've tried 2.6.23.1-4, 2.6.23.1-5 and 2.6.23.1-6 and the problem is there with all of them. The key combination works using 2.6.22.9-1. Fn F8 isn't supposed to have anything to do with the OS, BIOS is supposed to catch it and switch the outputs. Using 2.6.23.1-x, Fn F8 does work correctly until arch has finished Loading Udev uevents in the boot process, after that Fn F8 stops working.

I've used hwdetect --show-modules to see what udev does differently between the two kernels. With 2.6.23.1 in the ACPI section there are ac, battery, button, processor, thermal, video. None of which appear with 2.6.22.9. Also in the VIDEO section there is output which doesn't appear with 2.6.22.9. I removed them all with the exception processor and thermal (seem to remember some issues with melting laptops when ACPI was first modularised smile ) but Fn F8 didn't start working.

Any ideas?

Offline

#2 2007-11-13 03:17:04

buttons
Member
From: NJ, USA
Registered: 2007-08-04
Posts: 620

Re: Kernel 2.6.23 and Fn F8 (VGA/LCD switch)

Oh wow!  I just tried this and it is indeed broke.  dmesg says something about video and the key being unrecognised.

I'll need this for a presentation next week, glad you pointed that out.


Cthulhu For President!

Offline

#3 2007-11-13 04:07:30

buttons
Member
From: NJ, USA
Registered: 2007-08-04
Posts: 620

Re: Kernel 2.6.23 and Fn F8 (VGA/LCD switch)

I found something, you might give this a shot:

ACPI: video: _DOS=0 by default to prevent hotkey hang
   
    In the past, the Linux/ACPI video driver invoked _DOS
    (Display Output Switch) with the parameter 1
    to tell the BIOS to switch the video output display for us.
   
    But this conflicts with Linux native graphics drivers,
    and can cause all sorts of issues, including hanging the system.
   
    http://bugzilla.kernel.org/show_bug.cgi?id=6001
   
    Here we change the Linux default to evaluate _DOS=0,
    which tells the BIOS to simply send us a hotkey event
    and not touch the graphics hardware.
   
    The acpi video driver sends the display switch hotkey
    event up through the intput layer, and X can interpret
    that and use its native graphics driver to switch the display.
   
    For the case where Linux has no native graphics driver running,
    or the graphics driver doesn't know how to switch video and
    the BIOS (safely) does, the previous behaviour can be restored with:
   
    # echo 1 > /proc/acpi/video/*/DOS

Sounds like the culprit.  I'd test it myself but I've gotta run.

Found on the 2.6.23 changelog


Cthulhu For President!

Offline

#4 2007-11-13 06:54:31

sveinemann
Member
Registered: 2007-09-30
Posts: 108

Re: Kernel 2.6.23 and Fn F8 (VGA/LCD switch)

I have the same problem, and the fix over doesnt seem to work. After file is changed it just changes back into 0. Wtf?

Offline

#5 2007-11-13 06:57:42

Allan
Pacman
From: Brisbane, AU
Registered: 2007-06-09
Posts: 11,390
Website

Re: Kernel 2.6.23 and Fn F8 (VGA/LCD switch)

Try adding video to MOD_BLACKLIST in rc.conf.  I had to do this to fix brightness adjustment issues.   The description of the problem indicate to me this will work but I can't test at the moment.

Offline

#6 2007-11-13 10:17:50

depp
Member
From: Ulm, Germany
Registered: 2007-05-01
Posts: 51

Re: Kernel 2.6.23 and Fn F8 (VGA/LCD switch)

i'd confirm the fix works

Offline

#7 2007-11-13 10:27:43

depp
Member
From: Ulm, Germany
Registered: 2007-05-01
Posts: 51

Re: Kernel 2.6.23 and Fn F8 (VGA/LCD switch)

additional: with xf86-video-i810, it works too. it should be a bug in xf86-input-intel driver

Offline

#8 2007-11-13 12:12:49

phildg
Member
Registered: 2006-03-10
Posts: 146

Re: Kernel 2.6.23 and Fn F8 (VGA/LCD switch)

I've found the bug is definitely with the kernel, FnF8 doesn't work with xf86-video-intel, or xf86-video-i810. I've not had chance to try either fix yet though.

Using xf86-video-intel allows me to get round the problem because it 'sees' both video outputs and allows xrandr to enable the VGA output.

Offline

#9 2007-11-13 17:14:45

phildg
Member
Registered: 2006-03-10
Posts: 146

Re: Kernel 2.6.23 and Fn F8 (VGA/LCD switch)

Cheers buttons,

# for f in /proc/acpi/video/*/DOS; do echo 1 > $f; done

This solves the problem. From the release notes it seems it gives the control back to BIOS.
Neither the i810 driver nor the intel driver seem to want to switch output for me.

Last edited by phildg (2007-11-13 17:16:34)

Offline

#10 2007-11-13 19:03:01

buttons
Member
From: NJ, USA
Registered: 2007-08-04
Posts: 620

Re: Kernel 2.6.23 and Fn F8 (VGA/LCD switch)

Ahh!  It works for me as well, excellent.

Anyone find an elegant way of setting this on boot?  I tried rc.local, but it wouldn't stick.


Cthulhu For President!

Offline

#11 2007-11-13 19:10:03

depp
Member
From: Ulm, Germany
Registered: 2007-05-01
Posts: 51

Re: Kernel 2.6.23 and Fn F8 (VGA/LCD switch)

weirdly, the i810 driver does work for me

Offline

#12 2007-11-14 20:23:43

phildg
Member
Registered: 2006-03-10
Posts: 146

Re: Kernel 2.6.23 and Fn F8 (VGA/LCD switch)

buttons wrote:

Ahh!  It works for me as well, excellent.

Anyone find an elegant way of setting this on boot?  I tried rc.local, but it wouldn't stick.

for f in /proc/acpi/video/*/DOS; do echo 1 > $f; done

I just chucked that line into rc.local. Its worked ever since.

Offline

#13 2007-11-16 14:34:39

buttons
Member
From: NJ, USA
Registered: 2007-08-04
Posts: 620

Re: Kernel 2.6.23 and Fn F8 (VGA/LCD switch)

Aha!  This has been made a selectable module in 2.6.24, though I couldn't tell you which module it's called because I compiled my kernel without it.

The option is "Lowlevel video output switch controls," and the symbol is VIDEO_OUTPUT_CONTROL.  It can be found in Device Drivers->Graphics Support.


Cthulhu For President!

Offline

#14 2007-11-16 15:15:04

sveinemann
Member
Registered: 2007-09-30
Posts: 108

Re: Kernel 2.6.23 and Fn F8 (VGA/LCD switch)

I don`t know why, but the video in blacklist worked.

Offline

#15 2008-03-27 19:25:44

Cippa Lippa
Member
From: Toronto, ON
Registered: 2007-04-12
Posts: 159

Re: Kernel 2.6.23 and Fn F8 (VGA/LCD switch)

Dear all

I am having this problem with the latest kernel 2.6.24

I tried the fix "for f in /proc/acpi/video/*/DOS; do echo 1 > $f; done" and it seems that it is doing something because once I press it the screen turns black for a second or two but the signal does not appear in the projector.

Any clue???

Offline

#16 2008-03-27 19:57:12

depp
Member
From: Ulm, Germany
Registered: 2007-05-01
Posts: 51

Re: Kernel 2.6.23 and Fn F8 (VGA/LCD switch)

use xrandr instead

Offline

#17 2008-03-30 16:04:25

Cippa Lippa
Member
From: Toronto, ON
Registered: 2007-04-12
Posts: 159

Re: Kernel 2.6.23 and Fn F8 (VGA/LCD switch)

it is not very clear how to switch with xrandr to the external monitor. Can I use the NVidia control panel for that?

Offline

#18 2008-05-05 20:06:47

hokasch
Member
Registered: 2007-09-23
Posts: 1,461

Re: Kernel 2.6.23 and Fn F8 (VGA/LCD switch)

No idea about Nvidia cp, but maybe you will find some useful info here. Could be possible that its a bit different for you, though, cause in the link they use an intel card.

###
Short Praise of the Arch Communnity:

Searched Google for how to get fn+f8 video output switching working.
On the first page, there was a link to this thread, where someone just throws up a magical one-liner - problems solved!
Thanks to all of you, guys!

Offline

Board footer

Powered by FluxBB