aboutsummaryrefslogtreecommitdiff
path: root/include/elf.h
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2016-11-07 08:47:09 -0700
committerAlexander Graf <agraf@suse.de>2016-11-14 23:24:03 +0100
commitc70f74a081c2005b0a4749cf8762fc14b7369ddb (patch)
tree6edbba17396a181e6ef05ca4c5e6696b88017949 /include/elf.h
parentc7ae3dfdccc171543804d6577ee41ab03e7a09bc (diff)
downloadu-boot-c70f74a081c2005b0a4749cf8762fc14b7369ddb.zip
u-boot-c70f74a081c2005b0a4749cf8762fc14b7369ddb.tar.gz
u-boot-c70f74a081c2005b0a4749cf8762fc14b7369ddb.tar.bz2
elf: arm: Add a few ARM relocation types
Rather than hard-coding the relocation type, add it to the ELF header file and use it from there. Signed-off-by: Simon Glass <sjg@chromium.org> Signed-off-by: Alexander Graf <agraf@suse.de>
Diffstat (limited to 'include/elf.h')
-rw-r--r--include/elf.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/include/elf.h b/include/elf.h
index bcc5eb7..aaecac7 100644
--- a/include/elf.h
+++ b/include/elf.h
@@ -13,6 +13,7 @@
#ifndef _ELF_H
#define _ELF_H
+#ifndef __ASSEMBLER__
#include "compiler.h"
/*
@@ -517,6 +518,8 @@ unsigned long elf_hash(const unsigned char *name);
#define ELF_TARG_VER 1 /* The ver for which this code is intended */
+#endif /* __ASSEMBLER */
+
/*
* XXX - PowerPC defines really don't belong in here,
* but we'll put them in for simplicity.
@@ -602,6 +605,16 @@ unsigned long elf_hash(const unsigned char *name);
that may still be in object files. */
#define R_PPC_TOC16 255
+ /* ARM relocs */
+#define R_ARM_NONE 0 /* No reloc */
+#define R_ARM_RELATIVE 23 /* Adjust by program base */
+
+/* AArch64 relocs */
+#define R_AARCH64_NONE 0 /* No relocation. */
+#define R_AARCH64_RELATIVE 1027 /* Adjust by program base. */
+
+#ifndef __ASSEMBLER__
int valid_elf_image(unsigned long addr);
+#endif
#endif /* _ELF_H */