mirror of https://github.com/OpenIPC/firmware.git
40 lines
1.1 KiB
Diff
40 lines
1.1 KiB
Diff
--- linux-4.9.37/drivers/irqchip/irq-gic-v3.c 2017-07-12 16:42:41.000000000 +0300
|
|
+++ linux-4.9.y/drivers/irqchip/irq-gic-v3.c 2021-06-07 13:01:33.000000000 +0300
|
|
@@ -120,11 +120,10 @@
|
|
}
|
|
|
|
#ifdef CONFIG_ARM64
|
|
-static DEFINE_STATIC_KEY_FALSE(is_cavium_thunderx);
|
|
|
|
static u64 __maybe_unused gic_read_iar(void)
|
|
{
|
|
- if (static_branch_unlikely(&is_cavium_thunderx))
|
|
+ if (cpus_have_const_cap(ARM64_WORKAROUND_CAVIUM_23154))
|
|
return gic_read_iar_cavium_thunderx();
|
|
else
|
|
return gic_read_iar_common();
|
|
@@ -905,14 +904,6 @@
|
|
.select = gic_irq_domain_select,
|
|
};
|
|
|
|
-static void gicv3_enable_quirks(void)
|
|
-{
|
|
-#ifdef CONFIG_ARM64
|
|
- if (cpus_have_cap(ARM64_WORKAROUND_CAVIUM_23154))
|
|
- static_branch_enable(&is_cavium_thunderx);
|
|
-#endif
|
|
-}
|
|
-
|
|
static int __init gic_init_bases(void __iomem *dist_base,
|
|
struct redist_region *rdist_regs,
|
|
u32 nr_redist_regions,
|
|
@@ -935,8 +926,6 @@
|
|
gic_data.nr_redist_regions = nr_redist_regions;
|
|
gic_data.redist_stride = redist_stride;
|
|
|
|
- gicv3_enable_quirks();
|
|
-
|
|
/*
|
|
* Find out how many interrupts are supported.
|
|
* The GIC only supports up to 1020 interrupt sources (SGI+PPI+SPI)
|