[linux-pm] Re: [linux-usb-devel] [patch 2.6.10-rc1-bk] usb PM updates (0/4)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



[Moved to linux-pm mailing list]

On Mon, 8 Nov 2004, David Brownell wrote:

> I've got to catch up on those linux-pm discussions (I was doing
> some PM work instead of discussing it :) ... but last time I
> checked in, I didn't like the way "frozen" was getting addressed.
> 
> It was looking more and more like a swsusp-specific state that's
> just a workaround for not having selective resume for the device
> on which the swsusp snapshot would be written out...

That's not how I see it at all.  FREEZE has no relation to selectively
resuming the swap device, and in fact Pavel was pretty much opposed to
doing that kind of selective resume.  Rather it's a way to separate out
the two different requirements needed for power management: telling a
driver to idle its device (FREEZE) and telling a driver to change the
device's power level (SUSPEND).

> > Exactly.  Drivers should stop everything whenever their interface is
> > frozen.  Only usbcore should worry about actually changing power levels
> > during a SUSPEND call.  (It may turn out, by coincidence, that a frozen
> > device does end up getting suspended -- if the controller is UHCI for
> > instance -- but that shouldn't affect anything.)
> 
> Except it doesn't seem to me like it can be so neat,
> especially given those examples where "frozen" is by
> definition a power reduced state.  (No audio out,
> so the device disables all that circuitry...)

That's just a harmless side effect.  Unbinding an audio driver and setting 
the interface to altsetting 0 might do the same thing -- it's not relevant 
here.  There's nothing wrong with a device using less power at certain 
times.  What matters is that if the interface is frozen but the device 
isn't then the device really isn't suspended; you can send URBs to it, 
change its state, and so on.

> The last notion that made sense to me was having
> "frozen" just be another suspend state ... one that
> places even fewer constraints than system-S1 does.

Don't confuse driver states with device states.  FREEZE is primarily a 
driver notion whereas SUSPEND is definitely a device state (although 
it implies FREEZE, of course).

Alan Stern



[Index of Archives]     [Linux ACPI]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [CPU Freq]     [Kernel Newbies]     [Fedora Kernel]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux