1# SPDX-License-Identifier: GPL-2.0
2config PPC_47x
3	bool "Support for 47x variant"
4	depends on 44x
5	select MPIC
6	help
7	  This option enables support for the 47x family of processors and is
8	  not currently compatible with other 44x or 46x varients
9
10config BAMBOO
11	bool "Bamboo"
12	depends on 44x
13	select PPC44x_SIMPLE
14	select 440EP
15	select FORCE_PCI
16	help
17	  This option enables support for the IBM PPC440EP evaluation board.
18
19config BLUESTONE
20	bool "Bluestone"
21	depends on 44x
22	select PPC44x_SIMPLE
23	select APM821xx
24	select FORCE_PCI
25	select PCI_MSI
26	select PPC4xx_MSI
27	select PPC4xx_PCI_EXPRESS
28	select IBM_EMAC_RGMII if IBM_EMAC
29	help
30	  This option enables support for the APM APM821xx Evaluation board.
31
32config EBONY
33	bool "Ebony"
34	depends on 44x
35	default y
36	select 440GP
37	select FORCE_PCI
38	select OF_RTC
39	help
40	  This option enables support for the IBM PPC440GP evaluation board.
41
42config SAM440EP
43	bool "Sam440ep"
44	depends on 44x
45	select 440EP
46	select FORCE_PCI
47	help
48	  This option enables support for the ACube Sam440ep board.
49
50config SEQUOIA
51	bool "Sequoia"
52	depends on 44x
53	select PPC44x_SIMPLE
54	select 440EPX
55	help
56	  This option enables support for the AMCC PPC440EPX evaluation board.
57
58config TAISHAN
59	bool "Taishan"
60	depends on 44x
61	select PPC44x_SIMPLE
62	select 440GX
63	select FORCE_PCI
64	help
65	  This option enables support for the AMCC PPC440GX "Taishan"
66	  evaluation board.
67
68config KATMAI
69	bool "Katmai"
70	depends on 44x
71	select PPC44x_SIMPLE
72	select 440SPe
73	select FORCE_PCI
74	select PPC4xx_PCI_EXPRESS
75	select PCI_MSI
76	select PPC4xx_MSI
77	help
78	  This option enables support for the AMCC PPC440SPe evaluation board.
79
80config RAINIER
81	bool "Rainier"
82	depends on 44x
83	select PPC44x_SIMPLE
84	select 440GRX
85	select FORCE_PCI
86	help
87	  This option enables support for the AMCC PPC440GRX evaluation board.
88
89config WARP
90	bool "PIKA Warp"
91	depends on 44x
92	select 440EP
93	help
94	  This option enables support for the PIKA Warp(tm) Appliance. The Warp
95	  is a small computer replacement with up to 9 ports of FXO/FXS plus VOIP
96	  stations and trunks.
97
98	  See http://www.pikatechnologies.com/ and follow the "PIKA for Computer
99	  Telephony Developers" link for more information.
100
101config ARCHES
102	bool "Arches"
103	depends on 44x
104	select PPC44x_SIMPLE
105	select 460EX # Odd since it uses 460GT but the effects are the same
106	select FORCE_PCI
107	select PPC4xx_PCI_EXPRESS
108	help
109	  This option enables support for the AMCC Dual PPC460GT evaluation board.
110
111config CANYONLANDS
112	bool "Canyonlands"
113	depends on 44x
114	select 460EX
115	select FORCE_PCI
116	select PPC4xx_PCI_EXPRESS
117	select PCI_MSI
118	select PPC4xx_MSI
119	select IBM_EMAC_RGMII if IBM_EMAC
120	select IBM_EMAC_ZMII if IBM_EMAC
121	help
122	  This option enables support for the AMCC PPC460EX evaluation board.
123
124config GLACIER
125	bool "Glacier"
126	depends on 44x
127	select PPC44x_SIMPLE
128	select 460EX # Odd since it uses 460GT but the effects are the same
129	select FORCE_PCI
130	select PPC4xx_PCI_EXPRESS
131	select IBM_EMAC_RGMII if IBM_EMAC
132	select IBM_EMAC_ZMII if IBM_EMAC
133	help
134	  This option enables support for the AMCC PPC460GT evaluation board.
135
136config REDWOOD
137	bool "Redwood"
138	depends on 44x
139	select PPC44x_SIMPLE
140	select 460SX
141	select FORCE_PCI
142	select PPC4xx_PCI_EXPRESS
143	select PCI_MSI
144	select PPC4xx_MSI
145	help
146	  This option enables support for the AMCC PPC460SX Redwood board.
147
148config EIGER
149	bool "Eiger"
150	depends on 44x
151	select PPC44x_SIMPLE
152	select 460SX
153	select FORCE_PCI
154	select PPC4xx_PCI_EXPRESS
155	select IBM_EMAC_RGMII if IBM_EMAC
156	help
157	  This option enables support for the AMCC PPC460SX evaluation board.
158
159config YOSEMITE
160	bool "Yosemite"
161	depends on 44x
162	select PPC44x_SIMPLE
163	select 440EP
164	select FORCE_PCI
165	help
166	  This option enables support for the AMCC PPC440EP evaluation board.
167
168config ISS4xx
169	bool "ISS 4xx Simulator"
170	depends on (44x || 40x)
171	select 405GP if 40x
172	select 440GP if 44x && !PPC_47x
173	select PPC_FPU
174	select OF_RTC
175	help
176	  This option enables support for the IBM ISS simulation environment
177
178config CURRITUCK
179	bool "IBM Currituck (476fpe) Support"
180	depends on PPC_47x
181	select SWIOTLB
182	select 476FPE
183	select FORCE_PCI
184	select PPC4xx_PCI_EXPRESS
185	help
186	  This option enables support for the IBM Currituck (476fpe) evaluation board
187
188config FSP2
189	bool "IBM FSP2 (476fpe) Support"
190	depends on PPC_47x
191	select 476FPE
192	select IBM_EMAC_EMAC4 if IBM_EMAC
193	select IBM_EMAC_RGMII if IBM_EMAC
194	select COMMON_CLK
195	select DEFAULT_UIMAGE
196	help
197	  This option enables support for the IBM FSP2 (476fpe) board
198
199config AKEBONO
200	bool "IBM Akebono (476gtr) Support"
201	depends on PPC_47x
202	select SWIOTLB
203	select 476FPE
204	select PPC4xx_PCI_EXPRESS
205	select FORCE_PCI
206	select PCI_MSI
207	select PPC4xx_HSTA_MSI
208	select I2C
209	select I2C_IBM_IIC
210	select NETDEVICES
211	select ETHERNET
212	select NET_VENDOR_IBM
213	select IBM_EMAC_EMAC4 if IBM_EMAC
214	select USB if USB_SUPPORT
215	select USB_OHCI_HCD_PLATFORM if USB_OHCI_HCD
216	select USB_EHCI_HCD_PLATFORM if USB_EHCI_HCD
217	select MMC_SDHCI
218	select MMC_SDHCI_PLTFM
219	select ATA
220	select SATA_AHCI_PLATFORM
221	help
222	  This option enables support for the IBM Akebono (476gtr) evaluation board
223
224
225config ICON
226	bool "Icon"
227	depends on 44x
228	select PPC44x_SIMPLE
229	select 440SPe
230	select FORCE_PCI
231	select PPC4xx_PCI_EXPRESS
232	help
233	  This option enables support for the AMCC PPC440SPe evaluation board.
234
235config XILINX_VIRTEX440_GENERIC_BOARD
236	bool "Generic Xilinx Virtex 5 FXT board support"
237	depends on 44x
238	select XILINX_VIRTEX_5_FXT
239	select XILINX_INTC
240	help
241	  This option enables generic support for Xilinx Virtex based boards
242	  that use a 440 based processor in the Virtex 5 FXT FPGA architecture.
243
244	  The generic virtex board support matches any device tree which
245	  specifies 'xlnx,virtex440' in its compatible field.  This includes
246	  the Xilinx ML5xx reference designs using the powerpc core.
247
248	  Most Virtex 5 designs should use this unless it needs to do some
249	  special configuration at board probe time.
250
251config XILINX_ML510
252	bool "Xilinx ML510 extra support"
253	depends on XILINX_VIRTEX440_GENERIC_BOARD
254	select HAVE_PCI
255	select XILINX_PCI if PCI
256	select PPC_INDIRECT_PCI if PCI
257	select PPC_I8259 if PCI
258	help
259	  This option enables extra support for features on the Xilinx ML510
260	  board.  The ML510 has a PCI bus with ALI south bridge.
261
262config PPC44x_SIMPLE
263	bool "Simple PowerPC 44x board support"
264	depends on 44x
265	help
266	  This option enables the simple PowerPC 44x platform support.
267
268config PPC4xx_GPIO
269	bool "PPC4xx GPIO support"
270	depends on 44x
271	select GPIOLIB
272	help
273	  Enable gpiolib support for ppc440 based boards
274
275# 44x specific CPU modules, selected based on the board above.
276config 440EP
277	bool
278	select PPC_FPU
279	select IBM440EP_ERR42
280	select IBM_EMAC_ZMII if IBM_EMAC
281
282config 440EPX
283	bool
284	select PPC_FPU
285	select IBM_EMAC_EMAC4 if IBM_EMAC
286	select IBM_EMAC_RGMII if IBM_EMAC
287	select IBM_EMAC_ZMII if IBM_EMAC
288	select USB_EHCI_BIG_ENDIAN_MMIO
289	select USB_EHCI_BIG_ENDIAN_DESC
290
291config 440GRX
292	bool
293	select IBM_EMAC_EMAC4 if IBM_EMAC
294	select IBM_EMAC_RGMII if IBM_EMAC
295	select IBM_EMAC_ZMII if IBM_EMAC
296
297config 440GP
298	bool
299	select IBM_EMAC_ZMII if IBM_EMAC
300
301config 440GX
302	bool
303	select IBM_EMAC_EMAC4 if IBM_EMAC
304	select IBM_EMAC_RGMII if IBM_EMAC
305	select IBM_EMAC_ZMII if IBM_EMAC #test only
306	select IBM_EMAC_TAH if IBM_EMAC  #test only
307
308config 440SP
309	bool
310
311config 440SPe
312	bool
313	select IBM_EMAC_EMAC4 if IBM_EMAC
314
315config 460EX
316	bool
317	select PPC_FPU
318	select IBM_EMAC_EMAC4 if IBM_EMAC
319	select IBM_EMAC_TAH if IBM_EMAC
320
321config 460SX
322	bool
323	select PPC_FPU
324	select IBM_EMAC_EMAC4 if IBM_EMAC
325	select IBM_EMAC_RGMII if IBM_EMAC
326	select IBM_EMAC_ZMII if IBM_EMAC
327	select IBM_EMAC_TAH if IBM_EMAC
328
329config 476FPE
330	bool
331	select PPC_FPU
332
333config APM821xx
334	bool
335	select PPC_FPU
336	select IBM_EMAC_EMAC4 if IBM_EMAC
337	select IBM_EMAC_TAH if IBM_EMAC
338
339config 476FPE_ERR46
340	depends on 476FPE
341	bool "Enable linker work around for PPC476FPE errata #46"
342	help
343	  This option enables a work around for an icache bug on 476
344	  that can cause execution of stale instructions when falling
345	  through pages (IBM errata #46). It requires a recent version
346	  of binutils which supports the --ppc476-workaround option.
347
348	  The work around enables the appropriate linker options and
349	  ensures that all module output sections are aligned to 4K
350	  page boundaries. The work around is only required when
351	  building modules.
352
353# 44x errata/workaround config symbols, selected by the CPU models above
354config IBM440EP_ERR42
355	bool
356
357# Xilinx specific config options.
358config XILINX_VIRTEX
359	bool
360	select DEFAULT_UIMAGE
361
362# Xilinx Virtex 5 FXT FPGA architecture, selected by a Xilinx board above
363config XILINX_VIRTEX_5_FXT
364	bool
365	select XILINX_VIRTEX
366
367