Hi. On Sun, 2007-02-11 at 12:13 +0000, Matthew Garrett wrote: > On Sun, Feb 11, 2007 at 07:54:04AM +0100, Willy Tarreau wrote: > > > instead of modifying all drivers to explicitly state that they don't support > > it, we should start with a test of the NULL pointer for .suspend which should > > mean exactly the same without modifying the drivers. I find it obvious that > > a driver which does provide a suspend function will not support it. And if > > some drivers (eg /dev/null) can support it anyway, it's better to change > > *those* drivers to explicitly mark them as compatible. > > No, that doesn't work. In the absence of suspend/resume methods, the PCI > layer will implement basic PM itself. In some cases, this works. In > others, it doesn't. There's no way to automatically determine which is > which without modifying the drivers. I think we have it backwards there. Power management support for a driver should always start with the driver itself. If there's a generic routine that can be used for the bus, the driver should explicitly set the routine to the generic routine. Regards, Nigel