diff options
author | Álvaro Fernández Rojas <noltari@gmail.com> | 2019-12-23 13:42:55 +0100 |
---|---|---|
committer | Álvaro Fernández Rojas <noltari@gmail.com> | 2019-12-24 18:49:44 +0100 |
commit | 67dcc43f3a22dc3a7ac07a7065971b426feeb043 (patch) | |
tree | 0b647356dce45d2c79fd46cf201daa5089cc0934 /target/linux/brcm2708/patches-4.19/950-0132-irqchip-irq-bcm2835-Calc.-FIQ_START-at-boot-time.patch | |
parent | 47a93a810f78adce5a130d287f82b28e9b54313c (diff) | |
download | upstream-67dcc43f3a22dc3a7ac07a7065971b426feeb043.tar.gz upstream-67dcc43f3a22dc3a7ac07a7065971b426feeb043.tar.bz2 upstream-67dcc43f3a22dc3a7ac07a7065971b426feeb043.zip |
brcm2708: organize kernel patches
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Diffstat (limited to 'target/linux/brcm2708/patches-4.19/950-0132-irqchip-irq-bcm2835-Calc.-FIQ_START-at-boot-time.patch')
-rw-r--r-- | target/linux/brcm2708/patches-4.19/950-0132-irqchip-irq-bcm2835-Calc.-FIQ_START-at-boot-time.patch | 66 |
1 files changed, 0 insertions, 66 deletions
diff --git a/target/linux/brcm2708/patches-4.19/950-0132-irqchip-irq-bcm2835-Calc.-FIQ_START-at-boot-time.patch b/target/linux/brcm2708/patches-4.19/950-0132-irqchip-irq-bcm2835-Calc.-FIQ_START-at-boot-time.patch deleted file mode 100644 index 16145fed34..0000000000 --- a/target/linux/brcm2708/patches-4.19/950-0132-irqchip-irq-bcm2835-Calc.-FIQ_START-at-boot-time.patch +++ /dev/null @@ -1,66 +0,0 @@ -From 3166f055a568c4fe127b70b81a878ab59070a6f5 Mon Sep 17 00:00:00 2001 -From: Phil Elwell <phil@raspberrypi.org> -Date: Thu, 14 Jun 2018 11:21:04 +0100 -Subject: [PATCH 132/806] irqchip: irq-bcm2835: Calc. FIQ_START at boot-time - -ad83c7cb2f37 ("irqchip/irq-bcm2836: Add support for DT interrupt polarity") -changed the way that the BCM2836/7 local interrupts are mapped; instead -of being pre-mapped they are now mapped on-demand. A side effect of this -change is that the call to irq_of_parse_and_map from armctrl_of_init -creates a new mapping, forming a gap between the IRQs and the FIQs. This - gap breaks the FIQ<->IRQ mapping which up to now has been done by assuming: - -1) that the value of FIQ_START is the same as the number of normal IRQs -that will be mapped (still true), and - -2) that this value is also the offset between an IRQ and its equivalent -FIQ (which is no longer the case). - -Remove both assumptions by measuring the interval between the last IRQ -and the last FIQ, passing it as the parameter to init_FIQ(). - -Fixes: https://github.com/raspberrypi/linux/issues/2432 - -Signed-off-by: Phil Elwell <phil@raspberrypi.org> ---- - drivers/irqchip/irq-bcm2835.c | 8 ++++---- - 1 file changed, 4 insertions(+), 4 deletions(-) - ---- a/drivers/irqchip/irq-bcm2835.c -+++ b/drivers/irqchip/irq-bcm2835.c -@@ -82,8 +82,6 @@ - #define NR_BANKS 3 - #define IRQS_PER_BANK 32 - #define NUMBER_IRQS MAKE_HWIRQ(NR_BANKS, 0) --#undef FIQ_START --#define FIQ_START (NR_IRQS_BANK0 + MAKE_HWIRQ(NR_BANKS - 1, 0)) - - static const int reg_pending[] __initconst = { 0x00, 0x04, 0x08 }; - static const int reg_enable[] __initconst = { 0x18, 0x10, 0x14 }; -@@ -211,7 +209,7 @@ static int __init armctrl_of_init(struct - bool is_2836) - { - void __iomem *base; -- int irq, b, i; -+ int irq = 0, last_irq, b, i; - - base = of_iomap(node, 0); - if (!base) -@@ -237,6 +235,8 @@ static int __init armctrl_of_init(struct - } - } - -+ last_irq = irq; -+ - if (is_2836) { - int parent_irq = irq_of_parse_and_map(node, 0); - -@@ -267,7 +267,7 @@ static int __init armctrl_of_init(struct - } - } - #ifndef CONFIG_ARM64 -- init_FIQ(FIQ_START); -+ init_FIQ(irq - last_irq); - #endif - - return 0; |