swsusp & modules [was Re: [linux-pm] [Fwd: Re: PM messages]]

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

 



Hi!

> With the correct list address this time...
> 
> BTW, When do we plan the next irc meeting ?

I guess we should do more patches and less meetings :-).

> > Hmm, it is actually pretty nasty do powerdown devices between freeze
> > and unfreeze... As long as you are not using modules, you can count on
> > hardware being initialized by image being booted.. That does not work
> > with modules :-(.
> 
> What do you mean ? I don't understand your point with modules.

> In some cases, devices will be "left" from a frozen state and will
> be "recovered" from a power-on-reset state, in some others (like
> BIOS assisted S4), I suspect some device may still be in the sleeping
> state when the unfreeze gets there.

Yes. In swsusp, no-modules case, hardware is always
initialized. [Because kernel did almost normal boot, and that
initializes devices, right?]

In swsusp, modules case, hardware is not initializes... and that is
not nice thing to do to a driver I realize.

> Drivers will have to deal with that, but it may be of some help to
> them if we could give some more precise indication at resume() time
> of what actually happened: Is this a normal "live" unfreeze or is this
> the real resume after suspend. I don't have a device that actually
> cares at this point, so I'm not talking about a real life scenario.

That should be rather easy to add.

Note: If we say that this is "real resume after suspend", it is
possible that hardware still was initialized (swsusp, no-modules case,
see above).

> On another note, while I do want a struct to be passed as the PM
> message, I'd like that struct to contain a scalar, since I want it to
> be easy for drivers to use switch/case constructs. I can foresee
> various cases where the drivers will fold 2 cases in one (like do the
> same thing for freeze/idle/suspend, or do the same thing for idle/suspend,
> same goes if we ever add this parameter to resume()). I don't like
> piling up if/else statements ...

I'd prefer drivers not to look inside struct for now. All but 2 should
be handled by "system_to_pci_level()"... and that can return scalar
just fine.

								Pavel
-- 
People were complaining that M$ turns users into beta-testers...
...jr ghea gurz vagb qrirybcref, naq gurl frrz gb yvxr vg gung jnl!


[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