Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1359946
| From | Jon Hunter <jonathanh@nvidia.com> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | Re: [PATCH 08/15] genirq: Add runtime power management support for IRQ chips |
| Date | 2016-03-17 16:20 +0100 |
| Message-ID | <rdHSq-Dd-19@gated-at.bofh.it> (permalink) |
| References | <rdGWl-8uZ-9@gated-at.bofh.it> <rdH62-6P-27@gated-at.bofh.it> <rdHIK-zS-31@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
Hi Marc,
On 17/03/16 15:02, Marc Zyngier wrote:
> Hi Jon,
>
> On 17/03/16 14:19, Jon Hunter wrote:
>> Some IRQ chips may be located in a power domain outside of the CPU
>> subsystem and hence will require device specific runtime power
>> management. In order to support such IRQ chips, add a pointer for a
>> device structure to the irq_chip structure, and if this pointer is
>> populated by the IRQ chip driver and CONFIG_PM is selected in the kernel
>> configuration, then the pm_runtime_get/put APIs for this chip will be
>> called when an IRQ is requested/freed, respectively.
>>
>> When entering system suspend and each interrupt is disabled if there is
>> no wake-up set for that interrupt. For an IRQ chip that utilises runtime
>> power management, print a warning message for each active interrupt that
>> has no wake-up set because these interrupts may be unnecessarily keeping
>> the IRQ chip enabled during system suspend.
>>
>> Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
>> ---
>> include/linux/irq.h | 5 +++++
>> kernel/irq/chip.c | 52 ++++++++++++++++++++++++++++++++++++++++++++++++++
>> kernel/irq/internals.h | 1 +
>> kernel/irq/manage.c | 14 +++++++++++---
>> kernel/irq/pm.c | 3 +++
>> 5 files changed, 72 insertions(+), 3 deletions(-)
>>
>> diff --git a/include/linux/irq.h b/include/linux/irq.h
>> index c4de62348ff2..82f36390048d 100644
>> --- a/include/linux/irq.h
>> +++ b/include/linux/irq.h
>> @@ -315,6 +315,7 @@ static inline irq_hw_number_t irqd_to_hwirq(struct irq_data *d)
>> /**
>> * struct irq_chip - hardware interrupt chip descriptor
>> *
>> + * @parent: pointer to associated device
>> * @name: name for /proc/interrupts
>> * @irq_startup: start up the interrupt (defaults to ->enable if NULL)
>> * @irq_shutdown: shut down the interrupt (defaults to ->disable if NULL)
>> @@ -354,6 +355,7 @@ static inline irq_hw_number_t irqd_to_hwirq(struct irq_data *d)
>> * @flags: chip specific flags
>> */
>> struct irq_chip {
>> + struct device *parent;
>
> Nit: Please don't call this just "parent". We have parent fields in
> irq_data and irq_domain structures, and they always are a pointer to the
> same type, indicating some form of stacking. Here, we're pointing to a
> different type altogether...
>
> How about calling it "dev", or "device" instead? It would make it much
> clearer that when crossing that pointer, we're in another subsystem
> altogether.
I will defer to Linus W here, as it was his request we make this
'parent' and not 'dev'. See ...
http://marc.info/?l=linux-kernel&m=145035839623442&w=2
> I'll come back to the rest of the patch a bit later, but I wanted to put
> that one out right away... ;-)
Thanks,
Jon
Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
[PATCH 00/15] Add support for Tegra210 AGIC Jon Hunter <jonathanh@nvidia.com> - 2016-03-17 15:30 +0100
[PATCH 05/15] irqchip: Mask the non-type/sense bits when translating an IRQ Jon Hunter <jonathanh@nvidia.com> - 2016-03-17 15:30 +0100
[PATCH 09/15] irqchip/gic: Don't initialise chip if mapping IO space fails Jon Hunter <jonathanh@nvidia.com> - 2016-03-17 15:30 +0100
[PATCH 02/15] ARM: OMAP: Correct interrupt type for ARM TWD Jon Hunter <jonathanh@nvidia.com> - 2016-03-17 15:30 +0100
Re: [PATCH 02/15] ARM: OMAP: Correct interrupt type for ARM TWD Grygorii Strashko <grygorii.strashko@ti.com> - 2016-03-18 16:50 +0100
Re: [PATCH 02/15] ARM: OMAP: Correct interrupt type for ARM TWD Jon Hunter <jonathanh@nvidia.com> - 2016-03-29 16:10 +0200
Re: [PATCH 02/15] ARM: OMAP: Correct interrupt type for ARM TWD Tony Lindgren <tony@atomide.com> - 2016-03-30 23:30 +0200
[PATCH 10/15] irqchip/gic: Remove static irq_chip definition for eoimode1 Jon Hunter <jonathanh@nvidia.com> - 2016-03-17 15:30 +0100
Re: [PATCH 10/15] irqchip/gic: Remove static irq_chip definition for eoimode1 Linus Walleij <linus.walleij@linaro.org> - 2016-03-22 12:50 +0100
[PATCH 08/15] genirq: Add runtime power management support for IRQ chips Jon Hunter <jonathanh@nvidia.com> - 2016-03-17 15:30 +0100
Re: [PATCH 08/15] genirq: Add runtime power management support for IRQ chips Marc Zyngier <marc.zyngier@arm.com> - 2016-03-17 16:10 +0100
Re: [PATCH 08/15] genirq: Add runtime power management support for IRQ chips Jon Hunter <jonathanh@nvidia.com> - 2016-03-17 16:20 +0100
Re: [PATCH 08/15] genirq: Add runtime power management support for IRQ chips Marc Zyngier <marc.zyngier@arm.com> - 2016-03-17 16:30 +0100
Re: [PATCH 08/15] genirq: Add runtime power management support for IRQ chips Linus Walleij <linus.walleij@linaro.org> - 2016-03-22 12:50 +0100
Re: [PATCH 08/15] genirq: Add runtime power management support for IRQ chips Thomas Gleixner <tglx@linutronix.de> - 2016-03-17 16:10 +0100
Re: [PATCH 08/15] genirq: Add runtime power management support for IRQ chips Jon Hunter <jonathanh@nvidia.com> - 2016-03-17 16:50 +0100
Re: [PATCH 08/15] genirq: Add runtime power management support for IRQ chips Grygorii Strashko <grygorii.strashko@ti.com> - 2016-03-18 12:20 +0100
Re: [PATCH 08/15] genirq: Add runtime power management support for IRQ chips Jon Hunter <jonathanh@nvidia.com> - 2016-03-18 13:30 +0100
Re: [PATCH 08/15] genirq: Add runtime power management support for IRQ chips Grygorii Strashko <grygorii.strashko@ti.com> - 2016-03-18 15:30 +0100
Re: [PATCH 08/15] genirq: Add runtime power management support for IRQ chips Jon Hunter <jonathanh@nvidia.com> - 2016-03-18 15:50 +0100
Re: [PATCH 08/15] genirq: Add runtime power management support for IRQ chips Jon Hunter <jonathanh@nvidia.com> - 2016-03-18 16:00 +0100
Re: [PATCH 08/15] genirq: Add runtime power management support for IRQ chips Grygorii Strashko <grygorii.strashko@ti.com> - 2016-03-18 19:00 +0100
Re: [PATCH 08/15] genirq: Add runtime power management support for IRQ chips Jon Hunter <jonathanh@nvidia.com> - 2016-03-21 11:10 +0100
[PATCH 12/15] irqchip/gic: Pass GIC pointer to save/restore functions Jon Hunter <jonathanh@nvidia.com> - 2016-03-17 15:30 +0100
[PATCH 13/15] irqchip/gic: Prepare for adding platform driver Jon Hunter <jonathanh@nvidia.com> - 2016-03-17 15:30 +0100
Re: [PATCH 13/15] irqchip/gic: Prepare for adding platform driver Geert Uytterhoeven <geert@linux-m68k.org> - 2016-03-29 15:10 +0200
Re: [PATCH 13/15] irqchip/gic: Prepare for adding platform driver Jon Hunter <jonathanh@nvidia.com> - 2016-03-29 16:00 +0200
[PATCH 04/15] irqchip/gic: WARN if setting the interrupt type fails Jon Hunter <jonathanh@nvidia.com> - 2016-03-17 15:30 +0100
Re: [PATCH 04/15] irqchip/gic: WARN if setting the interrupt type fails Thomas Gleixner <tglx@linutronix.de> - 2016-03-17 16:00 +0100
Re: [PATCH 04/15] irqchip/gic: WARN if setting the interrupt type fails Jon Hunter <jonathanh@nvidia.com> - 2016-03-17 16:10 +0100
Re: [PATCH 04/15] irqchip/gic: WARN if setting the interrupt type fails Jason Cooper <jason@lakedaemon.net> - 2016-03-17 16:20 +0100
Re: [PATCH 04/15] irqchip/gic: WARN if setting the interrupt type fails Jon Hunter <jonathanh@nvidia.com> - 2016-03-17 17:30 +0100
Re: [PATCH 04/15] irqchip/gic: WARN if setting the interrupt type fails Geert Uytterhoeven <geert@linux-m68k.org> - 2016-03-18 10:30 +0100
Re: [PATCH 04/15] irqchip/gic: WARN if setting the interrupt type fails Jon Hunter <jonathanh@nvidia.com> - 2016-03-18 11:00 +0100
Re: [PATCH 04/15] irqchip/gic: WARN if setting the interrupt type fails Geert Uytterhoeven <geert@linux-m68k.org> - 2016-03-18 11:30 +0100
[PATCH 03/15] irqchip/gic: Don't unnecessarily write the IRQ configuration Jon Hunter <jonathanh@nvidia.com> - 2016-03-17 15:30 +0100
[PATCH 14/15] dt-bindings: arm-gic: Drop 'clock-names' from binding document Jon Hunter <jonathanh@nvidia.com> - 2016-03-17 15:30 +0100
Re: [PATCH 14/15] dt-bindings: arm-gic: Drop 'clock-names' from binding document Rob Herring <robh+dt@kernel.org> - 2016-03-17 21:20 +0100
Re: [PATCH 14/15] dt-bindings: arm-gic: Drop 'clock-names' from binding document Jon Hunter <jonathanh@nvidia.com> - 2016-03-18 09:40 +0100
Re: [PATCH 14/15] dt-bindings: arm-gic: Drop 'clock-names' from binding document Geert Uytterhoeven <geert@linux-m68k.org> - 2016-03-18 10:20 +0100
Re: [PATCH 14/15] dt-bindings: arm-gic: Drop 'clock-names' from binding document Jon Hunter <jonathanh@nvidia.com> - 2016-03-18 11:20 +0100
Re: [PATCH 14/15] dt-bindings: arm-gic: Drop 'clock-names' from binding document Geert Uytterhoeven <geert@linux-m68k.org> - 2016-03-18 12:00 +0100
Re: [PATCH 14/15] dt-bindings: arm-gic: Drop 'clock-names' from binding document Jon Hunter <jonathanh@nvidia.com> - 2016-03-18 12:00 +0100
Re: [PATCH 14/15] dt-bindings: arm-gic: Drop 'clock-names' from binding document Geert Uytterhoeven <geert@linux-m68k.org> - 2016-03-18 13:10 +0100
Re: [PATCH 14/15] dt-bindings: arm-gic: Drop 'clock-names' from binding document Grygorii Strashko <grygorii.strashko@ti.com> - 2016-03-18 13:50 +0100
Re: [PATCH 14/15] dt-bindings: arm-gic: Drop 'clock-names' from binding document Geert Uytterhoeven <geert@linux-m68k.org> - 2016-03-18 14:10 +0100
Re: [PATCH 14/15] dt-bindings: arm-gic: Drop 'clock-names' from binding document Grygorii Strashko <grygorii.strashko@ti.com> - 2016-03-18 19:40 +0100
Re: [PATCH 14/15] dt-bindings: arm-gic: Drop 'clock-names' from binding document Jon Hunter <jonathanh@nvidia.com> - 2016-03-18 13:50 +0100
[PATCH 11/15] irqchip/gic: Return an error if GIC initialisation fails Jon Hunter <jonathanh@nvidia.com> - 2016-03-17 15:30 +0100
[PATCH 15/15] irqchip/gic: Add support for tegra AGIC interrupt controller Jon Hunter <jonathanh@nvidia.com> - 2016-03-17 15:30 +0100
csiph-web