summaryrefslogtreecommitdiff
path: root/include/elf.h
diff options
context:
space:
mode:
authorRob Bracero <robbracero@gmail.com>2018-07-31 22:57:42 -0400
committerTom Rini <trini@konsulko.com>2018-08-10 13:50:15 -0400
commit2846ea81a0295b47dda75111cfef099d5eed85e2 (patch)
tree10164c8c9b5fc2d1c36123facd234501e6235b13 /include/elf.h
parent9beb49061031b5b7a59360849a9fdf701a30c071 (diff)
downloadu-boot-2846ea81a0295b47dda75111cfef099d5eed85e2.tar.gz
elf: Add support for PPC64 ELF V1 ABI in bootelf
This update adds PPC64 ELF V1 ABI support to bootelf for both the program header and section header options. Elf64 support was already present for the program header option, but it was not handling the PPC64 ELF V1 ABI case. For the PPC64 ELF V1 ABI, the e_entry field of the elf header must be treated as function descriptor pointer instead of a function address. The first doubleword of the function descriptor is the function's entry address. Signed-off-by: Rob Bracero <robbracero@gmail.com> [trini: Fix whitespace issues] Signed-off-by: Tom Rini <trini@konsulko.com>
Diffstat (limited to 'include/elf.h')
-rw-r--r--include/elf.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/include/elf.h b/include/elf.h
index 6802428ac4..81f40191d7 100644
--- a/include/elf.h
+++ b/include/elf.h
@@ -593,6 +593,9 @@ unsigned long elf_hash(const unsigned char *name);
/* Values for Elf32/64_Ehdr.e_flags */
#define EF_PPC_EMB 0x80000000 /* PowerPC embedded flag */
+#define EF_PPC64_ELFV1_ABI 0x00000001
+#define EF_PPC64_ELFV2_ABI 0x00000002
+
/* Cygnus local bits below */
#define EF_PPC_RELOCATABLE 0x00010000 /* PowerPC -mrelocatable flag*/
#define EF_PPC_RELOCATABLE_LIB 0x00008000 /* PowerPC -mrelocatable-lib