On Tue, 8 Jan 2008, Pavel Machek wrote: > > In fact suspend methods already do take an argument specifying the > > reason they were called. It wouldn't be hard to add a couple of extra > > PM_EVENT_* values for manual suspend and autosuspend. The problem is > > that resume methods don't take a corresponding argument. > > Well, you could store the value in struct device or something. > > There's other problem: if autosuspend is != NULL, you know device > supports autosuspend. > > If you call existing suspend(PMSG_AUTOSUSPEND), and driver does not > support it, it will crash and burn. That's right. The problem doesn't arise in SCSI because there only the sd driver supports suspend at all -- and now it supports autosuspend as well. In USB I had to add an extra "supports_autosuspend" bitflag to the usb_driver structure. Alan Stern - To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html