Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1327807

Re: [RFC PATCH V2 3/8] genirq: Add runtime power management support for IRQ chips

From Linus Walleij <linus.walleij@linaro.org>
Newsgroups linux.kernel
Subject Re: [RFC PATCH V2 3/8] genirq: Add runtime power management support for IRQ chips
Date 2016-02-05 15:40 +0100
Message-ID <qYPIf-1t6-31@gated-at.bofh.it> (permalink)
References (2 earlier) <qSji2-1ZW-47@gated-at.bofh.it> <qSC1l-6y1-19@gated-at.bofh.it> <qT31w-8um-13@gated-at.bofh.it> <qTmQy-5jR-11@gated-at.bofh.it> <qTtyG-1tD-17@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On Thu, Jan 21, 2016 at 8:51 PM, Thomas Gleixner <tglx@linutronix.de> wrote:

> So as long as an interrupt handler is installed, there is no sane way that we
> can decide to power down the irq chip, unless that chip has the magic ability
> to relay incoming interrupts while powered down :)

Actually isn't that exactly what almost every SoC that supports
deepsleep does?

They power off the primary interrupt controller and arm the padring
of the SoC with an asynchronous edge detector to wake up as soon
as something happens on a few select lines, like a keypad button
or whatnot.

The asynchronous edge detector is handled by the ROM or some
power-management microcontroller, which wakes up the system
and restores power to the CPU and primary interrupt controller.
That is the magic ability right there.

Of course as the wakeup signal may be deasserted at the
point the system actually comes back up, so the magic ROM
power management unit then needs to latch
any latent IRQs from some shadow register to the primary interrupt
controller, which as far as I've seen is done by out-of-tree hacks
similar to the irq_[get/set]_irqchip_state() implemented
by Marc Zyngier, albeit for virtualization.

I've not seen it on any non-primary interrupt controller though.

Yours,
Linus Walleij

Back to linux.kernel | Previous | Next | Find similar | Unroll thread


Thread

Re: [RFC PATCH V2 3/8] genirq: Add runtime power management support  for IRQ chips Linus Walleij <linus.walleij@linaro.org> - 2016-02-05 15:40 +0100

csiph-web