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