View previous topic :: View next topic |
Author |
Message |
tjscollins n00b
Joined: 21 Apr 2011 Posts: 12
|
Posted: Fri Apr 22, 2011 9:42 pm Post subject: Backlight turns off on boot |
|
|
I haven't been able to figure this one out for the life of me. When booting my laptop the backlight comes on, and stays on until the kernel loads at which point it switches off and I have to manually turn it back on. In every other respect it behaves normally--powerdevil and laptop-mode are able to manipulate the backlight correctly. The only thing I could find in dmesg output that looked relevant were these:
Code: |
[ 0.866360] [Firmware Bug]: ACPI: No _BQC method, cannot determine initial brightness
[ 0.871175] [Firmware Bug]: ACPI: No _BQC method, cannot determine initial brightness
[ 97.361990] video LNXVIDEO:00: Restoring backlight state
|
Since the third one is probably related to powerdevil, since I'm generally logged in less than 30 seconds from the kernel loading. This is a problem I've noticed in some distros and not in others. The Gentoo LiveDVD doesn't have this problem, so I'm guessing that I must be missing some kernel option, but I'm pretty sure I already have everything enabled:
Code: |
# Power management and ACPI options
CONFIG_ACPI=y
CONFIG_ACPI_SLEEP=y
# CONFIG_ACPI_PROCFS is not set
# CONFIG_ACPI_PROCFS_POWER is not set
CONFIG_ACPI_POWER_METER=y
CONFIG_ACPI_SYSFS_POWER=y
# CONFIG_ACPI_EC_DEBUGFS is not set
# CONFIG_ACPI_PROC_EVENT is not set
CONFIG_ACPI_AC=y
CONFIG_ACPI_BATTERY=y
CONFIG_ACPI_BUTTON=y
CONFIG_ACPI_VIDEO=y
CONFIG_ACPI_FAN=y
CONFIG_ACPI_DOCK=y
CONFIG_ACPI_PROCESSOR=y
CONFIG_ACPI_HOTPLUG_CPU=y
CONFIG_ACPI_PROCESSOR_AGGREGATOR=y
CONFIG_ACPI_THERMAL=y
# CONFIG_ACPI_CUSTOM_DSDT is not set
CONFIG_ACPI_BLACKLIST_YEAR=0
# CONFIG_ACPI_DEBUG is not set
CONFIG_ACPI_PCI_SLOT=y
CONFIG_ACPI_CONTAINER=y
CONFIG_ACPI_SBS=y
CONFIG_ACPI_HED=y
# CONFIG_ACPI_APEI is not set
CONFIG_X86_ACPI_CPUFREQ=y
CONFIG_PNPACPI=y
CONFIG_ATA_ACPI=y
# CONFIG_PATA_ACPI is not set
# ACPI drivers
# ACPI drivers
|
Maybe Custom_DSDT? It's the one setting I can't find in make menuconfig, so I haven't tried it. |
|
Back to top |
|
|
zertyz n00b
Joined: 02 May 2011 Posts: 2 Location: Rio de Janeiro
|
|
Back to top |
|
|
HeissFuss Guru
Joined: 11 Jan 2005 Posts: 414
|
Posted: Mon May 02, 2011 7:19 pm Post subject: |
|
|
I saw a similar issue when I tried using nouveau (probably the same KMS issue zertyz mentioned.)
What video driver are you using? |
|
Back to top |
|
|
tjscollins n00b
Joined: 21 Apr 2011 Posts: 12
|
Posted: Mon May 02, 2011 9:29 pm Post subject: |
|
|
With further testing I've found two partial workarounds.
Toggling kernel modesetting off for the intel i915 driver (which I use for my chipset) does stop the backlight from being turned off and having to be turned back on by hand, but leaves me with the large, ugly fonts and low resolution in the initial console (X and KDE function the same as usual).
Alternatively, I edited the DSDT file to return a fixed value for the BQC method. Combined with kernel modesetting toggled on this results in the backlight switching off for about half a second, and then switching back on (so I don't have to do it manually).
Neither solution is ideal, but both are functional.
Is there a way to get the high resolution console without kernel modesetting? I've tried the grub vga option, but it doesn't seem to do anything (or else I'm doing it wrong):
Code: |
default 0
timeout 30
splashimage=(hd0,1)/boot/grub/splash.xpm.gz
vga=0x0365
title Gentoo Linux
root (hd0,1)
kernel /boot/linux-img root=/dev/sda5
|
|
|
Back to top |
|
|
zertyz n00b
Joined: 02 May 2011 Posts: 2 Location: Rio de Janeiro
|
Posted: Tue May 03, 2011 1:26 am Post subject: |
|
|
You may wish to test the standard vesa modes first:
Code: | # FRAMEBUFFER RESOLUTION SETTINGS
# +-------------------------------------------------+
# | 640x480 800x600 1024x768 1280x1024
# ----+--------------------------------------------
# 256 | 0x301=769 0x303=771 0x305=773 0x307=775
# 32K | 0x310=784 0x313=787 0x316=790 0x319=793
# 64K | 0x311=785 0x314=788 0x317=791 0x31A=794
# 16M | 0x312=786 0x315=789 0x318=792 0x31B=795
# +-------------------------------------------------+
|
Also, try adding the vga= parameter at the end of the kernel line:
Code: | ...
kernel /boot/linux-img root=/dev/sda5 vga=773
|
You can also try vga=ask.
[]s
Luiz |
|
Back to top |
|
|
ManDay Apprentice
Joined: 22 Jan 2008 Posts: 247
|
Posted: Wed May 04, 2011 6:22 am Post subject: |
|
|
I do have the same problem for an Intel Arrandale i915. I'd rather solve this problem than working arround it, especially since turning of KMS is not an option for me. I use vgaswitcheroo which requires KMS to be on from the start. |
|
Back to top |
|
|
tjscollins n00b
Joined: 21 Apr 2011 Posts: 12
|
Posted: Sat May 07, 2011 6:57 am Post subject: |
|
|
I tried futzing with the vga parameter, and I got it to work, but it broke desktop effects with me. So I've given up and gone with KMS enabled and the edited DSDT file as a the solution of choice.
Quote: |
I do have the same problem for an Intel Arrandale i915. I'd rather solve this problem than working arround it, especially since turning of KMS is not an option for me. I use vgaswitcheroo which requires KMS to be on from the start. |
Follow the instructions at the link zertyz provided: http://cannibalcandy.wordpress.com/2011/02/18/dsdt-editing-put-an-end-to-your-acpi-woes/
Find the line in dsdt.dsl that says:
Code: |
Method (_BQC, 0, NotSerialized)
|
and change the function to something like this:
Code: |
Method (_BQC, 0, NotSerialized)
{
Return (0x10)
}
|
0x10 is the value I picked (originally it returned BRTL in mine), the link said 0x1E (which didn't work for me). Find one that works for you. This should solve the problem. It's a hack, but it works. Make sure to recompile your kernel according to http://www.lesswatts.org/projects/acpi/overridingDSDT.php (link from the HOWTO on the DSDT above) after you've finished with the DSDT file. |
|
Back to top |
|
|
|