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