Re: rc.suspend/rc.resume acpi support added

From: Nate Lawson <nate_at_root.org>
Date: Fri, 2 Jan 2004 13:45:18 -0800 (PST)
On Tue, 30 Dec 2003, Lukas Ertl wrote:
> On Tue, 30 Dec 2003, Nate Lawson wrote:
> > This helps for uhci where we have to unload and reload usb.ko across
> > suspends since it doesn't re-initialize correctly.  See the usb comments
> > in the files for an example.
>
> If I understand correctly, usb.ko can't be unloaded, because it has no
> detach method connected. (At least I wasn't able to unload it.)
>
> Anyway, this bandaid wouldn't work on this machine, since I tried to load
> the usb module after a suspend and UHCI still wouldn't work (see
> kern/59747) - it seems like all controller register bits are set, and I
> couldn't find a way to clear them.

Oops, you're right.  It may help for sound drivers though.

> The UHCI controller works fine with APM suspend, though.

That's because the BIOS does all the reinitialization in the APM case.
The biggest issue with ACPI suspend/resume is that suddenly all of our
device drivers are responsible for detecting the state of various hardware
(from uninitialized to various partially-initialized states) and restoring
the rest.  Like the kid's game "Operation", poking a register that already
has been initialized or neglecting to restore something the BIOS no longer
handles makes the driver inoperable (i.e. uhci) or worse, breaks resume
(i.e. many video drivers).

It would be great if each driver author would go back to the datasheet and
make sure they're doing things correctly and not relying on the BIOS.

-Nate
Received on Fri Jan 02 2004 - 12:45:17 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:37:36 UTC