xref: /linux/arch/mips/Kconfig (revision 8960909ca71da6120cad2fd7ece7dbe32ae05b40)
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
9menu "Machine selection"
10
11config ZONE_DMA
12	bool
13	default y
14
15choice
16	prompt "System type"
17	default SGI_IP22
18
19config MIPS_MTX1
20	bool "4G Systems MTX-1 board"
21	select DMA_NONCOHERENT
22	select HW_HAS_PCI
23	select RESOURCES_64BIT if PCI
24	select SOC_AU1500
25	select SYS_HAS_CPU_MIPS32_R1
26	select SYS_SUPPORTS_LITTLE_ENDIAN
27
28config MIPS_BOSPORUS
29	bool "AMD Alchemy Bosporus board"
30	select SOC_AU1500
31	select DMA_NONCOHERENT
32	select SYS_HAS_CPU_MIPS32_R1
33	select SYS_SUPPORTS_LITTLE_ENDIAN
34
35config MIPS_PB1000
36	bool "AMD Alchemy PB1000 board"
37	select SOC_AU1000
38	select DMA_NONCOHERENT
39	select HW_HAS_PCI
40	select RESOURCES_64BIT if PCI
41	select SWAP_IO_SPACE
42	select SYS_HAS_CPU_MIPS32_R1
43	select SYS_SUPPORTS_LITTLE_ENDIAN
44
45config MIPS_PB1100
46	bool "AMD Alchemy PB1100 board"
47	select SOC_AU1100
48	select DMA_NONCOHERENT
49	select HW_HAS_PCI
50	select RESOURCES_64BIT if PCI
51	select SWAP_IO_SPACE
52	select SYS_HAS_CPU_MIPS32_R1
53	select SYS_SUPPORTS_LITTLE_ENDIAN
54
55config MIPS_PB1500
56	bool "AMD Alchemy PB1500 board"
57	select SOC_AU1500
58	select DMA_NONCOHERENT
59	select HW_HAS_PCI
60	select RESOURCES_64BIT if PCI
61	select SYS_HAS_CPU_MIPS32_R1
62	select SYS_SUPPORTS_LITTLE_ENDIAN
63
64config MIPS_PB1550
65	bool "AMD Alchemy PB1550 board"
66	select SOC_AU1550
67	select DMA_NONCOHERENT
68	select HW_HAS_PCI
69	select MIPS_DISABLE_OBSOLETE_IDE
70	select RESOURCES_64BIT if PCI
71	select SYS_HAS_CPU_MIPS32_R1
72	select SYS_SUPPORTS_LITTLE_ENDIAN
73
74config MIPS_PB1200
75	bool "AMD Alchemy PB1200 board"
76	select SOC_AU1200
77	select DMA_NONCOHERENT
78	select MIPS_DISABLE_OBSOLETE_IDE
79	select RESOURCES_64BIT if PCI
80	select SYS_HAS_CPU_MIPS32_R1
81	select SYS_SUPPORTS_LITTLE_ENDIAN
82
83config MIPS_DB1000
84	bool "AMD Alchemy DB1000 board"
85	select SOC_AU1000
86	select DMA_NONCOHERENT
87	select HW_HAS_PCI
88	select RESOURCES_64BIT if PCI
89	select SYS_HAS_CPU_MIPS32_R1
90	select SYS_SUPPORTS_LITTLE_ENDIAN
91
92config MIPS_DB1100
93	bool "AMD Alchemy DB1100 board"
94	select SOC_AU1100
95	select DMA_NONCOHERENT
96	select SYS_HAS_CPU_MIPS32_R1
97	select SYS_SUPPORTS_LITTLE_ENDIAN
98
99config MIPS_DB1500
100	bool "AMD Alchemy DB1500 board"
101	select SOC_AU1500
102	select DMA_NONCOHERENT
103	select HW_HAS_PCI
104	select MIPS_DISABLE_OBSOLETE_IDE
105	select RESOURCES_64BIT if PCI
106	select SYS_HAS_CPU_MIPS32_R1
107	select SYS_SUPPORTS_BIG_ENDIAN
108	select SYS_SUPPORTS_LITTLE_ENDIAN
109
110config MIPS_DB1550
111	bool "AMD Alchemy DB1550 board"
112	select SOC_AU1550
113	select HW_HAS_PCI
114	select DMA_NONCOHERENT
115	select MIPS_DISABLE_OBSOLETE_IDE
116	select RESOURCES_64BIT if PCI
117	select SYS_HAS_CPU_MIPS32_R1
118	select SYS_SUPPORTS_LITTLE_ENDIAN
119
120config MIPS_DB1200
121	bool "AMD Alchemy DB1200 board"
122	select SOC_AU1200
123	select DMA_COHERENT
124	select MIPS_DISABLE_OBSOLETE_IDE
125	select SYS_HAS_CPU_MIPS32_R1
126	select SYS_SUPPORTS_LITTLE_ENDIAN
127
128config MIPS_MIRAGE
129	bool "AMD Alchemy Mirage board"
130	select DMA_NONCOHERENT
131	select SOC_AU1500
132	select SYS_HAS_CPU_MIPS32_R1
133	select SYS_SUPPORTS_LITTLE_ENDIAN
134
135config BASLER_EXCITE
136	bool "Basler eXcite smart camera"
137	select DMA_COHERENT
138	select HW_HAS_PCI
139	select IRQ_CPU
140	select IRQ_CPU_RM7K
141	select IRQ_CPU_RM9K
142	select MIPS_RM9122
143	select SYS_HAS_CPU_RM9000
144	select SYS_SUPPORTS_32BIT_KERNEL
145	select SYS_SUPPORTS_64BIT_KERNEL
146	select SYS_SUPPORTS_BIG_ENDIAN
147	select SYS_SUPPORTS_KGDB
148	help
149	  The eXcite is a smart camera platform manufactured by
150	  Basler Vision Technologies AG.
151
152config BASLER_EXCITE_PROTOTYPE
153	bool "Support for pre-release units"
154	depends on BASLER_EXCITE
155	default n
156	help
157	  Pre-series (prototype) units are different from later ones in
158	  some ways. Select this option if you have one of these. Please
159	  note that a kernel built with this option selected will not be
160	  able to run on normal units.
161
162config MIPS_COBALT
163	bool "Cobalt Server"
164	select DMA_NONCOHERENT
165	select HW_HAS_PCI
166	select I8259
167	select IRQ_CPU
168	select MIPS_GT64111
169	select SYS_HAS_CPU_NEVADA
170	select SYS_HAS_EARLY_PRINTK
171	select SYS_SUPPORTS_32BIT_KERNEL
172	select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
173	select SYS_SUPPORTS_LITTLE_ENDIAN
174	select GENERIC_HARDIRQS_NO__DO_IRQ
175
176config MACH_DECSTATION
177	bool "DECstations"
178	select BOOT_ELF32
179	select DMA_NONCOHERENT
180	select SYS_HAS_EARLY_PRINTK
181	select IRQ_CPU
182	select SYS_HAS_CPU_R3000
183	select SYS_HAS_CPU_R4X00
184	select SYS_SUPPORTS_32BIT_KERNEL
185	select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
186	select SYS_SUPPORTS_LITTLE_ENDIAN
187	select SYS_SUPPORTS_128HZ
188	select SYS_SUPPORTS_256HZ
189	select SYS_SUPPORTS_1024HZ
190	help
191	  This enables support for DEC's MIPS based workstations.  For details
192	  see the Linux/MIPS FAQ on <http://www.linux-mips.org/> and the
193	  DECstation porting pages on <http://decstation.unix-ag.org/>.
194
195	  If you have one of the following DECstation Models you definitely
196	  want to choose R4xx0 for the CPU Type:
197
198	  	DECstation 5000/50
199	  	DECstation 5000/150
200	  	DECstation 5000/260
201	  	DECsystem 5900/260
202
203	  otherwise choose R3000.
204
205config MIPS_EV64120
206	bool "Galileo EV64120 Evaluation board (EXPERIMENTAL)"
207	depends on EXPERIMENTAL
208	select DMA_NONCOHERENT
209	select HW_HAS_PCI
210	select MIPS_GT64120
211	select SYS_HAS_CPU_R5000
212	select SYS_SUPPORTS_32BIT_KERNEL
213	select SYS_SUPPORTS_64BIT_KERNEL
214	select SYS_SUPPORTS_BIG_ENDIAN
215	select SYS_SUPPORTS_KGDB
216	help
217	  This is an evaluation board based on the Galileo GT-64120
218	  single-chip system controller that contains a MIPS R5000 compatible
219	  core running at 75/100MHz.  Their website is located at
220	  <http://www.marvell.com/>.  Say Y here if you wish to build a
221	  kernel for this platform.
222
223config MACH_JAZZ
224	bool "Jazz family of machines"
225	select ARC
226	select ARC32
227	select ARCH_MAY_HAVE_PC_FDC
228	select GENERIC_ISA_DMA
229	select I8253
230	select I8259
231	select ISA
232	select SYS_HAS_CPU_R4X00
233	select SYS_SUPPORTS_32BIT_KERNEL
234	select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
235	select SYS_SUPPORTS_100HZ
236	select GENERIC_HARDIRQS_NO__DO_IRQ
237	help
238	 This a family of machines based on the MIPS R4030 chipset which was
239	 used by several vendors to build RISC/os and Windows NT workstations.
240	 Members include the Acer PICA, MIPS Magnum 4000, MIPS Millenium and
241	 Olivetti M700-10 workstations.
242
243config LASAT
244	bool "LASAT Networks platforms"
245	select DMA_NONCOHERENT
246	select SYS_HAS_EARLY_PRINTK
247	select HW_HAS_PCI
248	select MIPS_GT64120
249	select MIPS_NILE4
250	select R5000_CPU_SCACHE
251	select SYS_HAS_CPU_R5000
252	select SYS_SUPPORTS_32BIT_KERNEL
253	select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
254	select SYS_SUPPORTS_LITTLE_ENDIAN
255	select GENERIC_HARDIRQS_NO__DO_IRQ
256
257config MIPS_ATLAS
258	bool "MIPS Atlas board"
259	select BOOT_ELF32
260	select DMA_NONCOHERENT
261	select SYS_HAS_EARLY_PRINTK
262	select IRQ_CPU
263	select HW_HAS_PCI
264	select MIPS_BOARDS_GEN
265	select MIPS_BONITO64
266	select MIPS_GT64120
267	select MIPS_MSC
268	select RM7000_CPU_SCACHE
269	select SWAP_IO_SPACE
270	select SYS_HAS_CPU_MIPS32_R1
271	select SYS_HAS_CPU_MIPS32_R2
272	select SYS_HAS_CPU_MIPS64_R1
273	select SYS_HAS_CPU_NEVADA
274	select SYS_HAS_CPU_RM7000
275	select SYS_SUPPORTS_32BIT_KERNEL
276	select SYS_SUPPORTS_64BIT_KERNEL
277	select SYS_SUPPORTS_BIG_ENDIAN
278	select SYS_SUPPORTS_LITTLE_ENDIAN
279	select SYS_SUPPORTS_MULTITHREADING if EXPERIMENTAL
280	select SYS_SUPPORTS_SMARTMIPS
281	select GENERIC_HARDIRQS_NO__DO_IRQ
282	help
283	  This enables support for the MIPS Technologies Atlas evaluation
284	  board.
285
286config MIPS_MALTA
287	bool "MIPS Malta board"
288	select ARCH_MAY_HAVE_PC_FDC
289	select BOOT_ELF32
290	select HAVE_STD_PC_SERIAL_PORT
291	select DMA_NONCOHERENT
292	select GENERIC_ISA_DMA
293	select IRQ_CPU
294	select HW_HAS_PCI
295	select I8259
296	select MIPS_BOARDS_GEN
297	select MIPS_BONITO64
298	select MIPS_CPU_SCACHE
299	select MIPS_GT64120
300	select MIPS_MSC
301	select SWAP_IO_SPACE
302	select SYS_HAS_CPU_MIPS32_R1
303	select SYS_HAS_CPU_MIPS32_R2
304	select SYS_HAS_CPU_MIPS64_R1
305	select SYS_HAS_CPU_NEVADA
306	select SYS_HAS_CPU_RM7000
307	select SYS_HAS_EARLY_PRINTK
308	select SYS_SUPPORTS_32BIT_KERNEL
309	select SYS_SUPPORTS_64BIT_KERNEL
310	select SYS_SUPPORTS_BIG_ENDIAN
311	select SYS_SUPPORTS_LITTLE_ENDIAN
312	select SYS_SUPPORTS_MULTITHREADING
313	select SYS_SUPPORTS_SMARTMIPS
314	help
315	  This enables support for the MIPS Technologies Malta evaluation
316	  board.
317
318config MIPS_SEAD
319	bool "MIPS SEAD board (EXPERIMENTAL)"
320	depends on EXPERIMENTAL
321	select IRQ_CPU
322	select DMA_NONCOHERENT
323	select SYS_HAS_EARLY_PRINTK
324	select MIPS_BOARDS_GEN
325	select SYS_HAS_CPU_MIPS32_R1
326	select SYS_HAS_CPU_MIPS32_R2
327	select SYS_HAS_CPU_MIPS64_R1
328	select SYS_SUPPORTS_32BIT_KERNEL
329	select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
330	select SYS_SUPPORTS_BIG_ENDIAN
331	select SYS_SUPPORTS_LITTLE_ENDIAN
332	select SYS_SUPPORTS_SMARTMIPS
333	help
334	  This enables support for the MIPS Technologies SEAD evaluation
335	  board.
336
337config WR_PPMC
338	bool "Wind River PPMC board"
339	select IRQ_CPU
340	select BOOT_ELF32
341	select DMA_NONCOHERENT
342	select HW_HAS_PCI
343	select MIPS_GT64120
344	select SWAP_IO_SPACE
345	select SYS_HAS_CPU_MIPS32_R1
346	select SYS_HAS_CPU_MIPS32_R2
347	select SYS_HAS_CPU_MIPS64_R1
348	select SYS_HAS_CPU_NEVADA
349	select SYS_HAS_CPU_RM7000
350	select SYS_SUPPORTS_32BIT_KERNEL
351	select SYS_SUPPORTS_64BIT_KERNEL
352	select SYS_SUPPORTS_BIG_ENDIAN
353	select SYS_SUPPORTS_LITTLE_ENDIAN
354	help
355	  This enables support for the Wind River MIPS32 4KC PPMC evaluation
356	  board, which is based on GT64120 bridge chip.
357
358config MIPS_SIM
359	bool 'MIPS simulator (MIPSsim)'
360	select DMA_NONCOHERENT
361	select SYS_HAS_EARLY_PRINTK
362	select IRQ_CPU
363	select SYS_HAS_CPU_MIPS32_R1
364	select SYS_HAS_CPU_MIPS32_R2
365	select SYS_HAS_EARLY_PRINTK
366	select SYS_SUPPORTS_32BIT_KERNEL
367	select SYS_SUPPORTS_BIG_ENDIAN
368	select SYS_SUPPORTS_LITTLE_ENDIAN
369	help
370	  This option enables support for MIPS Technologies MIPSsim software
371	  emulator.
372
373config MOMENCO_JAGUAR_ATX
374	bool "Momentum Jaguar board"
375	select BOOT_ELF32
376	select DMA_NONCOHERENT
377	select HW_HAS_PCI
378	select IRQ_CPU
379	select IRQ_CPU_RM7K
380	select IRQ_MV64340
381	select LIMITED_DMA
382	select PCI_MARVELL
383	select RM7000_CPU_SCACHE
384	select SWAP_IO_SPACE
385	select SYS_HAS_CPU_RM9000
386	select SYS_HAS_EARLY_PRINTK
387	select SYS_SUPPORTS_32BIT_KERNEL
388	select SYS_SUPPORTS_64BIT_KERNEL
389	select SYS_SUPPORTS_BIG_ENDIAN
390	select SYS_SUPPORTS_KGDB
391	help
392	  The Jaguar ATX is a MIPS-based Single Board Computer (SBC) made by
393	  Momentum Computer <http://www.momenco.com/>.
394
395config MOMENCO_OCELOT
396	bool "Momentum Ocelot board"
397	select DMA_NONCOHERENT
398	select HW_HAS_PCI
399	select IRQ_CPU
400	select IRQ_CPU_RM7K
401	select MIPS_GT64120
402	select RM7000_CPU_SCACHE
403	select SWAP_IO_SPACE
404	select SYS_HAS_CPU_RM7000
405	select SYS_SUPPORTS_32BIT_KERNEL
406	select SYS_SUPPORTS_64BIT_KERNEL
407	select SYS_SUPPORTS_BIG_ENDIAN
408	select SYS_SUPPORTS_KGDB
409	help
410	  The Ocelot is a MIPS-based Single Board Computer (SBC) made by
411	  Momentum Computer <http://www.momenco.com/>.
412
413config MOMENCO_OCELOT_3
414	bool "Momentum Ocelot-3 board"
415	select BOOT_ELF32
416	select DMA_NONCOHERENT
417	select HW_HAS_PCI
418	select IRQ_CPU
419	select IRQ_CPU_RM7K
420	select IRQ_MV64340
421	select PCI_MARVELL
422	select RM7000_CPU_SCACHE
423	select SWAP_IO_SPACE
424	select SYS_HAS_CPU_RM9000
425	select SYS_SUPPORTS_32BIT_KERNEL
426	select SYS_SUPPORTS_64BIT_KERNEL
427	select SYS_SUPPORTS_BIG_ENDIAN
428	help
429	  The Ocelot-3 is based off Discovery III System Controller and
430	  PMC-Sierra Rm79000 core.
431
432config MOMENCO_OCELOT_C
433	bool "Momentum Ocelot-C board"
434	select DMA_NONCOHERENT
435	select HW_HAS_PCI
436	select IRQ_CPU
437	select IRQ_MV64340
438	select PCI_MARVELL
439	select RM7000_CPU_SCACHE
440	select SWAP_IO_SPACE
441	select SYS_HAS_CPU_RM7000
442	select SYS_SUPPORTS_32BIT_KERNEL
443	select SYS_SUPPORTS_64BIT_KERNEL
444	select SYS_SUPPORTS_BIG_ENDIAN
445	select GENERIC_HARDIRQS_NO__DO_IRQ
446	help
447	  The Ocelot is a MIPS-based Single Board Computer (SBC) made by
448	  Momentum Computer <http://www.momenco.com/>.
449
450config MOMENCO_OCELOT_G
451	bool "Momentum Ocelot-G board"
452	select DMA_NONCOHERENT
453	select HW_HAS_PCI
454	select IRQ_CPU
455	select IRQ_CPU_RM7K
456	select PCI_MARVELL
457	select RM7000_CPU_SCACHE
458	select SWAP_IO_SPACE
459	select SYS_HAS_CPU_RM7000
460	select SYS_SUPPORTS_32BIT_KERNEL
461	select SYS_SUPPORTS_64BIT_KERNEL if BROKEN
462	select SYS_SUPPORTS_BIG_ENDIAN
463	help
464	  The Ocelot is a MIPS-based Single Board Computer (SBC) made by
465	  Momentum Computer <http://www.momenco.com/>.
466
467config MIPS_XXS1500
468	bool "MyCable XXS1500 board"
469	select DMA_NONCOHERENT
470	select SOC_AU1500
471	select SYS_SUPPORTS_LITTLE_ENDIAN
472
473config PNX8550_V2PCI
474	bool "Philips PNX8550 based Viper2-PCI board"
475	select PNX8550
476	select SYS_SUPPORTS_LITTLE_ENDIAN
477
478config PNX8550_JBS
479	bool "Philips PNX8550 based JBS board"
480	select PNX8550
481	select SYS_SUPPORTS_LITTLE_ENDIAN
482
483config PNX8550_STB810
484	bool "Support for Philips PNX8550 based STB810 board"
485	select PNX8550
486	select SYS_SUPPORTS_LITTLE_ENDIAN
487
488config DDB5477
489	bool "NEC DDB Vrc-5477"
490	select DDB5XXX_COMMON
491	select DMA_NONCOHERENT
492	select HW_HAS_PCI
493	select I8259
494	select IRQ_CPU
495	select SYS_HAS_CPU_R5432
496	select SYS_SUPPORTS_32BIT_KERNEL
497	select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
498	select SYS_SUPPORTS_KGDB
499	select SYS_SUPPORTS_KGDB
500	select SYS_SUPPORTS_LITTLE_ENDIAN
501	help
502	  This enables support for the R5432-based NEC DDB Vrc-5477,
503	  or Rockhopper/SolutionGear boards with R5432/R5500 CPUs.
504
505	  Features : kernel debugging, serial terminal, NFS root fs, on-board
506	  ether port USB, AC97, PCI, etc.
507
508config MACH_VR41XX
509	bool "NEC VR41XX-based machines"
510	select SYS_HAS_CPU_VR41XX
511	select SYS_SUPPORTS_32BIT_KERNEL
512	select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
513	select GENERIC_HARDIRQS_NO__DO_IRQ
514
515config PMC_YOSEMITE
516	bool "PMC-Sierra Yosemite eval board"
517	select DMA_COHERENT
518	select HW_HAS_PCI
519	select IRQ_CPU
520	select IRQ_CPU_RM7K
521	select IRQ_CPU_RM9K
522	select SWAP_IO_SPACE
523	select SYS_HAS_CPU_RM9000
524	select SYS_HAS_EARLY_PRINTK
525	select SYS_SUPPORTS_32BIT_KERNEL
526	select SYS_SUPPORTS_64BIT_KERNEL
527	select SYS_SUPPORTS_BIG_ENDIAN
528	select SYS_SUPPORTS_HIGHMEM
529	select SYS_SUPPORTS_KGDB
530	select SYS_SUPPORTS_SMP
531	help
532	  Yosemite is an evaluation board for the RM9000x2 processor
533	  manufactured by PMC-Sierra.
534
535config QEMU
536	bool "Qemu"
537	select DMA_COHERENT
538	select GENERIC_ISA_DMA
539	select HAVE_STD_PC_SERIAL_PORT
540	select I8253
541	select I8259
542	select ISA
543	select SWAP_IO_SPACE
544	select SYS_HAS_CPU_MIPS32_R1
545	select SYS_SUPPORTS_32BIT_KERNEL
546	select SYS_SUPPORTS_BIG_ENDIAN
547	select SYS_SUPPORTS_LITTLE_ENDIAN
548	select ARCH_SPARSEMEM_ENABLE
549	select GENERIC_HARDIRQS_NO__DO_IRQ
550	help
551	  Qemu is a software emulator which among other architectures also
552	  can simulate a MIPS32 4Kc system.  This patch adds support for the
553	  system architecture that currently is being simulated by Qemu.  It
554	  will eventually be removed again when Qemu has the capability to
555	  simulate actual MIPS hardware platforms.  More information on Qemu
556	  can be found at http://www.linux-mips.org/wiki/Qemu.
557
558config MARKEINS
559	bool "Support for NEC EMMA2RH Mark-eins"
560	select DMA_NONCOHERENT
561	select HW_HAS_PCI
562	select IRQ_CPU
563	select SWAP_IO_SPACE
564	select SYS_SUPPORTS_32BIT_KERNEL
565	select SYS_SUPPORTS_BIG_ENDIAN
566	select SYS_SUPPORTS_LITTLE_ENDIAN
567	select SYS_HAS_CPU_R5000
568	help
569	  This enables support for the R5432-based NEC Mark-eins
570	  boards with R5500 CPU.
571
572config SGI_IP22
573	bool "SGI IP22 (Indy/Indigo2)"
574	select ARC
575	select ARC32
576	select BOOT_ELF32
577	select DMA_NONCOHERENT
578	select HW_HAS_EISA
579	select IP22_CPU_SCACHE
580	select IRQ_CPU
581	select GENERIC_ISA_DMA_SUPPORT_BROKEN
582	select SWAP_IO_SPACE
583	select SYS_HAS_CPU_R4X00
584	select SYS_HAS_CPU_R5000
585	select SYS_HAS_EARLY_PRINTK
586	select SYS_SUPPORTS_32BIT_KERNEL
587	select SYS_SUPPORTS_64BIT_KERNEL
588	select SYS_SUPPORTS_BIG_ENDIAN
589	help
590	  This are the SGI Indy, Challenge S and Indigo2, as well as certain
591	  OEM variants like the Tandem CMN B006S. To compile a Linux kernel
592	  that runs on these, say Y here.
593
594config SGI_IP27
595	bool "SGI IP27 (Origin200/2000)"
596	select ARC
597	select ARC64
598	select BOOT_ELF64
599	select DMA_IP27
600	select SYS_HAS_EARLY_PRINTK
601	select HW_HAS_PCI
602	select NR_CPUS_DEFAULT_64
603	select PCI_DOMAINS
604	select SYS_HAS_CPU_R10000
605	select SYS_SUPPORTS_64BIT_KERNEL
606	select SYS_SUPPORTS_BIG_ENDIAN
607	select SYS_SUPPORTS_KGDB
608	select SYS_SUPPORTS_NUMA
609	select SYS_SUPPORTS_SMP
610	select GENERIC_HARDIRQS_NO__DO_IRQ
611	help
612	  This are the SGI Origin 200, Origin 2000 and Onyx 2 Graphics
613	  workstations.  To compile a Linux kernel that runs on these, say Y
614	  here.
615
616config SGI_IP32
617	bool "SGI IP32 (O2) (EXPERIMENTAL)"
618	depends on EXPERIMENTAL
619	select ARC
620	select ARC32
621	select BOOT_ELF32
622	select DMA_NONCOHERENT
623	select HW_HAS_PCI
624	select R5000_CPU_SCACHE
625	select RM7000_CPU_SCACHE
626	select SYS_HAS_CPU_R5000
627	select SYS_HAS_CPU_R10000 if BROKEN
628	select SYS_HAS_CPU_RM7000
629	select SYS_HAS_CPU_NEVADA
630	select SYS_SUPPORTS_64BIT_KERNEL
631	select SYS_SUPPORTS_BIG_ENDIAN
632	help
633	  If you want this kernel to run on SGI O2 workstation, say Y here.
634
635config SIBYTE_BIGSUR
636	bool "Sibyte BCM91480B-BigSur"
637	select BOOT_ELF32
638	select DMA_COHERENT
639	select NR_CPUS_DEFAULT_4
640	select PCI_DOMAINS
641	select SIBYTE_BCM1x80
642	select SWAP_IO_SPACE
643	select SYS_HAS_CPU_SB1
644	select SYS_SUPPORTS_BIG_ENDIAN
645	select SYS_SUPPORTS_LITTLE_ENDIAN
646
647config SIBYTE_SWARM
648	bool "Sibyte BCM91250A-SWARM"
649	select BOOT_ELF32
650	select DMA_COHERENT
651	select NR_CPUS_DEFAULT_2
652	select SIBYTE_SB1250
653	select SWAP_IO_SPACE
654	select SYS_HAS_CPU_SB1
655	select SYS_SUPPORTS_BIG_ENDIAN
656	select SYS_SUPPORTS_HIGHMEM
657	select SYS_SUPPORTS_KGDB
658	select SYS_SUPPORTS_LITTLE_ENDIAN
659
660config SIBYTE_SENTOSA
661	bool "Sibyte BCM91250E-Sentosa"
662	depends on EXPERIMENTAL
663	select BOOT_ELF32
664	select DMA_COHERENT
665	select NR_CPUS_DEFAULT_2
666	select SIBYTE_SB1250
667	select SWAP_IO_SPACE
668	select SYS_HAS_CPU_SB1
669	select SYS_SUPPORTS_BIG_ENDIAN
670	select SYS_SUPPORTS_LITTLE_ENDIAN
671
672config SIBYTE_RHONE
673	bool "Sibyte BCM91125E-Rhone"
674	depends on EXPERIMENTAL
675	select BOOT_ELF32
676	select DMA_COHERENT
677	select SIBYTE_BCM1125H
678	select SWAP_IO_SPACE
679	select SYS_HAS_CPU_SB1
680	select SYS_SUPPORTS_BIG_ENDIAN
681	select SYS_SUPPORTS_LITTLE_ENDIAN
682
683config SIBYTE_CARMEL
684	bool "Sibyte BCM91120x-Carmel"
685	depends on EXPERIMENTAL
686	select BOOT_ELF32
687	select DMA_COHERENT
688	select SIBYTE_BCM1120
689	select SWAP_IO_SPACE
690	select SYS_HAS_CPU_SB1
691	select SYS_SUPPORTS_BIG_ENDIAN
692	select SYS_SUPPORTS_LITTLE_ENDIAN
693
694config SIBYTE_PTSWARM
695	bool "Sibyte BCM91250PT-PTSWARM"
696	depends on EXPERIMENTAL
697	select BOOT_ELF32
698	select DMA_COHERENT
699	select NR_CPUS_DEFAULT_2
700	select SIBYTE_SB1250
701	select SWAP_IO_SPACE
702	select SYS_HAS_CPU_SB1
703	select SYS_SUPPORTS_BIG_ENDIAN
704	select SYS_SUPPORTS_HIGHMEM
705	select SYS_SUPPORTS_LITTLE_ENDIAN
706
707config SIBYTE_LITTLESUR
708	bool "Sibyte BCM91250C2-LittleSur"
709	depends on EXPERIMENTAL
710	select BOOT_ELF32
711	select DMA_COHERENT
712	select NR_CPUS_DEFAULT_2
713	select SIBYTE_SB1250
714	select SWAP_IO_SPACE
715	select SYS_HAS_CPU_SB1
716	select SYS_SUPPORTS_BIG_ENDIAN
717	select SYS_SUPPORTS_HIGHMEM
718	select SYS_SUPPORTS_LITTLE_ENDIAN
719
720config SIBYTE_CRHINE
721	bool "Sibyte BCM91120C-CRhine"
722	depends on EXPERIMENTAL
723	select BOOT_ELF32
724	select DMA_COHERENT
725	select SIBYTE_BCM1120
726	select SWAP_IO_SPACE
727	select SYS_HAS_CPU_SB1
728	select SYS_SUPPORTS_BIG_ENDIAN
729	select SYS_SUPPORTS_LITTLE_ENDIAN
730
731config SIBYTE_CRHONE
732	bool "Sibyte BCM91125C-CRhone"
733	depends on EXPERIMENTAL
734	select BOOT_ELF32
735	select DMA_COHERENT
736	select SIBYTE_BCM1125
737	select SWAP_IO_SPACE
738	select SYS_HAS_CPU_SB1
739	select SYS_SUPPORTS_BIG_ENDIAN
740	select SYS_SUPPORTS_HIGHMEM
741	select SYS_SUPPORTS_LITTLE_ENDIAN
742
743config SNI_RM
744	bool "SNI RM200/300/400"
745	select ARC if CPU_LITTLE_ENDIAN
746	select ARC32 if CPU_LITTLE_ENDIAN
747	select ARCH_MAY_HAVE_PC_FDC
748	select BOOT_ELF32
749	select DMA_NONCOHERENT
750	select GENERIC_ISA_DMA
751	select HW_HAS_EISA
752	select HW_HAS_PCI
753	select IRQ_CPU
754	select I8253
755	select I8259
756	select ISA
757	select SWAP_IO_SPACE if CPU_BIG_ENDIAN
758	select SYS_HAS_CPU_R4X00
759	select SYS_HAS_CPU_R5000
760	select SYS_HAS_CPU_R10000
761	select R5000_CPU_SCACHE
762	select SYS_HAS_EARLY_PRINTK
763	select SYS_SUPPORTS_32BIT_KERNEL
764	select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
765	select SYS_SUPPORTS_BIG_ENDIAN
766	select SYS_SUPPORTS_HIGHMEM
767	select SYS_SUPPORTS_LITTLE_ENDIAN
768	help
769	  The SNI RM200/300/400 are MIPS-based machines manufactured by
770	  Siemens Nixdorf Informationssysteme (SNI), parent company of Pyramid
771	  Technology and now in turn merged with Fujitsu.  Say Y here to
772	  support this machine type.
773
774config TOSHIBA_JMR3927
775	bool "Toshiba JMR-TX3927 board"
776	select DMA_NONCOHERENT
777	select HW_HAS_PCI
778	select MIPS_TX3927
779	select SWAP_IO_SPACE
780	select SYS_HAS_CPU_TX39XX
781	select SYS_SUPPORTS_32BIT_KERNEL
782	select SYS_SUPPORTS_LITTLE_ENDIAN
783	select SYS_SUPPORTS_BIG_ENDIAN
784	select TOSHIBA_BOARDS
785
786config TOSHIBA_RBTX4927
787	bool "Toshiba TBTX49[23]7 board"
788	select DMA_NONCOHERENT
789	select HAS_TXX9_SERIAL
790	select HW_HAS_PCI
791	select I8259
792	select ISA
793	select SWAP_IO_SPACE
794	select SYS_HAS_CPU_TX49XX
795	select SYS_SUPPORTS_32BIT_KERNEL
796	select SYS_SUPPORTS_64BIT_KERNEL
797	select SYS_SUPPORTS_LITTLE_ENDIAN
798	select SYS_SUPPORTS_BIG_ENDIAN
799	select SYS_SUPPORTS_KGDB
800	select TOSHIBA_BOARDS
801	select GENERIC_HARDIRQS_NO__DO_IRQ
802	help
803	  This Toshiba board is based on the TX4927 processor. Say Y here to
804	  support this machine type
805
806config TOSHIBA_RBTX4938
807	bool "Toshiba RBTX4938 board"
808	select HAVE_STD_PC_SERIAL_PORT
809	select DMA_NONCOHERENT
810	select GENERIC_ISA_DMA
811	select HAS_TXX9_SERIAL
812	select HW_HAS_PCI
813	select I8259
814	select ISA
815	select SWAP_IO_SPACE
816	select SYS_HAS_CPU_TX49XX
817	select SYS_SUPPORTS_32BIT_KERNEL
818	select SYS_SUPPORTS_LITTLE_ENDIAN
819	select SYS_SUPPORTS_BIG_ENDIAN
820	select SYS_SUPPORTS_KGDB
821	select TOSHIBA_BOARDS
822	select GENERIC_HARDIRQS_NO__DO_IRQ
823	help
824	  This Toshiba board is based on the TX4938 processor. Say Y here to
825	  support this machine type
826
827endchoice
828
829source "arch/mips/ddb5xxx/Kconfig"
830source "arch/mips/gt64120/ev64120/Kconfig"
831source "arch/mips/jazz/Kconfig"
832source "arch/mips/lasat/Kconfig"
833source "arch/mips/momentum/Kconfig"
834source "arch/mips/pmc-sierra/Kconfig"
835source "arch/mips/sgi-ip27/Kconfig"
836source "arch/mips/sibyte/Kconfig"
837source "arch/mips/tx4927/Kconfig"
838source "arch/mips/tx4938/Kconfig"
839source "arch/mips/vr41xx/Kconfig"
840source "arch/mips/philips/pnx8550/common/Kconfig"
841
842endmenu
843
844config RWSEM_GENERIC_SPINLOCK
845	bool
846	default y
847
848config RWSEM_XCHGADD_ALGORITHM
849	bool
850
851config ARCH_HAS_ILOG2_U32
852	bool
853	default n
854
855config ARCH_HAS_ILOG2_U64
856	bool
857	default n
858
859config GENERIC_FIND_NEXT_BIT
860	bool
861	default y
862
863config GENERIC_HWEIGHT
864	bool
865	default y
866
867config GENERIC_CALIBRATE_DELAY
868	bool
869	default y
870
871config GENERIC_TIME
872	bool
873	default y
874
875config SCHED_NO_NO_OMIT_FRAME_POINTER
876	bool
877	default y
878
879config GENERIC_HARDIRQS_NO__DO_IRQ
880	bool
881	default n
882
883#
884# Select some configuration options automatically based on user selections.
885#
886config ARC
887	bool
888
889config ARCH_MAY_HAVE_PC_FDC
890	bool
891
892config DMA_COHERENT
893	bool
894
895config DMA_IP27
896	bool
897
898config DMA_IP32
899	bool
900	select DMA_NEED_PCI_MAP_STATE
901
902config DMA_NONCOHERENT
903	bool
904	select DMA_NEED_PCI_MAP_STATE
905
906config DMA_NEED_PCI_MAP_STATE
907	bool
908
909config EARLY_PRINTK
910	bool "Early printk" if EMBEDDED && DEBUG_KERNEL
911	depends on SYS_HAS_EARLY_PRINTK
912	default y
913	help
914	  This option enables special console drivers which allow the kernel
915	  to print messages very early in the bootup process.
916
917	  This is useful for kernel debugging when your machine crashes very
918	  early before the console code is initialized. For normal operation
919	  it is not recommended because it looks on some machines ugly and
920	  oesn't cooperate with an X server. You should normally N here,
921	  unless you want to debug such a crash.
922
923config SYS_HAS_EARLY_PRINTK
924	bool
925
926config GENERIC_ISA_DMA
927	bool
928
929config I8259
930	bool
931
932config LIMITED_DMA
933	bool
934	select HIGHMEM
935	select SYS_SUPPORTS_HIGHMEM
936
937config MIPS_BONITO64
938	bool
939
940config MIPS_MSC
941	bool
942
943config MIPS_NILE4
944	bool
945
946config MIPS_DISABLE_OBSOLETE_IDE
947	bool
948
949config GENERIC_ISA_DMA_SUPPORT_BROKEN
950	bool
951
952#
953# Endianess selection.  Sufficiently obscure so many users don't know what to
954# answer,so we try hard to limit the available choices.  Also the use of a
955# choice statement should be more obvious to the user.
956#
957choice
958	prompt "Endianess selection"
959	help
960	  Some MIPS machines can be configured for either little or big endian
961	  byte order. These modes require different kernels and a different
962	  Linux distribution.  In general there is one preferred byteorder for a
963	  particular system but some systems are just as commonly used in the
964	  one or the other endianess.
965
966config CPU_BIG_ENDIAN
967	bool "Big endian"
968	depends on SYS_SUPPORTS_BIG_ENDIAN
969
970config CPU_LITTLE_ENDIAN
971	bool "Little endian"
972	depends on SYS_SUPPORTS_LITTLE_ENDIAN
973	help
974
975endchoice
976
977config SYS_SUPPORTS_APM_EMULATION
978	bool
979
980config SYS_SUPPORTS_BIG_ENDIAN
981	bool
982
983config SYS_SUPPORTS_LITTLE_ENDIAN
984	bool
985
986config IRQ_CPU
987	bool
988
989config IRQ_CPU_RM7K
990	bool
991
992config IRQ_CPU_RM9K
993	bool
994
995config IRQ_MV64340
996	bool
997
998config DDB5XXX_COMMON
999	bool
1000	select SYS_SUPPORTS_KGDB
1001
1002config MIPS_BOARDS_GEN
1003	bool
1004
1005config MIPS_GT64111
1006	bool
1007
1008config MIPS_GT64120
1009	bool
1010
1011config MIPS_TX3927
1012	bool
1013	select HAS_TXX9_SERIAL
1014
1015config MIPS_RM9122
1016	bool
1017	select SERIAL_RM9000
1018	select GPI_RM9000
1019	select WDT_RM9000
1020
1021config PCI_MARVELL
1022	bool
1023
1024config SOC_AU1000
1025	bool
1026	select SOC_AU1X00
1027
1028config SOC_AU1100
1029	bool
1030	select SOC_AU1X00
1031
1032config SOC_AU1500
1033	bool
1034	select SOC_AU1X00
1035
1036config SOC_AU1550
1037	bool
1038	select SOC_AU1X00
1039
1040config SOC_AU1200
1041	bool
1042	select SOC_AU1X00
1043
1044config SOC_AU1X00
1045	bool
1046	select SYS_HAS_CPU_MIPS32_R1
1047	select SYS_SUPPORTS_32BIT_KERNEL
1048	select SYS_SUPPORTS_APM_EMULATION
1049	select SYS_SUPPORTS_KGDB
1050
1051config PNX8550
1052	bool
1053	select SOC_PNX8550
1054
1055config SOC_PNX8550
1056	bool
1057	select DMA_NONCOHERENT
1058	select HW_HAS_PCI
1059	select SYS_HAS_CPU_MIPS32_R1
1060	select SYS_HAS_EARLY_PRINTK
1061	select SYS_SUPPORTS_32BIT_KERNEL
1062	select GENERIC_HARDIRQS_NO__DO_IRQ
1063	select SYS_SUPPORTS_KGDB
1064
1065config SWAP_IO_SPACE
1066	bool
1067
1068config EMMA2RH
1069	bool
1070	depends on MARKEINS
1071	default y
1072
1073config SERIAL_RM9000
1074	bool
1075
1076config GPI_RM9000
1077	bool
1078
1079config WDT_RM9000
1080	bool
1081
1082#
1083# Unfortunately not all GT64120 systems run the chip at the same clock.
1084# As the user for the clock rate and try to minimize the available options.
1085#
1086choice
1087	prompt "Galileo Chip Clock"
1088	#default SYSCLK_83 if MIPS_EV64120
1089	depends on MIPS_EV64120 || MOMENCO_OCELOT || MOMENCO_OCELOT_G
1090	default SYSCLK_83 if MIPS_EV64120
1091	default SYSCLK_100 if MOMENCO_OCELOT || MOMENCO_OCELOT_G
1092
1093config SYSCLK_75
1094	bool "75" if MIPS_EV64120
1095
1096config SYSCLK_83
1097	bool "83.3" if MIPS_EV64120
1098
1099config SYSCLK_100
1100	bool "100" if MIPS_EV64120 || MOMENCO_OCELOT || MOMENCO_OCELOT_G
1101
1102endchoice
1103
1104config ARC32
1105	bool
1106
1107config BOOT_ELF32
1108	bool
1109
1110config MIPS_L1_CACHE_SHIFT
1111	int
1112	default "4" if MACH_DECSTATION || SNI_RM
1113	default "7" if SGI_IP27
1114	default "5"
1115
1116config HAVE_STD_PC_SERIAL_PORT
1117	bool
1118
1119config ARC_CONSOLE
1120	bool "ARC console support"
1121	depends on SGI_IP22 || (SNI_RM && CPU_LITTLE_ENDIAN)
1122
1123config ARC_MEMORY
1124	bool
1125	depends on MACH_JAZZ || SNI_RM || SGI_IP32
1126	default y
1127
1128config ARC_PROMLIB
1129	bool
1130	depends on MACH_JAZZ || SNI_RM || SGI_IP22 || SGI_IP32
1131	default y
1132
1133config ARC64
1134	bool
1135
1136config BOOT_ELF64
1137	bool
1138
1139config TOSHIBA_BOARDS
1140	bool
1141
1142menu "CPU selection"
1143
1144choice
1145	prompt "CPU type"
1146	default CPU_R4X00
1147
1148config CPU_MIPS32_R1
1149	bool "MIPS32 Release 1"
1150	depends on SYS_HAS_CPU_MIPS32_R1
1151	select CPU_HAS_LLSC
1152	select CPU_HAS_PREFETCH
1153	select CPU_SUPPORTS_32BIT_KERNEL
1154	select CPU_SUPPORTS_HIGHMEM
1155	help
1156	  Choose this option to build a kernel for release 1 or later of the
1157	  MIPS32 architecture.  Most modern embedded systems with a 32-bit
1158	  MIPS processor are based on a MIPS32 processor.  If you know the
1159	  specific type of processor in your system, choose those that one
1160	  otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
1161	  Release 2 of the MIPS32 architecture is available since several
1162	  years so chances are you even have a MIPS32 Release 2 processor
1163	  in which case you should choose CPU_MIPS32_R2 instead for better
1164	  performance.
1165
1166config CPU_MIPS32_R2
1167	bool "MIPS32 Release 2"
1168	depends on SYS_HAS_CPU_MIPS32_R2
1169	select CPU_HAS_LLSC
1170	select CPU_HAS_PREFETCH
1171	select CPU_SUPPORTS_32BIT_KERNEL
1172	select CPU_SUPPORTS_HIGHMEM
1173	help
1174	  Choose this option to build a kernel for release 2 or later of the
1175	  MIPS32 architecture.  Most modern embedded systems with a 32-bit
1176	  MIPS processor are based on a MIPS32 processor.  If you know the
1177	  specific type of processor in your system, choose those that one
1178	  otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
1179
1180config CPU_MIPS64_R1
1181	bool "MIPS64 Release 1"
1182	depends on SYS_HAS_CPU_MIPS64_R1
1183	select CPU_HAS_LLSC
1184	select CPU_HAS_PREFETCH
1185	select CPU_SUPPORTS_32BIT_KERNEL
1186	select CPU_SUPPORTS_64BIT_KERNEL
1187	select CPU_SUPPORTS_HIGHMEM
1188	help
1189	  Choose this option to build a kernel for release 1 or later of the
1190	  MIPS64 architecture.  Many modern embedded systems with a 64-bit
1191	  MIPS processor are based on a MIPS64 processor.  If you know the
1192	  specific type of processor in your system, choose those that one
1193	  otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
1194	  Release 2 of the MIPS64 architecture is available since several
1195	  years so chances are you even have a MIPS64 Release 2 processor
1196	  in which case you should choose CPU_MIPS64_R2 instead for better
1197	  performance.
1198
1199config CPU_MIPS64_R2
1200	bool "MIPS64 Release 2"
1201	depends on SYS_HAS_CPU_MIPS64_R2
1202	select CPU_HAS_LLSC
1203	select CPU_HAS_PREFETCH
1204	select CPU_SUPPORTS_32BIT_KERNEL
1205	select CPU_SUPPORTS_64BIT_KERNEL
1206	select CPU_SUPPORTS_HIGHMEM
1207	help
1208	  Choose this option to build a kernel for release 2 or later of the
1209	  MIPS64 architecture.  Many modern embedded systems with a 64-bit
1210	  MIPS processor are based on a MIPS64 processor.  If you know the
1211	  specific type of processor in your system, choose those that one
1212	  otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
1213
1214config CPU_R3000
1215	bool "R3000"
1216	depends on SYS_HAS_CPU_R3000
1217	select CPU_HAS_WB
1218	select CPU_SUPPORTS_32BIT_KERNEL
1219	select CPU_SUPPORTS_HIGHMEM
1220	help
1221	  Please make sure to pick the right CPU type. Linux/MIPS is not
1222	  designed to be generic, i.e. Kernels compiled for R3000 CPUs will
1223	  *not* work on R4000 machines and vice versa.  However, since most
1224	  of the supported machines have an R4000 (or similar) CPU, R4x00
1225	  might be a safe bet.  If the resulting kernel does not work,
1226	  try to recompile with R3000.
1227
1228config CPU_TX39XX
1229	bool "R39XX"
1230	depends on SYS_HAS_CPU_TX39XX
1231	select CPU_SUPPORTS_32BIT_KERNEL
1232
1233config CPU_VR41XX
1234	bool "R41xx"
1235	depends on SYS_HAS_CPU_VR41XX
1236	select CPU_SUPPORTS_32BIT_KERNEL
1237	select CPU_SUPPORTS_64BIT_KERNEL
1238	help
1239	  The options selects support for the NEC VR4100 series of processors.
1240	  Only choose this option if you have one of these processors as a
1241	  kernel built with this option will not run on any other type of
1242	  processor or vice versa.
1243
1244config CPU_R4300
1245	bool "R4300"
1246	depends on SYS_HAS_CPU_R4300
1247	select CPU_HAS_LLSC
1248	select CPU_SUPPORTS_32BIT_KERNEL
1249	select CPU_SUPPORTS_64BIT_KERNEL
1250	help
1251	  MIPS Technologies R4300-series processors.
1252
1253config CPU_R4X00
1254	bool "R4x00"
1255	depends on SYS_HAS_CPU_R4X00
1256	select CPU_HAS_LLSC
1257	select CPU_SUPPORTS_32BIT_KERNEL
1258	select CPU_SUPPORTS_64BIT_KERNEL
1259	help
1260	  MIPS Technologies R4000-series processors other than 4300, including
1261	  the R4000, R4400, R4600, and 4700.
1262
1263config CPU_TX49XX
1264	bool "R49XX"
1265	depends on SYS_HAS_CPU_TX49XX
1266	select CPU_HAS_LLSC
1267	select CPU_HAS_PREFETCH
1268	select CPU_SUPPORTS_32BIT_KERNEL
1269	select CPU_SUPPORTS_64BIT_KERNEL
1270
1271config CPU_R5000
1272	bool "R5000"
1273	depends on SYS_HAS_CPU_R5000
1274	select CPU_HAS_LLSC
1275	select CPU_SUPPORTS_32BIT_KERNEL
1276	select CPU_SUPPORTS_64BIT_KERNEL
1277	help
1278	  MIPS Technologies R5000-series processors other than the Nevada.
1279
1280config CPU_R5432
1281	bool "R5432"
1282	depends on SYS_HAS_CPU_R5432
1283	select CPU_HAS_LLSC
1284	select CPU_SUPPORTS_32BIT_KERNEL
1285	select CPU_SUPPORTS_64BIT_KERNEL
1286
1287config CPU_R6000
1288	bool "R6000"
1289	depends on EXPERIMENTAL
1290	select CPU_HAS_LLSC
1291	depends on SYS_HAS_CPU_R6000
1292	select CPU_SUPPORTS_32BIT_KERNEL
1293	help
1294	  MIPS Technologies R6000 and R6000A series processors.  Note these
1295	  processors are extremely rare and the support for them is incomplete.
1296
1297config CPU_NEVADA
1298	bool "RM52xx"
1299	depends on SYS_HAS_CPU_NEVADA
1300	select CPU_HAS_LLSC
1301	select CPU_SUPPORTS_32BIT_KERNEL
1302	select CPU_SUPPORTS_64BIT_KERNEL
1303	help
1304	  QED / PMC-Sierra RM52xx-series ("Nevada") processors.
1305
1306config CPU_R8000
1307	bool "R8000"
1308	depends on EXPERIMENTAL
1309	depends on SYS_HAS_CPU_R8000
1310	select CPU_HAS_LLSC
1311	select CPU_HAS_PREFETCH
1312	select CPU_SUPPORTS_64BIT_KERNEL
1313	help
1314	  MIPS Technologies R8000 processors.  Note these processors are
1315	  uncommon and the support for them is incomplete.
1316
1317config CPU_R10000
1318	bool "R10000"
1319	depends on SYS_HAS_CPU_R10000
1320	select CPU_HAS_LLSC
1321	select CPU_HAS_PREFETCH
1322	select CPU_SUPPORTS_32BIT_KERNEL
1323	select CPU_SUPPORTS_64BIT_KERNEL
1324	select CPU_SUPPORTS_HIGHMEM
1325	help
1326	  MIPS Technologies R10000-series processors.
1327
1328config CPU_RM7000
1329	bool "RM7000"
1330	depends on SYS_HAS_CPU_RM7000
1331	select CPU_HAS_LLSC
1332	select CPU_HAS_PREFETCH
1333	select CPU_SUPPORTS_32BIT_KERNEL
1334	select CPU_SUPPORTS_64BIT_KERNEL
1335	select CPU_SUPPORTS_HIGHMEM
1336
1337config CPU_RM9000
1338	bool "RM9000"
1339	depends on SYS_HAS_CPU_RM9000
1340	select CPU_HAS_LLSC
1341	select CPU_HAS_PREFETCH
1342	select CPU_SUPPORTS_32BIT_KERNEL
1343	select CPU_SUPPORTS_64BIT_KERNEL
1344	select CPU_SUPPORTS_HIGHMEM
1345	select WEAK_ORDERING
1346
1347config CPU_SB1
1348	bool "SB1"
1349	depends on SYS_HAS_CPU_SB1
1350	select CPU_HAS_LLSC
1351	select CPU_SUPPORTS_32BIT_KERNEL
1352	select CPU_SUPPORTS_64BIT_KERNEL
1353	select CPU_SUPPORTS_HIGHMEM
1354	select WEAK_ORDERING
1355
1356endchoice
1357
1358config SYS_HAS_CPU_MIPS32_R1
1359	bool
1360
1361config SYS_HAS_CPU_MIPS32_R2
1362	bool
1363
1364config SYS_HAS_CPU_MIPS64_R1
1365	bool
1366
1367config SYS_HAS_CPU_MIPS64_R2
1368	bool
1369
1370config SYS_HAS_CPU_R3000
1371	bool
1372
1373config SYS_HAS_CPU_TX39XX
1374	bool
1375
1376config SYS_HAS_CPU_VR41XX
1377	bool
1378
1379config SYS_HAS_CPU_R4300
1380	bool
1381
1382config SYS_HAS_CPU_R4X00
1383	bool
1384
1385config SYS_HAS_CPU_TX49XX
1386	bool
1387
1388config SYS_HAS_CPU_R5000
1389	bool
1390
1391config SYS_HAS_CPU_R5432
1392	bool
1393
1394config SYS_HAS_CPU_R6000
1395	bool
1396
1397config SYS_HAS_CPU_NEVADA
1398	bool
1399
1400config SYS_HAS_CPU_R8000
1401	bool
1402
1403config SYS_HAS_CPU_R10000
1404	bool
1405
1406config SYS_HAS_CPU_RM7000
1407	bool
1408
1409config SYS_HAS_CPU_RM9000
1410	bool
1411
1412config SYS_HAS_CPU_SB1
1413	bool
1414
1415config WEAK_ORDERING
1416	bool
1417endmenu
1418
1419#
1420# These two indicate any level of the MIPS32 and MIPS64 architecture
1421#
1422config CPU_MIPS32
1423	bool
1424	default y if CPU_MIPS32_R1 || CPU_MIPS32_R2
1425
1426config CPU_MIPS64
1427	bool
1428	default y if CPU_MIPS64_R1 || CPU_MIPS64_R2
1429
1430#
1431# These two indicate the revision of the architecture, either Release 1 or Release 2
1432#
1433config CPU_MIPSR1
1434	bool
1435	default y if CPU_MIPS32_R1 || CPU_MIPS64_R1
1436
1437config CPU_MIPSR2
1438	bool
1439	default y if CPU_MIPS32_R2 || CPU_MIPS64_R2
1440
1441config SYS_SUPPORTS_32BIT_KERNEL
1442	bool
1443config SYS_SUPPORTS_64BIT_KERNEL
1444	bool
1445config CPU_SUPPORTS_32BIT_KERNEL
1446	bool
1447config CPU_SUPPORTS_64BIT_KERNEL
1448	bool
1449
1450menu "Kernel type"
1451
1452choice
1453
1454	prompt "Kernel code model"
1455	help
1456	  You should only select this option if you have a workload that
1457	  actually benefits from 64-bit processing or if your machine has
1458	  large memory.  You will only be presented a single option in this
1459	  menu if your system does not support both 32-bit and 64-bit kernels.
1460
1461config 32BIT
1462	bool "32-bit kernel"
1463	depends on CPU_SUPPORTS_32BIT_KERNEL && SYS_SUPPORTS_32BIT_KERNEL
1464	select TRAD_SIGNALS
1465	help
1466	  Select this option if you want to build a 32-bit kernel.
1467config 64BIT
1468	bool "64-bit kernel"
1469	depends on CPU_SUPPORTS_64BIT_KERNEL && SYS_SUPPORTS_64BIT_KERNEL
1470	help
1471	  Select this option if you want to build a 64-bit kernel.
1472
1473endchoice
1474
1475choice
1476	prompt "Kernel page size"
1477	default PAGE_SIZE_4KB
1478
1479config PAGE_SIZE_4KB
1480	bool "4kB"
1481	help
1482	 This option select the standard 4kB Linux page size.  On some
1483	 R3000-family processors this is the only available page size.  Using
1484	 4kB page size will minimize memory consumption and is therefore
1485	 recommended for low memory systems.
1486
1487config PAGE_SIZE_8KB
1488	bool "8kB"
1489	depends on EXPERIMENTAL && CPU_R8000
1490	help
1491	  Using 8kB page size will result in higher performance kernel at
1492	  the price of higher memory consumption.  This option is available
1493	  only on the R8000 processor.  Not that at the time of this writing
1494	  this option is still high experimental; there are also issues with
1495	  compatibility of user applications.
1496
1497config PAGE_SIZE_16KB
1498	bool "16kB"
1499	depends on !CPU_R3000 && !CPU_TX39XX
1500	help
1501	  Using 16kB page size will result in higher performance kernel at
1502	  the price of higher memory consumption.  This option is available on
1503	  all non-R3000 family processors.  Note that you will need a suitable
1504	  Linux distribution to support this.
1505
1506config PAGE_SIZE_64KB
1507	bool "64kB"
1508	depends on EXPERIMENTAL && !CPU_R3000 && !CPU_TX39XX
1509	help
1510	  Using 64kB page size will result in higher performance kernel at
1511	  the price of higher memory consumption.  This option is available on
1512	  all non-R3000 family processor.  Not that at the time of this
1513	  writing this option is still high experimental.
1514
1515endchoice
1516
1517config BOARD_SCACHE
1518	bool
1519
1520config IP22_CPU_SCACHE
1521	bool
1522	select BOARD_SCACHE
1523
1524#
1525# Support for a MIPS32 / MIPS64 style S-caches
1526#
1527config MIPS_CPU_SCACHE
1528	bool
1529	select BOARD_SCACHE
1530
1531config R5000_CPU_SCACHE
1532	bool
1533	select BOARD_SCACHE
1534
1535config RM7000_CPU_SCACHE
1536	bool
1537	select BOARD_SCACHE
1538
1539config SIBYTE_DMA_PAGEOPS
1540	bool "Use DMA to clear/copy pages"
1541	depends on CPU_SB1
1542	help
1543	  Instead of using the CPU to zero and copy pages, use a Data Mover
1544	  channel.  These DMA channels are otherwise unused by the standard
1545	  SiByte Linux port.  Seems to give a small performance benefit.
1546
1547config CPU_HAS_PREFETCH
1548	bool
1549
1550choice
1551	prompt "MIPS MT options"
1552
1553config MIPS_MT_DISABLED
1554	bool "Disable multithreading support."
1555	help
1556	  Use this option if your workload can't take advantage of
1557	  MIPS hardware multithreading support.  On systems that don't have
1558	  the option of an MT-enabled processor this option will be the only
1559	  option in this menu.
1560
1561config MIPS_MT_SMP
1562	bool "Use 1 TC on each available VPE for SMP"
1563	depends on SYS_SUPPORTS_MULTITHREADING
1564	select CPU_MIPSR2_IRQ_VI
1565	select CPU_MIPSR2_SRS
1566	select MIPS_MT
1567	select SMP
1568	select SYS_SUPPORTS_SMP
1569	help
1570	  This is a kernel model which is also known a VSMP or lately
1571	  has been marketesed into SMVP.
1572
1573config MIPS_MT_SMTC
1574	bool "SMTC: Use all TCs on all VPEs for SMP"
1575	depends on CPU_MIPS32_R2
1576	#depends on CPU_MIPS64_R2		# once there is hardware ...
1577	depends on SYS_SUPPORTS_MULTITHREADING
1578	select CPU_MIPSR2_IRQ_VI
1579	select CPU_MIPSR2_SRS
1580	select MIPS_MT
1581	select NR_CPUS_DEFAULT_2
1582	select NR_CPUS_DEFAULT_8
1583	select SMP
1584	select SYS_SUPPORTS_SMP
1585	help
1586	  This is a kernel model which is known a SMTC or lately has been
1587	  marketesed into SMVP.
1588
1589config MIPS_VPE_LOADER
1590	bool "VPE loader support."
1591	depends on SYS_SUPPORTS_MULTITHREADING
1592	select MIPS_MT
1593	help
1594	  Includes a loader for loading an elf relocatable object
1595	  onto another VPE and running it.
1596
1597endchoice
1598
1599config MIPS_MT
1600	bool
1601
1602config SYS_SUPPORTS_MULTITHREADING
1603	bool
1604
1605config MIPS_MT_FPAFF
1606	bool "Dynamic FPU affinity for FP-intensive threads"
1607	depends on MIPS_MT
1608	default y
1609
1610config MIPS_MT_SMTC_INSTANT_REPLAY
1611	bool "Low-latency Dispatch of Deferred SMTC IPIs"
1612	depends on MIPS_MT_SMTC
1613	default y
1614	help
1615	  SMTC pseudo-interrupts between TCs are deferred and queued
1616	  if the target TC is interrupt-inhibited (IXMT). In the first
1617	  SMTC prototypes, these queued IPIs were serviced on return
1618	  to user mode, or on entry into the kernel idle loop. The
1619	  INSTANT_REPLAY option dispatches them as part of local_irq_restore()
1620	  processing, which adds runtime overhead (hence the option to turn
1621	  it off), but ensures that IPIs are handled promptly even under
1622	  heavy I/O interrupt load.
1623
1624config MIPS_VPE_LOADER_TOM
1625	bool "Load VPE program into memory hidden from linux"
1626	depends on MIPS_VPE_LOADER
1627	default y
1628	help
1629	  The loader can use memory that is present but has been hidden from
1630	  Linux using the kernel command line option "mem=xxMB". It's up to
1631	  you to ensure the amount you put in the option and the space your
1632	  program requires is less or equal to the amount physically present.
1633
1634# this should possibly be in drivers/char, but it is rather cpu related. Hmmm
1635config MIPS_VPE_APSP_API
1636	bool "Enable support for AP/SP API (RTLX)"
1637	depends on MIPS_VPE_LOADER
1638	help
1639
1640config MIPS_APSP_KSPD
1641	bool "Enable KSPD"
1642	depends on MIPS_VPE_APSP_API
1643	default y
1644	help
1645	  KSPD is a kernel daemon that accepts syscall requests from the SP
1646	  side, actions them and returns the results. It also handles the
1647	  "exit" syscall notifying other kernel modules the SP program is
1648	  exiting.  You probably want to say yes here.
1649
1650config SB1_PASS_1_WORKAROUNDS
1651	bool
1652	depends on CPU_SB1_PASS_1
1653	default y
1654
1655config SB1_PASS_2_WORKAROUNDS
1656	bool
1657	depends on CPU_SB1 && (CPU_SB1_PASS_2_2 || CPU_SB1_PASS_2)
1658	default y
1659
1660config SB1_PASS_2_1_WORKAROUNDS
1661	bool
1662	depends on CPU_SB1 && CPU_SB1_PASS_2
1663	default y
1664
1665config 64BIT_PHYS_ADDR
1666	bool "Support for 64-bit physical address space"
1667	depends on (CPU_R4X00 || CPU_R5000 || CPU_RM7000 || CPU_RM9000 || CPU_R10000 || CPU_SB1 || CPU_MIPS32 || CPU_MIPS64) && 32BIT
1668
1669config CPU_HAS_LLSC
1670	bool
1671
1672config CPU_HAS_SMARTMIPS
1673	depends on SYS_SUPPORTS_SMARTMIPS
1674	bool "Support for the SmartMIPS ASE"
1675	help
1676	  SmartMIPS is a extension of the MIPS32 architecture aimed at
1677	  increased security at both hardware and software level for
1678	  smartcards.  Enabling this option will allow proper use of the
1679	  SmartMIPS instructions by Linux applications.  However a kernel with
1680	  this option will not work on a MIPS core without SmartMIPS core.  If
1681	  you don't know you probably don't have SmartMIPS and should say N
1682	  here.
1683
1684config CPU_HAS_WB
1685	bool
1686
1687#
1688# Vectored interrupt mode is an R2 feature
1689#
1690config CPU_MIPSR2_IRQ_VI
1691	bool
1692
1693#
1694# Extended interrupt mode is an R2 feature
1695#
1696config CPU_MIPSR2_IRQ_EI
1697	bool
1698
1699#
1700# Shadow registers are an R2 feature
1701#
1702config CPU_MIPSR2_SRS
1703	bool
1704
1705config CPU_HAS_SYNC
1706	bool
1707	depends on !CPU_R3000
1708	default y
1709
1710#
1711# Use the generic interrupt handling code in kernel/irq/:
1712#
1713config GENERIC_HARDIRQS
1714	bool
1715	default y
1716
1717config GENERIC_IRQ_PROBE
1718	bool
1719	default y
1720
1721config IRQ_PER_CPU
1722	bool
1723
1724#
1725# - Highmem only makes sense for the 32-bit kernel.
1726# - The current highmem code will only work properly on physically indexed
1727#   caches such as R3000, SB1, R7000 or those that look like they're virtually
1728#   indexed such as R4000/R4400 SC and MC versions or R10000.  So for the
1729#   moment we protect the user and offer the highmem option only on machines
1730#   where it's known to be safe.  This will not offer highmem on a few systems
1731#   such as MIPS32 and MIPS64 CPUs which may have virtual and physically
1732#   indexed CPUs but we're playing safe.
1733# - We use SYS_SUPPORTS_HIGHMEM to offer highmem only for systems where we
1734#   know they might have memory configurations that could make use of highmem
1735#   support.
1736#
1737config HIGHMEM
1738	bool "High Memory Support"
1739	depends on 32BIT && CPU_SUPPORTS_HIGHMEM && SYS_SUPPORTS_HIGHMEM
1740
1741config CPU_SUPPORTS_HIGHMEM
1742	bool
1743
1744config SYS_SUPPORTS_HIGHMEM
1745	bool
1746
1747config SYS_SUPPORTS_SMARTMIPS
1748	bool
1749
1750config ARCH_FLATMEM_ENABLE
1751	def_bool y
1752	depends on !NUMA
1753
1754config ARCH_DISCONTIGMEM_ENABLE
1755	bool
1756	default y if SGI_IP27
1757	help
1758	  Say Y to upport efficient handling of discontiguous physical memory,
1759	  for architectures which are either NUMA (Non-Uniform Memory Access)
1760	  or have huge holes in the physical address space for other reasons.
1761	  See <file:Documentation/vm/numa> for more.
1762
1763config ARCH_SPARSEMEM_ENABLE
1764	bool
1765	select SPARSEMEM_STATIC
1766
1767config NUMA
1768	bool "NUMA Support"
1769	depends on SYS_SUPPORTS_NUMA
1770	help
1771	  Say Y to compile the kernel to support NUMA (Non-Uniform Memory
1772	  Access).  This option improves performance on systems with more
1773	  than two nodes; on two node systems it is generally better to
1774	  leave it disabled; on single node systems disable this option
1775	  disabled.
1776
1777config SYS_SUPPORTS_NUMA
1778	bool
1779
1780config NODES_SHIFT
1781	int
1782	default "6"
1783	depends on NEED_MULTIPLE_NODES
1784
1785source "mm/Kconfig"
1786
1787config SMP
1788	bool "Multi-Processing support"
1789	depends on SYS_SUPPORTS_SMP
1790	select IRQ_PER_CPU
1791	help
1792	  This enables support for systems with more than one CPU. If you have
1793	  a system with only one CPU, like most personal computers, say N. If
1794	  you have a system with more than one CPU, say Y.
1795
1796	  If you say N here, the kernel will run on single and multiprocessor
1797	  machines, but will use only one CPU of a multiprocessor machine. If
1798	  you say Y here, the kernel will run on many, but not all,
1799	  singleprocessor machines. On a singleprocessor machine, the kernel
1800	  will run faster if you say N here.
1801
1802	  People using multiprocessor machines who say Y here should also say
1803	  Y to "Enhanced Real Time Clock Support", below.
1804
1805	  See also the <file:Documentation/smp.txt> and the SMP-HOWTO
1806	  available at <http://www.tldp.org/docs.html#howto>.
1807
1808	  If you don't know what to do here, say N.
1809
1810config SYS_SUPPORTS_SMP
1811	bool
1812
1813config NR_CPUS_DEFAULT_2
1814	bool
1815
1816config NR_CPUS_DEFAULT_4
1817	bool
1818
1819config NR_CPUS_DEFAULT_8
1820	bool
1821
1822config NR_CPUS_DEFAULT_16
1823	bool
1824
1825config NR_CPUS_DEFAULT_32
1826	bool
1827
1828config NR_CPUS_DEFAULT_64
1829	bool
1830
1831config NR_CPUS
1832	int "Maximum number of CPUs (2-64)"
1833	range 2 64
1834	depends on SMP
1835	default "2" if NR_CPUS_DEFAULT_2
1836	default "4" if NR_CPUS_DEFAULT_4
1837	default "8" if NR_CPUS_DEFAULT_8
1838	default "16" if NR_CPUS_DEFAULT_16
1839	default "32" if NR_CPUS_DEFAULT_32
1840	default "64" if NR_CPUS_DEFAULT_64
1841	help
1842	  This allows you to specify the maximum number of CPUs which this
1843	  kernel will support.  The maximum supported value is 32 for 32-bit
1844	  kernel and 64 for 64-bit kernels; the minimum value which makes
1845	  sense is 2.
1846
1847	  This is purely to save memory - each supported CPU adds
1848	  approximately eight kilobytes to the kernel image.
1849
1850#
1851# Timer Interrupt Frequency Configuration
1852#
1853
1854choice
1855	prompt "Timer frequency"
1856	default HZ_250
1857	help
1858	 Allows the configuration of the timer frequency.
1859
1860	config HZ_48
1861		bool "48 HZ" if SYS_SUPPORTS_48HZ
1862
1863	config HZ_100
1864		bool "100 HZ" if SYS_SUPPORTS_100HZ || SYS_SUPPORTS_ARBIT_HZ
1865
1866	config HZ_128
1867		bool "128 HZ" if SYS_SUPPORTS_128HZ || SYS_SUPPORTS_ARBIT_HZ
1868
1869	config HZ_250
1870		bool "250 HZ" if SYS_SUPPORTS_250HZ || SYS_SUPPORTS_ARBIT_HZ
1871
1872	config HZ_256
1873		bool "256 HZ" if SYS_SUPPORTS_256HZ || SYS_SUPPORTS_ARBIT_HZ
1874
1875	config HZ_1000
1876		bool "1000 HZ" if SYS_SUPPORTS_1000HZ || SYS_SUPPORTS_ARBIT_HZ
1877
1878	config HZ_1024
1879		bool "1024 HZ" if SYS_SUPPORTS_1024HZ || SYS_SUPPORTS_ARBIT_HZ
1880
1881endchoice
1882
1883config SYS_SUPPORTS_48HZ
1884	bool
1885
1886config SYS_SUPPORTS_100HZ
1887	bool
1888
1889config SYS_SUPPORTS_128HZ
1890	bool
1891
1892config SYS_SUPPORTS_250HZ
1893	bool
1894
1895config SYS_SUPPORTS_256HZ
1896	bool
1897
1898config SYS_SUPPORTS_1000HZ
1899	bool
1900
1901config SYS_SUPPORTS_1024HZ
1902	bool
1903
1904config SYS_SUPPORTS_ARBIT_HZ
1905	bool
1906	default y if !SYS_SUPPORTS_48HZ && !SYS_SUPPORTS_100HZ && \
1907		     !SYS_SUPPORTS_128HZ && !SYS_SUPPORTS_250HZ && \
1908		     !SYS_SUPPORTS_256HZ && !SYS_SUPPORTS_1000HZ && \
1909		     !SYS_SUPPORTS_1024HZ
1910
1911config HZ
1912	int
1913	default 48 if HZ_48
1914	default 100 if HZ_100
1915	default 128 if HZ_128
1916	default 250 if HZ_250
1917	default 256 if HZ_256
1918	default 1000 if HZ_1000
1919	default 1024 if HZ_1024
1920
1921source "kernel/Kconfig.preempt"
1922
1923config MIPS_INSANE_LARGE
1924	bool "Support for large 64-bit configurations"
1925	depends on CPU_R10000 && 64BIT
1926	help
1927	  MIPS R10000 does support a 44 bit / 16TB address space as opposed to
1928	  previous 64-bit processors which only supported 40 bit / 1TB. If you
1929	  need processes of more than 1TB virtual address space, say Y here.
1930	  This will result in additional memory usage, so it is not
1931	  recommended for normal users.
1932
1933config KEXEC
1934	bool "Kexec system call (EXPERIMENTAL)"
1935	depends on EXPERIMENTAL
1936	help
1937	  kexec is a system call that implements the ability to shutdown your
1938	  current kernel, and to start another kernel.  It is like a reboot
1939	  but it is indepedent of the system firmware.   And like a reboot
1940	  you can start any kernel with it, not just Linux.
1941
1942	  The name comes from the similiarity to the exec system call.
1943
1944	  It is an ongoing process to be certain the hardware in a machine
1945	  is properly shutdown, so do not be surprised if this code does not
1946	  initially work for you.  It may help to enable device hotplugging
1947	  support.  As of this writing the exact hardware interface is
1948	  strongly in flux, so no good recommendation can be made.
1949
1950config SECCOMP
1951	bool "Enable seccomp to safely compute untrusted bytecode"
1952	depends on PROC_FS && BROKEN
1953	default y
1954	help
1955	  This kernel feature is useful for number crunching applications
1956	  that may need to compute untrusted bytecode during their
1957	  execution. By using pipes or other transports made available to
1958	  the process as file descriptors supporting the read/write
1959	  syscalls, it's possible to isolate those applications in
1960	  their own address space using seccomp. Once seccomp is
1961	  enabled via /proc/<pid>/seccomp, it cannot be disabled
1962	  and the task is only allowed to execute a few safe syscalls
1963	  defined by each seccomp mode.
1964
1965	  If unsure, say Y. Only embedded should say N here.
1966
1967endmenu
1968
1969config RWSEM_GENERIC_SPINLOCK
1970	bool
1971	default y
1972
1973config LOCKDEP_SUPPORT
1974	bool
1975	default y
1976
1977config STACKTRACE_SUPPORT
1978	bool
1979	default y
1980
1981source "init/Kconfig"
1982
1983menu "Bus options (PCI, PCMCIA, EISA, ISA, TC)"
1984
1985config HW_HAS_EISA
1986	bool
1987config HW_HAS_PCI
1988	bool
1989
1990config PCI
1991	bool "Support for PCI controller"
1992	depends on HW_HAS_PCI
1993	help
1994	  Find out whether you have a PCI motherboard. PCI is the name of a
1995	  bus system, i.e. the way the CPU talks to the other stuff inside
1996	  your box. Other bus systems are ISA, EISA, or VESA. If you have PCI,
1997	  say Y, otherwise N.
1998
1999	  The PCI-HOWTO, available from
2000	  <http://www.tldp.org/docs.html#howto>, contains valuable
2001	  information about which PCI hardware does work under Linux and which
2002	  doesn't.
2003
2004config PCI_DOMAINS
2005	bool
2006	depends on PCI
2007
2008source "drivers/pci/Kconfig"
2009
2010#
2011# ISA support is now enabled via select.  Too many systems still have the one
2012# or other ISA chip on the board that users don't know about so don't expect
2013# users to choose the right thing ...
2014#
2015config ISA
2016	bool
2017
2018config EISA
2019	bool "EISA support"
2020	depends on HW_HAS_EISA
2021	select ISA
2022	select GENERIC_ISA_DMA
2023	---help---
2024	  The Extended Industry Standard Architecture (EISA) bus was
2025	  developed as an open alternative to the IBM MicroChannel bus.
2026
2027	  The EISA bus provided some of the features of the IBM MicroChannel
2028	  bus while maintaining backward compatibility with cards made for
2029	  the older ISA bus.  The EISA bus saw limited use between 1988 and
2030	  1995 when it was made obsolete by the PCI bus.
2031
2032	  Say Y here if you are building a kernel for an EISA-based machine.
2033
2034	  Otherwise, say N.
2035
2036source "drivers/eisa/Kconfig"
2037
2038config TC
2039	bool "TURBOchannel support"
2040	depends on MACH_DECSTATION
2041	help
2042	  TurboChannel is a DEC (now Compaq (now HP)) bus for Alpha and MIPS
2043	  processors.  Documentation on writing device drivers for TurboChannel
2044	  is available at:
2045	  <http://www.cs.arizona.edu/computer.help/policy/DIGITAL_unix/AA-PS3HD-TET1_html/TITLE.html>.
2046
2047#config ACCESSBUS
2048#	bool "Access.Bus support"
2049#	depends on TC
2050
2051config MMU
2052	bool
2053	default y
2054
2055config I8253
2056	bool
2057
2058source "drivers/pcmcia/Kconfig"
2059
2060source "drivers/pci/hotplug/Kconfig"
2061
2062endmenu
2063
2064menu "Executable file formats"
2065
2066source "fs/Kconfig.binfmt"
2067
2068config TRAD_SIGNALS
2069	bool
2070
2071config BUILD_ELF64
2072	bool "Use 64-bit ELF format for building"
2073	depends on 64BIT
2074	help
2075	  A 64-bit kernel is usually built using the 64-bit ELF binary object
2076	  format as it's one that allows arbitrary 64-bit constructs.  For
2077	  kernels that are loaded within the KSEG compatibility segments the
2078	  32-bit ELF format can optionally be used resulting in a somewhat
2079	  smaller binary, but this option is not explicitly supported by the
2080	  toolchain and since binutils 2.14 it does not even work at all.
2081
2082	  Say Y to use the 64-bit format or N to use the 32-bit one.
2083
2084	  If unsure say Y.
2085
2086config BINFMT_IRIX
2087	bool "Include IRIX binary compatibility"
2088	depends on CPU_BIG_ENDIAN && 32BIT && BROKEN
2089
2090config MIPS32_COMPAT
2091	bool "Kernel support for Linux/MIPS 32-bit binary compatibility"
2092	depends on 64BIT
2093	help
2094	  Select this option if you want Linux/MIPS 32-bit binary
2095	  compatibility. Since all software available for Linux/MIPS is
2096	  currently 32-bit you should say Y here.
2097
2098config COMPAT
2099	bool
2100	depends on MIPS32_COMPAT
2101	default y
2102
2103config SYSVIPC_COMPAT
2104	bool
2105	depends on COMPAT && SYSVIPC
2106	default y
2107
2108config MIPS32_O32
2109	bool "Kernel support for o32 binaries"
2110	depends on MIPS32_COMPAT
2111	help
2112	  Select this option if you want to run o32 binaries.  These are pure
2113	  32-bit binaries as used by the 32-bit Linux/MIPS port.  Most of
2114	  existing binaries are in this format.
2115
2116	  If unsure, say Y.
2117
2118config MIPS32_N32
2119	bool "Kernel support for n32 binaries"
2120	depends on MIPS32_COMPAT
2121	help
2122	  Select this option if you want to run n32 binaries.  These are
2123	  64-bit binaries using 32-bit quantities for addressing and certain
2124	  data that would normally be 64-bit.  They are used in special
2125	  cases.
2126
2127	  If unsure, say N.
2128
2129config BINFMT_ELF32
2130	bool
2131	default y if MIPS32_O32 || MIPS32_N32
2132
2133endmenu
2134
2135menu "Power management options"
2136
2137source "kernel/power/Kconfig"
2138
2139endmenu
2140
2141source "net/Kconfig"
2142
2143source "drivers/Kconfig"
2144
2145source "fs/Kconfig"
2146
2147source "arch/mips/oprofile/Kconfig"
2148
2149source "arch/mips/Kconfig.debug"
2150
2151source "security/Kconfig"
2152
2153source "crypto/Kconfig"
2154
2155source "lib/Kconfig"
2156