2 * arch/ppc/platforms/85xx/mpc85xx_sys.c
4 * MPC85xx System descriptions
6 * Maintainer: Kumar Gala <kumar.gala@freescale.com>
8 * Copyright 2005 Freescale Semiconductor Inc.
10 * This program is free software; you can redistribute it and/or modify it
11 * under the terms of the GNU General Public License as published by the
12 * Free Software Foundation; either version 2 of the License, or (at your
13 * option) any later version.
16 #include <linux/init.h>
17 #include <linux/module.h>
18 #include <linux/device.h>
19 #include <asm/ppc_sys.h>
21 struct ppc_sys_spec *cur_ppc_sys_spec;
22 struct ppc_sys_spec ppc_sys_specs[] = {
24 .ppc_sys_name = "8540",
28 .device_list = (enum ppc_sys_devices[])
30 MPC85xx_TSEC1, MPC85xx_TSEC2, MPC85xx_FEC, MPC85xx_IIC1,
31 MPC85xx_DMA0, MPC85xx_DMA1, MPC85xx_DMA2, MPC85xx_DMA3,
32 MPC85xx_PERFMON, MPC85xx_DUART, MPC85xx_MDIO,
36 .ppc_sys_name = "8560",
40 .device_list = (enum ppc_sys_devices[])
42 MPC85xx_TSEC1, MPC85xx_TSEC2, MPC85xx_IIC1,
43 MPC85xx_DMA0, MPC85xx_DMA1, MPC85xx_DMA2, MPC85xx_DMA3,
45 MPC85xx_CPM_SPI, MPC85xx_CPM_I2C, MPC85xx_CPM_SCC1,
46 MPC85xx_CPM_SCC2, MPC85xx_CPM_SCC3, MPC85xx_CPM_SCC4,
47 MPC85xx_CPM_FCC1, MPC85xx_CPM_FCC2, MPC85xx_CPM_FCC3,
48 MPC85xx_CPM_MCC1, MPC85xx_CPM_MCC2, MPC85xx_MDIO,
52 .ppc_sys_name = "8541",
56 .device_list = (enum ppc_sys_devices[])
58 MPC85xx_TSEC1, MPC85xx_TSEC2, MPC85xx_IIC1,
59 MPC85xx_DMA0, MPC85xx_DMA1, MPC85xx_DMA2, MPC85xx_DMA3,
60 MPC85xx_PERFMON, MPC85xx_DUART,
61 MPC85xx_CPM_SPI, MPC85xx_CPM_I2C,
62 MPC85xx_CPM_FCC1, MPC85xx_CPM_FCC2,
67 .ppc_sys_name = "8541E",
71 .device_list = (enum ppc_sys_devices[])
73 MPC85xx_TSEC1, MPC85xx_TSEC2, MPC85xx_IIC1,
74 MPC85xx_DMA0, MPC85xx_DMA1, MPC85xx_DMA2, MPC85xx_DMA3,
75 MPC85xx_PERFMON, MPC85xx_DUART, MPC85xx_SEC2,
76 MPC85xx_CPM_SPI, MPC85xx_CPM_I2C,
77 MPC85xx_CPM_FCC1, MPC85xx_CPM_FCC2,
82 .ppc_sys_name = "8555",
86 .device_list = (enum ppc_sys_devices[])
88 MPC85xx_TSEC1, MPC85xx_TSEC2, MPC85xx_IIC1,
89 MPC85xx_DMA0, MPC85xx_DMA1, MPC85xx_DMA2, MPC85xx_DMA3,
90 MPC85xx_PERFMON, MPC85xx_DUART,
91 MPC85xx_CPM_SPI, MPC85xx_CPM_I2C, MPC85xx_CPM_SCC1,
92 MPC85xx_CPM_SCC2, MPC85xx_CPM_SCC3,
93 MPC85xx_CPM_FCC1, MPC85xx_CPM_FCC2,
94 MPC85xx_CPM_SMC1, MPC85xx_CPM_SMC2,
100 .ppc_sys_name = "8555E",
104 .device_list = (enum ppc_sys_devices[])
106 MPC85xx_TSEC1, MPC85xx_TSEC2, MPC85xx_IIC1,
107 MPC85xx_DMA0, MPC85xx_DMA1, MPC85xx_DMA2, MPC85xx_DMA3,
108 MPC85xx_PERFMON, MPC85xx_DUART, MPC85xx_SEC2,
109 MPC85xx_CPM_SPI, MPC85xx_CPM_I2C, MPC85xx_CPM_SCC1,
110 MPC85xx_CPM_SCC2, MPC85xx_CPM_SCC3,
111 MPC85xx_CPM_FCC1, MPC85xx_CPM_FCC2,
112 MPC85xx_CPM_SMC1, MPC85xx_CPM_SMC2,
117 /* SVRs on 8548 rev1.0 matches for 8548/8547/8545 */
119 .ppc_sys_name = "8548E",
123 .device_list = (enum ppc_sys_devices[])
125 MPC85xx_eTSEC1, MPC85xx_eTSEC2, MPC85xx_eTSEC3,
126 MPC85xx_eTSEC4, MPC85xx_IIC1, MPC85xx_IIC2,
127 MPC85xx_DMA0, MPC85xx_DMA1, MPC85xx_DMA2, MPC85xx_DMA3,
128 MPC85xx_PERFMON, MPC85xx_DUART, MPC85xx_SEC2,
133 .ppc_sys_name = "8548",
137 .device_list = (enum ppc_sys_devices[])
139 MPC85xx_eTSEC1, MPC85xx_eTSEC2, MPC85xx_eTSEC3,
140 MPC85xx_eTSEC4, MPC85xx_IIC1, MPC85xx_IIC2,
141 MPC85xx_DMA0, MPC85xx_DMA1, MPC85xx_DMA2, MPC85xx_DMA3,
142 MPC85xx_PERFMON, MPC85xx_DUART,
147 .ppc_sys_name = "8547E",
151 .device_list = (enum ppc_sys_devices[])
153 MPC85xx_eTSEC1, MPC85xx_eTSEC2, MPC85xx_eTSEC3,
154 MPC85xx_eTSEC4, MPC85xx_IIC1, MPC85xx_IIC2,
155 MPC85xx_DMA0, MPC85xx_DMA1, MPC85xx_DMA2, MPC85xx_DMA3,
156 MPC85xx_PERFMON, MPC85xx_DUART, MPC85xx_SEC2,
161 .ppc_sys_name = "8547",
165 .device_list = (enum ppc_sys_devices[])
167 MPC85xx_eTSEC1, MPC85xx_eTSEC2, MPC85xx_eTSEC3,
168 MPC85xx_eTSEC4, MPC85xx_IIC1, MPC85xx_IIC2,
169 MPC85xx_DMA0, MPC85xx_DMA1, MPC85xx_DMA2, MPC85xx_DMA3,
170 MPC85xx_PERFMON, MPC85xx_DUART,
175 .ppc_sys_name = "8545E",
179 .device_list = (enum ppc_sys_devices[])
181 MPC85xx_eTSEC1, MPC85xx_eTSEC2,
182 MPC85xx_IIC1, MPC85xx_IIC2,
183 MPC85xx_DMA0, MPC85xx_DMA1, MPC85xx_DMA2, MPC85xx_DMA3,
184 MPC85xx_PERFMON, MPC85xx_DUART, MPC85xx_SEC2,
189 .ppc_sys_name = "8545",
193 .device_list = (enum ppc_sys_devices[])
195 MPC85xx_eTSEC1, MPC85xx_eTSEC2,
196 MPC85xx_IIC1, MPC85xx_IIC2,
197 MPC85xx_DMA0, MPC85xx_DMA1, MPC85xx_DMA2, MPC85xx_DMA3,
198 MPC85xx_PERFMON, MPC85xx_DUART,
203 .ppc_sys_name = "8543E",
207 .device_list = (enum ppc_sys_devices[])
209 MPC85xx_eTSEC1, MPC85xx_eTSEC2,
210 MPC85xx_IIC1, MPC85xx_IIC2,
211 MPC85xx_DMA0, MPC85xx_DMA1, MPC85xx_DMA2, MPC85xx_DMA3,
212 MPC85xx_PERFMON, MPC85xx_DUART, MPC85xx_SEC2,
217 .ppc_sys_name = "8543",
221 .device_list = (enum ppc_sys_devices[])
223 MPC85xx_eTSEC1, MPC85xx_eTSEC2,
224 MPC85xx_IIC1, MPC85xx_IIC2,
225 MPC85xx_DMA0, MPC85xx_DMA1, MPC85xx_DMA2, MPC85xx_DMA3,
226 MPC85xx_PERFMON, MPC85xx_DUART,
230 { /* default match */