Re: Regression: ACPI AC driver doesn't work on Toshiba Portege R500 (bisected)

From: Rafael J. Wysocki
Date: Sun Nov 23 2008 - 20:03:40 EST


On Monday, 24 of November 2008, Rafael J. Wysocki wrote:
> On Sunday, 23 of November 2008, Rafael J. Wysocki wrote:
> > Hi,
> >
> > With current mainline (2.6.28-rc6-git1 as of today) on Toshiba Portege R500 the
> > status of the AC adapter is not updated when the adapter is unplugged and
> > plugged in. Evidently, /sys/class/power_supply/ADP1/online always contains the
> > same value. Interestingly enough, though, if the box is suspended to RAM and
> > resumed, the status of the AC adapter is correctly updated, but the value read
> > at that time remains in /sys/class/power_supply/ADP1/online until the next
> > suspend/resume cycle regardless of what's going on with the AC adapter.
> >
> > 2.6.27.7 works correctly on this box so the recent EC patches don't seem to
> > cause this regression to happen.
> >
> > Any other ideas?
>
> The problem was introduced by the following commit:
>
> commit faee816b1502385dc9bc5abf2960d1cc645844d1
> Author: Zhang Rui <rui.zhang@xxxxxxxxx>
> Date: Fri Sep 12 11:12:25 2008 +0800
>
> ACPI: don't enable control method power button as wakeup device when Fixed Power button is used
>
> don't enable control method power button as wakeup device
> when Fixed Power button is used.
>
> http://bugzilla.kernel.org/show_bug.cgi?id=10503
>
> Tested-by: walken@xxxxxxx <walken@xxxxxxx>
> Signed-off-by: Zhang Rui <rui.zhang@xxxxxxxxx>
> Signed-off-by: Len Brown <len.brown@xxxxxxxxx>
>
> Reverting this commit on top of the current mainline makes the kernel behave
> correctly again.

Alas, after reverting the patch the box hangs on resume from suspend to RAM
when it is woken up by opening the lid.

I suspect that the GPE which is normally used for signalling the AC adapter
events is the same one associated with the fake power button and it is not
enabled if that button is not regarded as a wake-up device. However, it causes
problems to happen during resume if the fake power button _is_ regarded as
a wake-up device.

The DSDT for the box is at:
http://www.sisk.pl/kernel/debug/ACPI/R500/DSDT.dsl

Thanks,
Rafael

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/