summaryrefslogtreecommitdiffstats
path: root/arch/arm64/include/asm/compat.h
diff options
context:
space:
mode:
authorWill Deacon <will.deacon@arm.com>2013-10-11 14:52:12 +0100
committerCatalin Marinas <catalin.marinas@arm.com>2013-10-25 15:59:35 +0100
commita795a38eb91cf72c4a05e72a9c84e317ee179a48 (patch)
treea4755e42d95378d52035c7184cc8ba0c57a106e8 /arch/arm64/include/asm/compat.h
parent94ed1f2cb5d46533f10262b1b760db7dbec9cf10 (diff)
arm64: compat: add support for big-endian (BE8) AArch32 binaries
This patch adds support for BE8 AArch32 tasks to the compat layer. Signed-off-by: Will Deacon <will.deacon@arm.com> Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Diffstat (limited to 'arch/arm64/include/asm/compat.h')
-rw-r--r--arch/arm64/include/asm/compat.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/arch/arm64/include/asm/compat.h b/arch/arm64/include/asm/compat.h
index 899af807ef0..fda2704b3f9 100644
--- a/arch/arm64/include/asm/compat.h
+++ b/arch/arm64/include/asm/compat.h
@@ -26,7 +26,11 @@
#include <linux/ptrace.h>
#define COMPAT_USER_HZ 100
+#ifdef __AARCH64EB__
+#define COMPAT_UTS_MACHINE "armv8b\0\0"
+#else
#define COMPAT_UTS_MACHINE "armv8l\0\0"
+#endif
typedef u32 compat_size_t;
typedef s32 compat_ssize_t;
@@ -73,13 +77,23 @@ struct compat_timeval {
};
struct compat_stat {
+#ifdef __AARCH64EB__
+ short st_dev;
+ short __pad1;
+#else
compat_dev_t st_dev;
+#endif
compat_ino_t st_ino;
compat_mode_t st_mode;
compat_ushort_t st_nlink;
__compat_uid16_t st_uid;
__compat_gid16_t st_gid;
+#ifdef __AARCH64EB__
+ short st_rdev;
+ short __pad2;
+#else
compat_dev_t st_rdev;
+#endif
compat_off_t st_size;
compat_off_t st_blksize;
compat_off_t st_blocks;