Re: Re: [RFC] Implementation of SCSI dynamic power management
From: Pavel Machek <hidden>
Date: 2008-01-08 21:24:30
quoted
quoted
When all the devices under a host are suspended, the LLD is informed (via a new "autosuspend" method in the host template) so that it canThat is most certainly a mistake.Why?quoted
Is there a good reason to not modify to extend suspend() to take an extra argument for the reason it is called?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. Pavel -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html