Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1410628 > unrolled thread

[PATCH v2 RESEND] irqchip: bcm2835: Avoid arch/arm-specific handle_IRQ

Started byEric Anholt <eric@anholt.net>
First post2016-05-31 23:10 +0200
Last post2016-06-04 17:20 +0200
Articles 2 — 2 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH v2 RESEND] irqchip: bcm2835: Avoid arch/arm-specific handle_IRQ Eric Anholt <eric@anholt.net> - 2016-05-31 23:10 +0200
    Re: [PATCH v2 RESEND] irqchip: bcm2835: Avoid arch/arm-specific  handle_IRQ Jason Cooper <jason@lakedaemon.net> - 2016-06-04 17:20 +0200

#1410628 — [PATCH v2 RESEND] irqchip: bcm2835: Avoid arch/arm-specific handle_IRQ

FromEric Anholt <eric@anholt.net>
Date2016-05-31 23:10 +0200
Subject[PATCH v2 RESEND] irqchip: bcm2835: Avoid arch/arm-specific handle_IRQ
Message-ID<rEZ5f-7LR-9@gated-at.bofh.it>
This is equivalent and works for arm64 as well.

Signed-off-by: Eric Anholt <eric@anholt.net>
Acked-by: Stephen Warren <swarren@wwwdotorg.org>
---

Patch 1 of the arm64 series was left out of the 4.7 pull request.
Would it be possible to merge this through the SOC tree?  Otherwise I
would need a stable branch to merge from you, so that I can land the
Makefile changes to start building it.

 drivers/irqchip/irq-bcm2835.c | 3 +--
 drivers/irqchip/irq-bcm2836.c | 2 +-
 2 files changed, 2 insertions(+), 3 deletions(-)

diff --git a/drivers/irqchip/irq-bcm2835.c b/drivers/irqchip/irq-bcm2835.c
index bf9cc5f2e839..44d7c38dde47 100644
--- a/drivers/irqchip/irq-bcm2835.c
+++ b/drivers/irqchip/irq-bcm2835.c
@@ -52,7 +52,6 @@
 #include <linux/irqdomain.h>
 
 #include <asm/exception.h>
-#include <asm/mach/irq.h>
 
 /* Put the bank and irq (32 bits) into the hwirq */
 #define MAKE_HWIRQ(b, n)	((b << 5) | (n))
@@ -242,7 +241,7 @@ static void __exception_irq_entry bcm2835_handle_irq(
 	u32 hwirq;
 
 	while ((hwirq = get_next_armctrl_hwirq()) != ~0)
-		handle_IRQ(irq_linear_revmap(intc.domain, hwirq), regs);
+		handle_domain_irq(intc.domain, hwirq, regs);
 }
 
 static void bcm2836_chained_handle_irq(struct irq_desc *desc)
diff --git a/drivers/irqchip/irq-bcm2836.c b/drivers/irqchip/irq-bcm2836.c
index 72ff1d5c5de6..27875982657e 100644
--- a/drivers/irqchip/irq-bcm2836.c
+++ b/drivers/irqchip/irq-bcm2836.c
@@ -180,7 +180,7 @@ __exception_irq_entry bcm2836_arm_irqchip_handle_irq(struct pt_regs *regs)
 	} else if (stat) {
 		u32 hwirq = ffs(stat) - 1;
 
-		handle_IRQ(irq_linear_revmap(intc.domain, hwirq), regs);
+		handle_domain_irq(intc.domain, hwirq, regs);
 	}
 }
 
-- 
2.8.0.rc3

[toc] | [next] | [standalone]


#1413777 — Re: [PATCH v2 RESEND] irqchip: bcm2835: Avoid arch/arm-specific handle_IRQ

FromJason Cooper <jason@lakedaemon.net>
Date2016-06-04 17:20 +0200
SubjectRe: [PATCH v2 RESEND] irqchip: bcm2835: Avoid arch/arm-specific handle_IRQ
Message-ID<rGlwK-2Ly-3@gated-at.bofh.it>
In reply to#1410628
Eric,

On Tue, May 31, 2016 at 02:05:27PM -0700, Eric Anholt wrote:
> This is equivalent and works for arm64 as well.
> 
> Signed-off-by: Eric Anholt <eric@anholt.net>
> Acked-by: Stephen Warren <swarren@wwwdotorg.org>
> ---
> 
> Patch 1 of the arm64 series was left out of the 4.7 pull request.
> Would it be possible to merge this through the SOC tree?  Otherwise I
> would need a stable branch to merge from you, so that I can land the
> Makefile changes to start building it.
> 
>  drivers/irqchip/irq-bcm2835.c | 3 +--
>  drivers/irqchip/irq-bcm2836.c | 2 +-
>  2 files changed, 2 insertions(+), 3 deletions(-)

Sorry for the delay.  I reworded the commit message to make up for it
;-)  I've merged this into irqchip/bcm for you to base off of.  Final
version is appended.

thx,

Jason.

--------------------->8--------------------------
commit d7e3528eed85b51ddca2f281d2d4e7d687f28d60
Author: Eric Anholt <eric@anholt.net>
Date:   Tue May 31 14:05:27 2016 -0700

    irqchip: bcm2835: Avoid arch/arm-specific handle_IRQ
    
    With commit
    
      76ba59f8366f genirq: Add irq_domain-aware core IRQ handler
    
    architecture-specific irq handlers are no longer necessary.  Update the bcm2835
    irq driver to use the core irq handler.  As a bonus, this allows the driver to
    support arm64 as well.
    
    Signed-off-by: Eric Anholt <eric@anholt.net>
    Acked-by: Stephen Warren <swarren@wwwdotorg.org>
    Link: https://lkml.kernel.org/r/1464728727-16300-1-git-send-email-eric@anholt.net
    [jac reworded commit message for clarity]
    Signed-off-by: Jason Cooper <jason@lakedaemon.net>

diff --git a/drivers/irqchip/irq-bcm2835.c b/drivers/irqchip/irq-bcm2835.c
index bf9cc5f2e839..44d7c38dde47 100644
--- a/drivers/irqchip/irq-bcm2835.c
+++ b/drivers/irqchip/irq-bcm2835.c
@@ -52,7 +52,6 @@
 #include <linux/irqdomain.h>
 
 #include <asm/exception.h>
-#include <asm/mach/irq.h>
 
 /* Put the bank and irq (32 bits) into the hwirq */
 #define MAKE_HWIRQ(b, n)	((b << 5) | (n))
@@ -242,7 +241,7 @@ static void __exception_irq_entry bcm2835_handle_irq(
 	u32 hwirq;
 
 	while ((hwirq = get_next_armctrl_hwirq()) != ~0)
-		handle_IRQ(irq_linear_revmap(intc.domain, hwirq), regs);
+		handle_domain_irq(intc.domain, hwirq, regs);
 }
 
 static void bcm2836_chained_handle_irq(struct irq_desc *desc)
diff --git a/drivers/irqchip/irq-bcm2836.c b/drivers/irqchip/irq-bcm2836.c
index 72ff1d5c5de6..27875982657e 100644
--- a/drivers/irqchip/irq-bcm2836.c
+++ b/drivers/irqchip/irq-bcm2836.c
@@ -180,7 +180,7 @@ __exception_irq_entry bcm2836_arm_irqchip_handle_irq(struct pt_regs *regs)
 	} else if (stat) {
 		u32 hwirq = ffs(stat) - 1;
 
-		handle_IRQ(irq_linear_revmap(intc.domain, hwirq), regs);
+		handle_domain_irq(intc.domain, hwirq, regs);
 	}
 }
 

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web