smccc: Make constants available to assembly
authorAndrew Scull <ascull@google.com>
Thu, 18 Jun 2020 14:55:11 +0000 (15:55 +0100)
committerCatalin Marinas <catalin.marinas@arm.com>
Tue, 7 Jul 2020 08:43:04 +0000 (09:43 +0100)
Move constants out of the C-only section of the header next to the other
constants that are available to assembly.

Signed-off-by: Andrew Scull <ascull@google.com>
Reviewed-by: Sudeep Holla <sudeep.holla@arm.com>
Acked-by: Will Deacon <will@kernel.org>
Link: https://lore.kernel.org/r/20200618145511.69203-1-ascull@google.com
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
include/linux/arm-smccc.h

index 56d6a5c..efcbde7 100644 (file)
                           ARM_SMCCC_SMC_32,                            \
                           0, 0x7fff)
 
+/* Paravirtualised time calls (defined by ARM DEN0057A) */
+#define ARM_SMCCC_HV_PV_TIME_FEATURES                          \
+       ARM_SMCCC_CALL_VAL(ARM_SMCCC_FAST_CALL,                 \
+                          ARM_SMCCC_SMC_64,                    \
+                          ARM_SMCCC_OWNER_STANDARD_HYP,        \
+                          0x20)
+
+#define ARM_SMCCC_HV_PV_TIME_ST                                        \
+       ARM_SMCCC_CALL_VAL(ARM_SMCCC_FAST_CALL,                 \
+                          ARM_SMCCC_SMC_64,                    \
+                          ARM_SMCCC_OWNER_STANDARD_HYP,        \
+                          0x21)
+
+/*
+ * Return codes defined in ARM DEN 0070A
+ * ARM DEN 0070A is now merged/consolidated into ARM DEN 0028 C
+ */
+#define SMCCC_RET_SUCCESS                      0
+#define SMCCC_RET_NOT_SUPPORTED                        -1
+#define SMCCC_RET_NOT_REQUIRED                 -2
+#define SMCCC_RET_INVALID_PARAMETER            -3
+
 #ifndef __ASSEMBLY__
 
 #include <linux/linkage.h>
@@ -331,15 +353,6 @@ asmlinkage void __arm_smccc_hvc(unsigned long a0, unsigned long a1,
  */
 #define arm_smccc_1_1_hvc(...) __arm_smccc_1_1(SMCCC_HVC_INST, __VA_ARGS__)
 
-/*
- * Return codes defined in ARM DEN 0070A
- * ARM DEN 0070A is now merged/consolidated into ARM DEN 0028 C
- */
-#define SMCCC_RET_SUCCESS                      0
-#define SMCCC_RET_NOT_SUPPORTED                        -1
-#define SMCCC_RET_NOT_REQUIRED                 -2
-#define SMCCC_RET_INVALID_PARAMETER            -3
-
 /*
  * Like arm_smccc_1_1* but always returns SMCCC_RET_NOT_SUPPORTED.
  * Used when the SMCCC conduit is not defined. The empty asm statement
@@ -385,18 +398,5 @@ asmlinkage void __arm_smccc_hvc(unsigned long a0, unsigned long a1,
                method;                                                 \
        })
 
-/* Paravirtualised time calls (defined by ARM DEN0057A) */
-#define ARM_SMCCC_HV_PV_TIME_FEATURES                          \
-       ARM_SMCCC_CALL_VAL(ARM_SMCCC_FAST_CALL,                 \
-                          ARM_SMCCC_SMC_64,                    \
-                          ARM_SMCCC_OWNER_STANDARD_HYP,        \
-                          0x20)
-
-#define ARM_SMCCC_HV_PV_TIME_ST                                        \
-       ARM_SMCCC_CALL_VAL(ARM_SMCCC_FAST_CALL,                 \
-                          ARM_SMCCC_SMC_64,                    \
-                          ARM_SMCCC_OWNER_STANDARD_HYP,        \
-                          0x21)
-
 #endif /*__ASSEMBLY__*/
 #endif /*__LINUX_ARM_SMCCC_H*/