aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Gibson <david@gibson.dropbear.id.au>2007-04-18 02:36:26 -0400
committerPaul Mackerras <paulus@samba.org>2007-04-24 07:32:00 -0400
commitf65573314e4e2d7deacd7ed101c004148e156296 (patch)
treeb38f375a4a4189f303b4702ade501c30398e58de
parente6349a958b3577da6e5c5eacda85c07f9a364cb5 (diff)
[POWERPC] Re-organize Kconfig code for 4xx in arch/powerpc
Now that we always take a device tree in arch/powerpc, there's no good reason not to allow a single kernel to support multiple embedded 4xx boards - the correct platform code can be selected based on the device tree information. Therefore, this patch re-arranges the 4xx Kconfig code to allow this. In addition we: - use "select" instead of depends to configure the correct config options for specific 4xx CPUs and workarounds, which makes the information about specific boards and CPUs less scattered. - Some old, unused (in arch/powerpc) config options are removed: WANT_EARLY_SERIAL, IBM_OCP, etc. Signed-off-by: David Gibson <dwg@au1.ibm.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
-rw-r--r--arch/powerpc/platforms/4xx/Kconfig372
1 files changed, 150 insertions, 222 deletions
diff --git a/arch/powerpc/platforms/4xx/Kconfig b/arch/powerpc/platforms/4xx/Kconfig
index 2f2a13ed7667..ded357c17414 100644
--- a/arch/powerpc/platforms/4xx/Kconfig
+++ b/arch/powerpc/platforms/4xx/Kconfig
@@ -3,278 +3,206 @@ config 4xx
3 depends on 40x || 44x 3 depends on 40x || 44x
4 default y 4 default y
5 5
6config WANT_EARLY_SERIAL 6config BOOKE
7 bool 7 bool
8 select SERIAL_8250
9 default n
10
11menu "AMCC 4xx options"
12 depends on 4xx
13
14choice
15 prompt "Machine Type"
16 depends on 40x
17 default WALNUT
18
19config BUBINGA
20 bool "Bubinga"
21 select WANT_EARLY_SERIAL
22 help
23 This option enables support for the IBM 405EP evaluation board.
24
25config CPCI405
26 bool "CPCI405"
27 help
28 This option enables support for the CPCI405 board.
29
30config EP405
31 bool "EP405/EP405PC"
32 help
33 This option enables support for the EP405/EP405PC boards.
34
35config REDWOOD_5
36 bool "Redwood-5"
37 help
38 This option enables support for the IBM STB04 evaluation board.
39
40config REDWOOD_6
41 bool "Redwood-6"
42 help
43 This option enables support for the IBM STBx25xx evaluation board.
44
45config SYCAMORE
46 bool "Sycamore"
47 help
48 This option enables support for the IBM PPC405GPr evaluation board.
49
50config WALNUT
51 bool "Walnut"
52 help
53 This option enables support for the IBM PPC405GP evaluation board.
54
55config XILINX_ML300
56 bool "Xilinx-ML300"
57 help
58 This option enables support for the Xilinx ML300 evaluation board.
59
60endchoice
61
62choice
63 prompt "Machine Type"
64 depends on 44x 8 depends on 44x
65 default EBONY 9 default y
66
67config BAMBOO
68 bool "Bamboo"
69 select WANT_EARLY_SERIAL
70 help
71 This option enables support for the IBM PPC440EP evaluation board.
72
73config EBONY
74 bool "Ebony"
75 select WANT_EARLY_SERIAL
76 help
77 This option enables support for the IBM PPC440GP evaluation board.
78
79config LUAN
80 bool "Luan"
81 select WANT_EARLY_SERIAL
82 help
83 This option enables support for the IBM PPC440SP evaluation board.
84
85config OCOTEA
86 bool "Ocotea"
87 select WANT_EARLY_SERIAL
88 help
89 This option enables support for the IBM PPC440GX evaluation board.
90 10
91endchoice 11menu "AMCC 40x options"
12 depends on 40x
92 13
93config EP405PC 14#config BUBINGA
94 bool "EP405PC Support" 15# bool "Bubinga"
95 depends on EP405 16# depends on 40x
17# default n
18# select 405EP
19# help
20# This option enables support for the IBM 405EP evaluation board.
21
22#config CPCI405
23# bool "CPCI405"
24# depends on 40x
25# default n
26# select 405GP
27# help
28# This option enables support for the CPCI405 board.
29
30#config EP405
31# bool "EP405/EP405PC"
32# depends on 40x
33# default n
34# select 405GP
35# help
36# This option enables support for the EP405/EP405PC boards.
37
38#config EP405PC
39# bool "EP405PC Support"
40# depends on EP405
41# default y
42# help
43# This option enables support for the extra features of the EP405PC board.
44
45#config REDWOOD_5
46# bool "Redwood-5"
47# depends on 40x
48# default n
49# select STB03xxx
50# help
51# This option enables support for the IBM STB04 evaluation board.
52
53#config REDWOOD_6
54# bool "Redwood-6"
55# depends on 40x
56# default n
57# select STB03xxx
58# help
59# This option enables support for the IBM STBx25xx evaluation board.
60
61#config SYCAMORE
62# bool "Sycamore"
63# depends on 40x
64# default n
65# select 405GPR
66# help
67# This option enables support for the IBM PPC405GPr evaluation board.
68
69#config WALNUT
70# bool "Walnut"
71# depends on 40x
72# default y
73# select 405GP
74# help
75# This option enables support for the IBM PPC405GP evaluation board.
76
77#config XILINX_ML300
78# bool "Xilinx-ML300"
79# depends on 40x
80# default y
81# select VIRTEX_II_PRO
82# help
83# This option enables support for the Xilinx ML300 evaluation board.
96 84
85endmenu
97 86
98# It's often necessary to know the specific 4xx processor type. 87# 40x specific CPU modules, selected based on the board above.
99# Fortunately, it is impled (so far) from the board type, so we
100# don't need to ask more redundant questions.
101config NP405H 88config NP405H
102 bool 89 bool
103 depends on ASH 90 #depends on ASH
104 default y
105 91
106config 440EP 92# OAK doesn't exist but wanted to keep this around for any future 403GCX boards
93config 403GCX
107 bool 94 bool
108 depends on BAMBOO 95 #depends on OAK
109 select PPC_FPU 96 select IBM405_ERR51
110 default y
111 97
112config 440GP 98config 405GP
113 bool 99 bool
114 depends on EBONY 100 select IBM405_ERR77
115 default y 101 select IBM405_ERR51
116 102
117config 440GX 103config 405EP
118 bool 104 bool
119 depends on OCOTEA
120 default y
121 105
122config 440SP 106config 405GPR
123 bool 107 bool
124 depends on LUAN
125 default y
126 108
127config 440 109config VIRTEX_II_PRO
128 bool 110 bool
129 depends on 440GP || 440SP || 440EP 111 select IBM405_ERR77
130 default y 112 select IBM405_ERR51
131 113
132config 440A 114config STB03xxx
133 bool 115 bool
134 depends on 440GX 116 select IBM405_ERR77
135 default y 117 select IBM405_ERR51
136 118
137config IBM440EP_ERR42 119# 40x errata/workaround config symbols, selected by the CPU models above
138 bool
139 depends on 440EP
140 default y
141 120
142# All 405-based cores up until the 405GPR and 405EP have this errata. 121# All 405-based cores up until the 405GPR and 405EP have this errata.
143config IBM405_ERR77 122config IBM405_ERR77
144 bool 123 bool
145 depends on 40x && !403GCX && !405GPR && !405EP
146 default y
147 124
148# All 40x-based cores, up until the 405GPR and 405EP have this errata. 125# All 40x-based cores, up until the 405GPR and 405EP have this errata.
149config IBM405_ERR51 126config IBM405_ERR51
150 bool 127 bool
151 depends on 40x && !405GPR && !405EP
152 default y
153 128
154config BOOKE 129menu "AMCC 44x options"
155 bool
156 depends on 44x 130 depends on 44x
157 default y
158
159config IBM_OCP
160 bool
161 depends on ASH || BAMBOO || BUBINGA || CPCI405 || EBONY || EP405 || LUAN || OCOTEA || REDWOOD_5 || REDWOOD_6 || SYCAMORE || WALNUT
162 default y
163 131
164config XILINX_OCP 132#config BAMBOO
165 bool 133# bool "Bamboo"
166 depends on XILINX_ML300 134# depends on 44x
167 default y 135# default n
136# select 440EP
137# help
138# This option enables support for the IBM PPC440EP evaluation board.
168 139
169config IBM_EMAC4 140config EBONY
170 bool 141 bool "Ebony"
171 depends on 440GX || 440SP 142 depends on 44x
172 default y
173
174config BIOS_FIXUP
175 bool
176 depends on BUBINGA || EP405 || SYCAMORE || WALNUT
177 default y
178
179# OAK doesn't exist but wanted to keep this around for any future 403GCX boards
180config 403GCX
181 bool
182 depends on OAK
183 default y
184
185config 405EP
186 bool
187 depends on BUBINGA
188 default y
189
190config 405GP
191 bool
192 depends on CPCI405 || EP405 || WALNUT
193 default y
194
195config 405GPR
196 bool
197 depends on SYCAMORE
198 default y 143 default y
144 select 440GP
145 help
146 This option enables support for the IBM PPC440GP evaluation board.
199 147
200config VIRTEX_II_PRO 148#config LUAN
201 bool 149# bool "Luan"
202 depends on XILINX_ML300 150# depends on 44x
203 default y 151# default n
152# select 440SP
153# help
154# This option enables support for the IBM PPC440SP evaluation board.
155
156#config OCOTEA
157# bool "Ocotea"
158# depends on 44x
159# default n
160# select 440GX
161# help
162# This option enables support for the IBM PPC440GX evaluation board.
204 163
205config STB03xxx 164endmenu
206 bool
207 depends on REDWOOD_5 || REDWOOD_6
208 default y
209 165
210config EMBEDDEDBOOT 166# 44x specific CPU modules, selected based on the board above.
167config 440EP
211 bool 168 bool
212 depends on EP405 || XILINX_ML300 169 select PPC_FPU
213 default y 170 select IBM440EP_ERR42
214 171
215config IBM_OPENBIOS 172config 440GP
216 bool 173 bool
217 depends on ASH || BUBINGA || REDWOOD_5 || REDWOOD_6 || SYCAMORE || WALNUT 174 select IBM_NEW_EMAC_ZMII
218 default y
219 175
220config PPC4xx_DMA 176config 440GX
221 bool "PPC4xx DMA controller support"
222 depends on 4xx
223
224config PPC4xx_EDMA
225 bool 177 bool
226 depends on !STB03xxx && PPC4xx_DMA
227 default y
228 178
229config PPC_GEN550 179config 440SP
230 bool 180 bool
231 depends on 4xx
232 default y
233
234choice
235 prompt "TTYS0 device and default console"
236 depends on 40x
237 default UART0_TTYS0
238
239config UART0_TTYS0
240 bool "UART0"
241 181
242config UART0_TTYS1 182config 440A
243 bool "UART1"
244
245endchoice
246
247config SERIAL_SICC
248 bool "SICC Serial port support"
249 depends on STB03xxx
250
251config UART1_DFLT_CONSOLE
252 bool 183 bool
253 depends on SERIAL_SICC && UART0_TTYS1 184 depends on 440GX
254 default y 185 default y
255 186
256config SERIAL_SICC_CONSOLE 187# 44x errata/workaround config symbols, selected by the CPU models above
188config IBM440EP_ERR42
257 bool 189 bool
258 depends on SERIAL_SICC && UART0_TTYS1
259 default y
260endmenu
261 190
191#config XILINX_OCP
192# bool
193# depends on XILINX_ML300
194# default y
262 195
263menu "IBM 40x options" 196#config BIOS_FIXUP
264 depends on 40x 197# bool
265 198# depends on BUBINGA || EP405 || SYCAMORE || WALNUT
266config SERIAL_SICC 199# default y
267 bool "SICC Serial port"
268 depends on STB03xxx
269
270config UART1_DFLT_CONSOLE
271 bool
272 depends on SERIAL_SICC && UART0_TTYS1
273 default y
274 200
275config SERIAL_SICC_CONSOLE 201#config PPC4xx_DMA
276 bool 202# bool "PPC4xx DMA controller support"
277 depends on SERIAL_SICC && UART0_TTYS1 203# depends on 4xx
278 default y
279 204
280endmenu 205#config PPC4xx_EDMA
206# bool
207# depends on !STB03xxx && PPC4xx_DMA
208# default y