> > Nope, it's a definition. Suspend/resume involves preserving > > state. If they didn't keep power, they couldn't keep that state, > > and they had to (re)initialize. Just like unplug/replug. > > This one I don't understand - why do you claim a buspowered device > couldn't keep state over suspend/resume?
Actually I didn't say that for all of them, just the ones on the other side of a bus powered hub: > Suspend is quite different from power-cut as devices are still allowed to > draw up to 0.5mA from the suspended USB (see 9.2.3, USB spec.). Might be enough to handle a bus powered hub, but not on the other side of it: 0.5mA for the hub and four ports is 2.5mA, too much power to draw. So the hub won't provide power to those devices. > While > being enough for a pm-aware microcontroler to keep its state information > (like fn-address, device-config, interface alternate setting) in the > microcontroler registers, it's probably insufficient to keep the firmware > running or even to have an external ram powered. Hence the device _does_ > keep its state, but needs to reload firmware (or parts of) on resume. Maybe. But nobody has yet provided examples of specific products that behave that way, so I remain skeptical. Since device designers know they must retain state with 0.5mA, they design with that in mind. - Dave > And the device might simply use an eeprom to save and restore its state > during suspend/resume. The required state information can be reduced to > only a few bytes - which are easy to write to some eeprom during the > 10ms the device may take to complete suspending. > > Martin > _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel