xref: /linux/arch/mips/Kconfig (revision 13abf8130139c2ccd4962a7e5a8902be5e6cb5a7)
1config MIPS
2	bool
3	default y
4	# Horrible source of confusion.  Die, die, die ...
5	select EMBEDDED
6
7mainmenu "Linux/MIPS Kernel Configuration"
8
9source "init/Kconfig"
10
11config SYS_SUPPORTS_32BIT_KERNEL
12	bool
13config SYS_SUPPORTS_64BIT_KERNEL
14	bool
15config CPU_SUPPORTS_32BIT_KERNEL
16	bool
17config CPU_SUPPORTS_64BIT_KERNEL
18	bool
19
20menu "Kernel type"
21
22choice
23
24	prompt "Kernel code model"
25	help
26	  You should only select this option if you have a workload that
27	  actually benefits from 64-bit processing or if your machine has
28	  large memory.  You will only be presented a single option in this
29	  menu if your system does not support both 32-bit and 64-bit kernels.
30
31config 32BIT
32	bool "32-bit kernel"
33	depends on CPU_SUPPORTS_32BIT_KERNEL && SYS_SUPPORTS_32BIT_KERNEL
34	select TRAD_SIGNALS
35	help
36	  Select this option if you want to build a 32-bit kernel.
37
38config 64BIT
39	bool "64-bit kernel"
40	depends on CPU_SUPPORTS_64BIT_KERNEL && SYS_SUPPORTS_64BIT_KERNEL
41	help
42	  Select this option if you want to build a 64-bit kernel.
43
44endchoice
45
46endmenu
47
48menu "Machine selection"
49
50config MACH_JAZZ
51	bool "Support for the Jazz family of machines"
52	select ARC
53	select ARC32
54	select GENERIC_ISA_DMA
55	select I8259
56	select ISA
57	select SYS_SUPPORTS_32BIT_KERNEL
58	select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
59	help
60	 This a family of machines based on the MIPS R4030 chipset which was
61	 used by several vendors to build RISC/os and Windows NT workstations.
62	 Members include the Acer PICA, MIPS Magnum 4000, MIPS Millenium and
63	 Olivetti M700-10 workstations.
64
65config ACER_PICA_61
66	bool "Support for Acer PICA 1 chipset (EXPERIMENTAL)"
67	depends on MACH_JAZZ && EXPERIMENTAL
68	select DMA_NONCOHERENT
69	help
70	  This is a machine with a R4400 133/150 MHz CPU. To compile a Linux
71	  kernel that runs on these, say Y here. For details about Linux on
72	  the MIPS architecture, check out the Linux/MIPS FAQ on the WWW at
73	  <http://www.linux-mips.org/>.
74
75config MIPS_MAGNUM_4000
76	bool "Support for MIPS Magnum 4000"
77	depends on MACH_JAZZ
78	select DMA_NONCOHERENT
79	help
80	  This is a machine with a R4000 100 MHz CPU. To compile a Linux
81	  kernel that runs on these, say Y here. For details about Linux on
82	  the MIPS architecture, check out the Linux/MIPS FAQ on the WWW at
83	  <http://www.linux-mips.org/>.
84
85config OLIVETTI_M700
86	bool "Support for Olivetti M700-10"
87	depends on MACH_JAZZ
88	select DMA_NONCOHERENT
89	help
90	  This is a machine with a R4000 100 MHz CPU. To compile a Linux
91	  kernel that runs on these, say Y here. For details about Linux on
92	  the MIPS architecture, check out the Linux/MIPS FAQ on the WWW at
93	  <http://www.linux-mips.org/>.
94
95config MACH_VR41XX
96	bool "Support for NEC VR4100 series based machines"
97	select SYS_SUPPORTS_32BIT_KERNEL
98	select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
99
100config NEC_CMBVR4133
101	bool "Support for NEC CMB-VR4133"
102	depends on MACH_VR41XX
103	select CPU_VR41XX
104	select DMA_NONCOHERENT
105	select IRQ_CPU
106	select HW_HAS_PCI
107
108config ROCKHOPPER
109	bool "Support for Rockhopper baseboard"
110	depends on NEC_CMBVR4133
111	select I8259
112	select HAVE_STD_PC_SERIAL_PORT
113
114config CASIO_E55
115	bool "Support for CASIO CASSIOPEIA E-10/15/55/65"
116	depends on MACH_VR41XX
117	select CPU_LITTLE_ENDIAN
118	select DMA_NONCOHERENT
119	select IRQ_CPU
120	select ISA
121
122config IBM_WORKPAD
123	bool "Support for IBM WorkPad z50"
124	depends on MACH_VR41XX
125	select CPU_LITTLE_ENDIAN
126	select DMA_NONCOHERENT
127	select IRQ_CPU
128	select ISA
129
130config TANBAC_TB022X
131	bool "Support for TANBAC VR4131 multichip module and TANBAC VR4131DIMM"
132	depends on MACH_VR41XX
133	select CPU_LITTLE_ENDIAN
134	select DMA_NONCOHERENT
135	select IRQ_CPU
136	select HW_HAS_PCI
137	help
138	  The TANBAC VR4131 multichip module(TB0225) and
139	  the TANBAC VR4131DIMM(TB0229) are MIPS-based platforms
140	  manufactured by TANBAC.
141	  Please refer to <http://www.tanbac.co.jp/>
142	  about VR4131 multichip module and VR4131DIMM.
143
144config TANBAC_TB0226
145	bool "Support for TANBAC Mbase(TB0226)"
146	depends on TANBAC_TB022X
147	select GPIO_VR41XX
148	help
149	  The TANBAC Mbase(TB0226) is a MIPS-based platform manufactured by TANBAC.
150	  Please refer to <http://www.tanbac.co.jp/> about Mbase.
151
152config VICTOR_MPC30X
153	bool "Support for Victor MP-C303/304"
154	depends on MACH_VR41XX
155	select CPU_LITTLE_ENDIAN
156	select DMA_NONCOHERENT
157	select IRQ_CPU
158	select HW_HAS_PCI
159
160config ZAO_CAPCELLA
161	bool "Support for ZAO Networks Capcella"
162	depends on MACH_VR41XX
163	select CPU_LITTLE_ENDIAN
164	select DMA_NONCOHERENT
165	select IRQ_CPU
166	select HW_HAS_PCI
167
168config PCI_VR41XX
169	bool "Add PCI control unit support of NEC VR4100 series"
170	depends on MACH_VR41XX && HW_HAS_PCI
171	default y
172	select PCI
173
174config VRC4173
175	tristate "Add NEC VRC4173 companion chip support"
176	depends on MACH_VR41XX && PCI_VR41XX
177	---help---
178	  The NEC VRC4173 is a companion chip for NEC VR4122/VR4131.
179
180config TOSHIBA_JMR3927
181	bool "Support for Toshiba JMR-TX3927 board"
182	select DMA_NONCOHERENT
183	select HW_HAS_PCI
184	select SWAP_IO_SPACE
185	select SYS_SUPPORTS_32BIT_KERNEL
186
187config MIPS_COBALT
188	bool "Support for Cobalt Server"
189	depends on EXPERIMENTAL
190	select DMA_NONCOHERENT
191	select HW_HAS_PCI
192	select I8259
193	select IRQ_CPU
194	select SYS_SUPPORTS_32BIT_KERNEL
195	select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
196
197config MACH_DECSTATION
198	bool "Support for DECstations"
199	select BOOT_ELF32
200	select DMA_NONCOHERENT
201	select IRQ_CPU
202	select SYS_SUPPORTS_32BIT_KERNEL
203	select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
204	---help---
205	  This enables support for DEC's MIPS based workstations.  For details
206	  see the Linux/MIPS FAQ on <http://www.linux-mips.org/> and the
207	  DECstation porting pages on <http://decstation.unix-ag.org/>.
208
209	  If you have one of the following DECstation Models you definitely
210	  want to choose R4xx0 for the CPU Type:
211
212	  	DECstation 5000/50
213	  	DECstation 5000/150
214	  	DECstation 5000/260
215	  	DECsystem 5900/260
216
217	  otherwise choose R3000.
218
219config MIPS_EV64120
220	bool "Support for Galileo EV64120 Evaluation board (EXPERIMENTAL)"
221	depends on EXPERIMENTAL
222	select DMA_NONCOHERENT
223	select HW_HAS_PCI
224	select MIPS_GT64120
225	select SYS_SUPPORTS_32BIT_KERNEL
226	select SYS_SUPPORTS_64BIT_KERNEL
227	help
228	  This is an evaluation board based on the Galileo GT-64120
229	  single-chip system controller that contains a MIPS R5000 compatible
230	  core running at 75/100MHz.  Their website is located at
231	  <http://www.marvell.com/>.  Say Y here if you wish to build a
232	  kernel for this platform.
233
234config EVB_PCI1
235	bool "Enable Second PCI (PCI1)"
236	depends on MIPS_EV64120
237
238config MIPS_EV96100
239	bool "Support for Galileo EV96100 Evaluation board (EXPERIMENTAL)"
240	depends on EXPERIMENTAL
241	select DMA_NONCOHERENT
242	select HW_HAS_PCI
243	select IRQ_CPU
244	select MIPS_GT96100
245	select RM7000_CPU_SCACHE
246	select SWAP_IO_SPACE
247	select SYS_SUPPORTS_32BIT_KERNEL
248	select SYS_SUPPORTS_64BIT_KERNEL
249	help
250	  This is an evaluation board based on the Galileo GT-96100 LAN/WAN
251	  communications controllers containing a MIPS R5000 compatible core
252	  running at 83MHz. Their website is <http://www.marvell.com/>. Say Y
253	  here if you wish to build a kernel for this platform.
254
255config MIPS_IVR
256	bool "Support for Globespan IVR board"
257	select DMA_NONCOHERENT
258	select HW_HAS_PCI
259	select SYS_SUPPORTS_32BIT_KERNEL
260	select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
261	help
262	  This is an evaluation board built by Globespan to showcase thir
263	  iVR (Internet Video Recorder) design. It utilizes a QED RM5231
264	  R5000 MIPS core. More information can be found out their website
265	  located at <http://www.globespan.net/>. Say Y here if you wish to
266	  build a kernel for this platform.
267
268config LASAT
269	bool "Support for LASAT Networks platforms"
270	select DMA_NONCOHERENT
271	select HW_HAS_PCI
272	select MIPS_GT64120
273	select R5000_CPU_SCACHE
274	select SYS_SUPPORTS_32BIT_KERNEL
275	select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
276
277config PICVUE
278	tristate "PICVUE LCD display driver"
279	depends on LASAT
280
281config PICVUE_PROC
282	tristate "PICVUE LCD display driver /proc interface"
283	depends on PICVUE
284
285config DS1603
286	bool "DS1603 RTC driver"
287	depends on LASAT
288
289config LASAT_SYSCTL
290	bool "LASAT sysctl interface"
291	depends on LASAT
292
293config MIPS_ITE8172
294	bool "Support for ITE 8172G board"
295	select DMA_NONCOHERENT
296	select HW_HAS_PCI
297	select SYS_SUPPORTS_32BIT_KERNEL
298	select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
299	help
300	  Ths is an evaluation board made by ITE <http://www.ite.com.tw/>
301	  with ATX form factor that utilizes a MIPS R5000 to work with its
302	  ITE8172G companion internet appliance chip. The MIPS core can be
303	  either a NEC Vr5432 or QED RM5231. Say Y here if you wish to build
304	  a kernel for this platform.
305
306config IT8172_REVC
307	bool "Support for older IT8172 (Rev C)"
308	depends on MIPS_ITE8172
309	help
310	  Say Y here to support the older, Revision C version of the Integrated
311	  Technology Express, Inc. ITE8172 SBC.  Vendor page at
312	  <http://www.ite.com.tw/ia/brief_it8172bsp.htm>; picture of the
313	  board at <http://www.mvista.com/partners/semiconductor/ite.html>.
314
315config MIPS_ATLAS
316	bool "Support for MIPS Atlas board"
317	select BOOT_ELF32
318	select DMA_NONCOHERENT
319	select HW_HAS_PCI
320	select MIPS_GT64120
321	select SWAP_IO_SPACE
322	select SYS_SUPPORTS_32BIT_KERNEL
323	select SYS_SUPPORTS_64BIT_KERNEL
324	help
325	  This enables support for the QED R5231-based MIPS Atlas evaluation
326	  board.
327
328config MIPS_MALTA
329	bool "Support for MIPS Malta board"
330	select BOOT_ELF32
331	select HAVE_STD_PC_SERIAL_PORT
332	select DMA_NONCOHERENT
333	select GENERIC_ISA_DMA
334	select HW_HAS_PCI
335	select I8259
336	select MIPS_GT64120
337	select SWAP_IO_SPACE
338	select SYS_SUPPORTS_32BIT_KERNEL
339	select SYS_SUPPORTS_64BIT_KERNEL
340	help
341	  This enables support for the VR5000-based MIPS Malta evaluation
342	  board.
343
344config MIPS_SEAD
345	bool "Support for MIPS SEAD board (EXPERIMENTAL)"
346	depends on EXPERIMENTAL
347	select IRQ_CPU
348	select DMA_NONCOHERENT
349	select SYS_SUPPORTS_32BIT_KERNEL
350	select SYS_SUPPORTS_64BIT_KERNEL
351
352config MOMENCO_OCELOT
353	bool "Support for Momentum Ocelot board"
354	select DMA_NONCOHERENT
355	select HW_HAS_PCI
356	select IRQ_CPU
357	select IRQ_CPU_RM7K
358	select MIPS_GT64120
359	select RM7000_CPU_SCACHE
360	select SWAP_IO_SPACE
361	select SYS_SUPPORTS_32BIT_KERNEL
362	select SYS_SUPPORTS_64BIT_KERNEL
363	help
364	  The Ocelot is a MIPS-based Single Board Computer (SBC) made by
365	  Momentum Computer <http://www.momenco.com/>.
366
367config MOMENCO_OCELOT_G
368	bool "Support for Momentum Ocelot-G board"
369	select DMA_NONCOHERENT
370	select HW_HAS_PCI
371	select IRQ_CPU
372	select IRQ_CPU_RM7K
373	select PCI_MARVELL
374	select RM7000_CPU_SCACHE
375	select SWAP_IO_SPACE
376	select SYS_SUPPORTS_32BIT_KERNEL
377	select SYS_SUPPORTS_64BIT_KERNEL
378	help
379	  The Ocelot is a MIPS-based Single Board Computer (SBC) made by
380	  Momentum Computer <http://www.momenco.com/>.
381
382config MOMENCO_OCELOT_C
383	bool "Support for Momentum Ocelot-C board"
384	select DMA_NONCOHERENT
385	select HW_HAS_PCI
386	select IRQ_CPU
387	select IRQ_MV64340
388	select PCI_MARVELL
389	select RM7000_CPU_SCACHE
390	select SWAP_IO_SPACE
391	select SYS_SUPPORTS_32BIT_KERNEL
392	select SYS_SUPPORTS_64BIT_KERNEL
393	help
394	  The Ocelot is a MIPS-based Single Board Computer (SBC) made by
395	  Momentum Computer <http://www.momenco.com/>.
396
397config MOMENCO_OCELOT_3
398	bool "Support for Momentum Ocelot-3 board"
399	select BOOT_ELF32
400	select DMA_NONCOHERENT
401	select HW_HAS_PCI
402	select IRQ_CPU
403	select IRQ_CPU_RM7K
404	select IRQ_MV64340
405	select PCI_MARVELL
406	select RM7000_CPU_SCACHE
407	select SWAP_IO_SPACE
408	select SYS_SUPPORTS_32BIT_KERNEL
409	select SYS_SUPPORTS_64BIT_KERNEL
410	help
411	  The Ocelot-3 is based off Discovery III System Controller and
412	  PMC-Sierra Rm79000 core.
413
414config MOMENCO_JAGUAR_ATX
415	bool "Support for Momentum Jaguar board"
416	select BOOT_ELF32
417	select DMA_NONCOHERENT
418	select HW_HAS_PCI
419	select IRQ_CPU
420	select IRQ_CPU_RM7K
421	select IRQ_MV64340
422	select LIMITED_DMA
423	select PCI_MARVELL
424	select RM7000_CPU_SCACHE
425	select SWAP_IO_SPACE
426	select SYS_SUPPORTS_32BIT_KERNEL
427	select SYS_SUPPORTS_64BIT_KERNEL
428	help
429	  The Jaguar ATX is a MIPS-based Single Board Computer (SBC) made by
430	  Momentum Computer <http://www.momenco.com/>.
431
432config JAGUAR_DMALOW
433	bool "Low DMA Mode"
434	depends on MOMENCO_JAGUAR_ATX
435	help
436	  Select to Y if jump JP5 is set on your board, N otherwise.  Normally
437	  the jumper is set, so if you feel unsafe, just say Y.
438
439config PMC_YOSEMITE
440	bool "Support for PMC-Sierra Yosemite eval board"
441	select DMA_COHERENT
442	select HW_HAS_PCI
443	select IRQ_CPU
444	select IRQ_CPU_RM7K
445	select IRQ_CPU_RM9K
446	select SWAP_IO_SPACE
447	select SYS_SUPPORTS_32BIT_KERNEL
448	select SYS_SUPPORTS_64BIT_KERNEL
449	help
450	  Yosemite is an evaluation board for the RM9000x2 processor
451	  manufactured by PMC-Sierra
452
453config HYPERTRANSPORT
454	bool "Hypertransport Support for PMC-Sierra Yosemite"
455	depends on PMC_YOSEMITE
456
457config DDB5074
458	bool "Support for NEC DDB Vrc-5074 (EXPERIMENTAL)"
459	depends on EXPERIMENTAL
460	select DMA_NONCOHERENT
461	select HAVE_STD_PC_SERIAL_PORT
462	select HW_HAS_PCI
463	select IRQ_CPU
464	select I8259
465	select ISA
466	select SYS_SUPPORTS_32BIT_KERNEL
467	select SYS_SUPPORTS_64BIT_KERNEL
468	help
469	  This enables support for the VR5000-based NEC DDB Vrc-5074
470	  evaluation board.
471
472config DDB5476
473	bool "Support for NEC DDB Vrc-5476"
474	select DMA_NONCOHERENT
475	select HAVE_STD_PC_SERIAL_PORT
476	select HW_HAS_PCI
477	select IRQ_CPU
478	select I8259
479	select ISA
480	select SYS_SUPPORTS_32BIT_KERNEL
481	select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
482	help
483	  This enables support for the R5432-based NEC DDB Vrc-5476
484	  evaluation board.
485
486	  Features : kernel debugging, serial terminal, NFS root fs, on-board
487	  ether port USB, AC97, PCI, PCI VGA card & framebuffer console,
488	  IDE controller, PS2 keyboard, PS2 mouse, etc.
489
490config DDB5477
491	bool "Support for NEC DDB Vrc-5477"
492	select DMA_NONCOHERENT
493	select HW_HAS_PCI
494	select I8259
495	select IRQ_CPU
496	select SYS_SUPPORTS_32BIT_KERNEL
497	select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
498	help
499	  This enables support for the R5432-based NEC DDB Vrc-5477,
500	  or Rockhopper/SolutionGear boards with R5432/R5500 CPUs.
501
502	  Features : kernel debugging, serial terminal, NFS root fs, on-board
503	  ether port USB, AC97, PCI, etc.
504
505config DDB5477_BUS_FREQUENCY
506	int "bus frequency (in kHZ, 0 for auto-detect)"
507	depends on DDB5477
508	default 0
509
510config QEMU
511	bool "Support for Qemu"
512	select DMA_COHERENT
513	select GENERIC_ISA_DMA
514	select HAVE_STD_PC_SERIAL_PORT
515	select I8259
516	select ISA
517	select SWAP_IO_SPACE
518	select SYS_SUPPORTS_32BIT_KERNEL
519	select SYS_SUPPORTS_BIG_ENDIAN
520	help
521	 Qemu is a software emulator which among other architectures also
522	 can simulate a MIPS32 4Kc system.  This patch adds support for the
523	 system architecture that currently is being simulated by Qemu.  It
524	 will eventually be removed again when Qemu has the capability to
525	 simulate actual MIPS hardware platforms.  More information on Qemu
526	 can be found at http://www.linux-mips.org/wiki/Qemu.
527
528config SGI_IP22
529	bool "Support for SGI IP22 (Indy/Indigo2)"
530	select ARC
531	select ARC32
532	select BOOT_ELF32
533	select DMA_NONCOHERENT
534	select IP22_CPU_SCACHE
535	select IRQ_CPU
536	select SWAP_IO_SPACE
537	select SYS_SUPPORTS_32BIT_KERNEL
538	select SYS_SUPPORTS_64BIT_KERNEL
539	help
540	  This are the SGI Indy, Challenge S and Indigo2, as well as certain
541	  OEM variants like the Tandem CMN B006S. To compile a Linux kernel
542	  that runs on these, say Y here.
543
544config SGI_IP27
545	bool "Support for SGI IP27 (Origin200/2000)"
546	select ARC
547	select ARC64
548	select DMA_IP27
549	select HW_HAS_PCI
550	select PCI_DOMAINS
551	select SYS_SUPPORTS_64BIT_KERNEL
552	help
553	  This are the SGI Origin 200, Origin 2000 and Onyx 2 Graphics
554	  workstations.  To compile a Linux kernel that runs on these, say Y
555	  here.
556
557#config SGI_SN0_XXL
558#	bool "IP27 XXL"
559#	depends on SGI_IP27
560#	  This options adds support for userspace processes upto 16TB size.
561#	  Normally the limit is just .5TB.
562
563config SGI_SN0_N_MODE
564	bool "IP27 N-Mode"
565	depends on SGI_IP27
566	help
567	  The nodes of Origin 200, Origin 2000 and Onyx 2 systems can be
568	  configured in either N-Modes which allows for more nodes or M-Mode
569	  which allows for more memory.  Your system is most probably
570	  running in M-Mode, so you should say N here.
571
572config ARCH_DISCONTIGMEM_ENABLE
573	bool
574	default y if SGI_IP27
575	help
576	  Say Y to upport efficient handling of discontiguous physical memory,
577	  for architectures which are either NUMA (Non-Uniform Memory Access)
578	  or have huge holes in the physical address space for other reasons.
579	  See <file:Documentation/vm/numa> for more.
580
581config NUMA
582	bool "NUMA Support"
583	depends on SGI_IP27
584	help
585	  Say Y to compile the kernel to support NUMA (Non-Uniform Memory
586	  Access).  This option is for configuring high-end multiprocessor
587	  server machines.  If in doubt, say N.
588
589config MAPPED_KERNEL
590	bool "Mapped kernel support"
591	depends on SGI_IP27
592	help
593	  Change the way a Linux kernel is loaded into memory on a MIPS64
594	  machine.  This is required in order to support text replication and
595	  NUMA.  If you need to understand it, read the source code.
596
597config REPLICATE_KTEXT
598	bool "Kernel text replication support"
599	depends on SGI_IP27
600	help
601	  Say Y here to enable replicating the kernel text across multiple
602	  nodes in a NUMA cluster.  This trades memory for speed.
603
604config REPLICATE_EXHANDLERS
605	bool "Exception handler replication support"
606	depends on SGI_IP27
607	help
608	  Say Y here to enable replicating the kernel exception handlers
609	  across multiple nodes in a NUMA cluster. This trades memory for
610	  speed.
611
612config SGI_IP32
613	bool "Support for SGI IP32 (O2) (EXPERIMENTAL)"
614	depends on EXPERIMENTAL
615	select ARC
616	select ARC32
617	select BOOT_ELF32
618	select OWN_DMA
619	select DMA_IP32
620	select DMA_NONCOHERENT
621	select HW_HAS_PCI
622	select R5000_CPU_SCACHE
623	select RM7000_CPU_SCACHE
624	select SYS_SUPPORTS_64BIT_KERNEL
625	help
626	  If you want this kernel to run on SGI O2 workstation, say Y here.
627
628config SOC_AU1X00
629	bool "Support for AMD/Alchemy Au1X00 SOCs"
630	select SYS_SUPPORTS_32BIT_KERNEL
631
632choice
633	prompt "Au1X00 SOC Type"
634	depends on SOC_AU1X00
635	help
636	  Say Y here to enable support for one of three AMD/Alchemy
637	  SOCs. For additional documentation see www.amd.com.
638
639config SOC_AU1000
640	bool "SOC_AU1000"
641config SOC_AU1100
642	bool "SOC_AU1100"
643config SOC_AU1500
644	bool "SOC_AU1500"
645config SOC_AU1550
646	bool "SOC_AU1550"
647
648endchoice
649
650choice
651	prompt "AMD/Alchemy Au1x00 board support"
652	depends on SOC_AU1X00
653	help
654	  These are evaluation boards built by AMD/Alchemy to
655	  showcase their Au1X00 Internet Edge Processors. The SOC design
656	  is based on the MIPS32 architecture running at 266/400/500MHz
657	  with many integrated peripherals. Further information can be
658	  found at their website, <http://www.amd.com/>. Say Y here if you
659	  wish to build a kernel for this platform.
660
661config MIPS_PB1000
662	bool "PB1000 board"
663	depends on SOC_AU1000
664	select DMA_NONCOHERENT
665	select HW_HAS_PCI
666	select SWAP_IO_SPACE
667
668config MIPS_PB1100
669	bool "PB1100 board"
670	depends on SOC_AU1100
671	select DMA_NONCOHERENT
672	select HW_HAS_PCI
673	select SWAP_IO_SPACE
674
675config MIPS_PB1500
676	bool "PB1500 board"
677	depends on SOC_AU1500
678	select DMA_COHERENT
679	select HW_HAS_PCI
680
681config MIPS_PB1550
682	bool "PB1550 board"
683	depends on SOC_AU1550
684	select DMA_COHERENT
685	select HW_HAS_PCI
686	select MIPS_DISABLE_OBSOLETE_IDE
687
688config MIPS_DB1000
689	bool "DB1000 board"
690	depends on SOC_AU1000
691	select DMA_NONCOHERENT
692	select HW_HAS_PCI
693
694config MIPS_DB1100
695	bool "DB1100 board"
696	depends on SOC_AU1100
697	select DMA_NONCOHERENT
698
699config MIPS_DB1500
700	bool "DB1500 board"
701	depends on SOC_AU1500
702	select DMA_COHERENT
703	select HW_HAS_PCI
704	select MIPS_DISABLE_OBSOLETE_IDE
705
706config MIPS_DB1550
707	bool "DB1550 board"
708	depends on SOC_AU1550
709	select HW_HAS_PCI
710	select DMA_COHERENT
711	select MIPS_DISABLE_OBSOLETE_IDE
712
713config MIPS_BOSPORUS
714	bool "Bosporus board"
715	depends on SOC_AU1500
716	select DMA_NONCOHERENT
717
718config MIPS_MIRAGE
719	bool "Mirage board"
720	depends on SOC_AU1500
721	select DMA_NONCOHERENT
722
723config MIPS_XXS1500
724	bool "MyCable XXS1500 board"
725	depends on SOC_AU1500
726	select DMA_NONCOHERENT
727
728config MIPS_MTX1
729	bool "4G Systems MTX-1 board"
730	depends on SOC_AU1500
731	select HW_HAS_PCI
732	select DMA_NONCOHERENT
733
734endchoice
735
736config SIBYTE_SB1xxx_SOC
737	bool "Support for Broadcom BCM1xxx SOCs (EXPERIMENTAL)"
738	depends on EXPERIMENTAL
739	select BOOT_ELF32
740	select DMA_COHERENT
741	select SWAP_IO_SPACE
742	select SYS_SUPPORTS_32BIT_KERNEL
743	select SYS_SUPPORTS_64BIT_KERNEL
744
745choice
746	prompt "BCM1xxx SOC-based board"
747	depends on SIBYTE_SB1xxx_SOC
748	default SIBYTE_SWARM
749	help
750	  Enable support for boards based on the SiByte line of SOCs
751	  from Broadcom.  There are configurations for the known
752	  evaluation boards, or you can choose "Other" and add your
753	  own board support code.
754
755config SIBYTE_SWARM
756	bool "BCM91250A-SWARM"
757	select SIBYTE_SB1250
758
759config SIBYTE_SENTOSA
760	bool "BCM91250E-Sentosa"
761	select SIBYTE_SB1250
762
763config SIBYTE_RHONE
764	bool "BCM91125E-Rhone"
765	select SIBYTE_BCM1125H
766
767config SIBYTE_CARMEL
768	bool "BCM91120x-Carmel"
769	select SIBYTE_BCM1120
770
771config SIBYTE_PTSWARM
772	bool "BCM91250PT-PTSWARM"
773	select SIBYTE_SB1250
774
775config SIBYTE_LITTLESUR
776	bool "BCM91250C2-LittleSur"
777	select SIBYTE_SB1250
778
779config SIBYTE_CRHINE
780	bool "BCM91120C-CRhine"
781	select SIBYTE_BCM1120
782
783config SIBYTE_CRHONE
784	bool "BCM91125C-CRhone"
785	select SIBYTE_BCM1125
786
787config SIBYTE_UNKNOWN
788	bool "Other"
789
790endchoice
791
792config SIBYTE_BOARD
793	bool
794	depends on SIBYTE_SB1xxx_SOC && !SIBYTE_UNKNOWN
795	default y
796
797choice
798	prompt "BCM1xxx SOC Type"
799	depends on SIBYTE_UNKNOWN
800	default SIBYTE_UNK_BCM1250
801	help
802	  Since you haven't chosen a known evaluation board from
803	  Broadcom, you must explicitly pick the SOC this kernel is
804	  targetted for.
805
806config SIBYTE_UNK_BCM1250
807	bool "BCM1250"
808	select SIBYTE_SB1250
809
810config SIBYTE_UNK_BCM1120
811	bool "BCM1120"
812	select SIBYTE_BCM1120
813
814config SIBYTE_UNK_BCM1125
815	bool "BCM1125"
816	select SIBYTE_BCM1125
817
818config SIBYTE_UNK_BCM1125H
819	bool "BCM1125H"
820	select SIBYTE_BCM1125H
821
822endchoice
823
824config SIBYTE_SB1250
825	bool
826	select HW_HAS_PCI
827
828config SIBYTE_BCM1120
829	bool
830	select SIBYTE_BCM112X
831
832config SIBYTE_BCM1125
833	bool
834	select HW_HAS_PCI
835	select SIBYTE_BCM112X
836
837config SIBYTE_BCM1125H
838	bool
839	select HW_HAS_PCI
840	select SIBYTE_BCM112X
841
842config SIBYTE_BCM112X
843	bool
844
845choice
846	prompt "SiByte SOC Stepping"
847	depends on SIBYTE_SB1xxx_SOC
848
849config CPU_SB1_PASS_1
850	bool "1250 Pass1"
851	depends on SIBYTE_SB1250
852	select CPU_HAS_PREFETCH
853
854config CPU_SB1_PASS_2_1250
855	bool "1250 An"
856	depends on SIBYTE_SB1250
857	select CPU_SB1_PASS_2
858	help
859	  Also called BCM1250 Pass 2
860
861config CPU_SB1_PASS_2_2
862	bool "1250 Bn"
863	depends on SIBYTE_SB1250
864	select CPU_HAS_PREFETCH
865	help
866	  Also called BCM1250 Pass 2.2
867
868config CPU_SB1_PASS_4
869	bool "1250 Cn"
870	depends on SIBYTE_SB1250
871	select CPU_HAS_PREFETCH
872	help
873	  Also called BCM1250 Pass 3
874
875config CPU_SB1_PASS_2_112x
876	bool "112x Hybrid"
877	depends on SIBYTE_BCM112X
878	select CPU_SB1_PASS_2
879
880config CPU_SB1_PASS_3
881	bool "112x An"
882	depends on SIBYTE_BCM112X
883	select CPU_HAS_PREFETCH
884
885endchoice
886
887config CPU_SB1_PASS_2
888	bool
889
890config SIBYTE_HAS_LDT
891	bool
892	depends on PCI && (SIBYTE_SB1250 || SIBYTE_BCM1125H)
893	default y
894
895config SIMULATION
896	bool "Running under simulation"
897	depends on SIBYTE_SB1xxx_SOC
898	help
899	  Build a kernel suitable for running under the GDB simulator.
900	  Primarily adjusts the kernel's notion of time.
901
902config SIBYTE_CFE
903	bool "Booting from CFE"
904	depends on SIBYTE_SB1xxx_SOC
905	help
906	  Make use of the CFE API for enumerating available memory,
907	  controlling secondary CPUs, and possibly console output.
908
909config SIBYTE_CFE_CONSOLE
910	bool "Use firmware console"
911	depends on SIBYTE_CFE
912	help
913	  Use the CFE API's console write routines during boot.  Other console
914	  options (VT console, sb1250 duart console, etc.) should not be
915	  configured.
916
917config SIBYTE_STANDALONE
918	bool
919	depends on SIBYTE_SB1xxx_SOC && !SIBYTE_CFE
920	default y
921
922config SIBYTE_STANDALONE_RAM_SIZE
923	int "Memory size (in megabytes)"
924	depends on SIBYTE_STANDALONE
925	default "32"
926
927config SIBYTE_BUS_WATCHER
928	bool "Support for Bus Watcher statistics"
929	depends on SIBYTE_SB1xxx_SOC
930	help
931	  Handle and keep statistics on the bus error interrupts (COR_ECC,
932	  BAD_ECC, IO_BUS).
933
934config SIBYTE_BW_TRACE
935	bool "Capture bus trace before bus error"
936	depends on SIBYTE_BUS_WATCHER
937	help
938	  Run a continuous bus trace, dumping the raw data as soon as
939	  a ZBbus error is detected.  Cannot work if ZBbus profiling
940	  is turned on, and also will interfere with JTAG-based trace
941	  buffer activity.  Raw buffer data is dumped to console, and
942	  must be processed off-line.
943
944config SIBYTE_SB1250_PROF
945	bool "Support for SB1/SOC profiling - SB1/SCD perf counters"
946	depends on SIBYTE_SB1xxx_SOC
947
948config SIBYTE_TBPROF
949	bool "Support for ZBbus profiling"
950	depends on SIBYTE_SB1xxx_SOC
951
952config SNI_RM200_PCI
953	bool "Support for SNI RM200 PCI"
954	select ARC
955	select ARC32
956	select BOOT_ELF32
957	select DMA_NONCOHERENT
958	select GENERIC_ISA_DMA
959	select HAVE_STD_PC_SERIAL_PORT
960	select HW_HAS_PCI
961	select I8259
962	select ISA
963	select SYS_SUPPORTS_32BIT_KERNEL
964	select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
965	help
966	  The SNI RM200 PCI was a MIPS-based platform manufactured by Siemens
967	  Nixdorf Informationssysteme (SNI), parent company of Pyramid
968	  Technology and now in turn merged with Fujitsu.  Say Y here to
969	  support this machine type.
970
971config TOSHIBA_RBTX4927
972	bool "Support for Toshiba TBTX49[23]7 board"
973	select DMA_NONCOHERENT
974	select HAS_TXX9_SERIAL
975	select HW_HAS_PCI
976	select I8259
977	select ISA
978	select SWAP_IO_SPACE
979	select SYS_SUPPORTS_32BIT_KERNEL
980	select SYS_SUPPORTS_64BIT_KERNEL
981	help
982	  This Toshiba board is based on the TX4927 processor. Say Y here to
983	  support this machine type
984
985config TOSHIBA_FPCIB0
986	bool "FPCIB0 Backplane Support"
987	depends on TOSHIBA_RBTX4927
988
989config RWSEM_GENERIC_SPINLOCK
990	bool
991	default y
992
993config RWSEM_XCHGADD_ALGORITHM
994	bool
995
996config GENERIC_CALIBRATE_DELAY
997	bool
998	default y
999
1000config HAVE_DEC_LOCK
1001	bool
1002	default y
1003
1004#
1005# Select some configuration options automatically based on user selections.
1006#
1007config ARC
1008	bool
1009	depends on SNI_RM200_PCI || SGI_IP32 || SGI_IP27 || SGI_IP22 || MIPS_MAGNUM_4000 || OLIVETTI_M700 || ACER_PICA_61
1010	default y
1011
1012config DMA_COHERENT
1013	bool
1014
1015config DMA_IP27
1016	bool
1017
1018config DMA_IP32
1019	bool
1020	select DMA_NEED_PCI_MAP_STATE
1021
1022config DMA_NONCOHERENT
1023	bool
1024	select DMA_NEED_PCI_MAP_STATE
1025
1026config DMA_NEED_PCI_MAP_STATE
1027	bool
1028
1029config EARLY_PRINTK
1030	bool
1031	depends on MACH_DECSTATION
1032	default y
1033
1034config GENERIC_ISA_DMA
1035	bool
1036	depends on SNI_RM200_PCI || MIPS_MAGNUM_4000 || OLIVETTI_M700 || ACER_PICA_61 || MIPS_MALTA
1037	default y
1038
1039config I8259
1040	bool
1041	depends on SNI_RM200_PCI || DDB5477 || DDB5476 || DDB5074 || MACH_JAZZ || MIPS_MALTA || MIPS_COBALT
1042	default y
1043
1044config LIMITED_DMA
1045	bool
1046	select HIGHMEM
1047
1048config MIPS_BONITO64
1049	bool
1050	depends on MIPS_ATLAS || MIPS_MALTA
1051	default y
1052
1053config MIPS_MSC
1054	bool
1055	depends on MIPS_ATLAS || MIPS_MALTA
1056	default y
1057
1058config MIPS_NILE4
1059	bool
1060	depends on LASAT
1061	default y
1062
1063config MIPS_DISABLE_OBSOLETE_IDE
1064	bool
1065
1066config CPU_LITTLE_ENDIAN
1067	bool "Generate little endian code"
1068	default y if ACER_PICA_61 || CASIO_E55 || DDB5074 || DDB5476 || DDB5477 || MACH_DECSTATION || IBM_WORKPAD || LASAT || MIPS_COBALT || MIPS_ITE8172 || MIPS_IVR || SOC_AU1X00 || OLIVETTI_M700 || SNI_RM200_PCI || VICTOR_MPC30X || ZAO_CAPCELLA
1069	default n if MIPS_EV64120 || MIPS_EV96100 || MOMENCO_OCELOT || MOMENCO_OCELOT_G || SGI_IP22 || SGI_IP27 || SGI_IP32 || TOSHIBA_JMR3927
1070	help
1071	  Some MIPS machines can be configured for either little or big endian
1072	  byte order. These modes require different kernels. Say Y if your
1073	  machine is little endian, N if it's a big endian machine.
1074
1075config IRQ_CPU
1076	bool
1077
1078config IRQ_CPU_RM7K
1079	bool
1080
1081config IRQ_MV64340
1082	bool
1083
1084config DDB5XXX_COMMON
1085	bool
1086	depends on DDB5074 || DDB5476 || DDB5477
1087	default y
1088
1089config MIPS_BOARDS_GEN
1090	bool
1091	depends on MIPS_ATLAS || MIPS_MALTA || MIPS_SEAD
1092	default y
1093
1094config MIPS_GT64111
1095	bool
1096	depends on MIPS_COBALT
1097	default y
1098
1099config MIPS_GT64120
1100	bool
1101	depends on MIPS_EV64120 || MIPS_EV96100 || LASAT || MIPS_ATLAS || MIPS_MALTA || MOMENCO_OCELOT
1102	default y
1103
1104config MIPS_TX3927
1105	bool
1106	depends on TOSHIBA_JMR3927
1107	select HAS_TXX9_SERIAL
1108	default y
1109
1110config PCI_MARVELL
1111	bool
1112
1113config ITE_BOARD_GEN
1114	bool
1115	depends on MIPS_IVR || MIPS_ITE8172
1116	default y
1117
1118config SWAP_IO_SPACE
1119	bool
1120
1121#
1122# Unfortunately not all GT64120 systems run the chip at the same clock.
1123# As the user for the clock rate and try to minimize the available options.
1124#
1125choice
1126	prompt "Galileo Chip Clock"
1127	#default SYSCLK_83 if MIPS_EV64120
1128	depends on MIPS_EV64120 || MOMENCO_OCELOT || MOMENCO_OCELOT_G
1129	default SYSCLK_83 if MIPS_EV64120
1130	default SYSCLK_100 if MOMENCO_OCELOT || MOMENCO_OCELOT_G
1131
1132config SYSCLK_75
1133	bool "75" if MIPS_EV64120
1134
1135config SYSCLK_83
1136	bool "83.3" if MIPS_EV64120
1137
1138config SYSCLK_100
1139	bool "100" if MIPS_EV64120 || MOMENCO_OCELOT || MOMENCO_OCELOT_G
1140
1141endchoice
1142
1143config AU1X00_USB_DEVICE
1144	bool
1145	depends on MIPS_PB1500 || MIPS_PB1100 || MIPS_PB1000
1146	default n
1147
1148config MIPS_GT96100
1149	bool
1150	depends on MIPS_EV96100
1151	default y
1152	help
1153	  Say Y here to support the Galileo Technology GT96100 communications
1154	  controller card.  There is a web page at <http://www.galileot.com/>.
1155
1156config IT8172_CIR
1157	bool
1158	depends on MIPS_ITE8172 || MIPS_IVR
1159	default y
1160
1161config IT8712
1162	bool
1163	depends on MIPS_ITE8172
1164	default y
1165
1166config BOOT_ELF32
1167	bool
1168	depends on MACH_DECSTATION || MIPS_ATLAS || MIPS_MALTA || MOMENCO_JAGUAR_ATX || MOMENCO_OCELOT_3 || SIBYTE_SB1xxx_SOC || SGI_IP32 || SGI_IP22 || SNI_RM200_PCI
1169	default y
1170
1171config MIPS_L1_CACHE_SHIFT
1172	int
1173	default "4" if MACH_DECSTATION
1174	default "7" if SGI_IP27
1175	default "5"
1176
1177config ARC32
1178	bool
1179	depends on MACH_JAZZ || SNI_RM200_PCI || SGI_IP22 || SGI_IP32
1180	default y
1181
1182config HAVE_STD_PC_SERIAL_PORT
1183	bool
1184
1185config ARC_CONSOLE
1186	bool "ARC console support"
1187	depends on SGI_IP22 || SNI_RM200_PCI
1188
1189config ARC_MEMORY
1190	bool
1191	depends on MACH_JAZZ || SNI_RM200_PCI || SGI_IP32
1192	default y
1193
1194config ARC_PROMLIB
1195	bool
1196	depends on MACH_JAZZ || SNI_RM200_PCI || SGI_IP22 || SGI_IP32
1197	default y
1198
1199config ARC64
1200	bool
1201	depends on SGI_IP27
1202	default y
1203
1204config BOOT_ELF64
1205	bool
1206	depends on SGI_IP27
1207	default y
1208
1209#config MAPPED_PCI_IO y
1210#	bool
1211#	depends on SGI_IP27
1212#	default y
1213
1214config QL_ISP_A64
1215	bool
1216	depends on SGI_IP27
1217	default y
1218
1219config TOSHIBA_BOARDS
1220	bool
1221	depends on TOSHIBA_JMR3927 || TOSHIBA_RBTX4927
1222	default y
1223
1224endmenu
1225
1226menu "CPU selection"
1227
1228choice
1229	prompt "CPU type"
1230	default CPU_R4X00
1231
1232config CPU_MIPS32
1233	bool "MIPS32"
1234	select CPU_SUPPORTS_32BIT_KERNEL
1235
1236config CPU_MIPS64
1237	bool "MIPS64"
1238	select CPU_SUPPORTS_32BIT_KERNEL
1239	select CPU_SUPPORTS_64BIT_KERNEL
1240
1241config CPU_R3000
1242	bool "R3000"
1243	select CPU_SUPPORTS_32BIT_KERNEL
1244	help
1245	  Please make sure to pick the right CPU type. Linux/MIPS is not
1246	  designed to be generic, i.e. Kernels compiled for R3000 CPUs will
1247	  *not* work on R4000 machines and vice versa.  However, since most
1248	  of the supported machines have an R4000 (or similar) CPU, R4x00
1249	  might be a safe bet.  If the resulting kernel does not work,
1250	  try to recompile with R3000.
1251
1252config CPU_TX39XX
1253	bool "R39XX"
1254	select CPU_SUPPORTS_32BIT_KERNEL
1255
1256config CPU_VR41XX
1257	bool "R41xx"
1258	select CPU_SUPPORTS_32BIT_KERNEL
1259	select CPU_SUPPORTS_64BIT_KERNEL
1260	help
1261	  The options selects support for the NEC VR41xx series of processors.
1262	  Only choose this option if you have one of these processors as a
1263	  kernel built with this option will not run on any other type of
1264	  processor or vice versa.
1265
1266config CPU_R4300
1267	bool "R4300"
1268	select CPU_SUPPORTS_32BIT_KERNEL
1269	select CPU_SUPPORTS_64BIT_KERNEL
1270	help
1271	  MIPS Technologies R4300-series processors.
1272
1273config CPU_R4X00
1274	bool "R4x00"
1275	select CPU_SUPPORTS_32BIT_KERNEL
1276	select CPU_SUPPORTS_64BIT_KERNEL
1277	help
1278	  MIPS Technologies R4000-series processors other than 4300, including
1279	  the R4000, R4400, R4600, and 4700.
1280
1281config CPU_TX49XX
1282	bool "R49XX"
1283	select CPU_SUPPORTS_32BIT_KERNEL
1284	select CPU_SUPPORTS_64BIT_KERNEL
1285
1286config CPU_R5000
1287	bool "R5000"
1288	select CPU_SUPPORTS_32BIT_KERNEL
1289	select CPU_SUPPORTS_64BIT_KERNEL
1290	help
1291	  MIPS Technologies R5000-series processors other than the Nevada.
1292
1293config CPU_R5432
1294	bool "R5432"
1295
1296config CPU_R6000
1297	bool "R6000"
1298	depends on EXPERIMENTAL
1299	select CPU_SUPPORTS_32BIT_KERNEL
1300	help
1301	  MIPS Technologies R6000 and R6000A series processors.  Note these
1302	  processors are extremly rare and the support for them is incomplete.
1303
1304config CPU_NEVADA
1305	bool "RM52xx"
1306	select CPU_SUPPORTS_32BIT_KERNEL
1307	select CPU_SUPPORTS_64BIT_KERNEL
1308	help
1309	  QED / PMC-Sierra RM52xx-series ("Nevada") processors.
1310
1311config CPU_R8000
1312	bool "R8000"
1313	depends on EXPERIMENTAL
1314	select CPU_SUPPORTS_64BIT_KERNEL
1315	help
1316	  MIPS Technologies R8000 processors.  Note these processors are
1317	  uncommon and the support for them is incomplete.
1318
1319config CPU_R10000
1320	bool "R10000"
1321	select CPU_SUPPORTS_32BIT_KERNEL
1322	select CPU_SUPPORTS_64BIT_KERNEL
1323	help
1324	  MIPS Technologies R10000-series processors.
1325
1326config CPU_RM7000
1327	bool "RM7000"
1328	select CPU_SUPPORTS_32BIT_KERNEL
1329	select CPU_SUPPORTS_64BIT_KERNEL
1330
1331config CPU_RM9000
1332	bool "RM9000"
1333	select CPU_SUPPORTS_32BIT_KERNEL
1334	select CPU_SUPPORTS_64BIT_KERNEL
1335
1336config CPU_SB1
1337	bool "SB1"
1338	select CPU_SUPPORTS_32BIT_KERNEL
1339	select CPU_SUPPORTS_64BIT_KERNEL
1340
1341endchoice
1342
1343choice
1344	prompt "Kernel page size"
1345	default PAGE_SIZE_4KB
1346
1347config PAGE_SIZE_4KB
1348	bool "4kB"
1349	help
1350	 This option select the standard 4kB Linux page size.  On some
1351	 R3000-family processors this is the only available page size.  Using
1352	 4kB page size will minimize memory consumption and is therefore
1353	 recommended for low memory systems.
1354
1355config PAGE_SIZE_8KB
1356	bool "8kB"
1357	depends on EXPERIMENTAL && CPU_R8000
1358	help
1359	  Using 8kB page size will result in higher performance kernel at
1360	  the price of higher memory consumption.  This option is available
1361	  only on the R8000 processor.  Not that at the time of this writing
1362	  this option is still high experimental; there are also issues with
1363	  compatibility of user applications.
1364
1365config PAGE_SIZE_16KB
1366	bool "16kB"
1367	depends on EXPERIMENTAL && !CPU_R3000 && !CPU_TX39XX
1368	help
1369	  Using 16kB page size will result in higher performance kernel at
1370	  the price of higher memory consumption.  This option is available on
1371	  all non-R3000 family processor.  Not that at the time of this
1372	  writing this option is still high experimental; there are also
1373	  issues with compatibility of user applications.
1374
1375config PAGE_SIZE_64KB
1376	bool "64kB"
1377	depends on EXPERIMENTAL && !CPU_R3000 && !CPU_TX39XX
1378	help
1379	  Using 64kB page size will result in higher performance kernel at
1380	  the price of higher memory consumption.  This option is available on
1381	  all non-R3000 family processor.  Not that at the time of this
1382	  writing this option is still high experimental; there are also
1383	  issues with compatibility of user applications.
1384
1385endchoice
1386
1387config BOARD_SCACHE
1388	bool
1389
1390config IP22_CPU_SCACHE
1391	bool
1392	select BOARD_SCACHE
1393
1394config R5000_CPU_SCACHE
1395	bool
1396	select BOARD_SCACHE
1397
1398config RM7000_CPU_SCACHE
1399	bool
1400	select BOARD_SCACHE
1401
1402config SIBYTE_DMA_PAGEOPS
1403	bool "Use DMA to clear/copy pages"
1404	depends on CPU_SB1
1405	help
1406	  Instead of using the CPU to zero and copy pages, use a Data Mover
1407	  channel.  These DMA channels are otherwise unused by the standard
1408	  SiByte Linux port.  Seems to give a small performance benefit.
1409
1410config CPU_HAS_PREFETCH
1411	bool "Enable prefetches" if CPU_SB1 && !CPU_SB1_PASS_2
1412	default y if CPU_MIPS32 || CPU_MIPS64 || CPU_RM7000 || CPU_RM9000 || CPU_R10000
1413
1414config VTAG_ICACHE
1415	bool "Support for Virtual Tagged I-cache" if CPU_MIPS64 || CPU_MIPS32
1416	default y if CPU_SB1
1417
1418config SB1_PASS_1_WORKAROUNDS
1419	bool
1420	depends on CPU_SB1_PASS_1
1421	default y
1422
1423config SB1_PASS_2_WORKAROUNDS
1424	bool
1425	depends on CPU_SB1 && (CPU_SB1_PASS_2_2 || CPU_SB1_PASS_2)
1426	default y
1427
1428config SB1_PASS_2_1_WORKAROUNDS
1429	bool
1430	depends on CPU_SB1 && CPU_SB1_PASS_2
1431	default y
1432
1433config 64BIT_PHYS_ADDR
1434	bool "Support for 64-bit physical address space"
1435	depends on (CPU_R4X00 || CPU_R5000 || CPU_RM7000 || CPU_RM9000 || CPU_R10000 || CPU_SB1 || CPU_MIPS32 || CPU_MIPS64) && 32BIT
1436
1437config CPU_ADVANCED
1438	bool "Override CPU Options"
1439	depends on 32BIT
1440	help
1441	  Saying yes here allows you to select support for various features
1442	  your CPU may or may not have.  Most people should say N here.
1443
1444config CPU_HAS_LLSC
1445	bool "ll/sc Instructions available" if CPU_ADVANCED
1446	default y if !CPU_ADVANCED && !CPU_R3000 && !CPU_VR41XX && !CPU_TX39XX
1447	help
1448	  MIPS R4000 series and later provide the Load Linked (ll)
1449	  and Store Conditional (sc) instructions. More information is
1450	  available at <http://www.go-ecs.com/mips/miptek1.htm>.
1451
1452	  Say Y here if your CPU has the ll and sc instructions.  Say Y here
1453	  for better performance, N if you don't know.  You must say Y here
1454	  for multiprocessor machines.
1455
1456config CPU_HAS_LLDSCD
1457	bool "lld/scd Instructions available" if CPU_ADVANCED
1458	default y if !CPU_ADVANCED && !CPU_R3000 && !CPU_VR41XX && !CPU_TX39XX && !CPU_MIPS32
1459	help
1460	  Say Y here if your CPU has the lld and scd instructions, the 64-bit
1461	  equivalents of ll and sc.  Say Y here for better performance, N if
1462	  you don't know.  You must say Y here for multiprocessor machines.
1463
1464config CPU_HAS_WB
1465	bool "Writeback Buffer available" if CPU_ADVANCED
1466	default y if !CPU_ADVANCED && CPU_R3000 && MACH_DECSTATION
1467	help
1468	  Say N here for slightly better performance.  You must say Y here for
1469	  machines which require flushing of write buffers in software.  Saying
1470	  Y is the safe option; N may result in kernel malfunction and crashes.
1471
1472config CPU_HAS_SYNC
1473	bool
1474	depends on !CPU_R3000
1475	default y
1476
1477#
1478# - Highmem only makes sense for the 32-bit kernel.
1479# - The current highmem code will only work properly on physically indexed
1480#   caches such as R3000, SB1, R7000 or those that look like they're virtually
1481#   indexed such as R4000/R4400 SC and MC versions or R10000.  So for the
1482#   moment we protect the user and offer the highmem option only on machines
1483#   where it's known to be safe.  This will not offer highmem on a few systems
1484#   such as MIPS32 and MIPS64 CPUs which may have virtual and physically
1485#   indexed CPUs but we're playing safe.
1486# - We should not offer highmem for system of which we already know that they
1487#   don't have memory configurations that could gain from highmem support in
1488#   the kernel because they don't support configurations with RAM at physical
1489#   addresses > 0x20000000.
1490#
1491config HIGHMEM
1492	bool "High Memory Support"
1493	depends on 32BIT && (CPU_R3000 || CPU_SB1 || CPU_R7000 || CPU_RM9000 || CPU_R10000) && !(MACH_DECSTATION || MOMENCO_JAGUAR_ATX)
1494
1495config ARCH_FLATMEM_ENABLE
1496	def_bool y
1497	depends on !NUMA
1498
1499source "mm/Kconfig"
1500
1501config SMP
1502	bool "Multi-Processing support"
1503	depends on CPU_RM9000 || (SIBYTE_SB1250 && !SIBYTE_STANDALONE) || SGI_IP27
1504	---help---
1505	  This enables support for systems with more than one CPU. If you have
1506	  a system with only one CPU, like most personal computers, say N. If
1507	  you have a system with more than one CPU, say Y.
1508
1509	  If you say N here, the kernel will run on single and multiprocessor
1510	  machines, but will use only one CPU of a multiprocessor machine. If
1511	  you say Y here, the kernel will run on many, but not all,
1512	  singleprocessor machines. On a singleprocessor machine, the kernel
1513	  will run faster if you say N here.
1514
1515	  People using multiprocessor machines who say Y here should also say
1516	  Y to "Enhanced Real Time Clock Support", below.
1517
1518	  See also the <file:Documentation/smp.txt> and the SMP-HOWTO
1519	  available at <http://www.tldp.org/docs.html#howto>.
1520
1521	  If you don't know what to do here, say N.
1522
1523config NR_CPUS
1524	int "Maximum number of CPUs (2-64)"
1525	range 2 64
1526	depends on SMP
1527	default "64" if SGI_IP27
1528	default "2"
1529	help
1530	  This allows you to specify the maximum number of CPUs which this
1531	  kernel will support.  The maximum supported value is 32 for 32-bit
1532	  kernel and 64 for 64-bit kernels; the minimum value which makes
1533	  sense is 2.
1534
1535	  This is purely to save memory - each supported CPU adds
1536	  approximately eight kilobytes to the kernel image.
1537
1538config PREEMPT
1539	bool "Preemptible Kernel"
1540	help
1541	  This option reduces the latency of the kernel when reacting to
1542	  real-time or interactive events by allowing a low priority process to
1543	  be preempted even if it is in kernel mode executing a system call.
1544	  This allows applications to run more reliably even when the system is
1545	  under load.
1546
1547config RTC_DS1742
1548	bool "DS1742 BRAM/RTC support"
1549	depends on TOSHIBA_JMR3927 || TOSHIBA_RBTX4927
1550
1551config MIPS_INSANE_LARGE
1552	bool "Support for large 64-bit configurations"
1553	depends on CPU_R10000 && 64BIT
1554	help
1555	  MIPS R10000 does support a 44 bit / 16TB address space as opposed to
1556	  previous 64-bit processors which only supported 40 bit / 1TB. If you
1557	  need processes of more than 1TB virtual address space, say Y here.
1558	  This will result in additional memory usage, so it is not
1559	  recommended for normal users.
1560
1561config RWSEM_GENERIC_SPINLOCK
1562	bool
1563	default y
1564
1565endmenu
1566
1567menu "Bus options (PCI, PCMCIA, EISA, ISA, TC)"
1568
1569config HW_HAS_PCI
1570	bool
1571
1572config PCI
1573	bool "Support for PCI controller"
1574	depends on HW_HAS_PCI
1575	help
1576	  Find out whether you have a PCI motherboard. PCI is the name of a
1577	  bus system, i.e. the way the CPU talks to the other stuff inside
1578	  your box. Other bus systems are ISA, EISA, or VESA. If you have PCI,
1579	  say Y, otherwise N.
1580
1581	  The PCI-HOWTO, available from
1582	  <http://www.tldp.org/docs.html#howto>, contains valuable
1583	  information about which PCI hardware does work under Linux and which
1584	  doesn't.
1585
1586config PCI_DOMAINS
1587	bool
1588	depends on PCI
1589
1590source "drivers/pci/Kconfig"
1591
1592#
1593# ISA support is now enabled via select.  Too many systems still have the one
1594# or other ISA chip on the board that users don't know about so don't expect
1595# users to choose the right thing ...
1596#
1597config ISA
1598	bool
1599
1600config EISA
1601	bool "EISA support"
1602	depends on SGI_IP22 || SNI_RM200_PCI
1603	select ISA
1604	---help---
1605	  The Extended Industry Standard Architecture (EISA) bus was
1606	  developed as an open alternative to the IBM MicroChannel bus.
1607
1608	  The EISA bus provided some of the features of the IBM MicroChannel
1609	  bus while maintaining backward compatibility with cards made for
1610	  the older ISA bus.  The EISA bus saw limited use between 1988 and
1611	  1995 when it was made obsolete by the PCI bus.
1612
1613	  Say Y here if you are building a kernel for an EISA-based machine.
1614
1615	  Otherwise, say N.
1616
1617source "drivers/eisa/Kconfig"
1618
1619config TC
1620	bool "TURBOchannel support"
1621	depends on MACH_DECSTATION
1622	help
1623	  TurboChannel is a DEC (now Compaq (now HP)) bus for Alpha and MIPS
1624	  processors.  Documentation on writing device drivers for TurboChannel
1625	  is available at:
1626	  <http://www.cs.arizona.edu/computer.help/policy/DIGITAL_unix/AA-PS3HD-TET1_html/TITLE.html>.
1627
1628#config ACCESSBUS
1629#	bool "Access.Bus support"
1630#	depends on TC
1631
1632config MMU
1633	bool
1634	default y
1635
1636config MCA
1637	bool
1638
1639config SBUS
1640	bool
1641
1642source "drivers/pcmcia/Kconfig"
1643
1644source "drivers/pci/hotplug/Kconfig"
1645
1646endmenu
1647
1648menu "Executable file formats"
1649
1650source "fs/Kconfig.binfmt"
1651
1652config TRAD_SIGNALS
1653	bool
1654	default y if 32BIT
1655
1656config BUILD_ELF64
1657	bool "Use 64-bit ELF format for building"
1658	depends on 64BIT
1659	help
1660	  A 64-bit kernel is usually built using the 64-bit ELF binary object
1661	  format as it's one that allows arbitrary 64-bit constructs.  For
1662	  kernels that are loaded within the KSEG compatibility segments the
1663	  32-bit ELF format can optionally be used resulting in a somewhat
1664	  smaller binary, but this option is not explicitly supported by the
1665	  toolchain and since binutils 2.14 it does not even work at all.
1666
1667	  Say Y to use the 64-bit format or N to use the 32-bit one.
1668
1669	  If unsure say Y.
1670
1671config BINFMT_IRIX
1672	bool "Include IRIX binary compatibility"
1673	depends on !CPU_LITTLE_ENDIAN && 32BIT && BROKEN
1674
1675config MIPS32_COMPAT
1676	bool "Kernel support for Linux/MIPS 32-bit binary compatibility"
1677	depends on 64BIT
1678	help
1679	  Select this option if you want Linux/MIPS 32-bit binary
1680	  compatibility. Since all software available for Linux/MIPS is
1681	  currently 32-bit you should say Y here.
1682
1683config COMPAT
1684	bool
1685	depends on MIPS32_COMPAT
1686	default y
1687
1688config MIPS32_O32
1689	bool "Kernel support for o32 binaries"
1690	depends on MIPS32_COMPAT
1691	help
1692	  Select this option if you want to run o32 binaries.  These are pure
1693	  32-bit binaries as used by the 32-bit Linux/MIPS port.  Most of
1694	  existing binaries are in this format.
1695
1696	  If unsure, say Y.
1697
1698config MIPS32_N32
1699	bool "Kernel support for n32 binaries"
1700	depends on MIPS32_COMPAT
1701	help
1702	  Select this option if you want to run n32 binaries.  These are
1703	  64-bit binaries using 32-bit quantities for addressing and certain
1704	  data that would normally be 64-bit.  They are used in special
1705	  cases.
1706
1707	  If unsure, say N.
1708
1709config BINFMT_ELF32
1710	bool
1711	default y if MIPS32_O32 || MIPS32_N32
1712
1713config PM
1714	bool "Power Management support (EXPERIMENTAL)"
1715	depends on EXPERIMENTAL && MACH_AU1X00
1716
1717endmenu
1718
1719source "net/Kconfig"
1720
1721source "drivers/Kconfig"
1722
1723source "fs/Kconfig"
1724
1725source "arch/mips/Kconfig.debug"
1726
1727source "security/Kconfig"
1728
1729source "crypto/Kconfig"
1730
1731source "lib/Kconfig"
1732
1733#
1734# Use the generic interrupt handling code in kernel/irq/:
1735#
1736config GENERIC_HARDIRQS
1737	bool
1738	default y
1739
1740config GENERIC_IRQ_PROBE
1741	bool
1742	default y
1743
1744config ISA_DMA_API
1745	bool
1746	default y
1747