[PATCH] arm64: Fix compilation error while accessing MPIDR_HWID_BITMASK from .S files
John Garry
john.garry at huawei.com
Mon Feb 19 02:19:35 PST 2018
On 19/02/2018 06:39, Bhupesh Sharma wrote:
> Since commit e1a50de37860b3a93a9d643b09638db5aff47650 (arm64: cputype:
> Silence Sparse warnings), compilation of arm64 architecture is broken
> with the following error messages:
>
> AR arch/arm64/kernel/built-in.o
> arch/arm64/kernel/head.S: Assembler messages:
> arch/arm64/kernel/head.S:677: Error: found 'L', expected: ')'
> arch/arm64/kernel/head.S:677: Error: found 'L', expected: ')'
> arch/arm64/kernel/head.S:677: Error: found 'L', expected: ')'
> arch/arm64/kernel/head.S:677: Error: junk at end of line, first
> unrecognized character is `L'
> arch/arm64/kernel/head.S:677: Error: unexpected characters following
> instruction at operand 2 -- `movz x1,:abs_g1_s:0xff00ffffffUL'
> arch/arm64/kernel/head.S:677: Error: unexpected characters following
> instruction at operand 2 -- `movk x1,:abs_g0_nc:0xff00ffffffUL'
>
> This patch fixes the same by using the UL() macro correctly for
> assigning the MPIDR_HWID_BITMASK macro value.
>
> Signed-off-by: Bhupesh Sharma <bhsharma at redhat.com>
> ---
> arch/arm64/include/asm/cputype.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/arch/arm64/include/asm/cputype.h b/arch/arm64/include/asm/cputype.h
> index eda8c5f629fc..350c76a1d15b 100644
> --- a/arch/arm64/include/asm/cputype.h
> +++ b/arch/arm64/include/asm/cputype.h
> @@ -20,7 +20,7 @@
>
> #define MPIDR_UP_BITMASK (0x1 << 30)
> #define MPIDR_MT_BITMASK (0x1 << 24)
> -#define MPIDR_HWID_BITMASK 0xff00ffffffUL
> +#define MPIDR_HWID_BITMASK UL(0xff00ffffff)
Works for me.
FYI, I am using (old) gcc-linaro-4.8-2015.06-x86_64_aarch64.
Thanks,
John
>
> #define MPIDR_LEVEL_BITS_SHIFT 3
> #define MPIDR_LEVEL_BITS (1 << MPIDR_LEVEL_BITS_SHIFT)
>
More information about the linux-arm-kernel
mailing list