All of lore.kernel.org
 help / color / mirror / Atom feed
From: Felipe Balbi <balbi@ti.com>
To: Tony Lindgren <tony@atomide.com>
Cc: Linux OMAP Mailing List <linux-omap@vger.kernel.org>,
	Linux ARM Kernel Mailing List 
	<linux-arm-kernel@lists.infradead.org>, <bcousson@baylibre.com>,
	<linux@arm.linux.org.uk>, <khilman@deeprootsystems.com>,
	<tglx@linutronix.de>, <jason@lakedaemon.net>,
	<devicetree@vger.kernel.org>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	Felipe Balbi <balbi@ti.com>
Subject: [PATCH 29/35] arm: omap: intc: switch over to linear irq domain
Date: Mon, 28 Jul 2014 16:16:17 -0500	[thread overview]
Message-ID: <1406582183-696-30-git-send-email-balbi@ti.com> (raw)
In-Reply-To: <1406582183-696-1-git-send-email-balbi@ti.com>

now that we don't need to support legacy board-files,
we can completely switch over to a linear irq domain
and make use of irq_alloc_domain_generic_chips() to
allocate all generic irq chips for us.

Signed-off-by: Felipe Balbi <balbi@ti.com>
---
 arch/arm/mach-omap2/irq.c | 88 ++++++++++++++++++++++++++++++++++++++++++-----
 1 file changed, 79 insertions(+), 9 deletions(-)

diff --git a/arch/arm/mach-omap2/irq.c b/arch/arm/mach-omap2/irq.c
index 43785ee..b2993e4 100644
--- a/arch/arm/mach-omap2/irq.c
+++ b/arch/arm/mach-omap2/irq.c
@@ -188,14 +188,51 @@ void omap3_intc_suspend(void)
 	omap_ack_irq(NULL);
 }
 
-static __init void
-omap_alloc_gc(void __iomem *base, unsigned int irq_start, unsigned int num)
+static int __init omap_alloc_gc_of(struct irq_domain *d, void __iomem *base)
+{
+	int ret;
+	int i;
+
+	ret = irq_alloc_domain_generic_chips(d, 32, 1, "INTC",
+			handle_level_irq, IRQ_NOREQUEST | IRQ_NOPROBE,
+			IRQ_LEVEL, 0);
+	if (ret) {
+		pr_warn("Failed to allocate irq chips\n");
+		return ret;
+	}
+
+	for (i = 0; i < omap_nr_pending; i++) {
+		struct irq_chip_generic *gc;
+		struct irq_chip_type *ct;
+
+		gc = irq_get_domain_generic_chip(d, 32 * i);
+		gc->reg_base = base;
+		ct = gc->chip_types;
+
+		ct->type = IRQ_TYPE_LEVEL_MASK;
+		ct->handler = handle_level_irq;
+
+		ct->chip.irq_ack = omap_mask_ack_irq;
+		ct->chip.irq_mask = irq_gc_mask_disable_reg;
+		ct->chip.irq_unmask = irq_gc_unmask_enable_reg;
+
+		ct->chip.flags |= IRQCHIP_SKIP_SET_WAKE;
+
+		ct->regs.enable = INTC_MIR_CLEAR0 + 32 * i;
+		ct->regs.disable = INTC_MIR_SET0 + 32 * i;
+	}
+
+	return 0;
+}
+
+static void __init omap_alloc_gc_legacy(void __iomem *base,
+		unsigned int irq_start, unsigned int num)
 {
 	struct irq_chip_generic *gc;
 	struct irq_chip_type *ct;
 
 	gc = irq_alloc_generic_chip("INTC", 1, irq_start, base,
-					handle_level_irq);
+			handle_level_irq);
 	ct = gc->chip_types;
 	ct->chip.irq_ack = omap_mask_ack_irq;
 	ct->chip.irq_mask = irq_gc_mask_disable_reg;
@@ -205,16 +242,36 @@ omap_alloc_gc(void __iomem *base, unsigned int irq_start, unsigned int num)
 	ct->regs.enable = INTC_MIR_CLEAR0;
 	ct->regs.disable = INTC_MIR_SET0;
 	irq_setup_generic_chip(gc, IRQ_MSK(num), IRQ_GC_INIT_MASK_CACHE,
-				IRQ_NOREQUEST | IRQ_NOPROBE, 0);
+			IRQ_NOREQUEST | IRQ_NOPROBE, 0);
 }
 
-static void __init omap_init_irq(u32 base, struct device_node *node)
+static int __init omap_init_irq_of(struct device_node *node)
+{
+	int ret;
+
+	omap_irq_base = of_iomap(node, 0);
+	if (WARN_ON(!omap_irq_base))
+		return -ENOMEM;
+
+	domain = irq_domain_add_linear(node, omap_nr_irqs,
+			&irq_generic_chip_ops, NULL);
+
+	omap_irq_soft_reset();
+
+	ret = omap_alloc_gc_of(domain, omap_irq_base);
+	if (ret < 0)
+		irq_domain_remove(domain);
+
+	return ret;
+}
+
+static int __init omap_init_irq_legacy(u32 base)
 {
 	int j, irq_base;
 
 	omap_irq_base = ioremap(base, SZ_4K);
 	if (WARN_ON(!omap_irq_base))
-		return;
+		return -ENOMEM;
 
 	irq_base = irq_alloc_descs(-1, 0, omap_nr_irqs, 0);
 	if (irq_base < 0) {
@@ -222,13 +279,23 @@ static void __init omap_init_irq(u32 base, struct device_node *node)
 		irq_base = 0;
 	}
 
-	domain = irq_domain_add_legacy(node, omap_nr_irqs, irq_base, 0,
+	domain = irq_domain_add_legacy(NULL, omap_nr_irqs, irq_base, 0,
 			&irq_domain_simple_ops, NULL);
 
 	omap_irq_soft_reset();
 
 	for (j = 0; j < omap_nr_irqs; j += 32)
-		omap_alloc_gc(omap_irq_base + j, j + irq_base, 32);
+		omap_alloc_gc_legacy(omap_irq_base + j, j + irq_base, 32);
+
+	return 0;
+}
+
+static int __init omap_init_irq(u32 base, struct device_node *node)
+{
+	if (node)
+		return omap_init_irq_of(node);
+	else
+		return omap_init_irq_legacy(base);
 }
 
 static asmlinkage void __exception_irq_entry
@@ -294,6 +361,7 @@ static int __init intc_of_init(struct device_node *node,
 			     struct device_node *parent)
 {
 	struct resource res;
+	int ret;
 
 	omap_nr_pending = 3;
 	omap_nr_irqs = 96;
@@ -311,7 +379,9 @@ static int __init intc_of_init(struct device_node *node,
 		omap_nr_pending = 4;
 	}
 
-	omap_init_irq(res.start, of_node_get(node));
+	ret = omap_init_irq(-1, of_node_get(node));
+	if (ret < 0)
+		return ret;
 
 	set_handle_irq(omap_intc_handle_irq);
 
-- 
2.0.1.563.g66f467c


WARNING: multiple messages have this Message-ID (diff)
From: Felipe Balbi <balbi@ti.com>
To: Tony Lindgren <tony@atomide.com>
Cc: Linux OMAP Mailing List <linux-omap@vger.kernel.org>,
	Linux ARM Kernel Mailing List
	<linux-arm-kernel@lists.infradead.org>,
	bcousson@baylibre.com, linux@arm.linux.org.uk,
	khilman@deeprootsystems.com, tglx@linutronix.de,
	jason@lakedaemon.net, devicetree@vger.kernel.org,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	Felipe Balbi <balbi@ti.com>
Subject: [PATCH 29/35] arm: omap: intc: switch over to linear irq domain
Date: Mon, 28 Jul 2014 16:16:17 -0500	[thread overview]
Message-ID: <1406582183-696-30-git-send-email-balbi@ti.com> (raw)
In-Reply-To: <1406582183-696-1-git-send-email-balbi@ti.com>

now that we don't need to support legacy board-files,
we can completely switch over to a linear irq domain
and make use of irq_alloc_domain_generic_chips() to
allocate all generic irq chips for us.

Signed-off-by: Felipe Balbi <balbi@ti.com>
---
 arch/arm/mach-omap2/irq.c | 88 ++++++++++++++++++++++++++++++++++++++++++-----
 1 file changed, 79 insertions(+), 9 deletions(-)

diff --git a/arch/arm/mach-omap2/irq.c b/arch/arm/mach-omap2/irq.c
index 43785ee..b2993e4 100644
--- a/arch/arm/mach-omap2/irq.c
+++ b/arch/arm/mach-omap2/irq.c
@@ -188,14 +188,51 @@ void omap3_intc_suspend(void)
 	omap_ack_irq(NULL);
 }
 
-static __init void
-omap_alloc_gc(void __iomem *base, unsigned int irq_start, unsigned int num)
+static int __init omap_alloc_gc_of(struct irq_domain *d, void __iomem *base)
+{
+	int ret;
+	int i;
+
+	ret = irq_alloc_domain_generic_chips(d, 32, 1, "INTC",
+			handle_level_irq, IRQ_NOREQUEST | IRQ_NOPROBE,
+			IRQ_LEVEL, 0);
+	if (ret) {
+		pr_warn("Failed to allocate irq chips\n");
+		return ret;
+	}
+
+	for (i = 0; i < omap_nr_pending; i++) {
+		struct irq_chip_generic *gc;
+		struct irq_chip_type *ct;
+
+		gc = irq_get_domain_generic_chip(d, 32 * i);
+		gc->reg_base = base;
+		ct = gc->chip_types;
+
+		ct->type = IRQ_TYPE_LEVEL_MASK;
+		ct->handler = handle_level_irq;
+
+		ct->chip.irq_ack = omap_mask_ack_irq;
+		ct->chip.irq_mask = irq_gc_mask_disable_reg;
+		ct->chip.irq_unmask = irq_gc_unmask_enable_reg;
+
+		ct->chip.flags |= IRQCHIP_SKIP_SET_WAKE;
+
+		ct->regs.enable = INTC_MIR_CLEAR0 + 32 * i;
+		ct->regs.disable = INTC_MIR_SET0 + 32 * i;
+	}
+
+	return 0;
+}
+
+static void __init omap_alloc_gc_legacy(void __iomem *base,
+		unsigned int irq_start, unsigned int num)
 {
 	struct irq_chip_generic *gc;
 	struct irq_chip_type *ct;
 
 	gc = irq_alloc_generic_chip("INTC", 1, irq_start, base,
-					handle_level_irq);
+			handle_level_irq);
 	ct = gc->chip_types;
 	ct->chip.irq_ack = omap_mask_ack_irq;
 	ct->chip.irq_mask = irq_gc_mask_disable_reg;
@@ -205,16 +242,36 @@ omap_alloc_gc(void __iomem *base, unsigned int irq_start, unsigned int num)
 	ct->regs.enable = INTC_MIR_CLEAR0;
 	ct->regs.disable = INTC_MIR_SET0;
 	irq_setup_generic_chip(gc, IRQ_MSK(num), IRQ_GC_INIT_MASK_CACHE,
-				IRQ_NOREQUEST | IRQ_NOPROBE, 0);
+			IRQ_NOREQUEST | IRQ_NOPROBE, 0);
 }
 
-static void __init omap_init_irq(u32 base, struct device_node *node)
+static int __init omap_init_irq_of(struct device_node *node)
+{
+	int ret;
+
+	omap_irq_base = of_iomap(node, 0);
+	if (WARN_ON(!omap_irq_base))
+		return -ENOMEM;
+
+	domain = irq_domain_add_linear(node, omap_nr_irqs,
+			&irq_generic_chip_ops, NULL);
+
+	omap_irq_soft_reset();
+
+	ret = omap_alloc_gc_of(domain, omap_irq_base);
+	if (ret < 0)
+		irq_domain_remove(domain);
+
+	return ret;
+}
+
+static int __init omap_init_irq_legacy(u32 base)
 {
 	int j, irq_base;
 
 	omap_irq_base = ioremap(base, SZ_4K);
 	if (WARN_ON(!omap_irq_base))
-		return;
+		return -ENOMEM;
 
 	irq_base = irq_alloc_descs(-1, 0, omap_nr_irqs, 0);
 	if (irq_base < 0) {
@@ -222,13 +279,23 @@ static void __init omap_init_irq(u32 base, struct device_node *node)
 		irq_base = 0;
 	}
 
-	domain = irq_domain_add_legacy(node, omap_nr_irqs, irq_base, 0,
+	domain = irq_domain_add_legacy(NULL, omap_nr_irqs, irq_base, 0,
 			&irq_domain_simple_ops, NULL);
 
 	omap_irq_soft_reset();
 
 	for (j = 0; j < omap_nr_irqs; j += 32)
-		omap_alloc_gc(omap_irq_base + j, j + irq_base, 32);
+		omap_alloc_gc_legacy(omap_irq_base + j, j + irq_base, 32);
+
+	return 0;
+}
+
+static int __init omap_init_irq(u32 base, struct device_node *node)
+{
+	if (node)
+		return omap_init_irq_of(node);
+	else
+		return omap_init_irq_legacy(base);
 }
 
 static asmlinkage void __exception_irq_entry
@@ -294,6 +361,7 @@ static int __init intc_of_init(struct device_node *node,
 			     struct device_node *parent)
 {
 	struct resource res;
+	int ret;
 
 	omap_nr_pending = 3;
 	omap_nr_irqs = 96;
@@ -311,7 +379,9 @@ static int __init intc_of_init(struct device_node *node,
 		omap_nr_pending = 4;
 	}
 
-	omap_init_irq(res.start, of_node_get(node));
+	ret = omap_init_irq(-1, of_node_get(node));
+	if (ret < 0)
+		return ret;
 
 	set_handle_irq(omap_intc_handle_irq);
 
-- 
2.0.1.563.g66f467c


WARNING: multiple messages have this Message-ID (diff)
From: balbi@ti.com (Felipe Balbi)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 29/35] arm: omap: intc: switch over to linear irq domain
Date: Mon, 28 Jul 2014 16:16:17 -0500	[thread overview]
Message-ID: <1406582183-696-30-git-send-email-balbi@ti.com> (raw)
In-Reply-To: <1406582183-696-1-git-send-email-balbi@ti.com>

now that we don't need to support legacy board-files,
we can completely switch over to a linear irq domain
and make use of irq_alloc_domain_generic_chips() to
allocate all generic irq chips for us.

Signed-off-by: Felipe Balbi <balbi@ti.com>
---
 arch/arm/mach-omap2/irq.c | 88 ++++++++++++++++++++++++++++++++++++++++++-----
 1 file changed, 79 insertions(+), 9 deletions(-)

diff --git a/arch/arm/mach-omap2/irq.c b/arch/arm/mach-omap2/irq.c
index 43785ee..b2993e4 100644
--- a/arch/arm/mach-omap2/irq.c
+++ b/arch/arm/mach-omap2/irq.c
@@ -188,14 +188,51 @@ void omap3_intc_suspend(void)
 	omap_ack_irq(NULL);
 }
 
-static __init void
-omap_alloc_gc(void __iomem *base, unsigned int irq_start, unsigned int num)
+static int __init omap_alloc_gc_of(struct irq_domain *d, void __iomem *base)
+{
+	int ret;
+	int i;
+
+	ret = irq_alloc_domain_generic_chips(d, 32, 1, "INTC",
+			handle_level_irq, IRQ_NOREQUEST | IRQ_NOPROBE,
+			IRQ_LEVEL, 0);
+	if (ret) {
+		pr_warn("Failed to allocate irq chips\n");
+		return ret;
+	}
+
+	for (i = 0; i < omap_nr_pending; i++) {
+		struct irq_chip_generic *gc;
+		struct irq_chip_type *ct;
+
+		gc = irq_get_domain_generic_chip(d, 32 * i);
+		gc->reg_base = base;
+		ct = gc->chip_types;
+
+		ct->type = IRQ_TYPE_LEVEL_MASK;
+		ct->handler = handle_level_irq;
+
+		ct->chip.irq_ack = omap_mask_ack_irq;
+		ct->chip.irq_mask = irq_gc_mask_disable_reg;
+		ct->chip.irq_unmask = irq_gc_unmask_enable_reg;
+
+		ct->chip.flags |= IRQCHIP_SKIP_SET_WAKE;
+
+		ct->regs.enable = INTC_MIR_CLEAR0 + 32 * i;
+		ct->regs.disable = INTC_MIR_SET0 + 32 * i;
+	}
+
+	return 0;
+}
+
+static void __init omap_alloc_gc_legacy(void __iomem *base,
+		unsigned int irq_start, unsigned int num)
 {
 	struct irq_chip_generic *gc;
 	struct irq_chip_type *ct;
 
 	gc = irq_alloc_generic_chip("INTC", 1, irq_start, base,
-					handle_level_irq);
+			handle_level_irq);
 	ct = gc->chip_types;
 	ct->chip.irq_ack = omap_mask_ack_irq;
 	ct->chip.irq_mask = irq_gc_mask_disable_reg;
@@ -205,16 +242,36 @@ omap_alloc_gc(void __iomem *base, unsigned int irq_start, unsigned int num)
 	ct->regs.enable = INTC_MIR_CLEAR0;
 	ct->regs.disable = INTC_MIR_SET0;
 	irq_setup_generic_chip(gc, IRQ_MSK(num), IRQ_GC_INIT_MASK_CACHE,
-				IRQ_NOREQUEST | IRQ_NOPROBE, 0);
+			IRQ_NOREQUEST | IRQ_NOPROBE, 0);
 }
 
-static void __init omap_init_irq(u32 base, struct device_node *node)
+static int __init omap_init_irq_of(struct device_node *node)
+{
+	int ret;
+
+	omap_irq_base = of_iomap(node, 0);
+	if (WARN_ON(!omap_irq_base))
+		return -ENOMEM;
+
+	domain = irq_domain_add_linear(node, omap_nr_irqs,
+			&irq_generic_chip_ops, NULL);
+
+	omap_irq_soft_reset();
+
+	ret = omap_alloc_gc_of(domain, omap_irq_base);
+	if (ret < 0)
+		irq_domain_remove(domain);
+
+	return ret;
+}
+
+static int __init omap_init_irq_legacy(u32 base)
 {
 	int j, irq_base;
 
 	omap_irq_base = ioremap(base, SZ_4K);
 	if (WARN_ON(!omap_irq_base))
-		return;
+		return -ENOMEM;
 
 	irq_base = irq_alloc_descs(-1, 0, omap_nr_irqs, 0);
 	if (irq_base < 0) {
@@ -222,13 +279,23 @@ static void __init omap_init_irq(u32 base, struct device_node *node)
 		irq_base = 0;
 	}
 
-	domain = irq_domain_add_legacy(node, omap_nr_irqs, irq_base, 0,
+	domain = irq_domain_add_legacy(NULL, omap_nr_irqs, irq_base, 0,
 			&irq_domain_simple_ops, NULL);
 
 	omap_irq_soft_reset();
 
 	for (j = 0; j < omap_nr_irqs; j += 32)
-		omap_alloc_gc(omap_irq_base + j, j + irq_base, 32);
+		omap_alloc_gc_legacy(omap_irq_base + j, j + irq_base, 32);
+
+	return 0;
+}
+
+static int __init omap_init_irq(u32 base, struct device_node *node)
+{
+	if (node)
+		return omap_init_irq_of(node);
+	else
+		return omap_init_irq_legacy(base);
 }
 
 static asmlinkage void __exception_irq_entry
@@ -294,6 +361,7 @@ static int __init intc_of_init(struct device_node *node,
 			     struct device_node *parent)
 {
 	struct resource res;
+	int ret;
 
 	omap_nr_pending = 3;
 	omap_nr_irqs = 96;
@@ -311,7 +379,9 @@ static int __init intc_of_init(struct device_node *node,
 		omap_nr_pending = 4;
 	}
 
-	omap_init_irq(res.start, of_node_get(node));
+	ret = omap_init_irq(-1, of_node_get(node));
+	if (ret < 0)
+		return ret;
 
 	set_handle_irq(omap_intc_handle_irq);
 
-- 
2.0.1.563.g66f467c

  parent reply	other threads:[~2014-07-28 21:24 UTC|newest]

Thread overview: 198+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-07-28 21:15 [PATCH 00/35] arm: omap: move intc to drivers/irqchip/ Felipe Balbi
2014-07-28 21:15 ` Felipe Balbi
2014-07-28 21:15 ` Felipe Balbi
2014-07-28 21:15 ` [PATCH 01/35] arm: omap: irq: make omap_irq_base global Felipe Balbi
2014-07-28 21:15   ` Felipe Balbi
2014-07-28 21:15   ` Felipe Balbi
2014-07-28 21:15 ` [PATCH 02/35] arm: omap: irq: define INTC_ILR0 register Felipe Balbi
2014-07-28 21:15   ` Felipe Balbi
2014-07-28 21:15   ` Felipe Balbi
2014-07-28 21:15 ` [PATCH 03/35] arm: omap: irq: start to remove irq_banks array Felipe Balbi
2014-07-28 21:15   ` Felipe Balbi
2014-07-28 21:15   ` Felipe Balbi
2014-07-28 21:15 ` [PATCH 04/35] arm: omap: irq: add a global omap_nr_irqs variable Felipe Balbi
2014-07-28 21:15   ` Felipe Balbi
2014-07-28 21:15   ` Felipe Balbi
2014-07-28 21:15 ` [PATCH 05/35] arm: omap: irq: remove rest of irq_banks usage Felipe Balbi
2014-07-28 21:15   ` Felipe Balbi
2014-07-28 21:15   ` Felipe Balbi
2014-07-28 21:15 ` [PATCH 06/35] arm: omap: irq: remove unused macro Felipe Balbi
2014-07-28 21:15   ` Felipe Balbi
2014-07-28 21:15   ` Felipe Balbi
2014-07-28 21:15 ` [PATCH 07/35] arm: omap: irq: switch over to intc_readl on omap_intc_handle_irq Felipe Balbi
2014-07-28 21:15   ` Felipe Balbi
2014-07-28 21:15   ` Felipe Balbi
2014-07-28 21:15 ` [PATCH 08/35] arm: omap: irq: remove unnecessary base_addr argument Felipe Balbi
2014-07-28 21:15   ` Felipe Balbi
2014-07-28 21:15   ` Felipe Balbi
2014-07-28 21:15 ` [PATCH 09/35] arm: omap: irq: rename omap3_intc_regs Felipe Balbi
2014-07-28 21:15   ` Felipe Balbi
2014-07-28 21:15   ` Felipe Balbi
2014-07-28 21:15 ` [PATCH 10/35] arm: omap: irq: always define omap3 support Felipe Balbi
2014-07-28 21:15   ` Felipe Balbi
2014-07-28 21:15   ` Felipe Balbi
2014-07-28 21:15 ` [PATCH 11/35] arm: omap: irq: reorganize code a little bit Felipe Balbi
2014-07-28 21:15   ` Felipe Balbi
2014-07-28 21:15   ` Felipe Balbi
2014-07-28 21:16 ` [PATCH 12/35] arm: omap: irq: make intc_of_init static Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-28 21:16 ` [PATCH 13/35] arm: omap: irq: call set_handle_irq() from intc_of_init Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-29  2:20   ` Sebastian Reichel
2014-07-29  2:20     ` Sebastian Reichel
2014-07-29  2:20     ` Sebastian Reichel
2014-07-29 15:36     ` Felipe Balbi
2014-07-29 15:36       ` Felipe Balbi
2014-07-29 15:36       ` Felipe Balbi
2014-07-29 16:00       ` Sebastian Reichel
2014-07-29 16:00         ` Sebastian Reichel
2014-07-29 16:00         ` Sebastian Reichel
2014-07-28 21:16 ` [PATCH 14/35] arm: omap: irq: use IRQCHIP_DECLARE macro Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-28 21:16 ` [PATCH 15/35] arm: omap: irq: drop .handle_irq and .init_irq fields Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-28 21:16 ` [PATCH 16/35] arm: omap: irq: add specific compatibles for omap3 and am33xx devices Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-28 21:16 ` [PATCH 17/35] arm: omap: irq: use compatible flag to figure out number of IRQ lines Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-28 21:16 ` [PATCH 18/35] arm: boot: dts: am33xx/omap3: fix intc compatible flag Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-28 21:16 ` [PATCH 19/35] arm: omap: irq: drop ti,intc-size support Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-29  2:12   ` Sebastian Reichel
2014-07-29  2:12     ` Sebastian Reichel
2014-07-29  2:12     ` Sebastian Reichel
2014-07-28 21:16 ` [PATCH 20/35] arm: boot: dts: omap2/3/am33xx: drop ti,intc-size Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-28 21:16 ` [PATCH 21/35] arm: omap: irq: move some more code around Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-28 21:16 ` [PATCH 22/35] arm: omap: irq: call set_handle_irq() from .init_irq Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-28 21:16 ` [PATCH 23/35] arm: omap: irq: drop omap3_intc_handle_irq() Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-28 21:16 ` [PATCH 24/35] arm: omap: irq: drop omap2_intc_handle_irq() Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-28 21:16 ` [PATCH 25/35] arm: omap: irq: remove unnecessary header Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-28 21:16 ` [PATCH 26/35] arm: omap: irq: remove nr_irqs argument Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-28 21:16 ` [PATCH 27/35] arm: omap: irq: introduce omap_nr_pending Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-28 21:16 ` [PATCH 28/35] arm: omap: irq: get rid of ifdef hack Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-28 21:16 ` Felipe Balbi [this message]
2014-07-28 21:16   ` [PATCH 29/35] arm: omap: intc: switch over to linear irq domain Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-29 12:14   ` Tony Lindgren
2014-07-29 12:14     ` Tony Lindgren
2014-07-29 12:14     ` Tony Lindgren
2014-07-29 14:15     ` Felipe Balbi
2014-07-29 14:15       ` Felipe Balbi
2014-07-29 14:15       ` Felipe Balbi
2014-07-29 15:20       ` Tony Lindgren
2014-07-29 15:20         ` Tony Lindgren
2014-07-29 15:20         ` Tony Lindgren
2014-07-29 15:40         ` Felipe Balbi
2014-07-29 15:40           ` Felipe Balbi
2014-07-29 15:40           ` Felipe Balbi
2014-07-29 16:33           ` Felipe Balbi
2014-07-29 16:33             ` Felipe Balbi
2014-07-29 16:33             ` Felipe Balbi
2014-07-30  6:04             ` Tony Lindgren
2014-07-30  6:04               ` Tony Lindgren
2014-07-30  6:04               ` Tony Lindgren
2014-07-30 14:40               ` Felipe Balbi
2014-07-30 14:40                 ` Felipe Balbi
2014-07-30 14:40                 ` Felipe Balbi
2014-07-30 15:45                 ` Nishanth Menon
2014-07-30 15:45                   ` Nishanth Menon
2014-07-30 15:45                   ` Nishanth Menon
2014-07-30 16:20                   ` Felipe Balbi
2014-07-30 16:20                     ` Felipe Balbi
2014-07-30 16:20                     ` Felipe Balbi
2014-07-31  6:28                     ` Tony Lindgren
2014-07-31  6:28                       ` Tony Lindgren
2014-07-31  6:28                       ` Tony Lindgren
2014-07-31  7:57                       ` Tero Kristo
2014-07-31  7:57                         ` Tero Kristo
2014-07-31  7:57                         ` Tero Kristo
2014-07-31 13:49                         ` Felipe Balbi
2014-07-31 13:49                           ` Felipe Balbi
2014-07-31 13:49                           ` Felipe Balbi
2014-08-01 12:26                           ` Tero Kristo
2014-08-01 12:26                             ` Tero Kristo
2014-08-01 12:26                             ` Tero Kristo
2014-08-01 13:54                             ` Felipe Balbi
2014-08-01 13:54                               ` Felipe Balbi
2014-08-01 13:54                               ` Felipe Balbi
2014-07-28 21:16 ` [PATCH 30/35] irqchip: add irq-omap-intc.h header Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-29 12:01   ` Tony Lindgren
2014-07-29 12:01     ` Tony Lindgren
2014-07-29 12:01     ` Tony Lindgren
2014-07-29 14:10     ` Felipe Balbi
2014-07-29 14:10       ` Felipe Balbi
2014-07-29 14:10       ` Felipe Balbi
2014-07-29 15:06       ` Tony Lindgren
2014-07-29 15:06         ` Tony Lindgren
2014-07-29 15:06         ` Tony Lindgren
2014-07-29 15:19         ` Felipe Balbi
2014-07-29 15:19           ` Felipe Balbi
2014-07-29 15:19           ` Felipe Balbi
2014-07-29 15:28           ` Tony Lindgren
2014-07-29 15:28             ` Tony Lindgren
2014-07-29 15:28             ` Tony Lindgren
2014-09-11 21:08   ` Tony Lindgren
2014-09-11 21:08     ` Tony Lindgren
2014-09-11 21:08     ` Tony Lindgren
2014-09-15 19:29     ` Felipe Balbi
2014-09-15 19:29       ` Felipe Balbi
2014-09-15 19:29       ` Felipe Balbi
2014-07-28 21:16 ` [PATCH 31/35] arm: omap: irq: move irq.c to drivers/irqchip/ Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-28 21:16 ` [PATCH 32/35] irq: intc: minor improvement to omap_irq_pending() Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-28 21:16 ` [PATCH 33/35] irq: intc: comment style cleanup Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-28 21:16 ` [PATCH 34/35] irq: intc: remove unnecesary of_address_to_resource() call Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-28 21:16 ` [PATCH 35/35] irq: intc: enable IP protection Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-28 21:16   ` Felipe Balbi
2014-07-28 21:19 ` [PATCH 00/35] arm: omap: move intc to drivers/irqchip/ Felipe Balbi
2014-07-28 21:19   ` Felipe Balbi
2014-07-28 21:19   ` Felipe Balbi
2014-07-29  2:25 ` Sebastian Reichel
2014-07-29  2:25   ` Sebastian Reichel
2014-07-29  2:25   ` Sebastian Reichel
2014-09-09  0:59 ` Tony Lindgren
2014-09-09  0:59   ` Tony Lindgren
2014-09-09  0:59   ` Tony Lindgren
2014-09-14  5:18 ` Jason Cooper
2014-09-14  5:18   ` Jason Cooper
2014-09-14  5:18   ` Jason Cooper
2014-09-15 15:31   ` Tony Lindgren
2014-09-15 15:31     ` Tony Lindgren
2014-09-15 15:31     ` Tony Lindgren

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1406582183-696-30-git-send-email-balbi@ti.com \
    --to=balbi@ti.com \
    --cc=bcousson@baylibre.com \
    --cc=devicetree@vger.kernel.org \
    --cc=jason@lakedaemon.net \
    --cc=khilman@deeprootsystems.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-omap@vger.kernel.org \
    --cc=linux@arm.linux.org.uk \
    --cc=tglx@linutronix.de \
    --cc=tony@atomide.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.