[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <e1e4f8de-e59b-0459-cc32-bed7181f8872@arm.com>
Date: Tue, 30 Jan 2018 17:01:36 +0000
From: Marc Zyngier <marc.zyngier@....com>
To: fangxiang <fangxiang3@...wei.com>, tglx@...utronix.de,
ljason@...edaemon.net
Cc: linux-kernel@...r.kernel.org, gengyanping@...ilicon.com
Subject: Re: [PATCH] irqchip/gic-v3: Fix gic_chip specific flag
On 30/01/18 02:56, fangxiang wrote:
> Both IRQCHIP_SKIP_SET_WAKE and .irq_set_wake() is
> not set in gic_chip V3. This causes
> set_irq_wake_real() return -ENXIO and a
> WARN(Unbalanced IRQ ... wake disable ...) in
> irq_set_irq_wake().
>
> Signed-off-by: fangxiang <fangxiang3@...wei.com>
> ---
> drivers/irqchip/irq-gic-v3.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/irqchip/irq-gic-v3.c b/drivers/irqchip/irq-gic-v3.c
> index b56c3e2..e8104b8 100644
> --- a/drivers/irqchip/irq-gic-v3.c
> +++ b/drivers/irqchip/irq-gic-v3.c
> @@ -800,7 +800,8 @@ static inline void gic_cpu_pm_init(void) { }
> .irq_set_affinity = gic_set_affinity,
> .irq_get_irqchip_state = gic_irq_get_irqchip_state,
> .irq_set_irqchip_state = gic_irq_set_irqchip_state,
> - .flags = IRQCHIP_SET_TYPE_MASKED,
> + .flags = IRQCHIP_SET_TYPE_MASKED |
> + IRQCHIP_SKIP_SET_WAKE,
> };
>
> static struct irq_chip gic_eoimode1_chip = {
>
That's sort of expected (the GIC itself doesn't implement any wake-up
mechanism), *unless* you have have a separate, stacked irqchip
implementing irq_set_wake. From your commit message, I cannot deduce
whether that's the case or not.
Please describe what you are fixing, and to what context this applies to.
Thanks,
M.
--
Jazz is not dead. It just smells funny...
Powered by blists - more mailing lists