diff options
Diffstat (limited to 'target/linux/brcm63xx/patches-3.14')
7 files changed, 16 insertions, 45 deletions
diff --git a/target/linux/brcm63xx/patches-3.14/030-MIPS-Always-use-IRQ-domains-for-CPU-IRQs.patch b/target/linux/brcm63xx/patches-3.14/030-MIPS-Always-use-IRQ-domains-for-CPU-IRQs.patch index e6570ecdc6..21b69ab1ed 100644 --- a/target/linux/brcm63xx/patches-3.14/030-MIPS-Always-use-IRQ-domains-for-CPU-IRQs.patch +++ b/target/linux/brcm63xx/patches-3.14/030-MIPS-Always-use-IRQ-domains-for-CPU-IRQs.patch @@ -29,7 +29,7 @@ Signed-off-by: Ralf Baechle <ralf@linux-mips.org> --- a/arch/mips/Kconfig +++ b/arch/mips/Kconfig -@@ -1025,6 +1025,7 @@ config MIPS_HUGE_TLB_SUPPORT +@@ -1026,6 +1026,7 @@ config MIPS_HUGE_TLB_SUPPORT config IRQ_CPU bool @@ -39,8 +39,8 @@ Signed-off-by: Ralf Baechle <ralf@linux-mips.org> bool --- a/arch/mips/kernel/irq_cpu.c +++ b/arch/mips/kernel/irq_cpu.c -@@ -94,28 +94,6 @@ static struct irq_chip mips_mt_cpu_irq_c - .irq_eoi = unmask_mips_irq, +@@ -98,28 +98,6 @@ static struct irq_chip mips_mt_cpu_irq_c + .irq_enable = unmask_mips_irq, }; -void __init mips_cpu_irq_init(void) @@ -68,7 +68,7 @@ Signed-off-by: Ralf Baechle <ralf@linux-mips.org> static int mips_cpu_intc_map(struct irq_domain *d, unsigned int irq, irq_hw_number_t hw) { -@@ -138,8 +116,7 @@ static const struct irq_domain_ops mips_ +@@ -142,8 +120,7 @@ static const struct irq_domain_ops mips_ .xlate = irq_domain_xlate_onecell, }; @@ -78,7 +78,7 @@ Signed-off-by: Ralf Baechle <ralf@linux-mips.org> { struct irq_domain *domain; -@@ -151,7 +128,16 @@ int __init mips_cpu_intc_init(struct dev +@@ -155,7 +132,16 @@ int __init mips_cpu_intc_init(struct dev &mips_cpu_intc_irq_domain_ops, NULL); if (!domain) panic("Failed to add irqdomain for MIPS CPU"); diff --git a/target/linux/brcm63xx/patches-3.14/031-MIPS-Rename-mips_cpu_intc_init-mips_cpu_irq_of_init.patch b/target/linux/brcm63xx/patches-3.14/031-MIPS-Rename-mips_cpu_intc_init-mips_cpu_irq_of_init.patch index de0f111e28..141644f285 100644 --- a/target/linux/brcm63xx/patches-3.14/031-MIPS-Rename-mips_cpu_intc_init-mips_cpu_irq_of_init.patch +++ b/target/linux/brcm63xx/patches-3.14/031-MIPS-Rename-mips_cpu_intc_init-mips_cpu_irq_of_init.patch @@ -65,7 +65,7 @@ Signed-off-by: Ralf Baechle <ralf@linux-mips.org> #endif /* _ASM_IRQ_CPU_H */ --- a/arch/mips/kernel/irq_cpu.c +++ b/arch/mips/kernel/irq_cpu.c -@@ -135,8 +135,8 @@ void __init mips_cpu_irq_init(void) +@@ -139,8 +139,8 @@ void __init mips_cpu_irq_init(void) __mips_cpu_irq_init(NULL); } diff --git a/target/linux/brcm63xx/patches-3.14/032-MIPS-Provide-a-generic-plat_irq_dispatch.patch b/target/linux/brcm63xx/patches-3.14/032-MIPS-Provide-a-generic-plat_irq_dispatch.patch index 79a0436dc6..8f5bd3144f 100644 --- a/target/linux/brcm63xx/patches-3.14/032-MIPS-Provide-a-generic-plat_irq_dispatch.patch +++ b/target/linux/brcm63xx/patches-3.14/032-MIPS-Provide-a-generic-plat_irq_dispatch.patch @@ -31,8 +31,8 @@ Signed-off-by: Ralf Baechle <ralf@linux-mips.org> --- a/arch/mips/kernel/irq_cpu.c +++ b/arch/mips/kernel/irq_cpu.c -@@ -94,6 +94,24 @@ static struct irq_chip mips_mt_cpu_irq_c - .irq_eoi = unmask_mips_irq, +@@ -98,6 +98,24 @@ static struct irq_chip mips_mt_cpu_irq_c + .irq_enable = unmask_mips_irq, }; +asmlinkage void __weak plat_irq_dispatch(void) diff --git a/target/linux/brcm63xx/patches-3.14/311-bcm63xxpart_use_cfedetection.patch b/target/linux/brcm63xx/patches-3.14/311-bcm63xxpart_use_cfedetection.patch index dedd728ce9..46d9b47cdf 100644 --- a/target/linux/brcm63xx/patches-3.14/311-bcm63xxpart_use_cfedetection.patch +++ b/target/linux/brcm63xx/patches-3.14/311-bcm63xxpart_use_cfedetection.patch @@ -3,7 +3,7 @@ @@ -35,7 +35,7 @@ #include <asm/mach-bcm63xx/bcm63xx_nvram.h> - #include <linux/bcm963xx_tag.h> + #include <asm/mach-bcm63xx/bcm963xx_tag.h> -#include <asm/mach-bcm63xx/board_bcm963xx.h> +#include <asm/mach-bcm63xx/bcm63xx_board.h> diff --git a/target/linux/brcm63xx/patches-3.14/320-irqchip-add-support-for-bcm6345-style-periphery-irq-.patch b/target/linux/brcm63xx/patches-3.14/320-irqchip-add-support-for-bcm6345-style-periphery-irq-.patch index 2fd1568e27..8219c98a4b 100644 --- a/target/linux/brcm63xx/patches-3.14/320-irqchip-add-support-for-bcm6345-style-periphery-irq-.patch +++ b/target/linux/brcm63xx/patches-3.14/320-irqchip-add-support-for-bcm6345-style-periphery-irq-.patch @@ -94,7 +94,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org> obj-$(CONFIG_METAG_PERFCOUNTER_IRQS) += irq-metag.o --- /dev/null +++ b/drivers/irqchip/irq-bcm6345-periph.c -@@ -0,0 +1,340 @@ +@@ -0,0 +1,341 @@ +/* + * This file is subject to the terms and conditions of the GNU General Public + * License. See the file "COPYING" in the main directory of this archive @@ -246,6 +246,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org> + irq_hw_number_t hwirq = irqd_to_hwirq(data); + struct intc_data *priv = data->domain->host_data; + unsigned int i, reg, bit; ++ unsigned long flags; + bool enabled; + int cpu; + @@ -265,7 +266,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org> + if (!priv->block[cpu].parent_irq) + return -EINVAL; + -+ raw_spin_lock(&priv->lock); ++ raw_spin_lock_irqsave(&priv->lock, flags); + enabled = !irqd_irq_masked(data); + for (i = 0; i < MAX_PARENT_IRQS; i++) { + struct intc_block *block = &priv->block[i]; @@ -281,7 +282,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org> + __bcm6345_periph_enable(block, reg, bit, false); + } + } -+ raw_spin_unlock(&priv->lock); ++ raw_spin_unlock_irqrestore(&priv->lock, flags); + + return 0; +} @@ -454,33 +455,3 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org> + int num_words); + +#endif /* __INCLUDE_LINUX_IRQCHIP_IRQ_BCM6345_PERIPH_H */ -diff --git a/drivers/irqchip/irq-bcm6345-periph.c b/drivers/irqchip/irq-bcm6345-periph.c -index dfab88e..b280164 100644 ---- a/drivers/irqchip/irq-bcm6345-periph.c -+++ b/drivers/irqchip/irq-bcm6345-periph.c -@@ -149,6 +149,7 @@ static int bcm6345_periph_set_affinity(struct irq_data *data, - irq_hw_number_t hwirq = irqd_to_hwirq(data); - struct intc_data *priv = data->domain->host_data; - unsigned int i, reg, bit; -+ unsigned long flags; - bool enabled; - int cpu; - -@@ -168,7 +169,7 @@ static int bcm6345_periph_set_affinity(struct irq_data *data, - if (!priv->block[cpu].parent_irq) - return -EINVAL; - -- raw_spin_lock(&priv->lock); -+ raw_spin_lock_irqsave(&priv->lock, flags); - enabled = !irqd_irq_masked(data); - for (i = 0; i < MAX_PARENT_IRQS; i++) { - struct intc_block *block = &priv->block[i]; -@@ -184,7 +185,7 @@ static int bcm6345_periph_set_affinity(struct irq_data *data, - __bcm6345_periph_enable(block, reg, bit, false); - } - } -- raw_spin_unlock(&priv->lock); -+ raw_spin_unlock_irqrestore(&priv->lock, flags); - - return 0; - } diff --git a/target/linux/brcm63xx/patches-3.14/401-bcm963xx_real_rootfs_length.patch b/target/linux/brcm63xx/patches-3.14/401-bcm963xx_real_rootfs_length.patch index caf8b9514d..92c264bd76 100644 --- a/target/linux/brcm63xx/patches-3.14/401-bcm963xx_real_rootfs_length.patch +++ b/target/linux/brcm63xx/patches-3.14/401-bcm963xx_real_rootfs_length.patch @@ -1,5 +1,5 @@ ---- a/include/uapi/linux/bcm963xx_tag.h -+++ b/include/uapi/linux/bcm963xx_tag.h +--- a/arch/mips/include/asm/mach-bcm63xx/bcm963xx_tag.h ++++ b/arch/mips/include/asm/mach-bcm63xx/bcm963xx_tag.h @@ -85,8 +85,10 @@ struct bcm_tag { __u32 rootfs_crc; /* 224-227: CRC32 of kernel partition */ diff --git a/target/linux/brcm63xx/patches-3.14/425-bcm63xxpart_parse_paritions_from_dt.patch b/target/linux/brcm63xx/patches-3.14/425-bcm63xxpart_parse_paritions_from_dt.patch index dd0ba7054d..7f3890eb0a 100644 --- a/target/linux/brcm63xx/patches-3.14/425-bcm63xxpart_parse_paritions_from_dt.patch +++ b/target/linux/brcm63xx/patches-3.14/425-bcm63xxpart_parse_paritions_from_dt.patch @@ -7,7 +7,7 @@ +#include <linux/of.h> #include <asm/mach-bcm63xx/bcm63xx_nvram.h> - #include <linux/bcm963xx_tag.h> + #include <asm/mach-bcm63xx/bcm963xx_tag.h> @@ -43,66 +44,35 @@ #define BCM63XX_CFE_MAGIC_OFFSET 0x4e0 |