arm: spectre-v2: use arm_smccc_1_1_get_conduit()
authorMark Rutland <mark.rutland@arm.com>
Fri, 9 Aug 2019 13:22:42 +0000 (14:22 +0100)
committerCatalin Marinas <catalin.marinas@arm.com>
Mon, 14 Oct 2019 09:55:14 +0000 (10:55 +0100)
Now that we have arm_smccc_1_1_get_conduit(), we can hide the PSCI
implementation details from the arm spectre-v2 code, so let's do so.

As arm_smccc_1_1_get_conduit() implicitly checks that the SMCCC version
is at least SMCCC_VERSION_1_1, we no longer need to check this
explicitly where switch statements have a default case.

There should be no functional change as a result of this patch.

Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Cc: Marc Zyngier <marc.zyngier@arm.com>
Cc: Russell King <linux@armlinux.org.uk>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
arch/arm/mm/proc-v7-bugs.c

index 9a07916..54d8750 100644 (file)
@@ -1,7 +1,6 @@
 // SPDX-License-Identifier: GPL-2.0
 #include <linux/arm-smccc.h>
 #include <linux/kernel.h>
-#include <linux/psci.h>
 #include <linux/smp.h>
 
 #include <asm/cp15.h>
@@ -75,11 +74,8 @@ static void cpu_v7_spectre_init(void)
        case ARM_CPU_PART_CORTEX_A72: {
                struct arm_smccc_res res;
 
-               if (psci_ops.smccc_version == SMCCC_VERSION_1_0)
-                       break;
-
-               switch (psci_ops.conduit) {
-               case PSCI_CONDUIT_HVC:
+               switch (arm_smccc_1_1_get_conduit()) {
+               case SMCCC_CONDUIT_HVC:
                        arm_smccc_1_1_hvc(ARM_SMCCC_ARCH_FEATURES_FUNC_ID,
                                          ARM_SMCCC_ARCH_WORKAROUND_1, &res);
                        if ((int)res.a0 != 0)
@@ -90,7 +86,7 @@ static void cpu_v7_spectre_init(void)
                        spectre_v2_method = "hypervisor";
                        break;
 
-               case PSCI_CONDUIT_SMC:
+               case SMCCC_CONDUIT_SMC:
                        arm_smccc_1_1_smc(ARM_SMCCC_ARCH_FEATURES_FUNC_ID,
                                          ARM_SMCCC_ARCH_WORKAROUND_1, &res);
                        if ((int)res.a0 != 0)