Message ID | 20180215150248.28922-5-julien.grall@arm.com |
---|---|
State | Superseded |
Headers | show |
Series | xen/arm: PSCI 1.1 and SMCCC-1.1 support and XSA-254 variant 2 update | expand |
On Thu, 15 Feb 2018, Julien Grall wrote: > Signed-off-by: Julien Grall <julien.grall@arm.com> > Reviewed-by: Volodymyr Babchuk <volodymyr.babchuk@epam.com> Acked-by: Stefano Stabellini <sstabellini@kernel.org> > --- > Changes in v2: > - Add Volodymyr's reviewed-by > --- > xen/include/asm-arm/smccc.h | 16 ++++++++++------ > 1 file changed, 10 insertions(+), 6 deletions(-) > > diff --git a/xen/include/asm-arm/smccc.h b/xen/include/asm-arm/smccc.h > index 2951caa49d..30208d12ca 100644 > --- a/xen/include/asm-arm/smccc.h > +++ b/xen/include/asm-arm/smccc.h > @@ -25,18 +25,20 @@ > * http://infocenter.arm.com/help/topic/com.arm.doc.den0028a/index.html > */ > > -#define ARM_SMCCC_STD_CALL 0U > -#define ARM_SMCCC_FAST_CALL 1U > +#define ARM_SMCCC_STD_CALL _AC(0,U) > +#define ARM_SMCCC_FAST_CALL _AC(1,U) > #define ARM_SMCCC_TYPE_SHIFT 31 > > -#define ARM_SMCCC_CONV_32 0U > -#define ARM_SMCCC_CONV_64 1U > +#define ARM_SMCCC_CONV_32 _AC(0,U) > +#define ARM_SMCCC_CONV_64 _AC(1,U) > #define ARM_SMCCC_CONV_SHIFT 30 > > -#define ARM_SMCCC_OWNER_MASK 0x3FU > +#define ARM_SMCCC_OWNER_MASK _AC(0x3F,U) > #define ARM_SMCCC_OWNER_SHIFT 24 > > -#define ARM_SMCCC_FUNC_MASK 0xFFFFU > +#define ARM_SMCCC_FUNC_MASK _AC(0xFFFF,U) > + > +#ifndef __ASSEMBLY__ > > /* Check if this is fast call. */ > static inline bool smccc_is_fast_call(register_t funcid) > @@ -62,6 +64,8 @@ static inline uint32_t smccc_get_owner(register_t funcid) > return (funcid >> ARM_SMCCC_OWNER_SHIFT) & ARM_SMCCC_OWNER_MASK; > } > > +#endif > + > /* > * Construct function identifier from call type (fast or standard), > * calling convention (32 or 64 bit), service owner and function number. > -- > 2.11.0 >
diff --git a/xen/include/asm-arm/smccc.h b/xen/include/asm-arm/smccc.h index 2951caa49d..30208d12ca 100644 --- a/xen/include/asm-arm/smccc.h +++ b/xen/include/asm-arm/smccc.h @@ -25,18 +25,20 @@ * http://infocenter.arm.com/help/topic/com.arm.doc.den0028a/index.html */ -#define ARM_SMCCC_STD_CALL 0U -#define ARM_SMCCC_FAST_CALL 1U +#define ARM_SMCCC_STD_CALL _AC(0,U) +#define ARM_SMCCC_FAST_CALL _AC(1,U) #define ARM_SMCCC_TYPE_SHIFT 31 -#define ARM_SMCCC_CONV_32 0U -#define ARM_SMCCC_CONV_64 1U +#define ARM_SMCCC_CONV_32 _AC(0,U) +#define ARM_SMCCC_CONV_64 _AC(1,U) #define ARM_SMCCC_CONV_SHIFT 30 -#define ARM_SMCCC_OWNER_MASK 0x3FU +#define ARM_SMCCC_OWNER_MASK _AC(0x3F,U) #define ARM_SMCCC_OWNER_SHIFT 24 -#define ARM_SMCCC_FUNC_MASK 0xFFFFU +#define ARM_SMCCC_FUNC_MASK _AC(0xFFFF,U) + +#ifndef __ASSEMBLY__ /* Check if this is fast call. */ static inline bool smccc_is_fast_call(register_t funcid) @@ -62,6 +64,8 @@ static inline uint32_t smccc_get_owner(register_t funcid) return (funcid >> ARM_SMCCC_OWNER_SHIFT) & ARM_SMCCC_OWNER_MASK; } +#endif + /* * Construct function identifier from call type (fast or standard), * calling convention (32 or 64 bit), service owner and function number.