[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20150813095048.GA4215@atomide.com>
Date: Thu, 13 Aug 2015 02:50:48 -0700
From: Tony Lindgren <tony@...mide.com>
To: Grygorii Strashko <grygorii.strashko@...com>
Cc: tglx@...utronix.de, marc.zyngier@....com, linux@....linux.org.uk,
nsekhar@...com, jason@...edaemon.net, balbi@...com,
linux-omap@...r.kernel.org, linux-arm-kernel@...ts.infradead.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2 5/6] ARM: OMAP: wakeupgen: fix arm gic irq type
configuration
* Grygorii Strashko <grygorii.strashko@...com> [150812 10:49]:
> It's observed that ARM GIC IRQ triggering type is not configured
> properly when IRQ is routed through IRQ domain hierarchy and
> system started using DT. As result, system will start using default
> ARM GIC configuration, ignore DT IRQ triggering configuration,
> and value of desc->irq_data.state_use_accessors = 0.
>
> In case of TI OMAP DRA7 the following IRQ hierarchy is defined:
> ARM GIC <- OMAP wakeupgen <- TI CBAR
>
> Failed call chain:
> irq_create_of_mapping
> irq_set_irq_type
> __irq_set_trigger
> if (!chip || !chip->irq_set_type) {
> return 0; <- return here
> }
> OMAP wakeupgen has no .irq_set_type() defined and, so, IRQ triggering
> configuration will not be propagated to parent IRQ domain.
>
> Hence, fix it by using irq_chip_set_type_parent() for
> propagation IRQ triggering type to parent IRQ domains.
>
> Fixes: 7136d457f365 ('ARM: omap: convert wakeupgen to stacked domains')
> Signed-off-by: Grygorii Strashko <grygorii.strashko@...com>
Makse sense to merge this along with the irqchip changes once those
are ready, so feel free to add to this one:
Acked-by: Tony Lindgren <tony@...mide.com>
> ---
> arch/arm/mach-omap2/omap-wakeupgen.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/arch/arm/mach-omap2/omap-wakeupgen.c b/arch/arm/mach-omap2/omap-wakeupgen.c
> index 8e52621..e1d2e99 100644
> --- a/arch/arm/mach-omap2/omap-wakeupgen.c
> +++ b/arch/arm/mach-omap2/omap-wakeupgen.c
> @@ -392,6 +392,7 @@ static struct irq_chip wakeupgen_chip = {
> .irq_mask = wakeupgen_mask,
> .irq_unmask = wakeupgen_unmask,
> .irq_retrigger = irq_chip_retrigger_hierarchy,
> + .irq_set_type = irq_chip_set_type_parent,
> .flags = IRQCHIP_SKIP_SET_WAKE | IRQCHIP_MASK_ON_SUSPEND,
> #ifdef CONFIG_SMP
> .irq_set_affinity = irq_chip_set_affinity_parent,
> --
> 2.5.0
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists