Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge branch 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull irq fixes from Thomas Gleixner:
"Three patches addressing shortcomings in the ARM gic interrupt chip
driver"

* 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
irqchip: gic: Fix core ID calculation when topology is read from DT
irqchip: gic: Add binding probe for ARM GIC400
irqchip: gic: Add support for cortex a7 compatible string

+6 -1
+6 -1
drivers/irqchip/irq-gic.c
··· 42 42 #include <linux/irqchip/chained_irq.h> 43 43 #include <linux/irqchip/arm-gic.h> 44 44 45 + #include <asm/cputype.h> 45 46 #include <asm/irq.h> 46 47 #include <asm/exception.h> 47 48 #include <asm/smp_plat.h> ··· 955 954 } 956 955 957 956 for_each_possible_cpu(cpu) { 958 - unsigned long offset = percpu_offset * cpu_logical_map(cpu); 957 + u32 mpidr = cpu_logical_map(cpu); 958 + u32 core_id = MPIDR_AFFINITY_LEVEL(mpidr, 0); 959 + unsigned long offset = percpu_offset * core_id; 959 960 *per_cpu_ptr(gic->dist_base.percpu_base, cpu) = dist_base + offset; 960 961 *per_cpu_ptr(gic->cpu_base.percpu_base, cpu) = cpu_base + offset; 961 962 } ··· 1074 1071 gic_cnt++; 1075 1072 return 0; 1076 1073 } 1074 + IRQCHIP_DECLARE(gic_400, "arm,gic-400", gic_of_init); 1077 1075 IRQCHIP_DECLARE(cortex_a15_gic, "arm,cortex-a15-gic", gic_of_init); 1078 1076 IRQCHIP_DECLARE(cortex_a9_gic, "arm,cortex-a9-gic", gic_of_init); 1077 + IRQCHIP_DECLARE(cortex_a7_gic, "arm,cortex-a7-gic", gic_of_init); 1079 1078 IRQCHIP_DECLARE(msm_8660_qgic, "qcom,msm-8660-qgic", gic_of_init); 1080 1079 IRQCHIP_DECLARE(msm_qgic2, "qcom,msm-qgic2", gic_of_init); 1081 1080