diff options
| author | Kumar Gala <galak@kernel.crashing.org> | 2011-08-01 09:30:34 -0500 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2011-08-04 15:04:31 +0100 |
| commit | e57a0bdfd47d14b03cd6d0337c4216b423fe965d (patch) | |
| tree | f2ee4b99e51fb4523b45ac7773151fece8d836f4 | |
| parent | 20ee0c715db14b3861c29bf3ddeab87fbae8ef89 (diff) | |
| download | poky-e57a0bdfd47d14b03cd6d0337c4216b423fe965d.tar.gz | |
binutils: Add support for powerpc e5500 core
Add powerpc e5500 core support to binutils so its recognized by
assember, etc. The e5500 is a 64-bit core from Freescale utilized in
the P5020 SoC.
(From OE-Core rev: 3952db3f254e5c57a13e3a8244c76405aa3db00d)
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
| -rw-r--r-- | meta/recipes-devtools/binutils/binutils/binutils-powerpc-e5500.patch | 112 | ||||
| -rw-r--r-- | meta/recipes-devtools/binutils/binutils_2.21.1.bb | 3 |
2 files changed, 114 insertions, 1 deletions
diff --git a/meta/recipes-devtools/binutils/binutils/binutils-powerpc-e5500.patch b/meta/recipes-devtools/binutils/binutils/binutils-powerpc-e5500.patch new file mode 100644 index 0000000000..1de164d8b6 --- /dev/null +++ b/meta/recipes-devtools/binutils/binutils/binutils-powerpc-e5500.patch | |||
| @@ -0,0 +1,112 @@ | |||
| 1 | Upstream-Status: Pending | ||
| 2 | |||
| 3 | Add support for FSL PowerPC e5500 core. | ||
| 4 | |||
| 5 | Signed-off-by: Edmar Wienskoski <edmar@freescale.com> | ||
| 6 | Signed-off-by: Kumar Gala <galak@kernel.crashing.org> | ||
| 7 | |||
| 8 | Index: binutils-2.21.1/bfd/archures.c | ||
| 9 | =================================================================== | ||
| 10 | --- binutils-2.21.1.orig/bfd/archures.c | ||
| 11 | +++ binutils-2.21.1/bfd/archures.c | ||
| 12 | @@ -231,6 +231,7 @@ DESCRIPTION | ||
| 13 | .#define bfd_mach_ppc_e500 500 | ||
| 14 | .#define bfd_mach_ppc_e500mc 5001 | ||
| 15 | .#define bfd_mach_ppc_e500mc64 5005 | ||
| 16 | +.#define bfd_mach_ppc_e5500 5006 | ||
| 17 | .#define bfd_mach_ppc_titan 83 | ||
| 18 | . bfd_arch_rs6000, {* IBM RS/6000 *} | ||
| 19 | .#define bfd_mach_rs6k 6000 | ||
| 20 | Index: binutils-2.21.1/bfd/bfd-in2.h | ||
| 21 | =================================================================== | ||
| 22 | --- binutils-2.21.1.orig/bfd/bfd-in2.h | ||
| 23 | +++ binutils-2.21.1/bfd/bfd-in2.h | ||
| 24 | @@ -1918,6 +1918,7 @@ enum bfd_architecture | ||
| 25 | #define bfd_mach_ppc_e500 500 | ||
| 26 | #define bfd_mach_ppc_e500mc 5001 | ||
| 27 | #define bfd_mach_ppc_e500mc64 5005 | ||
| 28 | +#define bfd_mach_ppc_e5500 5006 | ||
| 29 | #define bfd_mach_ppc_titan 83 | ||
| 30 | bfd_arch_rs6000, /* IBM RS/6000 */ | ||
| 31 | #define bfd_mach_rs6k 6000 | ||
| 32 | Index: binutils-2.21.1/bfd/cpu-powerpc.c | ||
| 33 | =================================================================== | ||
| 34 | --- binutils-2.21.1.orig/bfd/cpu-powerpc.c | ||
| 35 | +++ binutils-2.21.1/bfd/cpu-powerpc.c | ||
| 36 | @@ -352,6 +352,20 @@ const bfd_arch_info_type bfd_powerpc_arc | ||
| 37 | FALSE, /* not the default */ | ||
| 38 | powerpc_compatible, | ||
| 39 | bfd_default_scan, | ||
| 40 | + &bfd_powerpc_archs[19] | ||
| 41 | + }, | ||
| 42 | + { | ||
| 43 | + 64, /* 64 bits in a word */ | ||
| 44 | + 64, /* 64 bits in an address */ | ||
| 45 | + 8, /* 8 bits in a byte */ | ||
| 46 | + bfd_arch_powerpc, | ||
| 47 | + bfd_mach_ppc_e5500, | ||
| 48 | + "powerpc", | ||
| 49 | + "powerpc:e5500", | ||
| 50 | + 3, | ||
| 51 | + FALSE, /* not the default */ | ||
| 52 | + powerpc_compatible, | ||
| 53 | + bfd_default_scan, | ||
| 54 | 0 | ||
| 55 | } | ||
| 56 | }; | ||
| 57 | Index: binutils-2.21.1/gas/config/tc-ppc.c | ||
| 58 | =================================================================== | ||
| 59 | --- binutils-2.21.1.orig/gas/config/tc-ppc.c | ||
| 60 | +++ binutils-2.21.1/gas/config/tc-ppc.c | ||
| 61 | @@ -1236,6 +1236,7 @@ PowerPC options:\n\ | ||
| 62 | -me500, -me500x2 generate code for Motorola e500 core complex\n\ | ||
| 63 | -me500mc, generate code for Freescale e500mc core complex\n\ | ||
| 64 | -me500mc64, generate code for Freescale e500mc64 core complex\n\ | ||
| 65 | +-me5500, generate code for Freescale e5500 core complex\n\ | ||
| 66 | -mspe generate code for Motorola SPE instructions\n\ | ||
| 67 | -mtitan generate code for AppliedMicro Titan core complex\n\ | ||
| 68 | -mregnames Allow symbolic names for registers\n\ | ||
| 69 | Index: binutils-2.21.1/gas/doc/as.texinfo | ||
| 70 | =================================================================== | ||
| 71 | --- binutils-2.21.1.orig/gas/doc/as.texinfo | ||
| 72 | +++ binutils-2.21.1/gas/doc/as.texinfo | ||
| 73 | @@ -432,7 +432,7 @@ gcc(1), ld(1), and the Info entries for | ||
| 74 | [@b{-a32}|@b{-a64}] | ||
| 75 | [@b{-mpwrx}|@b{-mpwr2}|@b{-mpwr}|@b{-m601}|@b{-mppc}|@b{-mppc32}|@b{-m603}|@b{-m604}|@b{-m403}|@b{-m405}| | ||
| 76 | @b{-m440}|@b{-m464}|@b{-m476}|@b{-m7400}|@b{-m7410}|@b{-m7450}|@b{-m7455}|@b{-m750cl}|@b{-mppc64}| | ||
| 77 | - @b{-m620}|@b{-me500}|@b{-e500x2}|@b{-me500mc}|@b{-me500mc64}|@b{-mppc64bridge}|@b{-mbooke}| | ||
| 78 | + @b{-m620}|@b{-me500}|@b{-e500x2}|@b{-me500mc}|@b{-me500mc64}|@b{-me5500}|@b{-mppc64bridge}|@b{-mbooke}| | ||
| 79 | @b{-mpower4}|@b{-mpr4}|@b{-mpower5}|@b{-mpwr5}|@b{-mpwr5x}|@b{-mpower6}|@b{-mpwr6}| | ||
| 80 | @b{-mpower7}|@b{-mpw7}|@b{-ma2}|@b{-mcell}|@b{-mspe}|@b{-mtitan}|@b{-me300}|@b{-mcom}] | ||
| 81 | [@b{-many}] [@b{-maltivec}|@b{-mvsx}] | ||
| 82 | Index: binutils-2.21.1/gas/doc/c-ppc.texi | ||
| 83 | =================================================================== | ||
| 84 | --- binutils-2.21.1.orig/gas/doc/c-ppc.texi | ||
| 85 | +++ binutils-2.21.1/gas/doc/c-ppc.texi | ||
| 86 | @@ -85,6 +85,9 @@ Generate code for Freescale e500mc core | ||
| 87 | @item -me500mc64 | ||
| 88 | Generate code for Freescale e500mc64 core complex. | ||
| 89 | |||
| 90 | +@item -me5500 | ||
| 91 | +Generate code for Freescale e5500 core complex. | ||
| 92 | + | ||
| 93 | @item -mspe | ||
| 94 | Generate code for Motorola SPE instructions. | ||
| 95 | |||
| 96 | Index: binutils-2.21.1/opcodes/ppc-dis.c | ||
| 97 | =================================================================== | ||
| 98 | --- binutils-2.21.1.orig/opcodes/ppc-dis.c | ||
| 99 | +++ binutils-2.21.1/opcodes/ppc-dis.c | ||
| 100 | @@ -114,6 +114,12 @@ struct ppc_mopt ppc_opts[] = { | ||
| 101 | | PPC_OPCODE_E500MC | PPC_OPCODE_64 | PPC_OPCODE_POWER5 | ||
| 102 | | PPC_OPCODE_POWER6 | PPC_OPCODE_POWER7), | ||
| 103 | 0 }, | ||
| 104 | + { "e5500", (PPC_OPCODE_PPC | PPC_OPCODE_BOOKE | PPC_OPCODE_ISEL | ||
| 105 | + | PPC_OPCODE_PMR | PPC_OPCODE_CACHELCK | PPC_OPCODE_RFMCI | ||
| 106 | + | PPC_OPCODE_E500MC | PPC_OPCODE_64 | PPC_OPCODE_POWER4 | ||
| 107 | + | PPC_OPCODE_POWER5 | PPC_OPCODE_POWER6 | ||
| 108 | + | PPC_OPCODE_POWER7), | ||
| 109 | + 0 }, | ||
| 110 | { "e500x2", (PPC_OPCODE_PPC | PPC_OPCODE_BOOKE | PPC_OPCODE_SPE | ||
| 111 | | PPC_OPCODE_ISEL | PPC_OPCODE_EFS | PPC_OPCODE_BRLOCK | ||
| 112 | | PPC_OPCODE_PMR | PPC_OPCODE_CACHELCK | PPC_OPCODE_RFMCI | ||
diff --git a/meta/recipes-devtools/binutils/binutils_2.21.1.bb b/meta/recipes-devtools/binutils/binutils_2.21.1.bb index 1f361170e7..96f9d5fec3 100644 --- a/meta/recipes-devtools/binutils/binutils_2.21.1.bb +++ b/meta/recipes-devtools/binutils/binutils_2.21.1.bb | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | require binutils.inc | 1 | require binutils.inc |
| 2 | 2 | ||
| 3 | PR = "r3" | 3 | PR = "r4" |
| 4 | 4 | ||
| 5 | LIC_FILES_CHKSUM="\ | 5 | LIC_FILES_CHKSUM="\ |
| 6 | file://src-release;endline=17;md5=4830a9ef968f3b18dd5e9f2c00db2d35\ | 6 | file://src-release;endline=17;md5=4830a9ef968f3b18dd5e9f2c00db2d35\ |
| @@ -30,6 +30,7 @@ SRC_URI = "\ | |||
| 30 | file://binutils-poison.patch \ | 30 | file://binutils-poison.patch \ |
| 31 | file://libtool-rpath-fix.patch \ | 31 | file://libtool-rpath-fix.patch \ |
| 32 | file://clone-shadow.patch \ | 32 | file://clone-shadow.patch \ |
| 33 | file://binutils-powerpc-e5500.patch \ | ||
| 33 | " | 34 | " |
| 34 | 35 | ||
| 35 | SRC_URI[md5sum] = "a22801a9cad45c85e9ff6afc10537d72" | 36 | SRC_URI[md5sum] = "a22801a9cad45c85e9ff6afc10537d72" |
