diff options
Diffstat (limited to 'drivers/irqchip/irq-gic.c')
-rw-r--r-- | drivers/irqchip/irq-gic.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/drivers/irqchip/irq-gic.c b/drivers/irqchip/irq-gic.c index 113e2d02c812..1de20e14a721 100644 --- a/drivers/irqchip/irq-gic.c +++ b/drivers/irqchip/irq-gic.c @@ -55,7 +55,7 @@ static void gic_check_cpu_features(void) { - WARN_TAINT_ONCE(cpus_have_cap(ARM64_HAS_SYSREG_GIC_CPUIF), + WARN_TAINT_ONCE(this_cpu_has_cap(ARM64_HAS_SYSREG_GIC_CPUIF), TAINT_CPU_OUT_OF_SPEC, "GICv3 system registers enabled, broken firmware!\n"); } @@ -489,6 +489,7 @@ static int gic_cpu_init(struct gic_chip_data *gic) if (WARN_ON(cpu >= NR_GIC_CPU_IF)) return -EINVAL; + gic_check_cpu_features(); cpu_mask = gic_get_cpumask(gic); gic_cpu_map[cpu] = cpu_mask; @@ -1038,8 +1039,6 @@ static int __init __gic_init_bases(struct gic_chip_data *gic, int irq_start, if (WARN_ON(!gic || gic->domain)) return -EINVAL; - gic_check_cpu_features(); - /* Initialize irq_chip */ gic->chip = gic_chip; |