| 1 | /* |
| 2 | * PowerPC CPU initialization for qemu. |
| 3 | * |
| 4 | * Copyright (c) 2003-2007 Jocelyn Mayer |
| 5 | * Copyright 2011 Freescale Semiconductor, Inc. |
| 6 | * Copyright 2013 SUSE LINUX Products GmbH |
| 7 | * |
| 8 | * This library is free software; you can redistribute it and/or |
| 9 | * modify it under the terms of the GNU Lesser General Public |
| 10 | * License as published by the Free Software Foundation; either |
| 11 | * version 2.1 of the License, or (at your option) any later version. |
| 12 | * |
| 13 | * This library is distributed in the hope that it will be useful, |
| 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| 16 | * Lesser General Public License for more details. |
| 17 | * |
| 18 | * You should have received a copy of the GNU Lesser General Public |
| 19 | * License along with this library; if not, see <http://www.gnu.org/licenses/>. |
| 20 | */ |
| 21 | |
| 22 | #include "qemu/osdep.h" |
| 23 | #include "cpu.h" |
| 24 | #include "qemu/module.h" |
| 25 | #include "cpu-models.h" |
| 26 | |
| 27 | #if defined(CONFIG_USER_ONLY) |
| 28 | #define TODO_USER_ONLY 1 |
| 29 | #endif |
| 30 | |
| 31 | /***************************************************************************/ |
| 32 | /* PowerPC CPU definitions */ |
| 33 | #define POWERPC_DEF_PREFIX(pvr, svr, type) \ |
| 34 | glue(glue(glue(glue(pvr, _), svr), _), type) |
| 35 | #define POWERPC_DEF_SVR_DEPR(_name, _desc, _pvr, _svr, _type, _deprecation_note) \ |
| 36 | static void \ |
| 37 | glue(POWERPC_DEF_PREFIX(_pvr, _svr, _type), _cpu_class_init) \ |
| 38 | (ObjectClass *oc, const void *data) \ |
| 39 | { \ |
| 40 | DeviceClass *dc = DEVICE_CLASS(oc); \ |
| 41 | CPUClass *cc = CPU_CLASS(oc); \ |
| 42 | PowerPCCPUClass *pcc = POWERPC_CPU_CLASS(oc); \ |
| 43 | \ |
| 44 | pcc->pvr = _pvr; \ |
| 45 | pcc->svr = _svr; \ |
| 46 | dc->desc = _desc; \ |
| 47 | \ |
| 48 | cc->deprecation_note = _deprecation_note; \ |
| 49 | } \ |
| 50 | \ |
| 51 | static const TypeInfo \ |
| 52 | glue(POWERPC_DEF_PREFIX(_pvr, _svr, _type), _cpu_type_info) = { \ |
| 53 | .name = POWERPC_CPU_TYPE_NAME(_name), \ |
| 54 | .parent = stringify(_type) "-family-" TYPE_POWERPC_CPU, \ |
| 55 | .class_init = \ |
| 56 | glue(POWERPC_DEF_PREFIX(_pvr, _svr, _type), _cpu_class_init), \ |
| 57 | }; \ |
| 58 | \ |
| 59 | static void \ |
| 60 | glue(POWERPC_DEF_PREFIX(_pvr, _svr, _type), _cpu_register_types)(void) \ |
| 61 | { \ |
| 62 | type_register_static( \ |
| 63 | &glue(POWERPC_DEF_PREFIX(_pvr, _svr, _type), _cpu_type_info)); \ |
| 64 | } \ |
| 65 | \ |
| 66 | type_init( \ |
| 67 | glue(POWERPC_DEF_PREFIX(_pvr, _svr, _type), _cpu_register_types)) |
| 68 | |
| 69 | #define POWERPC_DEF_SVR(_name, _desc, _pvr, _svr, _type) \ |
| 70 | POWERPC_DEF_SVR_DEPR(_name, _desc, _pvr, _svr, _type, NULL) |
| 71 | |
| 72 | #define POWERPC_DEPRECATED_CPU(_name, _pvr, _type, _desc, _deprecation_note)\ |
| 73 | POWERPC_DEF_SVR_DEPR(_name, _desc, _pvr, POWERPC_SVR_NONE, _type, \ |
| 74 | _deprecation_note) |
| 75 | |
| 76 | #define POWERPC_DEF(_name, _pvr, _type, _desc) \ |
| 77 | POWERPC_DEF_SVR(_name, _desc, _pvr, POWERPC_SVR_NONE, _type) |
| 78 | |
| 79 | /* Embedded PowerPC */ |
| 80 | /* PowerPC 405 family */ |
| 81 | /* PowerPC 405 cores */ |
| 82 | POWERPC_DEF("405d2", CPU_POWERPC_405D2, 405, |
| 83 | "PowerPC 405 D2") |
| 84 | POWERPC_DEF("405d4", CPU_POWERPC_405D4, 405, |
| 85 | "PowerPC 405 D4") |
| 86 | /* PowerPC 405 microcontrollers */ |
| 87 | POWERPC_DEF("405cra", CPU_POWERPC_405CRa, 405, |
| 88 | "PowerPC 405 CRa") |
| 89 | POWERPC_DEF("405crb", CPU_POWERPC_405CRb, 405, |
| 90 | "PowerPC 405 CRb") |
| 91 | POWERPC_DEF("405crc", CPU_POWERPC_405CRc, 405, |
| 92 | "PowerPC 405 CRc") |
| 93 | POWERPC_DEF("405ep", CPU_POWERPC_405EP, 405, |
| 94 | "PowerPC 405 EP") |
| 95 | POWERPC_DEF("405ez", CPU_POWERPC_405EZ, 405, |
| 96 | "PowerPC 405 EZ") |
| 97 | POWERPC_DEF("405gpa", CPU_POWERPC_405GPa, 405, |
| 98 | "PowerPC 405 GPa") |
| 99 | POWERPC_DEF("405gpb", CPU_POWERPC_405GPb, 405, |
| 100 | "PowerPC 405 GPb") |
| 101 | POWERPC_DEF("405gpc", CPU_POWERPC_405GPc, 405, |
| 102 | "PowerPC 405 GPc") |
| 103 | POWERPC_DEF("405gpd", CPU_POWERPC_405GPd, 405, |
| 104 | "PowerPC 405 GPd") |
| 105 | POWERPC_DEF("405gpr", CPU_POWERPC_405GPR, 405, |
| 106 | "PowerPC 405 GPR") |
| 107 | POWERPC_DEF("405lp", CPU_POWERPC_405LP, 405, |
| 108 | "PowerPC 405 LP") |
| 109 | POWERPC_DEF("npe405h", CPU_POWERPC_NPE405H, 405, |
| 110 | "Npe405 H") |
| 111 | POWERPC_DEF("npe405h2", CPU_POWERPC_NPE405H2, 405, |
| 112 | "Npe405 H2") |
| 113 | POWERPC_DEF("npe405l", CPU_POWERPC_NPE405L, 405, |
| 114 | "Npe405 L") |
| 115 | POWERPC_DEF("npe4gs3", CPU_POWERPC_NPE4GS3, 405, |
| 116 | "Npe4GS3") |
| 117 | /* PowerPC 401/403/405 based set-top-box microcontrollers */ |
| 118 | POWERPC_DEF("stb03", CPU_POWERPC_STB03, 405, |
| 119 | "STB03xx") |
| 120 | POWERPC_DEF("stb04", CPU_POWERPC_STB04, 405, |
| 121 | "STB04xx") |
| 122 | POWERPC_DEF("stb25", CPU_POWERPC_STB25, 405, |
| 123 | "STB25xx") |
| 124 | /* Xilinx PowerPC 405 cores */ |
| 125 | POWERPC_DEF("x2vp4", CPU_POWERPC_X2VP4, 405, |
| 126 | NULL) |
| 127 | POWERPC_DEF("x2vp20", CPU_POWERPC_X2VP20, 405, |
| 128 | NULL) |
| 129 | /* PPE42 Embedded Controllers */ |
| 130 | POWERPC_DEF("PPE42", CPU_POWERPC_PPE42, ppe42, |
| 131 | "Generic PPE 42") |
| 132 | POWERPC_DEF("PPE42X", CPU_POWERPC_PPE42X, ppe42x, |
| 133 | "Generic PPE 42X") |
| 134 | POWERPC_DEF("PPE42XM", CPU_POWERPC_PPE42XM, ppe42xm, |
| 135 | "Generic PPE 42XM") |
| 136 | /* PowerPC 440 family */ |
| 137 | #if defined(TODO_USER_ONLY) |
| 138 | POWERPC_DEF("440", CPU_POWERPC_440, 440GP, |
| 139 | "Generic PowerPC 440") |
| 140 | #endif |
| 141 | /* PowerPC 440 cores */ |
| 142 | POWERPC_DEF("440-xilinx", CPU_POWERPC_440_XILINX, 440x5, |
| 143 | "PowerPC 440 Xilinx 5") |
| 144 | |
| 145 | POWERPC_DEF("440-xilinx-w-dfpu", CPU_POWERPC_440_XILINX, 440x5wDFPU, |
| 146 | "PowerPC 440 Xilinx 5 With a Double Prec. FPU") |
| 147 | /* PowerPC 440 microcontrollers */ |
| 148 | POWERPC_DEF("440epa", CPU_POWERPC_440EPa, 440EP, |
| 149 | "PowerPC 440 EPa") |
| 150 | POWERPC_DEF("440epb", CPU_POWERPC_440EPb, 440EP, |
| 151 | "PowerPC 440 EPb") |
| 152 | POWERPC_DEF("440epx", CPU_POWERPC_440EPX, 440EP, |
| 153 | "PowerPC 440 EPX") |
| 154 | POWERPC_DEF("460exb", CPU_POWERPC_460EXb, 460EX, |
| 155 | "PowerPC 460 EXb") |
| 156 | #if defined(TODO_USER_ONLY) |
| 157 | POWERPC_DEF("440gpb", CPU_POWERPC_440GPb, 440GP, |
| 158 | "PowerPC 440 GPb") |
| 159 | #endif |
| 160 | #if defined(TODO_USER_ONLY) |
| 161 | POWERPC_DEF("440gpc", CPU_POWERPC_440GPc, 440GP, |
| 162 | "PowerPC 440 GPc") |
| 163 | #endif |
| 164 | #if defined(TODO_USER_ONLY) |
| 165 | POWERPC_DEF("440gra", CPU_POWERPC_440GRa, 440x5, |
| 166 | "PowerPC 440 GRa") |
| 167 | #endif |
| 168 | #if defined(TODO_USER_ONLY) |
| 169 | POWERPC_DEF("440grx", CPU_POWERPC_440GRX, 440x5, |
| 170 | "PowerPC 440 GRX") |
| 171 | #endif |
| 172 | #if defined(TODO_USER_ONLY) |
| 173 | POWERPC_DEF("440gxa", CPU_POWERPC_440GXa, 440EP, |
| 174 | "PowerPC 440 GXa") |
| 175 | #endif |
| 176 | #if defined(TODO_USER_ONLY) |
| 177 | POWERPC_DEF("440gxb", CPU_POWERPC_440GXb, 440EP, |
| 178 | "PowerPC 440 GXb") |
| 179 | #endif |
| 180 | #if defined(TODO_USER_ONLY) |
| 181 | POWERPC_DEF("440gxc", CPU_POWERPC_440GXc, 440EP, |
| 182 | "PowerPC 440 GXc") |
| 183 | #endif |
| 184 | #if defined(TODO_USER_ONLY) |
| 185 | POWERPC_DEF("440gxf", CPU_POWERPC_440GXf, 440EP, |
| 186 | "PowerPC 440 GXf") |
| 187 | #endif |
| 188 | #if defined(TODO_USER_ONLY) |
| 189 | POWERPC_DEF("440sp", CPU_POWERPC_440SP, 440EP, |
| 190 | "PowerPC 440 SP") |
| 191 | #endif |
| 192 | #if defined(TODO_USER_ONLY) |
| 193 | POWERPC_DEF("440sp2", CPU_POWERPC_440SP2, 440EP, |
| 194 | "PowerPC 440 SP2") |
| 195 | #endif |
| 196 | #if defined(TODO_USER_ONLY) |
| 197 | POWERPC_DEF("440spe", CPU_POWERPC_440SPE, 440EP, |
| 198 | "PowerPC 440 SPE") |
| 199 | #endif |
| 200 | /* Freescale embedded PowerPC cores */ |
| 201 | /* MPC5xx family (aka RCPU) */ |
| 202 | #if defined(TODO_USER_ONLY) |
| 203 | POWERPC_DEF("mpc5xx", CPU_POWERPC_MPC5xx, MPC5xx, |
| 204 | "Generic MPC5xx core") |
| 205 | #endif |
| 206 | /* MPC8xx family (aka PowerQUICC) */ |
| 207 | #if defined(TODO_USER_ONLY) |
| 208 | POWERPC_DEF("mpc8xx", CPU_POWERPC_MPC8xx, MPC8xx, |
| 209 | "Generic MPC8xx core") |
| 210 | #endif |
| 211 | /* MPC82xx family (aka PowerQUICC-II) */ |
| 212 | POWERPC_DEF("g2", CPU_POWERPC_G2, G2, |
| 213 | "PowerPC G2 core") |
| 214 | POWERPC_DEF("g2h4", CPU_POWERPC_G2H4, G2, |
| 215 | "PowerPC G2 H4 core") |
| 216 | POWERPC_DEF("g2gp", CPU_POWERPC_G2gp, G2, |
| 217 | "PowerPC G2 GP core") |
| 218 | POWERPC_DEF("g2ls", CPU_POWERPC_G2ls, G2, |
| 219 | "PowerPC G2 LS core") |
| 220 | POWERPC_DEF("g2hip3", CPU_POWERPC_G2_HIP3, G2, |
| 221 | "PowerPC G2 HiP3 core") |
| 222 | POWERPC_DEF("g2hip4", CPU_POWERPC_G2_HIP4, G2, |
| 223 | "PowerPC G2 HiP4 core") |
| 224 | POWERPC_DEF("mpc603", CPU_POWERPC_MPC603, 603E, |
| 225 | "PowerPC MPC603 core") |
| 226 | POWERPC_DEF("g2le", CPU_POWERPC_G2LE, G2LE, |
| 227 | "PowerPC G2le core (same as G2 plus little-endian mode support)") |
| 228 | POWERPC_DEF("g2legp", CPU_POWERPC_G2LEgp, G2LE, |
| 229 | "PowerPC G2LE GP core") |
| 230 | POWERPC_DEF("g2lels", CPU_POWERPC_G2LEls, G2LE, |
| 231 | "PowerPC G2LE LS core") |
| 232 | POWERPC_DEF("g2legp1", CPU_POWERPC_G2LEgp1, G2LE, |
| 233 | "PowerPC G2LE GP1 core") |
| 234 | POWERPC_DEF("g2legp3", CPU_POWERPC_G2LEgp3, G2LE, |
| 235 | "PowerPC G2LE GP3 core") |
| 236 | /* PowerPC G2 microcontrollers */ |
| 237 | POWERPC_DEF_SVR("mpc5200_v10", "MPC5200 v1.0", |
| 238 | CPU_POWERPC_MPC5200_v10, POWERPC_SVR_5200_v10, G2LE) |
| 239 | POWERPC_DEF_SVR("mpc5200_v11", "MPC5200 v1.1", |
| 240 | CPU_POWERPC_MPC5200_v11, POWERPC_SVR_5200_v11, G2LE) |
| 241 | POWERPC_DEF_SVR("mpc5200_v12", "MPC5200 v1.2", |
| 242 | CPU_POWERPC_MPC5200_v12, POWERPC_SVR_5200_v12, G2LE) |
| 243 | POWERPC_DEF_SVR("mpc5200b_v20", "MPC5200B v2.0", |
| 244 | CPU_POWERPC_MPC5200B_v20, POWERPC_SVR_5200B_v20, G2LE) |
| 245 | POWERPC_DEF_SVR("mpc5200b_v21", "MPC5200B v2.1", |
| 246 | CPU_POWERPC_MPC5200B_v21, POWERPC_SVR_5200B_v21, G2LE) |
| 247 | /* e300 family */ |
| 248 | POWERPC_DEF("e300c1", CPU_POWERPC_e300c1, e300, |
| 249 | "PowerPC e300c1 core") |
| 250 | POWERPC_DEF("e300c2", CPU_POWERPC_e300c2, e300, |
| 251 | "PowerPC e300c2 core") |
| 252 | POWERPC_DEF("e300c3", CPU_POWERPC_e300c3, e300, |
| 253 | "PowerPC e300c3 core") |
| 254 | POWERPC_DEF("e300c4", CPU_POWERPC_e300c4, e300, |
| 255 | "PowerPC e300c4 core") |
| 256 | /* PowerPC e300 microcontrollers */ |
| 257 | POWERPC_DEF_SVR("mpc8343", "MPC8343", |
| 258 | CPU_POWERPC_MPC834x, POWERPC_SVR_8343, e300) |
| 259 | POWERPC_DEF_SVR("mpc8343a", "MPC8343A", |
| 260 | CPU_POWERPC_MPC834x, POWERPC_SVR_8343A, e300) |
| 261 | POWERPC_DEF_SVR("mpc8343e", "MPC8343E", |
| 262 | CPU_POWERPC_MPC834x, POWERPC_SVR_8343E, e300) |
| 263 | POWERPC_DEF_SVR("mpc8343ea", "MPC8343EA", |
| 264 | CPU_POWERPC_MPC834x, POWERPC_SVR_8343EA, e300) |
| 265 | POWERPC_DEF_SVR("mpc8347t", "MPC8347T", |
| 266 | CPU_POWERPC_MPC834x, POWERPC_SVR_8347T, e300) |
| 267 | POWERPC_DEF_SVR("mpc8347p", "MPC8347P", |
| 268 | CPU_POWERPC_MPC834x, POWERPC_SVR_8347P, e300) |
| 269 | POWERPC_DEF_SVR("mpc8347at", "MPC8347AT", |
| 270 | CPU_POWERPC_MPC834x, POWERPC_SVR_8347AT, e300) |
| 271 | POWERPC_DEF_SVR("mpc8347ap", "MPC8347AP", |
| 272 | CPU_POWERPC_MPC834x, POWERPC_SVR_8347AP, e300) |
| 273 | POWERPC_DEF_SVR("mpc8347et", "MPC8347ET", |
| 274 | CPU_POWERPC_MPC834x, POWERPC_SVR_8347ET, e300) |
| 275 | POWERPC_DEF_SVR("mpc8347ep", "MPC8343EP", |
| 276 | CPU_POWERPC_MPC834x, POWERPC_SVR_8347EP, e300) |
| 277 | POWERPC_DEF_SVR("mpc8347eat", "MPC8347EAT", |
| 278 | CPU_POWERPC_MPC834x, POWERPC_SVR_8347EAT, e300) |
| 279 | POWERPC_DEF_SVR("mpc8347eap", "MPC8343EAP", |
| 280 | CPU_POWERPC_MPC834x, POWERPC_SVR_8347EAP, e300) |
| 281 | POWERPC_DEF_SVR("mpc8349", "MPC8349", |
| 282 | CPU_POWERPC_MPC834x, POWERPC_SVR_8349, e300) |
| 283 | POWERPC_DEF_SVR("mpc8349a", "MPC8349A", |
| 284 | CPU_POWERPC_MPC834x, POWERPC_SVR_8349A, e300) |
| 285 | POWERPC_DEF_SVR("mpc8349e", "MPC8349E", |
| 286 | CPU_POWERPC_MPC834x, POWERPC_SVR_8349E, e300) |
| 287 | POWERPC_DEF_SVR("mpc8349ea", "MPC8349EA", |
| 288 | CPU_POWERPC_MPC834x, POWERPC_SVR_8349EA, e300) |
| 289 | POWERPC_DEF_SVR("mpc8377", "MPC8377", |
| 290 | CPU_POWERPC_MPC837x, POWERPC_SVR_8377, e300) |
| 291 | POWERPC_DEF_SVR("mpc8377e", "MPC8377E", |
| 292 | CPU_POWERPC_MPC837x, POWERPC_SVR_8377E, e300) |
| 293 | POWERPC_DEF_SVR("mpc8378", "MPC8378", |
| 294 | CPU_POWERPC_MPC837x, POWERPC_SVR_8378, e300) |
| 295 | POWERPC_DEF_SVR("mpc8378e", "MPC8378E", |
| 296 | CPU_POWERPC_MPC837x, POWERPC_SVR_8378E, e300) |
| 297 | POWERPC_DEF_SVR("mpc8379", "MPC8379", |
| 298 | CPU_POWERPC_MPC837x, POWERPC_SVR_8379, e300) |
| 299 | POWERPC_DEF_SVR("mpc8379e", "MPC8379E", |
| 300 | CPU_POWERPC_MPC837x, POWERPC_SVR_8379E, e300) |
| 301 | /* e500 family */ |
| 302 | POWERPC_DEF_SVR("e500_v10", "PowerPC e500 v1.0 core", |
| 303 | CPU_POWERPC_e500v1_v10, POWERPC_SVR_E500, e500v1); |
| 304 | POWERPC_DEF_SVR("e500_v20", "PowerPC e500 v2.0 core", |
| 305 | CPU_POWERPC_e500v1_v20, POWERPC_SVR_E500, e500v1); |
| 306 | POWERPC_DEF_SVR("e500v2_v10", "PowerPC e500v2 v1.0 core", |
| 307 | CPU_POWERPC_e500v2_v10, POWERPC_SVR_E500, e500v2); |
| 308 | POWERPC_DEF_SVR("e500v2_v20", "PowerPC e500v2 v2.0 core", |
| 309 | CPU_POWERPC_e500v2_v20, POWERPC_SVR_E500, e500v2); |
| 310 | POWERPC_DEF_SVR("e500v2_v21", "PowerPC e500v2 v2.1 core", |
| 311 | CPU_POWERPC_e500v2_v21, POWERPC_SVR_E500, e500v2); |
| 312 | POWERPC_DEF_SVR("e500v2_v22", "PowerPC e500v2 v2.2 core", |
| 313 | CPU_POWERPC_e500v2_v22, POWERPC_SVR_E500, e500v2); |
| 314 | POWERPC_DEF_SVR("e500v2_v30", "PowerPC e500v2 v3.0 core", |
| 315 | CPU_POWERPC_e500v2_v30, POWERPC_SVR_E500, e500v2); |
| 316 | POWERPC_DEF_SVR("e500mc", "e500mc", |
| 317 | CPU_POWERPC_e500mc, POWERPC_SVR_E500, e500mc) |
| 318 | #ifdef TARGET_PPC64 |
| 319 | POWERPC_DEF_SVR("e5500", "e5500", |
| 320 | CPU_POWERPC_e5500, POWERPC_SVR_E500, e5500) |
| 321 | POWERPC_DEF_SVR("e6500", "e6500", |
| 322 | CPU_POWERPC_e6500, POWERPC_SVR_E500, e6500) |
| 323 | #endif |
| 324 | /* PowerPC e500 microcontrollers */ |
| 325 | POWERPC_DEF_SVR("mpc8533_v10", "MPC8533 v1.0", |
| 326 | CPU_POWERPC_MPC8533_v10, POWERPC_SVR_8533_v10, e500v2) |
| 327 | POWERPC_DEF_SVR("mpc8533_v11", "MPC8533 v1.1", |
| 328 | CPU_POWERPC_MPC8533_v11, POWERPC_SVR_8533_v11, e500v2) |
| 329 | POWERPC_DEF_SVR("mpc8533e_v10", "MPC8533E v1.0", |
| 330 | CPU_POWERPC_MPC8533E_v10, POWERPC_SVR_8533E_v10, e500v2) |
| 331 | POWERPC_DEF_SVR("mpc8533e_v11", "MPC8533E v1.1", |
| 332 | CPU_POWERPC_MPC8533E_v11, POWERPC_SVR_8533E_v11, e500v2) |
| 333 | POWERPC_DEF_SVR("mpc8540_v10", "MPC8540 v1.0", |
| 334 | CPU_POWERPC_MPC8540_v10, POWERPC_SVR_8540_v10, e500v1) |
| 335 | POWERPC_DEF_SVR("mpc8540_v20", "MPC8540 v2.0", |
| 336 | CPU_POWERPC_MPC8540_v20, POWERPC_SVR_8540_v20, e500v1) |
| 337 | POWERPC_DEF_SVR("mpc8540_v21", "MPC8540 v2.1", |
| 338 | CPU_POWERPC_MPC8540_v21, POWERPC_SVR_8540_v21, e500v1) |
| 339 | POWERPC_DEF_SVR("mpc8541_v10", "MPC8541 v1.0", |
| 340 | CPU_POWERPC_MPC8541_v10, POWERPC_SVR_8541_v10, e500v1) |
| 341 | POWERPC_DEF_SVR("mpc8541_v11", "MPC8541 v1.1", |
| 342 | CPU_POWERPC_MPC8541_v11, POWERPC_SVR_8541_v11, e500v1) |
| 343 | POWERPC_DEF_SVR("mpc8541e_v10", "MPC8541E v1.0", |
| 344 | CPU_POWERPC_MPC8541E_v10, POWERPC_SVR_8541E_v10, e500v1) |
| 345 | POWERPC_DEF_SVR("mpc8541e_v11", "MPC8541E v1.1", |
| 346 | CPU_POWERPC_MPC8541E_v11, POWERPC_SVR_8541E_v11, e500v1) |
| 347 | POWERPC_DEF_SVR("mpc8543_v10", "MPC8543 v1.0", |
| 348 | CPU_POWERPC_MPC8543_v10, POWERPC_SVR_8543_v10, e500v2) |
| 349 | POWERPC_DEF_SVR("mpc8543_v11", "MPC8543 v1.1", |
| 350 | CPU_POWERPC_MPC8543_v11, POWERPC_SVR_8543_v11, e500v2) |
| 351 | POWERPC_DEF_SVR("mpc8543_v20", "MPC8543 v2.0", |
| 352 | CPU_POWERPC_MPC8543_v20, POWERPC_SVR_8543_v20, e500v2) |
| 353 | POWERPC_DEF_SVR("mpc8543_v21", "MPC8543 v2.1", |
| 354 | CPU_POWERPC_MPC8543_v21, POWERPC_SVR_8543_v21, e500v2) |
| 355 | POWERPC_DEF_SVR("mpc8543e_v10", "MPC8543E v1.0", |
| 356 | CPU_POWERPC_MPC8543E_v10, POWERPC_SVR_8543E_v10, e500v2) |
| 357 | POWERPC_DEF_SVR("mpc8543e_v11", "MPC8543E v1.1", |
| 358 | CPU_POWERPC_MPC8543E_v11, POWERPC_SVR_8543E_v11, e500v2) |
| 359 | POWERPC_DEF_SVR("mpc8543e_v20", "MPC8543E v2.0", |
| 360 | CPU_POWERPC_MPC8543E_v20, POWERPC_SVR_8543E_v20, e500v2) |
| 361 | POWERPC_DEF_SVR("mpc8543e_v21", "MPC8543E v2.1", |
| 362 | CPU_POWERPC_MPC8543E_v21, POWERPC_SVR_8543E_v21, e500v2) |
| 363 | POWERPC_DEF_SVR("mpc8544_v10", "MPC8544 v1.0", |
| 364 | CPU_POWERPC_MPC8544_v10, POWERPC_SVR_8544_v10, e500v2) |
| 365 | POWERPC_DEF_SVR("mpc8544_v11", "MPC8544 v1.1", |
| 366 | CPU_POWERPC_MPC8544_v11, POWERPC_SVR_8544_v11, e500v2) |
| 367 | POWERPC_DEF_SVR("mpc8544e_v10", "MPC8544E v1.0", |
| 368 | CPU_POWERPC_MPC8544E_v10, POWERPC_SVR_8544E_v10, e500v2) |
| 369 | POWERPC_DEF_SVR("mpc8544e_v11", "MPC8544E v1.1", |
| 370 | CPU_POWERPC_MPC8544E_v11, POWERPC_SVR_8544E_v11, e500v2) |
| 371 | POWERPC_DEF_SVR("mpc8545_v20", "MPC8545 v2.0", |
| 372 | CPU_POWERPC_MPC8545_v20, POWERPC_SVR_8545_v20, e500v2) |
| 373 | POWERPC_DEF_SVR("mpc8545_v21", "MPC8545 v2.1", |
| 374 | CPU_POWERPC_MPC8545_v21, POWERPC_SVR_8545_v21, e500v2) |
| 375 | POWERPC_DEF_SVR("mpc8545e_v20", "MPC8545E v2.0", |
| 376 | CPU_POWERPC_MPC8545E_v20, POWERPC_SVR_8545E_v20, e500v2) |
| 377 | POWERPC_DEF_SVR("mpc8545e_v21", "MPC8545E v2.1", |
| 378 | CPU_POWERPC_MPC8545E_v21, POWERPC_SVR_8545E_v21, e500v2) |
| 379 | POWERPC_DEF_SVR("mpc8547e_v20", "MPC8547E v2.0", |
| 380 | CPU_POWERPC_MPC8547E_v20, POWERPC_SVR_8547E_v20, e500v2) |
| 381 | POWERPC_DEF_SVR("mpc8547e_v21", "MPC8547E v2.1", |
| 382 | CPU_POWERPC_MPC8547E_v21, POWERPC_SVR_8547E_v21, e500v2) |
| 383 | POWERPC_DEF_SVR("mpc8548_v10", "MPC8548 v1.0", |
| 384 | CPU_POWERPC_MPC8548_v10, POWERPC_SVR_8548_v10, e500v2) |
| 385 | POWERPC_DEF_SVR("mpc8548_v11", "MPC8548 v1.1", |
| 386 | CPU_POWERPC_MPC8548_v11, POWERPC_SVR_8548_v11, e500v2) |
| 387 | POWERPC_DEF_SVR("mpc8548_v20", "MPC8548 v2.0", |
| 388 | CPU_POWERPC_MPC8548_v20, POWERPC_SVR_8548_v20, e500v2) |
| 389 | POWERPC_DEF_SVR("mpc8548_v21", "MPC8548 v2.1", |
| 390 | CPU_POWERPC_MPC8548_v21, POWERPC_SVR_8548_v21, e500v2) |
| 391 | POWERPC_DEF_SVR("mpc8548e_v10", "MPC8548E v1.0", |
| 392 | CPU_POWERPC_MPC8548E_v10, POWERPC_SVR_8548E_v10, e500v2) |
| 393 | POWERPC_DEF_SVR("mpc8548e_v11", "MPC8548E v1.1", |
| 394 | CPU_POWERPC_MPC8548E_v11, POWERPC_SVR_8548E_v11, e500v2) |
| 395 | POWERPC_DEF_SVR("mpc8548e_v20", "MPC8548E v2.0", |
| 396 | CPU_POWERPC_MPC8548E_v20, POWERPC_SVR_8548E_v20, e500v2) |
| 397 | POWERPC_DEF_SVR("mpc8548e_v21", "MPC8548E v2.1", |
| 398 | CPU_POWERPC_MPC8548E_v21, POWERPC_SVR_8548E_v21, e500v2) |
| 399 | POWERPC_DEF_SVR("mpc8555_v10", "MPC8555 v1.0", |
| 400 | CPU_POWERPC_MPC8555_v10, POWERPC_SVR_8555_v10, e500v1) |
| 401 | POWERPC_DEF_SVR("mpc8555_v11", "MPC8555 v1.1", |
| 402 | CPU_POWERPC_MPC8555_v11, POWERPC_SVR_8555_v11, e500v1) |
| 403 | POWERPC_DEF_SVR("mpc8555e_v10", "MPC8555E v1.0", |
| 404 | CPU_POWERPC_MPC8555E_v10, POWERPC_SVR_8555E_v10, e500v1) |
| 405 | POWERPC_DEF_SVR("mpc8555e_v11", "MPC8555E v1.1", |
| 406 | CPU_POWERPC_MPC8555E_v11, POWERPC_SVR_8555E_v11, e500v1) |
| 407 | POWERPC_DEF_SVR("mpc8560_v10", "MPC8560 v1.0", |
| 408 | CPU_POWERPC_MPC8560_v10, POWERPC_SVR_8560_v10, e500v1) |
| 409 | POWERPC_DEF_SVR("mpc8560_v20", "MPC8560 v2.0", |
| 410 | CPU_POWERPC_MPC8560_v20, POWERPC_SVR_8560_v20, e500v1) |
| 411 | POWERPC_DEF_SVR("mpc8560_v21", "MPC8560 v2.1", |
| 412 | CPU_POWERPC_MPC8560_v21, POWERPC_SVR_8560_v21, e500v1) |
| 413 | POWERPC_DEF_SVR("mpc8567", "MPC8567", |
| 414 | CPU_POWERPC_MPC8567, POWERPC_SVR_8567, e500v2) |
| 415 | POWERPC_DEF_SVR("mpc8567e", "MPC8567E", |
| 416 | CPU_POWERPC_MPC8567E, POWERPC_SVR_8567E, e500v2) |
| 417 | POWERPC_DEF_SVR("mpc8568", "MPC8568", |
| 418 | CPU_POWERPC_MPC8568, POWERPC_SVR_8568, e500v2) |
| 419 | POWERPC_DEF_SVR("mpc8568e", "MPC8568E", |
| 420 | CPU_POWERPC_MPC8568E, POWERPC_SVR_8568E, e500v2) |
| 421 | POWERPC_DEF_SVR("mpc8572", "MPC8572", |
| 422 | CPU_POWERPC_MPC8572, POWERPC_SVR_8572, e500v2) |
| 423 | POWERPC_DEF_SVR("mpc8572e", "MPC8572E", |
| 424 | CPU_POWERPC_MPC8572E, POWERPC_SVR_8572E, e500v2) |
| 425 | /* e600 family */ |
| 426 | POWERPC_DEF("e600", CPU_POWERPC_e600, e600, |
| 427 | "PowerPC e600 core") |
| 428 | /* PowerPC e600 microcontrollers */ |
| 429 | POWERPC_DEF_SVR("mpc8610", "MPC8610", |
| 430 | CPU_POWERPC_MPC8610, POWERPC_SVR_8610, e600) |
| 431 | POWERPC_DEF_SVR("mpc8641", "MPC8641", |
| 432 | CPU_POWERPC_MPC8641, POWERPC_SVR_8641, e600) |
| 433 | POWERPC_DEF_SVR("mpc8641d", "MPC8641D", |
| 434 | CPU_POWERPC_MPC8641D, POWERPC_SVR_8641D, e600) |
| 435 | /* 32 bits "classic" PowerPC */ |
| 436 | /* PowerPC 6xx family */ |
| 437 | POWERPC_DEF("603", CPU_POWERPC_603, 603, |
| 438 | "PowerPC 603") |
| 439 | POWERPC_DEF("603e_v1.1", CPU_POWERPC_603E_v11, 603E, |
| 440 | "PowerPC 603e v1.1") |
| 441 | POWERPC_DEF("603e_v1.2", CPU_POWERPC_603E_v12, 603E, |
| 442 | "PowerPC 603e v1.2") |
| 443 | POWERPC_DEF("603e_v1.3", CPU_POWERPC_603E_v13, 603E, |
| 444 | "PowerPC 603e v1.3") |
| 445 | POWERPC_DEF("603e_v1.4", CPU_POWERPC_603E_v14, 603E, |
| 446 | "PowerPC 603e v1.4") |
| 447 | POWERPC_DEF("603e_v2.2", CPU_POWERPC_603E_v22, 603E, |
| 448 | "PowerPC 603e v2.2") |
| 449 | POWERPC_DEF("603e_v3", CPU_POWERPC_603E_v3, 603E, |
| 450 | "PowerPC 603e v3") |
| 451 | POWERPC_DEF("603e_v4", CPU_POWERPC_603E_v4, 603E, |
| 452 | "PowerPC 603e v4") |
| 453 | POWERPC_DEF("603e_v4.1", CPU_POWERPC_603E_v41, 603E, |
| 454 | "PowerPC 603e v4.1") |
| 455 | POWERPC_DEF("603e7", CPU_POWERPC_603E7, 603E, |
| 456 | "PowerPC 603e (aka PID7)") |
| 457 | POWERPC_DEF("603e7t", CPU_POWERPC_603E7t, 603E, |
| 458 | "PowerPC 603e7t") |
| 459 | POWERPC_DEF("603e7v", CPU_POWERPC_603E7v, 603E, |
| 460 | "PowerPC 603e7v") |
| 461 | POWERPC_DEF("603e7v1", CPU_POWERPC_603E7v1, 603E, |
| 462 | "PowerPC 603e7v1") |
| 463 | POWERPC_DEF("603e7v2", CPU_POWERPC_603E7v2, 603E, |
| 464 | "PowerPC 603e7v2") |
| 465 | POWERPC_DEF("603p", CPU_POWERPC_603P, 603E, |
| 466 | "PowerPC 603p (aka PID7v)") |
| 467 | POWERPC_DEF("604", CPU_POWERPC_604, 604, |
| 468 | "PowerPC 604") |
| 469 | POWERPC_DEF("604e_v1.0", CPU_POWERPC_604E_v10, 604E, |
| 470 | "PowerPC 604e v1.0") |
| 471 | POWERPC_DEF("604e_v2.2", CPU_POWERPC_604E_v22, 604E, |
| 472 | "PowerPC 604e v2.2") |
| 473 | POWERPC_DEF("604e_v2.4", CPU_POWERPC_604E_v24, 604E, |
| 474 | "PowerPC 604e v2.4") |
| 475 | POWERPC_DEF("604r", CPU_POWERPC_604R, 604E, |
| 476 | "PowerPC 604r (aka PIDA)") |
| 477 | /* PowerPC 7xx family */ |
| 478 | POWERPC_DEF("740_v1.0", CPU_POWERPC_7x0_v10, 740, |
| 479 | "PowerPC 740 v1.0 (G3)") |
| 480 | POWERPC_DEF("750_v1.0", CPU_POWERPC_7x0_v10, 750, |
| 481 | "PowerPC 750 v1.0 (G3)") |
| 482 | POWERPC_DEF("740_v2.0", CPU_POWERPC_7x0_v20, 740, |
| 483 | "PowerPC 740 v2.0 (G3)") |
| 484 | POWERPC_DEF("750_v2.0", CPU_POWERPC_7x0_v20, 750, |
| 485 | "PowerPC 750 v2.0 (G3)") |
| 486 | POWERPC_DEF("740_v2.1", CPU_POWERPC_7x0_v21, 740, |
| 487 | "PowerPC 740 v2.1 (G3)") |
| 488 | POWERPC_DEF("750_v2.1", CPU_POWERPC_7x0_v21, 750, |
| 489 | "PowerPC 750 v2.1 (G3)") |
| 490 | POWERPC_DEF("740_v2.2", CPU_POWERPC_7x0_v22, 740, |
| 491 | "PowerPC 740 v2.2 (G3)") |
| 492 | POWERPC_DEF("750_v2.2", CPU_POWERPC_7x0_v22, 750, |
| 493 | "PowerPC 750 v2.2 (G3)") |
| 494 | POWERPC_DEF("740_v3.0", CPU_POWERPC_7x0_v30, 740, |
| 495 | "PowerPC 740 v3.0 (G3)") |
| 496 | POWERPC_DEF("750_v3.0", CPU_POWERPC_7x0_v30, 750, |
| 497 | "PowerPC 750 v3.0 (G3)") |
| 498 | POWERPC_DEF("740_v3.1", CPU_POWERPC_7x0_v31, 740, |
| 499 | "PowerPC 740 v3.1 (G3)") |
| 500 | POWERPC_DEF("750_v3.1", CPU_POWERPC_7x0_v31, 750, |
| 501 | "PowerPC 750 v3.1 (G3)") |
| 502 | POWERPC_DEF("740e", CPU_POWERPC_740E, 740, |
| 503 | "PowerPC 740E (G3)") |
| 504 | POWERPC_DEF("750e", CPU_POWERPC_750E, 750, |
| 505 | "PowerPC 750E (G3)") |
| 506 | POWERPC_DEF("740p", CPU_POWERPC_7x0P, 740, |
| 507 | "PowerPC 740P (G3)") |
| 508 | POWERPC_DEF("750p", CPU_POWERPC_7x0P, 750, |
| 509 | "PowerPC 750P (G3)") |
| 510 | POWERPC_DEF("750cl_v1.0", CPU_POWERPC_750CL_v10, 750cl, |
| 511 | "PowerPC 750CL v1.0") |
| 512 | POWERPC_DEF("750cl_v2.0", CPU_POWERPC_750CL_v20, 750cl, |
| 513 | "PowerPC 750CL v2.0") |
| 514 | POWERPC_DEF("750cx_v1.0", CPU_POWERPC_750CX_v10, 750cx, |
| 515 | "PowerPC 750CX v1.0 (G3 embedded)") |
| 516 | POWERPC_DEF("750cx_v2.0", CPU_POWERPC_750CX_v20, 750cx, |
| 517 | "PowerPC 750CX v2.1 (G3 embedded)") |
| 518 | POWERPC_DEF("750cx_v2.1", CPU_POWERPC_750CX_v21, 750cx, |
| 519 | "PowerPC 750CX v2.1 (G3 embedded)") |
| 520 | POWERPC_DEF("750cx_v2.2", CPU_POWERPC_750CX_v22, 750cx, |
| 521 | "PowerPC 750CX v2.2 (G3 embedded)") |
| 522 | POWERPC_DEF("750cxe_v2.1", CPU_POWERPC_750CXE_v21, 750cx, |
| 523 | "PowerPC 750CXe v2.1 (G3 embedded)") |
| 524 | POWERPC_DEF("750cxe_v2.2", CPU_POWERPC_750CXE_v22, 750cx, |
| 525 | "PowerPC 750CXe v2.2 (G3 embedded)") |
| 526 | POWERPC_DEF("750cxe_v2.3", CPU_POWERPC_750CXE_v23, 750cx, |
| 527 | "PowerPC 750CXe v2.3 (G3 embedded)") |
| 528 | POWERPC_DEF("750cxe_v2.4", CPU_POWERPC_750CXE_v24, 750cx, |
| 529 | "PowerPC 750CXe v2.4 (G3 embedded)") |
| 530 | POWERPC_DEF("750cxe_v2.4b", CPU_POWERPC_750CXE_v24b, 750cx, |
| 531 | "PowerPC 750CXe v2.4b (G3 embedded)") |
| 532 | POWERPC_DEF("750cxe_v3.0", CPU_POWERPC_750CXE_v30, 750cx, |
| 533 | "PowerPC 750CXe v3.0 (G3 embedded)") |
| 534 | POWERPC_DEF("750cxe_v3.1", CPU_POWERPC_750CXE_v31, 750cx, |
| 535 | "PowerPC 750CXe v3.1 (G3 embedded)") |
| 536 | POWERPC_DEF("750cxe_v3.1b", CPU_POWERPC_750CXE_v31b, 750cx, |
| 537 | "PowerPC 750CXe v3.1b (G3 embedded)") |
| 538 | POWERPC_DEF("750cxr", CPU_POWERPC_750CXR, 750cx, |
| 539 | "PowerPC 750CXr (G3 embedded)") |
| 540 | POWERPC_DEF("750fl", CPU_POWERPC_750FL, 750fx, |
| 541 | "PowerPC 750FL (G3 embedded)") |
| 542 | POWERPC_DEF("750fx_v1.0", CPU_POWERPC_750FX_v10, 750fx, |
| 543 | "PowerPC 750FX v1.0 (G3 embedded)") |
| 544 | POWERPC_DEF("750fx_v2.0", CPU_POWERPC_750FX_v20, 750fx, |
| 545 | "PowerPC 750FX v2.0 (G3 embedded)") |
| 546 | POWERPC_DEF("750fx_v2.1", CPU_POWERPC_750FX_v21, 750fx, |
| 547 | "PowerPC 750FX v2.1 (G3 embedded)") |
| 548 | POWERPC_DEF("750fx_v2.2", CPU_POWERPC_750FX_v22, 750fx, |
| 549 | "PowerPC 750FX v2.2 (G3 embedded)") |
| 550 | POWERPC_DEF("750fx_v2.3", CPU_POWERPC_750FX_v23, 750fx, |
| 551 | "PowerPC 750FX v2.3 (G3 embedded)") |
| 552 | POWERPC_DEF("750gl", CPU_POWERPC_750GL, 750gx, |
| 553 | "PowerPC 750GL (G3 embedded)") |
| 554 | POWERPC_DEF("750gx_v1.0", CPU_POWERPC_750GX_v10, 750gx, |
| 555 | "PowerPC 750GX v1.0 (G3 embedded)") |
| 556 | POWERPC_DEF("750gx_v1.1", CPU_POWERPC_750GX_v11, 750gx, |
| 557 | "PowerPC 750GX v1.1 (G3 embedded)") |
| 558 | POWERPC_DEF("750gx_v1.2", CPU_POWERPC_750GX_v12, 750gx, |
| 559 | "PowerPC 750GX v1.2 (G3 embedded)") |
| 560 | POWERPC_DEF("750l_v2.0", CPU_POWERPC_750L_v20, 750, |
| 561 | "PowerPC 750L v2.0 (G3 embedded)") |
| 562 | POWERPC_DEF("750l_v2.1", CPU_POWERPC_750L_v21, 750, |
| 563 | "PowerPC 750L v2.1 (G3 embedded)") |
| 564 | POWERPC_DEF("750l_v2.2", CPU_POWERPC_750L_v22, 750, |
| 565 | "PowerPC 750L v2.2 (G3 embedded)") |
| 566 | POWERPC_DEF("750l_v3.0", CPU_POWERPC_750L_v30, 750, |
| 567 | "PowerPC 750L v3.0 (G3 embedded)") |
| 568 | POWERPC_DEF("750l_v3.2", CPU_POWERPC_750L_v32, 750, |
| 569 | "PowerPC 750L v3.2 (G3 embedded)") |
| 570 | POWERPC_DEF("745_v1.0", CPU_POWERPC_7x5_v10, 745, |
| 571 | "PowerPC 745 v1.0") |
| 572 | POWERPC_DEF("755_v1.0", CPU_POWERPC_7x5_v10, 755, |
| 573 | "PowerPC 755 v1.0") |
| 574 | POWERPC_DEF("745_v1.1", CPU_POWERPC_7x5_v11, 745, |
| 575 | "PowerPC 745 v1.1") |
| 576 | POWERPC_DEF("755_v1.1", CPU_POWERPC_7x5_v11, 755, |
| 577 | "PowerPC 755 v1.1") |
| 578 | POWERPC_DEF("745_v2.0", CPU_POWERPC_7x5_v20, 745, |
| 579 | "PowerPC 745 v2.0") |
| 580 | POWERPC_DEF("755_v2.0", CPU_POWERPC_7x5_v20, 755, |
| 581 | "PowerPC 755 v2.0") |
| 582 | POWERPC_DEF("745_v2.1", CPU_POWERPC_7x5_v21, 745, |
| 583 | "PowerPC 745 v2.1") |
| 584 | POWERPC_DEF("755_v2.1", CPU_POWERPC_7x5_v21, 755, |
| 585 | "PowerPC 755 v2.1") |
| 586 | POWERPC_DEF("745_v2.2", CPU_POWERPC_7x5_v22, 745, |
| 587 | "PowerPC 745 v2.2") |
| 588 | POWERPC_DEF("755_v2.2", CPU_POWERPC_7x5_v22, 755, |
| 589 | "PowerPC 755 v2.2") |
| 590 | POWERPC_DEF("745_v2.3", CPU_POWERPC_7x5_v23, 745, |
| 591 | "PowerPC 745 v2.3") |
| 592 | POWERPC_DEF("755_v2.3", CPU_POWERPC_7x5_v23, 755, |
| 593 | "PowerPC 755 v2.3") |
| 594 | POWERPC_DEF("745_v2.4", CPU_POWERPC_7x5_v24, 745, |
| 595 | "PowerPC 745 v2.4") |
| 596 | POWERPC_DEF("755_v2.4", CPU_POWERPC_7x5_v24, 755, |
| 597 | "PowerPC 755 v2.4") |
| 598 | POWERPC_DEF("745_v2.5", CPU_POWERPC_7x5_v25, 745, |
| 599 | "PowerPC 745 v2.5") |
| 600 | POWERPC_DEF("755_v2.5", CPU_POWERPC_7x5_v25, 755, |
| 601 | "PowerPC 755 v2.5") |
| 602 | POWERPC_DEF("745_v2.6", CPU_POWERPC_7x5_v26, 745, |
| 603 | "PowerPC 745 v2.6") |
| 604 | POWERPC_DEF("755_v2.6", CPU_POWERPC_7x5_v26, 755, |
| 605 | "PowerPC 755 v2.6") |
| 606 | POWERPC_DEF("745_v2.7", CPU_POWERPC_7x5_v27, 745, |
| 607 | "PowerPC 745 v2.7") |
| 608 | POWERPC_DEF("755_v2.7", CPU_POWERPC_7x5_v27, 755, |
| 609 | "PowerPC 755 v2.7") |
| 610 | POWERPC_DEF("745_v2.8", CPU_POWERPC_7x5_v28, 745, |
| 611 | "PowerPC 745 v2.8") |
| 612 | POWERPC_DEF("755_v2.8", CPU_POWERPC_7x5_v28, 755, |
| 613 | "PowerPC 755 v2.8") |
| 614 | /* PowerPC 74xx family */ |
| 615 | POWERPC_DEF("7400_v1.0", CPU_POWERPC_7400_v10, 7400, |
| 616 | "PowerPC 7400 v1.0 (G4)") |
| 617 | POWERPC_DEF("7400_v1.1", CPU_POWERPC_7400_v11, 7400, |
| 618 | "PowerPC 7400 v1.1 (G4)") |
| 619 | POWERPC_DEF("7400_v2.0", CPU_POWERPC_7400_v20, 7400, |
| 620 | "PowerPC 7400 v2.0 (G4)") |
| 621 | POWERPC_DEF("7400_v2.1", CPU_POWERPC_7400_v21, 7400, |
| 622 | "PowerPC 7400 v2.1 (G4)") |
| 623 | POWERPC_DEF("7400_v2.2", CPU_POWERPC_7400_v22, 7400, |
| 624 | "PowerPC 7400 v2.2 (G4)") |
| 625 | POWERPC_DEF("7400_v2.6", CPU_POWERPC_7400_v26, 7400, |
| 626 | "PowerPC 7400 v2.6 (G4)") |
| 627 | POWERPC_DEF("7400_v2.7", CPU_POWERPC_7400_v27, 7400, |
| 628 | "PowerPC 7400 v2.7 (G4)") |
| 629 | POWERPC_DEF("7400_v2.8", CPU_POWERPC_7400_v28, 7400, |
| 630 | "PowerPC 7400 v2.8 (G4)") |
| 631 | POWERPC_DEF("7400_v2.9", CPU_POWERPC_7400_v29, 7400, |
| 632 | "PowerPC 7400 v2.9 (G4)") |
| 633 | POWERPC_DEF("7410_v1.0", CPU_POWERPC_7410_v10, 7410, |
| 634 | "PowerPC 7410 v1.0 (G4)") |
| 635 | POWERPC_DEF("7410_v1.1", CPU_POWERPC_7410_v11, 7410, |
| 636 | "PowerPC 7410 v1.1 (G4)") |
| 637 | POWERPC_DEF("7410_v1.2", CPU_POWERPC_7410_v12, 7410, |
| 638 | "PowerPC 7410 v1.2 (G4)") |
| 639 | POWERPC_DEF("7410_v1.3", CPU_POWERPC_7410_v13, 7410, |
| 640 | "PowerPC 7410 v1.3 (G4)") |
| 641 | POWERPC_DEF("7410_v1.4", CPU_POWERPC_7410_v14, 7410, |
| 642 | "PowerPC 7410 v1.4 (G4)") |
| 643 | POWERPC_DEF("7448_v1.0", CPU_POWERPC_7448_v10, 7445, |
| 644 | "PowerPC 7448 v1.0 (G4)") |
| 645 | POWERPC_DEF("7448_v1.1", CPU_POWERPC_7448_v11, 7445, |
| 646 | "PowerPC 7448 v1.1 (G4)") |
| 647 | POWERPC_DEF("7448_v2.0", CPU_POWERPC_7448_v20, 7445, |
| 648 | "PowerPC 7448 v2.0 (G4)") |
| 649 | POWERPC_DEF("7448_v2.1", CPU_POWERPC_7448_v21, 7445, |
| 650 | "PowerPC 7448 v2.1 (G4)") |
| 651 | POWERPC_DEF("7450_v1.0", CPU_POWERPC_7450_v10, 7450, |
| 652 | "PowerPC 7450 v1.0 (G4)") |
| 653 | POWERPC_DEF("7450_v1.1", CPU_POWERPC_7450_v11, 7450, |
| 654 | "PowerPC 7450 v1.1 (G4)") |
| 655 | POWERPC_DEF("7450_v1.2", CPU_POWERPC_7450_v12, 7450, |
| 656 | "PowerPC 7450 v1.2 (G4)") |
| 657 | POWERPC_DEF("7450_v2.0", CPU_POWERPC_7450_v20, 7450, |
| 658 | "PowerPC 7450 v2.0 (G4)") |
| 659 | POWERPC_DEF("7450_v2.1", CPU_POWERPC_7450_v21, 7450, |
| 660 | "PowerPC 7450 v2.1 (G4)") |
| 661 | POWERPC_DEF("7441_v2.1", CPU_POWERPC_7450_v21, 7440, |
| 662 | "PowerPC 7441 v2.1 (G4)") |
| 663 | POWERPC_DEF("7441_v2.3", CPU_POWERPC_74x1_v23, 7440, |
| 664 | "PowerPC 7441 v2.3 (G4)") |
| 665 | POWERPC_DEF("7451_v2.3", CPU_POWERPC_74x1_v23, 7450, |
| 666 | "PowerPC 7451 v2.3 (G4)") |
| 667 | POWERPC_DEF("7441_v2.10", CPU_POWERPC_74x1_v210, 7440, |
| 668 | "PowerPC 7441 v2.10 (G4)") |
| 669 | POWERPC_DEF("7451_v2.10", CPU_POWERPC_74x1_v210, 7450, |
| 670 | "PowerPC 7451 v2.10 (G4)") |
| 671 | POWERPC_DEF("7445_v1.0", CPU_POWERPC_74x5_v10, 7445, |
| 672 | "PowerPC 7445 v1.0 (G4)") |
| 673 | POWERPC_DEF("7455_v1.0", CPU_POWERPC_74x5_v10, 7455, |
| 674 | "PowerPC 7455 v1.0 (G4)") |
| 675 | POWERPC_DEF("7445_v2.1", CPU_POWERPC_74x5_v21, 7445, |
| 676 | "PowerPC 7445 v2.1 (G4)") |
| 677 | POWERPC_DEF("7455_v2.1", CPU_POWERPC_74x5_v21, 7455, |
| 678 | "PowerPC 7455 v2.1 (G4)") |
| 679 | POWERPC_DEF("7445_v3.2", CPU_POWERPC_74x5_v32, 7445, |
| 680 | "PowerPC 7445 v3.2 (G4)") |
| 681 | POWERPC_DEF("7455_v3.2", CPU_POWERPC_74x5_v32, 7455, |
| 682 | "PowerPC 7455 v3.2 (G4)") |
| 683 | POWERPC_DEF("7445_v3.3", CPU_POWERPC_74x5_v33, 7445, |
| 684 | "PowerPC 7445 v3.3 (G4)") |
| 685 | POWERPC_DEF("7455_v3.3", CPU_POWERPC_74x5_v33, 7455, |
| 686 | "PowerPC 7455 v3.3 (G4)") |
| 687 | POWERPC_DEF("7445_v3.4", CPU_POWERPC_74x5_v34, 7445, |
| 688 | "PowerPC 7445 v3.4 (G4)") |
| 689 | POWERPC_DEF("7455_v3.4", CPU_POWERPC_74x5_v34, 7455, |
| 690 | "PowerPC 7455 v3.4 (G4)") |
| 691 | POWERPC_DEF("7447_v1.0", CPU_POWERPC_74x7_v10, 7445, |
| 692 | "PowerPC 7447 v1.0 (G4)") |
| 693 | POWERPC_DEF("7457_v1.0", CPU_POWERPC_74x7_v10, 7455, |
| 694 | "PowerPC 7457 v1.0 (G4)") |
| 695 | POWERPC_DEF("7447_v1.1", CPU_POWERPC_74x7_v11, 7445, |
| 696 | "PowerPC 7447 v1.1 (G4)") |
| 697 | POWERPC_DEF("7457_v1.1", CPU_POWERPC_74x7_v11, 7455, |
| 698 | "PowerPC 7457 v1.1 (G4)") |
| 699 | POWERPC_DEF("7457_v1.2", CPU_POWERPC_74x7_v12, 7455, |
| 700 | "PowerPC 7457 v1.2 (G4)") |
| 701 | POWERPC_DEF("7447a_v1.0", CPU_POWERPC_74x7A_v10, 7445, |
| 702 | "PowerPC 7447A v1.0 (G4)") |
| 703 | POWERPC_DEF("7457a_v1.0", CPU_POWERPC_74x7A_v10, 7455, |
| 704 | "PowerPC 7457A v1.0 (G4)") |
| 705 | POWERPC_DEF("7447a_v1.1", CPU_POWERPC_74x7A_v11, 7445, |
| 706 | "PowerPC 7447A v1.1 (G4)") |
| 707 | POWERPC_DEF("7457a_v1.1", CPU_POWERPC_74x7A_v11, 7455, |
| 708 | "PowerPC 7457A v1.1 (G4)") |
| 709 | POWERPC_DEF("7447a_v1.2", CPU_POWERPC_74x7A_v12, 7445, |
| 710 | "PowerPC 7447A v1.2 (G4)") |
| 711 | POWERPC_DEF("7457a_v1.2", CPU_POWERPC_74x7A_v12, 7455, |
| 712 | "PowerPC 7457A v1.2 (G4)") |
| 713 | /* 64 bits PowerPC */ |
| 714 | #if defined(TARGET_PPC64) |
| 715 | POWERPC_DEF("970_v2.2", CPU_POWERPC_970_v22, 970, |
| 716 | "PowerPC 970 v2.2") |
| 717 | POWERPC_DEF("970fx_v1.0", CPU_POWERPC_970FX_v10, 970, |
| 718 | "PowerPC 970FX v1.0 (G5)") |
| 719 | POWERPC_DEF("970fx_v2.0", CPU_POWERPC_970FX_v20, 970, |
| 720 | "PowerPC 970FX v2.0 (G5)") |
| 721 | POWERPC_DEF("970fx_v2.1", CPU_POWERPC_970FX_v21, 970, |
| 722 | "PowerPC 970FX v2.1 (G5)") |
| 723 | POWERPC_DEF("970fx_v3.0", CPU_POWERPC_970FX_v30, 970, |
| 724 | "PowerPC 970FX v3.0 (G5)") |
| 725 | POWERPC_DEF("970fx_v3.1", CPU_POWERPC_970FX_v31, 970, |
| 726 | "PowerPC 970FX v3.1 (G5)") |
| 727 | POWERPC_DEF("970mp_v1.0", CPU_POWERPC_970MP_v10, 970, |
| 728 | "PowerPC 970MP v1.0") |
| 729 | POWERPC_DEF("970mp_v1.1", CPU_POWERPC_970MP_v11, 970, |
| 730 | "PowerPC 970MP v1.1") |
| 731 | POWERPC_DEF("power5p_v2.1", CPU_POWERPC_POWER5P_v21, POWER5P, |
| 732 | "POWER5+ v2.1") |
| 733 | POWERPC_DEF("power7_v2.3", CPU_POWERPC_POWER7_v23, POWER7, |
| 734 | "POWER7 v2.3") |
| 735 | POWERPC_DEF("power7p_v2.1", CPU_POWERPC_POWER7P_v21, POWER7, |
| 736 | "POWER7+ v2.1") |
| 737 | POWERPC_DEF("power8_v2.0", CPU_POWERPC_POWER8_v20, POWER8, |
| 738 | "POWER8 v2.0") |
| 739 | POWERPC_DEF("power9_v2.0", CPU_POWERPC_POWER9_DD20, POWER9, |
| 740 | "POWER9 v2.0") |
| 741 | POWERPC_DEF("power9_v2.2", CPU_POWERPC_POWER9_DD22, POWER9, |
| 742 | "POWER9 v2.2") |
| 743 | POWERPC_DEF("power10_v2.0", CPU_POWERPC_POWER10_DD20, POWER10, |
| 744 | "POWER10 v2.0") |
| 745 | POWERPC_DEF("power11_v2.0", CPU_POWERPC_POWER11_DD20, POWER11, |
| 746 | "POWER11_v2.0") |
| 747 | #endif /* defined (TARGET_PPC64) */ |
| 748 | |
| 749 | /***************************************************************************/ |
| 750 | /* PowerPC CPU aliases */ |
| 751 | |
| 752 | PowerPCCPUAlias ppc_cpu_aliases[] = { |
| 753 | { "405", "405d4" }, |
| 754 | { "405cr", "405crc" }, |
| 755 | { "405gp", "405gpd" }, |
| 756 | { "405gpe", "405crc" }, |
| 757 | { "x2vp7", "x2vp4" }, |
| 758 | { "x2vp50", "x2vp20" }, |
| 759 | |
| 760 | { "440ep", "440epb" }, |
| 761 | { "460ex", "460exb" }, |
| 762 | #if defined(TODO_USER_ONLY) |
| 763 | { "440gp", "440gpc" }, |
| 764 | { "440gr", "440gra" }, |
| 765 | { "440gx", "440gxf" }, |
| 766 | |
| 767 | { "rcpu", "mpc5xx" }, |
| 768 | /* MPC5xx microcontrollers */ |
| 769 | { "mgt560", "mpc5xx" }, |
| 770 | { "mpc509", "mpc5xx" }, |
| 771 | { "mpc533", "mpc5xx" }, |
| 772 | { "mpc534", "mpc5xx" }, |
| 773 | { "mpc555", "mpc5xx" }, |
| 774 | { "mpc556", "mpc5xx" }, |
| 775 | { "mpc560", "mpc5xx" }, |
| 776 | { "mpc561", "mpc5xx" }, |
| 777 | { "mpc562", "mpc5xx" }, |
| 778 | { "mpc563", "mpc5xx" }, |
| 779 | { "mpc564", "mpc5xx" }, |
| 780 | { "mpc565", "mpc5xx" }, |
| 781 | { "mpc566", "mpc5xx" }, |
| 782 | |
| 783 | { "powerquicc", "mpc8xx" }, |
| 784 | /* MPC8xx microcontrollers */ |
| 785 | { "mgt823", "mpc8xx" }, |
| 786 | { "mpc821", "mpc8xx" }, |
| 787 | { "mpc823", "mpc8xx" }, |
| 788 | { "mpc850", "mpc8xx" }, |
| 789 | { "mpc852t", "mpc8xx" }, |
| 790 | { "mpc855t", "mpc8xx" }, |
| 791 | { "mpc857", "mpc8xx" }, |
| 792 | { "mpc859", "mpc8xx" }, |
| 793 | { "mpc860", "mpc8xx" }, |
| 794 | { "mpc862", "mpc8xx" }, |
| 795 | { "mpc866", "mpc8xx" }, |
| 796 | { "mpc870", "mpc8xx" }, |
| 797 | { "mpc875", "mpc8xx" }, |
| 798 | { "mpc880", "mpc8xx" }, |
| 799 | { "mpc885", "mpc8xx" }, |
| 800 | #endif |
| 801 | |
| 802 | /* PowerPC MPC603 microcontrollers */ |
| 803 | { "mpc8240", "603" }, |
| 804 | |
| 805 | { "mpc52xx", "mpc5200_v12" }, |
| 806 | { "mpc5200", "mpc5200_v12" }, |
| 807 | { "mpc5200b", "mpc5200b_v21" }, |
| 808 | |
| 809 | { "mpc82xx", "g2legp3" }, |
| 810 | { "powerquicc-ii", "g2legp3" }, |
| 811 | { "mpc8241", "g2hip4" }, |
| 812 | { "mpc8245", "g2hip4" }, |
| 813 | { "mpc8247", "g2legp3" }, |
| 814 | { "mpc8248", "g2legp3" }, |
| 815 | { "mpc8250", "g2hip4" }, |
| 816 | { "mpc8250_hip3", "g2hip3" }, |
| 817 | { "mpc8250_hip4", "g2hip4" }, |
| 818 | { "mpc8255", "g2hip4" }, |
| 819 | { "mpc8255_hip3", "g2hip3" }, |
| 820 | { "mpc8255_hip4", "g2hip4" }, |
| 821 | { "mpc8260", "g2hip4" }, |
| 822 | { "mpc8260_hip3", "g2hip3" }, |
| 823 | { "mpc8260_hip4", "g2hip4" }, |
| 824 | { "mpc8264", "g2hip4" }, |
| 825 | { "mpc8264_hip3", "g2hip3" }, |
| 826 | { "mpc8264_hip4", "g2hip4" }, |
| 827 | { "mpc8265", "g2hip4" }, |
| 828 | { "mpc8265_hip3", "g2hip3" }, |
| 829 | { "mpc8265_hip4", "g2hip4" }, |
| 830 | { "mpc8266", "g2hip4" }, |
| 831 | { "mpc8266_hip3", "g2hip3" }, |
| 832 | { "mpc8266_hip4", "g2hip4" }, |
| 833 | { "mpc8270", "g2legp3" }, |
| 834 | { "mpc8271", "g2legp3" }, |
| 835 | { "mpc8272", "g2legp3" }, |
| 836 | { "mpc8275", "g2legp3" }, |
| 837 | { "mpc8280", "g2legp3" }, |
| 838 | { "e200", "e200z6" }, |
| 839 | { "e300", "e300c3" }, |
| 840 | { "mpc8347", "mpc8347t" }, |
| 841 | { "mpc8347a", "mpc8347at" }, |
| 842 | { "mpc8347e", "mpc8347et" }, |
| 843 | { "mpc8347ea", "mpc8347eat" }, |
| 844 | { "e500", "e500v2_v22" }, |
| 845 | { "e500v1", "e500_v20" }, |
| 846 | { "e500v2", "e500v2_v22" }, |
| 847 | { "mpc8533", "mpc8533_v11" }, |
| 848 | { "mpc8533e", "mpc8533e_v11" }, |
| 849 | { "mpc8540", "mpc8540_v21" }, |
| 850 | { "mpc8541", "mpc8541_v11" }, |
| 851 | { "mpc8541e", "mpc8541e_v11" }, |
| 852 | { "mpc8543", "mpc8543_v21" }, |
| 853 | { "mpc8543e", "mpc8543e_v21" }, |
| 854 | { "mpc8544", "mpc8544_v11" }, |
| 855 | { "mpc8544e", "mpc8544e_v11" }, |
| 856 | { "mpc8545", "mpc8545_v21" }, |
| 857 | { "mpc8545e", "mpc8545e_v21" }, |
| 858 | { "mpc8547e", "mpc8547e_v21" }, |
| 859 | { "mpc8548", "mpc8548_v21" }, |
| 860 | { "mpc8548e", "mpc8548e_v21" }, |
| 861 | { "mpc8555", "mpc8555_v11" }, |
| 862 | { "mpc8555e", "mpc8555e_v11" }, |
| 863 | { "mpc8560", "mpc8560_v21" }, |
| 864 | { "vanilla", "603" }, |
| 865 | { "603e", "603e_v4.1" }, |
| 866 | { "stretch", "603e_v4.1" }, |
| 867 | { "vaillant", "603e7v" }, |
| 868 | { "603r", "603e7t" }, |
| 869 | { "goldeneye", "603e7t" }, |
| 870 | { "604e", "604e_v2.4" }, |
| 871 | { "sirocco", "604e_v2.4" }, |
| 872 | { "mach5", "604r" }, |
| 873 | { "740", "740_v3.1" }, |
| 874 | { "arthur", "740_v3.1" }, |
| 875 | { "750", "750_v3.1" }, |
| 876 | { "typhoon", "750_v3.1" }, |
| 877 | { "g3", "750_v3.1" }, |
| 878 | { "conan/doyle", "750p" }, |
| 879 | { "750cl", "750cl_v2.0" }, |
| 880 | { "750cx", "750cx_v2.2" }, |
| 881 | { "750cxe", "750cxe_v3.1b" }, |
| 882 | { "750fx", "750fx_v2.3" }, |
| 883 | { "750gx", "750gx_v1.2" }, |
| 884 | { "750l", "750l_v3.2" }, |
| 885 | { "lonestar", "750l_v3.2" }, |
| 886 | { "745", "745_v2.8" }, |
| 887 | { "755", "755_v2.8" }, |
| 888 | { "goldfinger", "755_v2.8" }, |
| 889 | { "7400", "7400_v2.9" }, |
| 890 | { "g4", "7400_v2.9" }, |
| 891 | { "7410", "7410_v1.4" }, |
| 892 | { "nitro", "7410_v1.4" }, |
| 893 | { "7448", "7448_v2.1" }, |
| 894 | { "7450", "7450_v2.1" }, |
| 895 | { "vger", "7450_v2.1" }, |
| 896 | { "7441", "7441_v2.3" }, |
| 897 | { "7451", "7451_v2.3" }, |
| 898 | { "7445", "7445_v3.2" }, |
| 899 | { "7455", "7455_v3.2" }, |
| 900 | { "apollo6", "7455_v3.2" }, |
| 901 | { "7447", "7447_v1.1" }, |
| 902 | { "7457", "7457_v1.2" }, |
| 903 | { "apollo7", "7457_v1.2" }, |
| 904 | { "7447a", "7447a_v1.2" }, |
| 905 | { "7457a", "7457a_v1.2" }, |
| 906 | { "apollo7pm", "7457a_v1.0" }, |
| 907 | #if defined(TARGET_PPC64) |
| 908 | { "970", "970_v2.2" }, |
| 909 | { "970fx", "970fx_v3.1" }, |
| 910 | { "970mp", "970mp_v1.1" }, |
| 911 | { "power5+", "power5p_v2.1" }, |
| 912 | { "power5+_v2.1", "power5p_v2.1" }, |
| 913 | { "power5gs", "power5+_v2.1" }, |
| 914 | { "power7", "power7_v2.3" }, |
| 915 | { "power7+", "power7p_v2.1" }, |
| 916 | { "power7+_v2.1", "power7p_v2.1" }, |
| 917 | { "power8", "power8_v2.0" }, |
| 918 | { "power9", "power9_v2.2" }, |
| 919 | { "power10", "power10_v2.0" }, |
| 920 | { "power11", "power11_v2.0" }, |
| 921 | #endif |
| 922 | |
| 923 | /* Generic PowerPCs */ |
| 924 | #if defined(TARGET_PPC64) |
| 925 | { "ppc64", "970fx_v3.1" }, |
| 926 | #endif |
| 927 | { "ppc32", "604" }, |
| 928 | { "ppc", "604" }, |
| 929 | |
| 930 | { NULL, NULL } |
| 931 | }; |