diff options
author | Luc Van Oostenryck <luc.vanoostenryck@gmail.com> | 2017-06-24 18:42:11 +0300 |
---|---|---|
committer | Will Deacon <will.deacon@arm.com> | 2017-06-26 12:15:06 +0300 |
commit | bcde519e8c325f3cc1fcf443eb6466e6bb3a3aca (patch) | |
tree | 1306a5c2a912dfac4b043d8e80bef8ce55ce226e | |
parent | 8486e54d30e170c969090f80bbdfa7142d33ed6a (diff) | |
download | linux-bcde519e8c325f3cc1fcf443eb6466e6bb3a3aca.tar.xz |
arm64: pass endianness info to sparse
ARM64 depends on the macro __AARCH64EB__ being defined or not
to correctly select or define endian-specific macros, structures
or pieces of code.
This macro is predefined by the compiler but sparse knows nothing
about it and thus may pre-process files differently from what
gcc would.
Fix this by passing '-D__AARCH64EL__' or '-D__AARCH64EB__' to
sparse depending of the endianness of the kernel, like defined
by GCC.
Note: In most case it won't change anything since most arm64 use
little-endian (but an allyesconfig would use big-endian!).
CC: Catalin Marinas <catalin.marinas@arm.com>
CC: Will Deacon <will.deacon@arm.com>
CC: linux-arm-kernel@lists.infradead.org
Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
-rw-r--r-- | arch/arm64/Makefile | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/arm64/Makefile b/arch/arm64/Makefile index fdb0133142ff..9b41f1e3b1a0 100644 --- a/arch/arm64/Makefile +++ b/arch/arm64/Makefile @@ -52,11 +52,13 @@ KBUILD_AFLAGS += $(lseinstr) $(brokengasinst) ifeq ($(CONFIG_CPU_BIG_ENDIAN), y) KBUILD_CPPFLAGS += -mbig-endian +CHECKFLAGS += -D__AARCH64EB__ AS += -EB LD += -EB UTS_MACHINE := aarch64_be else KBUILD_CPPFLAGS += -mlittle-endian +CHECKFLAGS += -D__AARCH64EL__ AS += -EL LD += -EL UTS_MACHINE := aarch64 |