Thread (24 messages) 24 messages, 6 authors, 2014-10-13

[PATCH v3 3/7] irqchip: gic: Support hierarchy irq domain.

From: arnd@arndb.de (Arnd Bergmann)
Date: 2014-10-13 19:51:48
Also in: linux-devicetree, lkml

On Monday 13 October 2014 13:10:32 Marc Zyngier wrote:
On 13/10/14 11:43, Joe.C wrote:
quoted
On Thu, 2014-10-09 at 17:59 +0100, Marc Zyngier wrote:
quoted
On 09/10/14 15:29, Joe.C wrote
quoted
@@ -952,7 +988,11 @@ void __init gic_init_bases(unsigned int gic_nr, int irq_start,
 
    gic_irqs -= hwirq_base; /* calculate # of irqs to allocate */
 
-   if (of_property_read_u32(node, "arm,routable-irqs",
+   if (IS_ENABLED(CONFIG_IRQ_DOMAIN_HIERARCHY) &&
+           of_find_property(node, "arm,irq-domain-hierarchy", NULL))
+           gic->domain = irq_domain_add_linear(node, gic_irqs,
+                                   &gic_irq_domain_hierarchy_ops, gic);
I really think that looking for a property is the wrong thing to do. If
"node" is non-NULL, then we're pretty sure that we're initializing from
DT, and that a pure linear domain should be the right thing, leaving the
legacy stuff for the few non-DT platforms that are still around.

Thanks,

     M.
The only reason I introduce "arm,irq-domain-hierarchy" property is
trying to keep original behavior when hierarchy irq domain is not used.
Without this, when a board init GIC with DT, all driver will have to use
devicetree. I'm not sure we want to break things like this.
I don't think we want to support a "middle of the road" setup, where the
GIC is probed by DT, but some devices have hardcoded interrupts.
Agreed. We should work on making GIC DT-only by converting the few remaining
users instead, and certainly should not add any new board files that
might use the domain hierarchy code.

	Arnd
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help