summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/binutils
diff options
context:
space:
mode:
authorKumar Gala <galak@kernel.crashing.org>2011-08-01 09:30:34 -0500
committerRichard Purdie <richard.purdie@linuxfoundation.org>2011-08-04 15:04:31 +0100
commite57a0bdfd47d14b03cd6d0337c4216b423fe965d (patch)
treef2ee4b99e51fb4523b45ac7773151fece8d836f4 /meta/recipes-devtools/binutils
parent20ee0c715db14b3861c29bf3ddeab87fbae8ef89 (diff)
downloadpoky-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.patch112
-rw-r--r--meta/recipes-devtools/binutils/binutils_2.21.1.bb3
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 @@
1Upstream-Status: Pending
2
3Add support for FSL PowerPC e5500 core.
4
5Signed-off-by: Edmar Wienskoski <edmar@freescale.com>
6Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
7
8Index: 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
20Index: 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
32Index: 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 };
57Index: 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\
69Index: 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}]
82Index: 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
96Index: 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 @@
1require binutils.inc 1require binutils.inc
2 2
3PR = "r3" 3PR = "r4"
4 4
5LIC_FILES_CHKSUM="\ 5LIC_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
35SRC_URI[md5sum] = "a22801a9cad45c85e9ff6afc10537d72" 36SRC_URI[md5sum] = "a22801a9cad45c85e9ff6afc10537d72"