Merge tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux
[linux-2.6-block.git] / drivers / irqchip / irq-gic-v3.c
index 68d11ccee44120829051b803fe593827440ac0bf..98b0329b7154a4377afaa6b3cf5622e304dd2110 100644 (file)
@@ -39,8 +39,7 @@
 
 #define FLAGS_WORKAROUND_GICR_WAKER_MSM8996    (1ULL << 0)
 #define FLAGS_WORKAROUND_CAVIUM_ERRATUM_38539  (1ULL << 1)
-#define FLAGS_WORKAROUND_MTK_GICR_SAVE         (1ULL << 2)
-#define FLAGS_WORKAROUND_ASR_ERRATUM_8601001   (1ULL << 3)
+#define FLAGS_WORKAROUND_ASR_ERRATUM_8601001   (1ULL << 2)
 
 #define GIC_IRQ_TYPE_PARTITION (GIC_IRQ_TYPE_LPI + 1)
 
@@ -106,7 +105,7 @@ static DEFINE_STATIC_KEY_TRUE(supports_deactivate_key);
  * - Figure 4-7 Secure read of the priority field for a Non-secure Group 1
  *   interrupt.
  */
-DEFINE_STATIC_KEY_FALSE(supports_pseudo_nmis);
+static DEFINE_STATIC_KEY_FALSE(supports_pseudo_nmis);
 
 DEFINE_STATIC_KEY_FALSE(gic_nonsecure_priorities);
 EXPORT_SYMBOL(gic_nonsecure_priorities);
@@ -1779,15 +1778,6 @@ static bool gic_enable_quirk_msm8996(void *data)
        return true;
 }
 
-static bool gic_enable_quirk_mtk_gicr(void *data)
-{
-       struct gic_chip_data *d = data;
-
-       d->flags |= FLAGS_WORKAROUND_MTK_GICR_SAVE;
-
-       return true;
-}
-
 static bool gic_enable_quirk_cavium_38539(void *data)
 {
        struct gic_chip_data *d = data;
@@ -1888,11 +1878,6 @@ static const struct gic_quirk gic_quirks[] = {
                .compatible = "asr,asr8601-gic-v3",
                .init   = gic_enable_quirk_asr8601,
        },
-       {
-               .desc   = "GICv3: Mediatek Chromebook GICR save problem",
-               .property = "mediatek,broken-save-restore-fw",
-               .init   = gic_enable_quirk_mtk_gicr,
-       },
        {
                .desc   = "GICv3: HIP06 erratum 161010803",
                .iidr   = 0x0204043b,
@@ -1959,11 +1944,6 @@ static void gic_enable_nmi_support(void)
        if (!gic_prio_masking_enabled())
                return;
 
-       if (gic_data.flags & FLAGS_WORKAROUND_MTK_GICR_SAVE) {
-               pr_warn("Skipping NMI enable due to firmware issues\n");
-               return;
-       }
-
        rdist_nmi_refs = kcalloc(gic_data.ppi_nr + SGI_NR,
                                 sizeof(*rdist_nmi_refs), GFP_KERNEL);
        if (!rdist_nmi_refs)