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 /meta/recipes-devtools/binutils | |
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>
Diffstat (limited to 'meta/recipes-devtools/binutils')
-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" |