Re: Nested suspends; messages vs. states

David Brownell
2005-03-24T18:08:39Z

[-- Attachment #1: Type: text/plain, Size: 1312 bytes --]

On Thursday 24 March 2005 9:41 am, Patrick Mochel wrote:
>
>
> That's a bit of a stretch. While it's true that some devices can generate
> wakeup interrupts, they are not servicing normal requests. Enabling the
> wakeup events seems to imply disabling other services.

There's not much distinction between wakeup irqs and "normal" ones.
Normally they're one and the same. (That's not OMAP-specific.)

> It sounds like in the case you speak of, the devices are still doing
> 'normal' work, but it also seems like that normal work is self-contained
> in the device and doesn't need any code executed on a CPU to do so (like
> via an ISR).

Well, the IRQ would transition the SOC out of say "big sleep", then the
ISR would run. (I'm not sure whether DMAs can stay active in big sleep.)

Just this morning I saw an experimental patch teaching the smc91x Ethernet
driver -- external chip, hooked up to many OMAP devel boards -- to setup
its GPIO IRQ line as a wakeup IRQ. So the normal work of receiving
and transmitting packets using that chip's local buffers could go on while
the SOC went to sleep.

You're right, it sounds _just_ like that! :)

One reason I mentioned the AT91rm9200 is because it has a "slow clock mode"
where the CPU itself is running at 32KHz. Variations on a low-power theme.

- Dave