Re: [PATCH 2/2] Fix console handling during suspend/resume

Pavel Machek
2006-06-15T17:51:22Z

Hi!

> > To have DMAs stopped, you need to "freeze" the devices.
>
> No you don't.
>
> You need to stop the high-level _queues_, but that's something totally
> different from actually stopping the _devices_.

Well, I believe you need the low-level devices, too. Even with
high-level queues stopped, drivers may still do some DMA. (USB is the
example, as is network receiving packet).

> But that's fundamental: and it has absolutely zero to do with device
> suspend (although you do want to tell the device about it - a number of
> devices that do polling even in the absense of user input should probably
> take the hint from "save your state").

Heh, yes, that's what we are doing :-). FREEZE tells devices to stop
DMA and save state. It is just... most devices tend to implement
FREEZE and SUSPEND with some code; and because SUSPEND implies
stopping DMA (plus some powersaving), it is actually okay (but slower
than it could be).

Pavel
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html