diff options
author | Peter Crosthwaite <crosthwaite.peter@gmail.com> | 2015-08-29 12:07:50 -0700 |
---|---|---|
committer | Paolo Bonzini <pbonzini@redhat.com> | 2015-09-25 12:04:43 +0200 |
commit | 98dbe5aca8c328b40a0598d6ab478d9b869d1b5c (patch) | |
tree | 485550bc960aa2d754ebac060da4bfc70cdf463f /include | |
parent | 7cc472218c807ef85714ec71b161c39ee29d634e (diff) | |
download | qemu-98dbe5aca8c328b40a0598d6ab478d9b869d1b5c.zip qemu-98dbe5aca8c328b40a0598d6ab478d9b869d1b5c.tar.gz qemu-98dbe5aca8c328b40a0598d6ab478d9b869d1b5c.tar.bz2 |
elf: Update EM_MOXIE definition
EM_MOXIE now has a proper assigned elf code. Use it. Register the old
interim value as EM_MOXIE_OLD and accept either in elf loading.
Cc: Anthony Green <green@moxielogic.com>
Reviewed-by: Richard Henderson <rth@twiddle.net>
Signed-off-by: Peter Crosthwaite <crosthwaite.peter@gmail.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'include')
-rw-r--r-- | include/elf.h | 3 | ||||
-rw-r--r-- | include/hw/elf_ops.h | 8 |
2 files changed, 11 insertions, 0 deletions
diff --git a/include/elf.h b/include/elf.h index 79859f0..66add81 100644 --- a/include/elf.h +++ b/include/elf.h @@ -135,6 +135,9 @@ typedef int64_t Elf64_Sxword; #define EM_TILEGX 191 /* TILE-Gx */ +#define EM_MOXIE 223 /* Moxie processor family */ +#define EM_MOXIE_OLD 0xFEED + /* This is the info that is needed to parse the dynamic section of the file */ #define DT_NULL 0 #define DT_NEEDED 1 diff --git a/include/hw/elf_ops.h b/include/hw/elf_ops.h index 0d41f24..0010c44 100644 --- a/include/hw/elf_ops.h +++ b/include/hw/elf_ops.h @@ -305,6 +305,14 @@ static int glue(load_elf, SZ)(const char *name, int fd, } } break; + case EM_MOXIE: + if (ehdr.e_machine != EM_MOXIE) { + if (ehdr.e_machine != EM_MOXIE_OLD) { + ret = ELF_LOAD_WRONG_ARCH; + goto fail; + } + } + break; default: if (elf_machine != ehdr.e_machine) { ret = ELF_LOAD_WRONG_ARCH; |