xref: /linux/arch/mips/Kconfig (revision 27fdd325dace4a1ebfa10e93ba6f3d25f25df674)
11da177e4SLinus Torvaldsconfig MIPS
21da177e4SLinus Torvalds	bool
31da177e4SLinus Torvalds	default y
4ec7748b5SSam Ravnborg	select HAVE_IDE
542d4b839SMathieu Desnoyers	select HAVE_OPROFILE
688547001SJason Wessel	select HAVE_ARCH_KGDB
71da177e4SLinus Torvalds	# Horrible source of confusion.  Die, die, die ...
81da177e4SLinus Torvalds	select EMBEDDED
990b02340SRalf Baechle	select RTC_LIB
101da177e4SLinus Torvalds
111da177e4SLinus Torvaldsmainmenu "Linux/MIPS Kernel Configuration"
121da177e4SLinus Torvalds
131da177e4SLinus Torvaldsmenu "Machine selection"
141da177e4SLinus Torvalds
155ac6da66SChristoph Lameterconfig ZONE_DMA
165ac6da66SChristoph Lameter	bool
175ac6da66SChristoph Lameter
185e83d430SRalf Baechlechoice
195e83d430SRalf Baechle	prompt "System type"
205e83d430SRalf Baechle	default SGI_IP22
211da177e4SLinus Torvalds
22c3543e25SYoichi Yuasaconfig MACH_ALCHEMY
23c3543e25SYoichi Yuasa	bool "Alchemy processor based machines"
241da177e4SLinus Torvalds
257ca5dc14SFlorian Fainelliconfig AR7
267ca5dc14SFlorian Fainelli	bool "Texas Instruments AR7"
277ca5dc14SFlorian Fainelli	select BOOT_ELF32
287ca5dc14SFlorian Fainelli	select DMA_NONCOHERENT
297ca5dc14SFlorian Fainelli	select CEVT_R4K
307ca5dc14SFlorian Fainelli	select CSRC_R4K
317ca5dc14SFlorian Fainelli	select IRQ_CPU
327ca5dc14SFlorian Fainelli	select NO_EXCEPT_FILL
337ca5dc14SFlorian Fainelli	select SWAP_IO_SPACE
347ca5dc14SFlorian Fainelli	select SYS_HAS_CPU_MIPS32_R1
357ca5dc14SFlorian Fainelli	select SYS_HAS_EARLY_PRINTK
367ca5dc14SFlorian Fainelli	select SYS_SUPPORTS_32BIT_KERNEL
377ca5dc14SFlorian Fainelli	select SYS_SUPPORTS_LITTLE_ENDIAN
387ca5dc14SFlorian Fainelli	select GENERIC_GPIO
397ca5dc14SFlorian Fainelli	select GCD
407ca5dc14SFlorian Fainelli	select VLYNQ
417ca5dc14SFlorian Fainelli	help
427ca5dc14SFlorian Fainelli	  Support for the Texas Instruments AR7 System-on-a-Chip
437ca5dc14SFlorian Fainelli	  family: TNETD7100, 7200 and 7300.
447ca5dc14SFlorian Fainelli
4535189fadSRalf Baechleconfig BASLER_EXCITE
46be91589eSThomas Koeller	bool "Basler eXcite smart camera"
4742f77542SRalf Baechle	select CEVT_R4K
48940f6b48SRalf Baechle	select CSRC_R4K
4935189fadSRalf Baechle	select DMA_COHERENT
5035189fadSRalf Baechle	select HW_HAS_PCI
5135189fadSRalf Baechle	select IRQ_CPU
5235189fadSRalf Baechle	select IRQ_CPU_RM7K
5335189fadSRalf Baechle	select IRQ_CPU_RM9K
54663c3d90Sthomas@koeller.dyndns.org	select MIPS_RM9122
5535189fadSRalf Baechle	select SYS_HAS_CPU_RM9000
5635189fadSRalf Baechle	select SYS_SUPPORTS_32BIT_KERNEL
5735189fadSRalf Baechle	select SYS_SUPPORTS_BIG_ENDIAN
5835189fadSRalf Baechle	help
5935189fadSRalf Baechle	  The eXcite is a smart camera platform manufactured by
60be91589eSThomas Koeller	  Basler Vision Technologies AG.
6135189fadSRalf Baechle
621c0c13ebSAurelien Jarnoconfig BCM47XX
631c0c13ebSAurelien Jarno	bool "BCM47XX based boards"
6442f77542SRalf Baechle	select CEVT_R4K
65940f6b48SRalf Baechle	select CSRC_R4K
661c0c13ebSAurelien Jarno	select DMA_NONCOHERENT
671c0c13ebSAurelien Jarno	select HW_HAS_PCI
681c0c13ebSAurelien Jarno	select IRQ_CPU
691c0c13ebSAurelien Jarno	select SYS_HAS_CPU_MIPS32_R1
701c0c13ebSAurelien Jarno	select SYS_SUPPORTS_32BIT_KERNEL
711c0c13ebSAurelien Jarno	select SYS_SUPPORTS_LITTLE_ENDIAN
721c0c13ebSAurelien Jarno	select SSB
731c0c13ebSAurelien Jarno	select SSB_DRIVER_MIPS
742f02c15aSAurelien Jarno	select SSB_DRIVER_EXTIF
75b06f3e19SAurelien Jarno	select SSB_EMBEDDED
762f02c15aSAurelien Jarno	select SSB_PCICORE_HOSTMODE if PCI
771c0c13ebSAurelien Jarno	select GENERIC_GPIO
7825e5fb97SAurelien Jarno	select SYS_HAS_EARLY_PRINTK
7925e5fb97SAurelien Jarno	select CFE
801c0c13ebSAurelien Jarno	help
811c0c13ebSAurelien Jarno	 Support for BCM47XX based boards
821c0c13ebSAurelien Jarno
831da177e4SLinus Torvaldsconfig MIPS_COBALT
843fa986faSMartin Michlmayr	bool "Cobalt Server"
8542f77542SRalf Baechle	select CEVT_R4K
86940f6b48SRalf Baechle	select CSRC_R4K
871097c6acSYoichi Yuasa	select CEVT_GT641XX
881da177e4SLinus Torvalds	select DMA_NONCOHERENT
891da177e4SLinus Torvalds	select HW_HAS_PCI
90d865bea4SRalf Baechle	select I8253
911da177e4SLinus Torvalds	select I8259
921da177e4SLinus Torvalds	select IRQ_CPU
93d5ab1a69SYoichi Yuasa	select IRQ_GT641XX
94252161ecSYoichi Yuasa	select PCI_GT64XXX_PCI0
95e25bfc92SYoichi Yuasa	select PCI
967cf8053bSRalf Baechle	select SYS_HAS_CPU_NEVADA
970a22e0d4SYoichi Yuasa	select SYS_HAS_EARLY_PRINTK
98ed5ba2fbSYoichi Yuasa	select SYS_SUPPORTS_32BIT_KERNEL
990e8774b6SFlorian Fainelli	select SYS_SUPPORTS_64BIT_KERNEL
1005e83d430SRalf Baechle	select SYS_SUPPORTS_LITTLE_ENDIAN
1011da177e4SLinus Torvalds
1021da177e4SLinus Torvaldsconfig MACH_DECSTATION
1033fa986faSMartin Michlmayr	bool "DECstations"
1041da177e4SLinus Torvalds	select BOOT_ELF32
1056457d9fcSYoichi Yuasa	select CEVT_DS1287
10642f77542SRalf Baechle	select CEVT_R4K
1074247417dSYoichi Yuasa	select CSRC_IOASIC
108940f6b48SRalf Baechle	select CSRC_R4K
10920d60d99SMaciej W. Rozycki	select CPU_DADDI_WORKAROUNDS if 64BIT
11020d60d99SMaciej W. Rozycki	select CPU_R4000_WORKAROUNDS if 64BIT
11120d60d99SMaciej W. Rozycki	select CPU_R4400_WORKAROUNDS if 64BIT
1121da177e4SLinus Torvalds	select DMA_NONCOHERENT
113d388d685SMaciej W. Rozycki	select NO_IOPORT
1141da177e4SLinus Torvalds	select IRQ_CPU
1157cf8053bSRalf Baechle	select SYS_HAS_CPU_R3000
1167cf8053bSRalf Baechle	select SYS_HAS_CPU_R4X00
117ed5ba2fbSYoichi Yuasa	select SYS_SUPPORTS_32BIT_KERNEL
118ed5ba2fbSYoichi Yuasa	select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
1195e83d430SRalf Baechle	select SYS_SUPPORTS_LITTLE_ENDIAN
1201723b4a3SAtsushi Nemoto	select SYS_SUPPORTS_128HZ
1211723b4a3SAtsushi Nemoto	select SYS_SUPPORTS_256HZ
1221723b4a3SAtsushi Nemoto	select SYS_SUPPORTS_1024HZ
1235e83d430SRalf Baechle	help
1241da177e4SLinus Torvalds	  This enables support for DEC's MIPS based workstations.  For details
1251da177e4SLinus Torvalds	  see the Linux/MIPS FAQ on <http://www.linux-mips.org/> and the
1261da177e4SLinus Torvalds	  DECstation porting pages on <http://decstation.unix-ag.org/>.
1271da177e4SLinus Torvalds
1281da177e4SLinus Torvalds	  If you have one of the following DECstation Models you definitely
1291da177e4SLinus Torvalds	  want to choose R4xx0 for the CPU Type:
1301da177e4SLinus Torvalds
1311da177e4SLinus Torvalds		DECstation 5000/50
1321da177e4SLinus Torvalds		DECstation 5000/150
1331da177e4SLinus Torvalds		DECstation 5000/260
1341da177e4SLinus Torvalds		DECsystem 5900/260
1351da177e4SLinus Torvalds
1361da177e4SLinus Torvalds	  otherwise choose R3000.
1371da177e4SLinus Torvalds
1385e83d430SRalf Baechleconfig MACH_JAZZ
1393fa986faSMartin Michlmayr	bool "Jazz family of machines"
1405e83d430SRalf Baechle	select ARC
1415e83d430SRalf Baechle	select ARC32
1425e83d430SRalf Baechle	select ARCH_MAY_HAVE_PC_FDC
14342f77542SRalf Baechle	select CEVT_R4K
144940f6b48SRalf Baechle	select CSRC_R4K
145e2defae5SThomas Bogendoerfer	select DEFAULT_SGI_PARTITION if CPU_BIG_ENDIAN
1465e83d430SRalf Baechle	select GENERIC_ISA_DMA
147ea202c63SThomas Bogendoerfer	select IRQ_CPU
148d865bea4SRalf Baechle	select I8253
1495e83d430SRalf Baechle	select I8259
1505e83d430SRalf Baechle	select ISA
1517cf8053bSRalf Baechle	select SYS_HAS_CPU_R4X00
1525e83d430SRalf Baechle	select SYS_SUPPORTS_32BIT_KERNEL
1535e83d430SRalf Baechle	select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
1541723b4a3SAtsushi Nemoto	select SYS_SUPPORTS_100HZ
1551da177e4SLinus Torvalds	help
1565e83d430SRalf Baechle	 This a family of machines based on the MIPS R4030 chipset which was
1575e83d430SRalf Baechle	 used by several vendors to build RISC/os and Windows NT workstations.
158692105b8SMatt LaPlante	 Members include the Acer PICA, MIPS Magnum 4000, MIPS Millennium and
1595e83d430SRalf Baechle	 Olivetti M700-10 workstations.
1605e83d430SRalf Baechle
1611f21d2bdSBrian Murphyconfig LASAT
1621f21d2bdSBrian Murphy	bool "LASAT Networks platforms"
16342f77542SRalf Baechle	select CEVT_R4K
164940f6b48SRalf Baechle	select CSRC_R4K
1651f21d2bdSBrian Murphy	select DMA_NONCOHERENT
1661f21d2bdSBrian Murphy	select SYS_HAS_EARLY_PRINTK
1671f21d2bdSBrian Murphy	select HW_HAS_PCI
168a5ccfe5cSRalf Baechle	select IRQ_CPU
1691f21d2bdSBrian Murphy	select PCI_GT64XXX_PCI0
1701f21d2bdSBrian Murphy	select MIPS_NILE4
1711f21d2bdSBrian Murphy	select R5000_CPU_SCACHE
1721f21d2bdSBrian Murphy	select SYS_HAS_CPU_R5000
1731f21d2bdSBrian Murphy	select SYS_SUPPORTS_32BIT_KERNEL
1741f21d2bdSBrian Murphy	select SYS_SUPPORTS_64BIT_KERNEL if BROKEN
1751f21d2bdSBrian Murphy	select SYS_SUPPORTS_LITTLE_ENDIAN
1761f21d2bdSBrian Murphy
177ade299d8SYoichi Yuasaconfig LEMOTE_FULONG
178ade299d8SYoichi Yuasa	bool "Lemote Fulong mini-PC"
179ade299d8SYoichi Yuasa	select ARCH_SPARSEMEM_ENABLE
18042f77542SRalf Baechle	select CEVT_R4K
181940f6b48SRalf Baechle	select CSRC_R4K
182ade299d8SYoichi Yuasa	select SYS_HAS_CPU_LOONGSON2
183ade299d8SYoichi Yuasa	select DMA_NONCOHERENT
184ade299d8SYoichi Yuasa	select BOOT_ELF32
185ade299d8SYoichi Yuasa	select BOARD_SCACHE
186ade299d8SYoichi Yuasa	select HAVE_STD_PC_SERIAL_PORT
187ade299d8SYoichi Yuasa	select HW_HAS_PCI
188ade299d8SYoichi Yuasa	select I8259
189ade299d8SYoichi Yuasa	select ISA
190ade299d8SYoichi Yuasa	select IRQ_CPU
191ade299d8SYoichi Yuasa	select SYS_SUPPORTS_32BIT_KERNEL
192ade299d8SYoichi Yuasa	select SYS_SUPPORTS_64BIT_KERNEL
193ade299d8SYoichi Yuasa	select SYS_SUPPORTS_LITTLE_ENDIAN
194ade299d8SYoichi Yuasa	select SYS_SUPPORTS_HIGHMEM
195ade299d8SYoichi Yuasa	select SYS_HAS_EARLY_PRINTK
19623dd6d35SRalf Baechle	select GENERIC_ISA_DMA_SUPPORT_BROKEN
197ade299d8SYoichi Yuasa	select CPU_HAS_WB
198ade299d8SYoichi Yuasa	help
199ade299d8SYoichi Yuasa	  Lemote Fulong mini-PC board based on the Chinese Loongson-2E CPU and
200ade299d8SYoichi Yuasa	  an FPGA northbridge
201ade299d8SYoichi Yuasa
2021da177e4SLinus Torvaldsconfig MIPS_MALTA
2033fa986faSMartin Michlmayr	bool "MIPS Malta board"
20461ed242dSRalf Baechle	select ARCH_MAY_HAVE_PC_FDC
2051da177e4SLinus Torvalds	select BOOT_ELF32
206fa71c960SRalf Baechle	select BOOT_RAW
20742f77542SRalf Baechle	select CEVT_R4K
208940f6b48SRalf Baechle	select CSRC_R4K
2091da177e4SLinus Torvalds	select DMA_NONCOHERENT
2101da177e4SLinus Torvalds	select GENERIC_ISA_DMA
211aa414dffSRalf Baechle	select IRQ_CPU
21239b8d525SRalf Baechle	select IRQ_GIC
2131da177e4SLinus Torvalds	select HW_HAS_PCI
214d865bea4SRalf Baechle	select I8253
2151da177e4SLinus Torvalds	select I8259
2165e83d430SRalf Baechle	select MIPS_BOARDS_GEN
2175e83d430SRalf Baechle	select MIPS_BONITO64
2189318c51aSChris Dearman	select MIPS_CPU_SCACHE
219252161ecSYoichi Yuasa	select PCI_GT64XXX_PCI0
2205e83d430SRalf Baechle	select MIPS_MSC
2211da177e4SLinus Torvalds	select SWAP_IO_SPACE
2227cf8053bSRalf Baechle	select SYS_HAS_CPU_MIPS32_R1
2237cf8053bSRalf Baechle	select SYS_HAS_CPU_MIPS32_R2
2247cf8053bSRalf Baechle	select SYS_HAS_CPU_MIPS64_R1
2257cf8053bSRalf Baechle	select SYS_HAS_CPU_NEVADA
2267cf8053bSRalf Baechle	select SYS_HAS_CPU_RM7000
22736a88530SRalf Baechle	select SYS_HAS_EARLY_PRINTK
228ed5ba2fbSYoichi Yuasa	select SYS_SUPPORTS_32BIT_KERNEL
229ed5ba2fbSYoichi Yuasa	select SYS_SUPPORTS_64BIT_KERNEL
2305e83d430SRalf Baechle	select SYS_SUPPORTS_BIG_ENDIAN
2315e83d430SRalf Baechle	select SYS_SUPPORTS_LITTLE_ENDIAN
2324a16ff4cSRalf Baechle	select SYS_SUPPORTS_MIPS_CMP if BROKEN	# because SYNC_R4K is broken
233f41ae0b2SRalf Baechle	select SYS_SUPPORTS_MULTITHREADING
2349693a853SFranck Bui-Huu	select SYS_SUPPORTS_SMARTMIPS
2351da177e4SLinus Torvalds	help
236f638d197SMaciej W. Rozycki	  This enables support for the MIPS Technologies Malta evaluation
2371da177e4SLinus Torvalds	  board.
2381da177e4SLinus Torvalds
239c78cbf49SRalf Baechleconfig MIPS_SIM
2403fa986faSMartin Michlmayr	bool 'MIPS simulator (MIPSsim)'
24142f77542SRalf Baechle	select CEVT_R4K
242940f6b48SRalf Baechle	select CSRC_R4K
243c78cbf49SRalf Baechle	select DMA_NONCOHERENT
24436a88530SRalf Baechle	select SYS_HAS_EARLY_PRINTK
245c78cbf49SRalf Baechle	select IRQ_CPU
2469267a30dSMarc St-Jean	select BOOT_RAW
2477cf8053bSRalf Baechle	select SYS_HAS_CPU_MIPS32_R1
2487cf8053bSRalf Baechle	select SYS_HAS_CPU_MIPS32_R2
24936a88530SRalf Baechle	select SYS_HAS_EARLY_PRINTK
250c78cbf49SRalf Baechle	select SYS_SUPPORTS_32BIT_KERNEL
251c78cbf49SRalf Baechle	select SYS_SUPPORTS_BIG_ENDIAN
252f6e2373aSRalf Baechle	select SYS_SUPPORTS_MULTITHREADING
253c78cbf49SRalf Baechle	select SYS_SUPPORTS_LITTLE_ENDIAN
254c78cbf49SRalf Baechle	help
255c78cbf49SRalf Baechle	  This option enables support for MIPS Technologies MIPSsim software
256c78cbf49SRalf Baechle	  emulator.
257c78cbf49SRalf Baechle
258a83860c2SRalf Baechleconfig NEC_MARKEINS
259a83860c2SRalf Baechle	bool "NEC EMMA2RH Mark-eins board"
260a83860c2SRalf Baechle	select SOC_EMMA2RH
261a83860c2SRalf Baechle	select HW_HAS_PCI
262a83860c2SRalf Baechle	help
263a83860c2SRalf Baechle	  This enables support for the NEC Electronics Mark-eins boards.
264ade299d8SYoichi Yuasa
2655e83d430SRalf Baechleconfig MACH_VR41XX
26674142d65SYoichi Yuasa	bool "NEC VR4100 series based machines"
26742f77542SRalf Baechle	select CEVT_R4K
268940f6b48SRalf Baechle	select CSRC_R4K
2697cf8053bSRalf Baechle	select SYS_HAS_CPU_VR41XX
270*27fdd325SYoichi Yuasa	select ARCH_REQUIRE_GPIOLIB
2715e83d430SRalf Baechle
272edb6310aSDaniel Lairdconfig NXP_STB220
273edb6310aSDaniel Laird	bool "NXP STB220 board"
274edb6310aSDaniel Laird	select SOC_PNX833X
275edb6310aSDaniel Laird	help
276edb6310aSDaniel Laird	 Support for NXP Semiconductors STB220 Development Board.
277edb6310aSDaniel Laird
278edb6310aSDaniel Lairdconfig NXP_STB225
279edb6310aSDaniel Laird	bool "NXP 225 board"
280edb6310aSDaniel Laird	select SOC_PNX833X
281edb6310aSDaniel Laird	select SOC_PNX8335
282edb6310aSDaniel Laird	help
283edb6310aSDaniel Laird	 Support for NXP Semiconductors STB225 Development Board.
284edb6310aSDaniel Laird
285ade299d8SYoichi Yuasaconfig PNX8550_JBS
286a92b0588SDaniel Laird	bool "NXP PNX8550 based JBS board"
287ade299d8SYoichi Yuasa	select PNX8550
288ade299d8SYoichi Yuasa	select SYS_SUPPORTS_LITTLE_ENDIAN
289ade299d8SYoichi Yuasa
290ade299d8SYoichi Yuasaconfig PNX8550_STB810
291a92b0588SDaniel Laird	bool "NXP PNX8550 based STB810 board"
292ade299d8SYoichi Yuasa	select PNX8550
293ade299d8SYoichi Yuasa	select SYS_SUPPORTS_LITTLE_ENDIAN
294ade299d8SYoichi Yuasa
2959267a30dSMarc St-Jeanconfig PMC_MSP
2969267a30dSMarc St-Jean	bool "PMC-Sierra MSP chipsets"
2979267a30dSMarc St-Jean	depends on EXPERIMENTAL
2989267a30dSMarc St-Jean	select DMA_NONCOHERENT
2999267a30dSMarc St-Jean	select SWAP_IO_SPACE
3009267a30dSMarc St-Jean	select NO_EXCEPT_FILL
3019267a30dSMarc St-Jean	select BOOT_RAW
3029267a30dSMarc St-Jean	select SYS_HAS_CPU_MIPS32_R1
3039267a30dSMarc St-Jean	select SYS_HAS_CPU_MIPS32_R2
3049267a30dSMarc St-Jean	select SYS_SUPPORTS_32BIT_KERNEL
3059267a30dSMarc St-Jean	select SYS_SUPPORTS_BIG_ENDIAN
3069267a30dSMarc St-Jean	select IRQ_CPU
3079267a30dSMarc St-Jean	select SERIAL_8250
3089267a30dSMarc St-Jean	select SERIAL_8250_CONSOLE
3099267a30dSMarc St-Jean	help
3109267a30dSMarc St-Jean	  This adds support for the PMC-Sierra family of Multi-Service
3119267a30dSMarc St-Jean	  Processor System-On-A-Chips.  These parts include a number
3129267a30dSMarc St-Jean	  of integrated peripherals, interfaces and DSPs in addition to
3139267a30dSMarc St-Jean	  a variety of MIPS cores.
3149267a30dSMarc St-Jean
3155e83d430SRalf Baechleconfig PMC_YOSEMITE
3163fa986faSMartin Michlmayr	bool "PMC-Sierra Yosemite eval board"
31742f77542SRalf Baechle	select CEVT_R4K
318940f6b48SRalf Baechle	select CSRC_R4K
3195e83d430SRalf Baechle	select DMA_COHERENT
3205e83d430SRalf Baechle	select HW_HAS_PCI
3215e83d430SRalf Baechle	select IRQ_CPU
3225e83d430SRalf Baechle	select IRQ_CPU_RM7K
3235e83d430SRalf Baechle	select IRQ_CPU_RM9K
3245e83d430SRalf Baechle	select SWAP_IO_SPACE
3257cf8053bSRalf Baechle	select SYS_HAS_CPU_RM9000
32636a88530SRalf Baechle	select SYS_HAS_EARLY_PRINTK
3275e83d430SRalf Baechle	select SYS_SUPPORTS_32BIT_KERNEL
3285e83d430SRalf Baechle	select SYS_SUPPORTS_64BIT_KERNEL
3295e83d430SRalf Baechle	select SYS_SUPPORTS_BIG_ENDIAN
3305e83d430SRalf Baechle	select SYS_SUPPORTS_HIGHMEM
331e73ea273SRalf Baechle	select SYS_SUPPORTS_SMP
3325e83d430SRalf Baechle	help
3335e83d430SRalf Baechle	  Yosemite is an evaluation board for the RM9000x2 processor
3345e83d430SRalf Baechle	  manufactured by PMC-Sierra.
3351da177e4SLinus Torvalds
3361da177e4SLinus Torvaldsconfig SGI_IP22
3373fa986faSMartin Michlmayr	bool "SGI IP22 (Indy/Indigo2)"
3381da177e4SLinus Torvalds	select ARC
3391da177e4SLinus Torvalds	select ARC32
3401da177e4SLinus Torvalds	select BOOT_ELF32
34142f77542SRalf Baechle	select CEVT_R4K
342940f6b48SRalf Baechle	select CSRC_R4K
343e2defae5SThomas Bogendoerfer	select DEFAULT_SGI_PARTITION
3441da177e4SLinus Torvalds	select DMA_NONCOHERENT
3455e83d430SRalf Baechle	select HW_HAS_EISA
346d865bea4SRalf Baechle	select I8253
34768de4803SThomas Bogendoerfer	select I8259
3481da177e4SLinus Torvalds	select IP22_CPU_SCACHE
3491da177e4SLinus Torvalds	select IRQ_CPU
350aa414dffSRalf Baechle	select GENERIC_ISA_DMA_SUPPORT_BROKEN
351e2defae5SThomas Bogendoerfer	select SGI_HAS_I8042
352e2defae5SThomas Bogendoerfer	select SGI_HAS_INDYDOG
35336e5c21dSThomas Bogendoerfer	select SGI_HAS_HAL2
354e2defae5SThomas Bogendoerfer	select SGI_HAS_SEEQ
355e2defae5SThomas Bogendoerfer	select SGI_HAS_WD93
356e2defae5SThomas Bogendoerfer	select SGI_HAS_ZILOG
3571da177e4SLinus Torvalds	select SWAP_IO_SPACE
3587cf8053bSRalf Baechle	select SYS_HAS_CPU_R4X00
3597cf8053bSRalf Baechle	select SYS_HAS_CPU_R5000
36036a88530SRalf Baechle	select SYS_HAS_EARLY_PRINTK
361ed5ba2fbSYoichi Yuasa	select SYS_SUPPORTS_32BIT_KERNEL
362ed5ba2fbSYoichi Yuasa	select SYS_SUPPORTS_64BIT_KERNEL
3635e83d430SRalf Baechle	select SYS_SUPPORTS_BIG_ENDIAN
3641da177e4SLinus Torvalds	help
3651da177e4SLinus Torvalds	  This are the SGI Indy, Challenge S and Indigo2, as well as certain
3661da177e4SLinus Torvalds	  OEM variants like the Tandem CMN B006S. To compile a Linux kernel
3671da177e4SLinus Torvalds	  that runs on these, say Y here.
3681da177e4SLinus Torvalds
3691da177e4SLinus Torvaldsconfig SGI_IP27
3703fa986faSMartin Michlmayr	bool "SGI IP27 (Origin200/2000)"
3711da177e4SLinus Torvalds	select ARC
3721da177e4SLinus Torvalds	select ARC64
3735e83d430SRalf Baechle	select BOOT_ELF64
374e2defae5SThomas Bogendoerfer	select DEFAULT_SGI_PARTITION
375634286f1SRalf Baechle	select DMA_COHERENT
37636a88530SRalf Baechle	select SYS_HAS_EARLY_PRINTK
3771da177e4SLinus Torvalds	select HW_HAS_PCI
378130e2fb7SRalf Baechle	select NR_CPUS_DEFAULT_64
3797cf8053bSRalf Baechle	select SYS_HAS_CPU_R10000
380ed5ba2fbSYoichi Yuasa	select SYS_SUPPORTS_64BIT_KERNEL
3815e83d430SRalf Baechle	select SYS_SUPPORTS_BIG_ENDIAN
382d8cb4e11SRalf Baechle	select SYS_SUPPORTS_NUMA
3831a5c5de1SRalf Baechle	select SYS_SUPPORTS_SMP
3841da177e4SLinus Torvalds	help
3851da177e4SLinus Torvalds	  This are the SGI Origin 200, Origin 2000 and Onyx 2 Graphics
3861da177e4SLinus Torvalds	  workstations.  To compile a Linux kernel that runs on these, say Y
3871da177e4SLinus Torvalds	  here.
3881da177e4SLinus Torvalds
389e2defae5SThomas Bogendoerferconfig SGI_IP28
390e2defae5SThomas Bogendoerfer	bool "SGI IP28 (Indigo2 R10k) (EXPERIMENTAL)"
391e2defae5SThomas Bogendoerfer	depends on EXPERIMENTAL
392e2defae5SThomas Bogendoerfer	select ARC
393e2defae5SThomas Bogendoerfer	select ARC64
394e2defae5SThomas Bogendoerfer	select BOOT_ELF64
395e2defae5SThomas Bogendoerfer	select CEVT_R4K
396e2defae5SThomas Bogendoerfer	select CSRC_R4K
397e2defae5SThomas Bogendoerfer	select DEFAULT_SGI_PARTITION
398e2defae5SThomas Bogendoerfer	select DMA_NONCOHERENT
399e2defae5SThomas Bogendoerfer	select GENERIC_ISA_DMA_SUPPORT_BROKEN
400e2defae5SThomas Bogendoerfer	select IRQ_CPU
401e2defae5SThomas Bogendoerfer	select HW_HAS_EISA
402e2defae5SThomas Bogendoerfer	select I8253
403e2defae5SThomas Bogendoerfer	select I8259
404e2defae5SThomas Bogendoerfer	select SGI_HAS_I8042
405e2defae5SThomas Bogendoerfer	select SGI_HAS_INDYDOG
4065b438c44SThomas Bogendoerfer	select SGI_HAS_HAL2
407e2defae5SThomas Bogendoerfer	select SGI_HAS_SEEQ
408e2defae5SThomas Bogendoerfer	select SGI_HAS_WD93
409e2defae5SThomas Bogendoerfer	select SGI_HAS_ZILOG
410e2defae5SThomas Bogendoerfer	select SWAP_IO_SPACE
411e2defae5SThomas Bogendoerfer	select SYS_HAS_CPU_R10000
412e2defae5SThomas Bogendoerfer	select SYS_HAS_EARLY_PRINTK
413e2defae5SThomas Bogendoerfer	select SYS_SUPPORTS_64BIT_KERNEL
414e2defae5SThomas Bogendoerfer	select SYS_SUPPORTS_BIG_ENDIAN
415e2defae5SThomas Bogendoerfer      help
416e2defae5SThomas Bogendoerfer        This is the SGI Indigo2 with R10000 processor.  To compile a Linux
417e2defae5SThomas Bogendoerfer        kernel that runs on these, say Y here.
418e2defae5SThomas Bogendoerfer
4191da177e4SLinus Torvaldsconfig SGI_IP32
420cfd2afc0SRalf Baechle	bool "SGI IP32 (O2)"
4211da177e4SLinus Torvalds	select ARC
4221da177e4SLinus Torvalds	select ARC32
4231da177e4SLinus Torvalds	select BOOT_ELF32
42442f77542SRalf Baechle	select CEVT_R4K
425940f6b48SRalf Baechle	select CSRC_R4K
4261da177e4SLinus Torvalds	select DMA_NONCOHERENT
4271da177e4SLinus Torvalds	select HW_HAS_PCI
428dd67b155SRalf Baechle	select IRQ_CPU
4291da177e4SLinus Torvalds	select R5000_CPU_SCACHE
4301da177e4SLinus Torvalds	select RM7000_CPU_SCACHE
4317cf8053bSRalf Baechle	select SYS_HAS_CPU_R5000
4327cf8053bSRalf Baechle	select SYS_HAS_CPU_R10000 if BROKEN
4337cf8053bSRalf Baechle	select SYS_HAS_CPU_RM7000
434dd2f18feSRalf Baechle	select SYS_HAS_CPU_NEVADA
435ed5ba2fbSYoichi Yuasa	select SYS_SUPPORTS_64BIT_KERNEL
4365e83d430SRalf Baechle	select SYS_SUPPORTS_BIG_ENDIAN
4371da177e4SLinus Torvalds	help
4381da177e4SLinus Torvalds	  If you want this kernel to run on SGI O2 workstation, say Y here.
4391da177e4SLinus Torvalds
440ade299d8SYoichi Yuasaconfig SIBYTE_CRHINE
441ade299d8SYoichi Yuasa	bool "Sibyte BCM91120C-CRhine"
4425e83d430SRalf Baechle	depends on EXPERIMENTAL
4435e83d430SRalf Baechle	select BOOT_ELF32
4445e83d430SRalf Baechle	select DMA_COHERENT
4455e83d430SRalf Baechle	select SIBYTE_BCM1120
4465e83d430SRalf Baechle	select SWAP_IO_SPACE
4477cf8053bSRalf Baechle	select SYS_HAS_CPU_SB1
4485e83d430SRalf Baechle	select SYS_SUPPORTS_BIG_ENDIAN
4495e83d430SRalf Baechle	select SYS_SUPPORTS_LITTLE_ENDIAN
4505e83d430SRalf Baechle
451ade299d8SYoichi Yuasaconfig SIBYTE_CARMEL
452ade299d8SYoichi Yuasa	bool "Sibyte BCM91120x-Carmel"
4535e83d430SRalf Baechle	depends on EXPERIMENTAL
4545e83d430SRalf Baechle	select BOOT_ELF32
4555e83d430SRalf Baechle	select DMA_COHERENT
4565e83d430SRalf Baechle	select SIBYTE_BCM1120
4575e83d430SRalf Baechle	select SWAP_IO_SPACE
4587cf8053bSRalf Baechle	select SYS_HAS_CPU_SB1
4595e83d430SRalf Baechle	select SYS_SUPPORTS_BIG_ENDIAN
4605e83d430SRalf Baechle	select SYS_SUPPORTS_LITTLE_ENDIAN
4615e83d430SRalf Baechle
4625e83d430SRalf Baechleconfig SIBYTE_CRHONE
4633fa986faSMartin Michlmayr	bool "Sibyte BCM91125C-CRhone"
4645e83d430SRalf Baechle	depends on EXPERIMENTAL
4655e83d430SRalf Baechle	select BOOT_ELF32
4665e83d430SRalf Baechle	select DMA_COHERENT
4675e83d430SRalf Baechle	select SIBYTE_BCM1125
4685e83d430SRalf Baechle	select SWAP_IO_SPACE
4697cf8053bSRalf Baechle	select SYS_HAS_CPU_SB1
4705e83d430SRalf Baechle	select SYS_SUPPORTS_BIG_ENDIAN
4715e83d430SRalf Baechle	select SYS_SUPPORTS_HIGHMEM
4725e83d430SRalf Baechle	select SYS_SUPPORTS_LITTLE_ENDIAN
4735e83d430SRalf Baechle
474ade299d8SYoichi Yuasaconfig SIBYTE_RHONE
475ade299d8SYoichi Yuasa	bool "Sibyte BCM91125E-Rhone"
476ade299d8SYoichi Yuasa	depends on EXPERIMENTAL
477ade299d8SYoichi Yuasa	select BOOT_ELF32
478ade299d8SYoichi Yuasa	select DMA_COHERENT
479ade299d8SYoichi Yuasa	select SIBYTE_BCM1125H
480ade299d8SYoichi Yuasa	select SWAP_IO_SPACE
481ade299d8SYoichi Yuasa	select SYS_HAS_CPU_SB1
482ade299d8SYoichi Yuasa	select SYS_SUPPORTS_BIG_ENDIAN
483ade299d8SYoichi Yuasa	select SYS_SUPPORTS_LITTLE_ENDIAN
484ade299d8SYoichi Yuasa
485ade299d8SYoichi Yuasaconfig SIBYTE_SWARM
486ade299d8SYoichi Yuasa	bool "Sibyte BCM91250A-SWARM"
487ade299d8SYoichi Yuasa	select BOOT_ELF32
488ade299d8SYoichi Yuasa	select DMA_COHERENT
489ade299d8SYoichi Yuasa	select NR_CPUS_DEFAULT_2
490ade299d8SYoichi Yuasa	select SIBYTE_SB1250
491ade299d8SYoichi Yuasa	select SWAP_IO_SPACE
492ade299d8SYoichi Yuasa	select SYS_HAS_CPU_SB1
493ade299d8SYoichi Yuasa	select SYS_SUPPORTS_BIG_ENDIAN
494ade299d8SYoichi Yuasa	select SYS_SUPPORTS_HIGHMEM
495ade299d8SYoichi Yuasa	select SYS_SUPPORTS_LITTLE_ENDIAN
496cce335aeSRalf Baechle	select ZONE_DMA32 if 64BIT
497ade299d8SYoichi Yuasa
498ade299d8SYoichi Yuasaconfig SIBYTE_LITTLESUR
499ade299d8SYoichi Yuasa	bool "Sibyte BCM91250C2-LittleSur"
500ade299d8SYoichi Yuasa	depends on EXPERIMENTAL
501ade299d8SYoichi Yuasa	select BOOT_ELF32
502ade299d8SYoichi Yuasa	select DMA_COHERENT
503ade299d8SYoichi Yuasa	select NR_CPUS_DEFAULT_2
504ade299d8SYoichi Yuasa	select SIBYTE_SB1250
505ade299d8SYoichi Yuasa	select SWAP_IO_SPACE
506ade299d8SYoichi Yuasa	select SYS_HAS_CPU_SB1
507ade299d8SYoichi Yuasa	select SYS_SUPPORTS_BIG_ENDIAN
508ade299d8SYoichi Yuasa	select SYS_SUPPORTS_HIGHMEM
509ade299d8SYoichi Yuasa	select SYS_SUPPORTS_LITTLE_ENDIAN
510ade299d8SYoichi Yuasa
511ade299d8SYoichi Yuasaconfig SIBYTE_SENTOSA
512ade299d8SYoichi Yuasa	bool "Sibyte BCM91250E-Sentosa"
513ade299d8SYoichi Yuasa	depends on EXPERIMENTAL
514ade299d8SYoichi Yuasa	select BOOT_ELF32
515ade299d8SYoichi Yuasa	select DMA_COHERENT
516ade299d8SYoichi Yuasa	select NR_CPUS_DEFAULT_2
517ade299d8SYoichi Yuasa	select SIBYTE_SB1250
518ade299d8SYoichi Yuasa	select SWAP_IO_SPACE
519ade299d8SYoichi Yuasa	select SYS_HAS_CPU_SB1
520ade299d8SYoichi Yuasa	select SYS_SUPPORTS_BIG_ENDIAN
521ade299d8SYoichi Yuasa	select SYS_SUPPORTS_LITTLE_ENDIAN
522ade299d8SYoichi Yuasa
523ade299d8SYoichi Yuasaconfig SIBYTE_BIGSUR
524ade299d8SYoichi Yuasa	bool "Sibyte BCM91480B-BigSur"
525ade299d8SYoichi Yuasa	select BOOT_ELF32
526ade299d8SYoichi Yuasa	select DMA_COHERENT
527ade299d8SYoichi Yuasa	select NR_CPUS_DEFAULT_4
528ade299d8SYoichi Yuasa	select SIBYTE_BCM1x80
529ade299d8SYoichi Yuasa	select SWAP_IO_SPACE
530ade299d8SYoichi Yuasa	select SYS_HAS_CPU_SB1
531ade299d8SYoichi Yuasa	select SYS_SUPPORTS_BIG_ENDIAN
532651194f8SRalf Baechle	select SYS_SUPPORTS_HIGHMEM
533ade299d8SYoichi Yuasa	select SYS_SUPPORTS_LITTLE_ENDIAN
534cce335aeSRalf Baechle	select ZONE_DMA32 if 64BIT
535ade299d8SYoichi Yuasa
53614b36af4SThomas Bogendoerferconfig SNI_RM
53714b36af4SThomas Bogendoerfer	bool "SNI RM200/300/400"
5384a0312fcSThomas Bogendoerfer	select ARC if CPU_LITTLE_ENDIAN
5394a0312fcSThomas Bogendoerfer	select ARC32 if CPU_LITTLE_ENDIAN
540231a35d3SThomas Bogendoerfer	select SNIPROM if CPU_BIG_ENDIAN
5415e83d430SRalf Baechle	select ARCH_MAY_HAVE_PC_FDC
5425e83d430SRalf Baechle	select BOOT_ELF32
54342f77542SRalf Baechle	select CEVT_R4K
544940f6b48SRalf Baechle	select CSRC_R4K
545e2defae5SThomas Bogendoerfer	select DEFAULT_SGI_PARTITION if CPU_BIG_ENDIAN
5465e83d430SRalf Baechle	select DMA_NONCOHERENT
5475e83d430SRalf Baechle	select GENERIC_ISA_DMA
5485e83d430SRalf Baechle	select HW_HAS_EISA
5495e83d430SRalf Baechle	select HW_HAS_PCI
550c066a32aSThomas Bogendoerfer	select IRQ_CPU
551d865bea4SRalf Baechle	select I8253
5525e83d430SRalf Baechle	select I8259
5535e83d430SRalf Baechle	select ISA
5544a0312fcSThomas Bogendoerfer	select SWAP_IO_SPACE if CPU_BIG_ENDIAN
5557cf8053bSRalf Baechle	select SYS_HAS_CPU_R4X00
5564a0312fcSThomas Bogendoerfer	select SYS_HAS_CPU_R5000
557c066a32aSThomas Bogendoerfer	select SYS_HAS_CPU_R10000
5584a0312fcSThomas Bogendoerfer	select R5000_CPU_SCACHE
55936a88530SRalf Baechle	select SYS_HAS_EARLY_PRINTK
560ed5ba2fbSYoichi Yuasa	select SYS_SUPPORTS_32BIT_KERNEL
5615e83d430SRalf Baechle	select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
5624a0312fcSThomas Bogendoerfer	select SYS_SUPPORTS_BIG_ENDIAN
5635e83d430SRalf Baechle	select SYS_SUPPORTS_HIGHMEM
5645e83d430SRalf Baechle	select SYS_SUPPORTS_LITTLE_ENDIAN
5651da177e4SLinus Torvalds	help
56614b36af4SThomas Bogendoerfer	  The SNI RM200/300/400 are MIPS-based machines manufactured by
56714b36af4SThomas Bogendoerfer	  Siemens Nixdorf Informationssysteme (SNI), parent company of Pyramid
5685e83d430SRalf Baechle	  Technology and now in turn merged with Fujitsu.  Say Y here to
5695e83d430SRalf Baechle	  support this machine type.
5701da177e4SLinus Torvalds
571edcaf1a6SAtsushi Nemotoconfig MACH_TX39XX
572edcaf1a6SAtsushi Nemoto	bool "Toshiba TX39 series based machines"
5735e83d430SRalf Baechle
574edcaf1a6SAtsushi Nemotoconfig MACH_TX49XX
575edcaf1a6SAtsushi Nemoto	bool "Toshiba TX49 series based machines"
57623fbee9dSRalf Baechle
57773b4390fSRalf Baechleconfig MIKROTIK_RB532
57873b4390fSRalf Baechle	bool "Mikrotik RB532 boards"
57973b4390fSRalf Baechle	select CEVT_R4K
58073b4390fSRalf Baechle	select CSRC_R4K
58173b4390fSRalf Baechle	select DMA_NONCOHERENT
58273b4390fSRalf Baechle	select HW_HAS_PCI
58373b4390fSRalf Baechle	select IRQ_CPU
58473b4390fSRalf Baechle	select SYS_HAS_CPU_MIPS32_R1
58573b4390fSRalf Baechle	select SYS_SUPPORTS_32BIT_KERNEL
58673b4390fSRalf Baechle	select SYS_SUPPORTS_LITTLE_ENDIAN
58773b4390fSRalf Baechle	select SWAP_IO_SPACE
58873b4390fSRalf Baechle	select BOOT_RAW
589d888e25bSFlorian Fainelli	select ARCH_REQUIRE_GPIOLIB
59073b4390fSRalf Baechle	help
59173b4390fSRalf Baechle	  Support the Mikrotik(tm) RouterBoard 532 series,
59273b4390fSRalf Baechle	  based on the IDT RC32434 SoC.
59373b4390fSRalf Baechle
594ade299d8SYoichi Yuasaconfig WR_PPMC
595ade299d8SYoichi Yuasa	bool "Wind River PPMC board"
59642f77542SRalf Baechle	select CEVT_R4K
597940f6b48SRalf Baechle	select CSRC_R4K
598ade299d8SYoichi Yuasa	select IRQ_CPU
599ade299d8SYoichi Yuasa	select BOOT_ELF32
600ade299d8SYoichi Yuasa	select DMA_NONCOHERENT
601ade299d8SYoichi Yuasa	select HW_HAS_PCI
602ade299d8SYoichi Yuasa	select PCI_GT64XXX_PCI0
603ade299d8SYoichi Yuasa	select SWAP_IO_SPACE
604ade299d8SYoichi Yuasa	select SYS_HAS_CPU_MIPS32_R1
605ade299d8SYoichi Yuasa	select SYS_HAS_CPU_MIPS32_R2
606ade299d8SYoichi Yuasa	select SYS_HAS_CPU_MIPS64_R1
607ade299d8SYoichi Yuasa	select SYS_HAS_CPU_NEVADA
608ade299d8SYoichi Yuasa	select SYS_HAS_CPU_RM7000
609ade299d8SYoichi Yuasa	select SYS_SUPPORTS_32BIT_KERNEL
610ade299d8SYoichi Yuasa	select SYS_SUPPORTS_64BIT_KERNEL
611ade299d8SYoichi Yuasa	select SYS_SUPPORTS_BIG_ENDIAN
612ade299d8SYoichi Yuasa	select SYS_SUPPORTS_LITTLE_ENDIAN
613ade299d8SYoichi Yuasa	help
614ade299d8SYoichi Yuasa	  This enables support for the Wind River MIPS32 4KC PPMC evaluation
615ade299d8SYoichi Yuasa	  board, which is based on GT64120 bridge chip.
616ade299d8SYoichi Yuasa
617a86c7f72SDavid Daneyconfig CAVIUM_OCTEON_SIMULATOR
618c9d89d97SYoichi Yuasa	bool "Cavium Networks Octeon Simulator"
619a86c7f72SDavid Daney	select CEVT_R4K
620a86c7f72SDavid Daney	select 64BIT_PHYS_ADDR
621a86c7f72SDavid Daney	select DMA_COHERENT
622a86c7f72SDavid Daney	select SYS_SUPPORTS_64BIT_KERNEL
623a86c7f72SDavid Daney	select SYS_SUPPORTS_BIG_ENDIAN
624a86c7f72SDavid Daney	select SYS_SUPPORTS_HIGHMEM
625773cb77dSRalf Baechle	select SYS_SUPPORTS_HOTPLUG_CPU
6265e683389SDavid Daney	select SYS_HAS_CPU_CAVIUM_OCTEON
627a86c7f72SDavid Daney	help
628a86c7f72SDavid Daney	  The Octeon simulator is software performance model of the Cavium
629a86c7f72SDavid Daney	  Octeon Processor. It supports simulating Octeon processors on x86
630a86c7f72SDavid Daney	  hardware.
631a86c7f72SDavid Daney
632a86c7f72SDavid Daneyconfig CAVIUM_OCTEON_REFERENCE_BOARD
633c9d89d97SYoichi Yuasa	bool "Cavium Networks Octeon reference board"
634a86c7f72SDavid Daney	select CEVT_R4K
635a86c7f72SDavid Daney	select 64BIT_PHYS_ADDR
636a86c7f72SDavid Daney	select DMA_COHERENT
637a86c7f72SDavid Daney	select SYS_SUPPORTS_64BIT_KERNEL
638a86c7f72SDavid Daney	select SYS_SUPPORTS_BIG_ENDIAN
639a86c7f72SDavid Daney	select SYS_SUPPORTS_HIGHMEM
640773cb77dSRalf Baechle	select SYS_SUPPORTS_HOTPLUG_CPU
641a86c7f72SDavid Daney	select SYS_HAS_EARLY_PRINTK
6425e683389SDavid Daney	select SYS_HAS_CPU_CAVIUM_OCTEON
643a86c7f72SDavid Daney	select SWAP_IO_SPACE
644e8635b48SDavid Daney	select HW_HAS_PCI
645e8635b48SDavid Daney	select ARCH_SUPPORTS_MSI
646a86c7f72SDavid Daney	help
647a86c7f72SDavid Daney	  This option supports all of the Octeon reference boards from Cavium
648a86c7f72SDavid Daney	  Networks. It builds a kernel that dynamically determines the Octeon
649a86c7f72SDavid Daney	  CPU type and supports all known board reference implementations.
650a86c7f72SDavid Daney	  Some of the supported boards are:
651a86c7f72SDavid Daney		EBT3000
652a86c7f72SDavid Daney		EBH3000
653a86c7f72SDavid Daney		EBH3100
654a86c7f72SDavid Daney		Thunder
655a86c7f72SDavid Daney		Kodama
656a86c7f72SDavid Daney		Hikari
657a86c7f72SDavid Daney	  Say Y here for most Octeon reference boards.
658a86c7f72SDavid Daney
6591da177e4SLinus Torvaldsendchoice
6601da177e4SLinus Torvalds
661e8c7c482SRalf Baechlesource "arch/mips/alchemy/Kconfig"
6629c746edbSYoichi Yuasasource "arch/mips/basler/excite/Kconfig"
6635e83d430SRalf Baechlesource "arch/mips/jazz/Kconfig"
6641f21d2bdSBrian Murphysource "arch/mips/lasat/Kconfig"
6655e83d430SRalf Baechlesource "arch/mips/pmc-sierra/Kconfig"
66629c48699SRalf Baechlesource "arch/mips/sgi-ip27/Kconfig"
66738b18f72SRalf Baechlesource "arch/mips/sibyte/Kconfig"
66822b1d707SAtsushi Nemotosource "arch/mips/txx9/Kconfig"
6695e83d430SRalf Baechlesource "arch/mips/vr41xx/Kconfig"
670a86c7f72SDavid Daneysource "arch/mips/cavium-octeon/Kconfig"
67138b18f72SRalf Baechle
6725e83d430SRalf Baechleendmenu
6735e83d430SRalf Baechle
6741da177e4SLinus Torvaldsconfig RWSEM_GENERIC_SPINLOCK
6751da177e4SLinus Torvalds	bool
6761da177e4SLinus Torvalds	default y
6771da177e4SLinus Torvalds
6781da177e4SLinus Torvaldsconfig RWSEM_XCHGADD_ALGORITHM
6791da177e4SLinus Torvalds	bool
6801da177e4SLinus Torvalds
681f0d1b0b3SDavid Howellsconfig ARCH_HAS_ILOG2_U32
682f0d1b0b3SDavid Howells	bool
683f0d1b0b3SDavid Howells	default n
684f0d1b0b3SDavid Howells
685f0d1b0b3SDavid Howellsconfig ARCH_HAS_ILOG2_U64
686f0d1b0b3SDavid Howells	bool
687f0d1b0b3SDavid Howells	default n
688f0d1b0b3SDavid Howells
68900a58253SRalf Baechleconfig ARCH_SUPPORTS_OPROFILE
69000a58253SRalf Baechle	bool
69100a58253SRalf Baechle	default y if !MIPS_MT_SMTC
69200a58253SRalf Baechle
6933c9ee7efSAkinobu Mitaconfig GENERIC_FIND_NEXT_BIT
6943c9ee7efSAkinobu Mita	bool
6953c9ee7efSAkinobu Mita	default y
6963c9ee7efSAkinobu Mita
6973c9ee7efSAkinobu Mitaconfig GENERIC_HWEIGHT
6983c9ee7efSAkinobu Mita	bool
6993c9ee7efSAkinobu Mita	default y
7003c9ee7efSAkinobu Mita
7011da177e4SLinus Torvaldsconfig GENERIC_CALIBRATE_DELAY
7021da177e4SLinus Torvalds	bool
7031da177e4SLinus Torvalds	default y
7041da177e4SLinus Torvalds
7057bcf7717SRalf Baechleconfig GENERIC_CLOCKEVENTS
7067bcf7717SRalf Baechle	bool
7077bcf7717SRalf Baechle	default y
7087bcf7717SRalf Baechle
7098db02010SRalf Baechleconfig GENERIC_TIME
7108db02010SRalf Baechle	bool
7118db02010SRalf Baechle	default y
7128db02010SRalf Baechle
713f5ff0a28SRalf Baechleconfig GENERIC_CMOS_UPDATE
714f5ff0a28SRalf Baechle	bool
715f5ff0a28SRalf Baechle	default y
716f5ff0a28SRalf Baechle
717ae1e9130SIngo Molnarconfig SCHED_OMIT_FRAME_POINTER
7181cc89038SAtsushi Nemoto	bool
7191cc89038SAtsushi Nemoto	default y
7201cc89038SAtsushi Nemoto
721e77c232cSFranck Bui-Huuconfig GENERIC_HARDIRQS_NO__DO_IRQ
722c87e0909SRalf Baechle	def_bool y
723e77c232cSFranck Bui-Huu
7241da177e4SLinus Torvalds#
7251da177e4SLinus Torvalds# Select some configuration options automatically based on user selections.
7261da177e4SLinus Torvalds#
7271da177e4SLinus Torvaldsconfig ARC
7281da177e4SLinus Torvalds	bool
7291da177e4SLinus Torvalds
73061ed242dSRalf Baechleconfig ARCH_MAY_HAVE_PC_FDC
73161ed242dSRalf Baechle	bool
73261ed242dSRalf Baechle
7339267a30dSMarc St-Jeanconfig BOOT_RAW
7349267a30dSMarc St-Jean	bool
7359267a30dSMarc St-Jean
736217dd11eSRalf Baechleconfig CEVT_BCM1480
737217dd11eSRalf Baechle	bool
738217dd11eSRalf Baechle
7396457d9fcSYoichi Yuasaconfig CEVT_DS1287
7406457d9fcSYoichi Yuasa	bool
7416457d9fcSYoichi Yuasa
7421097c6acSYoichi Yuasaconfig CEVT_GT641XX
7431097c6acSYoichi Yuasa	bool
7441097c6acSYoichi Yuasa
745779e7d41SManuel Laussconfig CEVT_R4K_LIB
746779e7d41SManuel Lauss	bool
747779e7d41SManuel Lauss
74842f77542SRalf Baechleconfig CEVT_R4K
749779e7d41SManuel Lauss	select CEVT_R4K_LIB
75042f77542SRalf Baechle	bool
75142f77542SRalf Baechle
752217dd11eSRalf Baechleconfig CEVT_SB1250
753217dd11eSRalf Baechle	bool
754217dd11eSRalf Baechle
755229f773eSAtsushi Nemotoconfig CEVT_TXX9
756229f773eSAtsushi Nemoto	bool
757229f773eSAtsushi Nemoto
758217dd11eSRalf Baechleconfig CSRC_BCM1480
759217dd11eSRalf Baechle	bool
760217dd11eSRalf Baechle
7614247417dSYoichi Yuasaconfig CSRC_IOASIC
7624247417dSYoichi Yuasa	bool
7634247417dSYoichi Yuasa
764779e7d41SManuel Laussconfig CSRC_R4K_LIB
765779e7d41SManuel Lauss	bool
766779e7d41SManuel Lauss
767940f6b48SRalf Baechleconfig CSRC_R4K
768779e7d41SManuel Lauss	select CSRC_R4K_LIB
769940f6b48SRalf Baechle	bool
770940f6b48SRalf Baechle
771217dd11eSRalf Baechleconfig CSRC_SB1250
772217dd11eSRalf Baechle	bool
773217dd11eSRalf Baechle
774a9aec7feSAtsushi Nemotoconfig GPIO_TXX9
775a9aec7feSAtsushi Nemoto	select GENERIC_GPIO
7767444a72eSMichael Buesch	select ARCH_REQUIRE_GPIOLIB
777a9aec7feSAtsushi Nemoto	bool
778a9aec7feSAtsushi Nemoto
779df78b5c8SAurelien Jarnoconfig CFE
780df78b5c8SAurelien Jarno	bool
781df78b5c8SAurelien Jarno
7821da177e4SLinus Torvaldsconfig DMA_COHERENT
7831da177e4SLinus Torvalds	bool
7841da177e4SLinus Torvalds
7851da177e4SLinus Torvaldsconfig DMA_NONCOHERENT
7861da177e4SLinus Torvalds	bool
7874ce588cdSRalf Baechle	select DMA_NEED_PCI_MAP_STATE
7884ce588cdSRalf Baechle
7894ce588cdSRalf Baechleconfig DMA_NEED_PCI_MAP_STATE
7904ce588cdSRalf Baechle	bool
7911da177e4SLinus Torvalds
7921da177e4SLinus Torvaldsconfig EARLY_PRINTK
79336a88530SRalf Baechle	bool "Early printk" if EMBEDDED && DEBUG_KERNEL
79436a88530SRalf Baechle	depends on SYS_HAS_EARLY_PRINTK
79536a88530SRalf Baechle	default y
79636a88530SRalf Baechle	help
79736a88530SRalf Baechle	  This option enables special console drivers which allow the kernel
79836a88530SRalf Baechle	  to print messages very early in the bootup process.
79936a88530SRalf Baechle
80036a88530SRalf Baechle	  This is useful for kernel debugging when your machine crashes very
801490dcc4dSRobert P. J. Day	  early before the console code is initialized. For normal operation,
802490dcc4dSRobert P. J. Day	  it is not recommended because it looks ugly on some machines and
803490dcc4dSRobert P. J. Day	  doesn't cooperate with an X server. You should normally say N here,
80436a88530SRalf Baechle	  unless you want to debug such a crash.
80536a88530SRalf Baechle
80636a88530SRalf Baechleconfig SYS_HAS_EARLY_PRINTK
8071da177e4SLinus Torvalds	bool
8081da177e4SLinus Torvalds
809dbb74540SRalf Baechleconfig HOTPLUG_CPU
8101b2bc75cSRalf Baechle	bool "Support for hot-pluggable CPUs"
8111b2bc75cSRalf Baechle	depends on SMP && HOTPLUG && SYS_SUPPORTS_HOTPLUG_CPU
8121b2bc75cSRalf Baechle	help
8131b2bc75cSRalf Baechle	  Say Y here to allow turning CPUs off and on. CPUs can be
8141b2bc75cSRalf Baechle	  controlled through /sys/devices/system/cpu.
8151b2bc75cSRalf Baechle	  (Note: power management support will enable this option
8161b2bc75cSRalf Baechle	    automatically on SMP systems. )
8171b2bc75cSRalf Baechle	  Say N if you want to disable CPU hotplug.
8181b2bc75cSRalf Baechle
8191b2bc75cSRalf Baechleconfig SYS_SUPPORTS_HOTPLUG_CPU
820dbb74540SRalf Baechle	bool
821dbb74540SRalf Baechle
8221da177e4SLinus Torvaldsconfig I8259
8231da177e4SLinus Torvalds	bool
8241da177e4SLinus Torvalds
8251da177e4SLinus Torvaldsconfig MIPS_BONITO64
8261da177e4SLinus Torvalds	bool
8271da177e4SLinus Torvalds
8281da177e4SLinus Torvaldsconfig MIPS_MSC
8291da177e4SLinus Torvalds	bool
8301da177e4SLinus Torvalds
8311f21d2bdSBrian Murphyconfig MIPS_NILE4
8321f21d2bdSBrian Murphy	bool
8331f21d2bdSBrian Murphy
8341da177e4SLinus Torvaldsconfig MIPS_DISABLE_OBSOLETE_IDE
8351da177e4SLinus Torvalds	bool
8361da177e4SLinus Torvalds
83739b8d525SRalf Baechleconfig SYNC_R4K
83839b8d525SRalf Baechle	bool
83939b8d525SRalf Baechle
840d388d685SMaciej W. Rozyckiconfig NO_IOPORT
841d388d685SMaciej W. Rozycki	def_bool n
842d388d685SMaciej W. Rozycki
8438313da30SRalf Baechleconfig GENERIC_ISA_DMA
8448313da30SRalf Baechle	bool
8458313da30SRalf Baechle	select ZONE_DMA if GENERIC_ISA_DMA_SUPPORT_BROKEN=n
8468313da30SRalf Baechle
847aa414dffSRalf Baechleconfig GENERIC_ISA_DMA_SUPPORT_BROKEN
848aa414dffSRalf Baechle	bool
8498313da30SRalf Baechle	select GENERIC_ISA_DMA
850aa414dffSRalf Baechle
85109663335SYoichi Yuasaconfig GENERIC_GPIO
85209663335SYoichi Yuasa	bool
85309663335SYoichi Yuasa
8545e83d430SRalf Baechle#
8553cb2fcccSMatt LaPlante# Endianess selection.  Sufficiently obscure so many users don't know what to
8565e83d430SRalf Baechle# answer,so we try hard to limit the available choices.  Also the use of a
8575e83d430SRalf Baechle# choice statement should be more obvious to the user.
8585e83d430SRalf Baechle#
8595e83d430SRalf Baechlechoice
8605e83d430SRalf Baechle	prompt "Endianess selection"
8611da177e4SLinus Torvalds	help
8621da177e4SLinus Torvalds	  Some MIPS machines can be configured for either little or big endian
8635e83d430SRalf Baechle	  byte order. These modes require different kernels and a different
8643cb2fcccSMatt LaPlante	  Linux distribution.  In general there is one preferred byteorder for a
8655e83d430SRalf Baechle	  particular system but some systems are just as commonly used in the
8663dde6ad8SDavid Sterba	  one or the other endianness.
8675e83d430SRalf Baechle
8685e83d430SRalf Baechleconfig CPU_BIG_ENDIAN
8695e83d430SRalf Baechle	bool "Big endian"
8705e83d430SRalf Baechle	depends on SYS_SUPPORTS_BIG_ENDIAN
8715e83d430SRalf Baechle
8725e83d430SRalf Baechleconfig CPU_LITTLE_ENDIAN
8735e83d430SRalf Baechle	bool "Little endian"
8745e83d430SRalf Baechle	depends on SYS_SUPPORTS_LITTLE_ENDIAN
8755e83d430SRalf Baechle	help
8765e83d430SRalf Baechle
8775e83d430SRalf Baechleendchoice
8785e83d430SRalf Baechle
8792116245eSRalf Baechleconfig SYS_SUPPORTS_APM_EMULATION
8802116245eSRalf Baechle	bool
8812116245eSRalf Baechle
8825e83d430SRalf Baechleconfig SYS_SUPPORTS_BIG_ENDIAN
8835e83d430SRalf Baechle	bool
8845e83d430SRalf Baechle
8855e83d430SRalf Baechleconfig SYS_SUPPORTS_LITTLE_ENDIAN
8865e83d430SRalf Baechle	bool
8871da177e4SLinus Torvalds
8889cffd154SDavid Daneyconfig SYS_SUPPORTS_HUGETLBFS
8899cffd154SDavid Daney	bool
8909cffd154SDavid Daney	depends on CPU_SUPPORTS_HUGEPAGES && 64BIT
8919cffd154SDavid Daney	default y
8929cffd154SDavid Daney
8931da177e4SLinus Torvaldsconfig IRQ_CPU
8941da177e4SLinus Torvalds	bool
8951da177e4SLinus Torvalds
8961da177e4SLinus Torvaldsconfig IRQ_CPU_RM7K
8971da177e4SLinus Torvalds	bool
8981da177e4SLinus Torvalds
8995e83d430SRalf Baechleconfig IRQ_CPU_RM9K
9005e83d430SRalf Baechle	bool
9015e83d430SRalf Baechle
9029267a30dSMarc St-Jeanconfig IRQ_MSP_SLP
9039267a30dSMarc St-Jean	bool
9049267a30dSMarc St-Jean
9059267a30dSMarc St-Jeanconfig IRQ_MSP_CIC
9069267a30dSMarc St-Jean	bool
9079267a30dSMarc St-Jean
9088420fd00SAtsushi Nemotoconfig IRQ_TXX9
9098420fd00SAtsushi Nemoto	bool
9108420fd00SAtsushi Nemoto
911d5ab1a69SYoichi Yuasaconfig IRQ_GT641XX
912d5ab1a69SYoichi Yuasa	bool
913d5ab1a69SYoichi Yuasa
91439b8d525SRalf Baechleconfig IRQ_GIC
91539b8d525SRalf Baechle	bool
91639b8d525SRalf Baechle
917a86c7f72SDavid Daneyconfig IRQ_CPU_OCTEON
918a86c7f72SDavid Daney	bool
919a86c7f72SDavid Daney
9201da177e4SLinus Torvaldsconfig MIPS_BOARDS_GEN
9211da177e4SLinus Torvalds	bool
9221da177e4SLinus Torvalds
923252161ecSYoichi Yuasaconfig PCI_GT64XXX_PCI0
9241da177e4SLinus Torvalds	bool
9251da177e4SLinus Torvalds
9269267a30dSMarc St-Jeanconfig NO_EXCEPT_FILL
9279267a30dSMarc St-Jean	bool
9289267a30dSMarc St-Jean
929663c3d90Sthomas@koeller.dyndns.orgconfig MIPS_RM9122
930663c3d90Sthomas@koeller.dyndns.org	bool
931663c3d90Sthomas@koeller.dyndns.org	select SERIAL_RM9000
932663c3d90Sthomas@koeller.dyndns.org
933a83860c2SRalf Baechleconfig SOC_EMMA2RH
934a83860c2SRalf Baechle	bool
935a83860c2SRalf Baechle	select CEVT_R4K
936a83860c2SRalf Baechle	select CSRC_R4K
937a83860c2SRalf Baechle	select DMA_NONCOHERENT
938a83860c2SRalf Baechle	select IRQ_CPU
939a83860c2SRalf Baechle	select SWAP_IO_SPACE
940a83860c2SRalf Baechle	select SYS_HAS_CPU_R5500
941a83860c2SRalf Baechle	select SYS_SUPPORTS_32BIT_KERNEL
942a83860c2SRalf Baechle	select SYS_SUPPORTS_64BIT_KERNEL
943a83860c2SRalf Baechle	select SYS_SUPPORTS_BIG_ENDIAN
944a83860c2SRalf Baechle
945edb6310aSDaniel Lairdconfig SOC_PNX833X
946edb6310aSDaniel Laird	bool
947edb6310aSDaniel Laird	select CEVT_R4K
948edb6310aSDaniel Laird	select CSRC_R4K
949edb6310aSDaniel Laird	select IRQ_CPU
950edb6310aSDaniel Laird	select DMA_NONCOHERENT
951edb6310aSDaniel Laird	select SYS_HAS_CPU_MIPS32_R2
952edb6310aSDaniel Laird	select SYS_SUPPORTS_32BIT_KERNEL
953edb6310aSDaniel Laird	select SYS_SUPPORTS_LITTLE_ENDIAN
954edb6310aSDaniel Laird	select SYS_SUPPORTS_BIG_ENDIAN
955edb6310aSDaniel Laird	select GENERIC_GPIO
956edb6310aSDaniel Laird	select CPU_MIPSR2_IRQ_VI
957edb6310aSDaniel Laird
958edb6310aSDaniel Lairdconfig SOC_PNX8335
959edb6310aSDaniel Laird	bool
960edb6310aSDaniel Laird	select SOC_PNX833X
961edb6310aSDaniel Laird
962bdf21b18SPete Popovconfig PNX8550
963bdf21b18SPete Popov	bool
964bdf21b18SPete Popov	select SOC_PNX8550
965bdf21b18SPete Popov
966bdf21b18SPete Popovconfig SOC_PNX8550
967bdf21b18SPete Popov	bool
968bdf21b18SPete Popov	select DMA_NONCOHERENT
969bdf21b18SPete Popov	select HW_HAS_PCI
970b8c2a77cSRalf Baechle	select SYS_HAS_CPU_MIPS32_R1
97136a88530SRalf Baechle	select SYS_HAS_EARLY_PRINTK
9727cf8053bSRalf Baechle	select SYS_SUPPORTS_32BIT_KERNEL
9734ead1681SFlorian Fainelli	select GENERIC_GPIO
974bdf21b18SPete Popov
9751da177e4SLinus Torvaldsconfig SWAP_IO_SPACE
9761da177e4SLinus Torvalds	bool
9771da177e4SLinus Torvalds
978663c3d90Sthomas@koeller.dyndns.orgconfig SERIAL_RM9000
979663c3d90Sthomas@koeller.dyndns.org	bool
980663c3d90Sthomas@koeller.dyndns.org
981e2defae5SThomas Bogendoerferconfig SGI_HAS_INDYDOG
982e2defae5SThomas Bogendoerfer	bool
983e2defae5SThomas Bogendoerfer
9845b438c44SThomas Bogendoerferconfig SGI_HAS_HAL2
9855b438c44SThomas Bogendoerfer	bool
9865b438c44SThomas Bogendoerfer
987e2defae5SThomas Bogendoerferconfig SGI_HAS_SEEQ
988e2defae5SThomas Bogendoerfer	bool
989e2defae5SThomas Bogendoerfer
990e2defae5SThomas Bogendoerferconfig SGI_HAS_WD93
991e2defae5SThomas Bogendoerfer	bool
992e2defae5SThomas Bogendoerfer
993e2defae5SThomas Bogendoerferconfig SGI_HAS_ZILOG
994e2defae5SThomas Bogendoerfer	bool
995e2defae5SThomas Bogendoerfer
996e2defae5SThomas Bogendoerferconfig SGI_HAS_I8042
997e2defae5SThomas Bogendoerfer	bool
998e2defae5SThomas Bogendoerfer
999e2defae5SThomas Bogendoerferconfig DEFAULT_SGI_PARTITION
1000e2defae5SThomas Bogendoerfer	bool
1001e2defae5SThomas Bogendoerfer
10025e83d430SRalf Baechleconfig ARC32
10035e83d430SRalf Baechle	bool
10045e83d430SRalf Baechle
1005231a35d3SThomas Bogendoerferconfig SNIPROM
1006231a35d3SThomas Bogendoerfer	bool
1007231a35d3SThomas Bogendoerfer
10081da177e4SLinus Torvaldsconfig BOOT_ELF32
10091da177e4SLinus Torvalds	bool
10101da177e4SLinus Torvalds
10111da177e4SLinus Torvaldsconfig MIPS_L1_CACHE_SHIFT
10121da177e4SLinus Torvalds	int
101373b4390fSRalf Baechle	default "4" if MACH_DECSTATION || MIKROTIK_RB532
1014a86c7f72SDavid Daney	default "7" if SGI_IP22 || SGI_IP27 || SGI_IP28 || SNI_RM || CPU_CAVIUM_OCTEON
10159267a30dSMarc St-Jean	default "4" if PMC_MSP4200_EVAL
10161da177e4SLinus Torvalds	default "5"
10171da177e4SLinus Torvalds
10181da177e4SLinus Torvaldsconfig HAVE_STD_PC_SERIAL_PORT
10191da177e4SLinus Torvalds	bool
10201da177e4SLinus Torvalds
10211da177e4SLinus Torvaldsconfig ARC_CONSOLE
10221da177e4SLinus Torvalds	bool "ARC console support"
1023e2defae5SThomas Bogendoerfer	depends on SGI_IP22 || SGI_IP28 || (SNI_RM && CPU_LITTLE_ENDIAN)
10241da177e4SLinus Torvalds
10251da177e4SLinus Torvaldsconfig ARC_MEMORY
10261da177e4SLinus Torvalds	bool
102714b36af4SThomas Bogendoerfer	depends on MACH_JAZZ || SNI_RM || SGI_IP32
10281da177e4SLinus Torvalds	default y
10291da177e4SLinus Torvalds
10301da177e4SLinus Torvaldsconfig ARC_PROMLIB
10311da177e4SLinus Torvalds	bool
1032e2defae5SThomas Bogendoerfer	depends on MACH_JAZZ || SNI_RM || SGI_IP22 || SGI_IP28 || SGI_IP32
10331da177e4SLinus Torvalds	default y
10341da177e4SLinus Torvalds
10351da177e4SLinus Torvaldsconfig ARC64
10361da177e4SLinus Torvalds	bool
10371da177e4SLinus Torvalds
10381da177e4SLinus Torvaldsconfig BOOT_ELF64
10391da177e4SLinus Torvalds	bool
10401da177e4SLinus Torvalds
10411da177e4SLinus Torvaldsmenu "CPU selection"
10421da177e4SLinus Torvalds
10431da177e4SLinus Torvaldschoice
10441da177e4SLinus Torvalds	prompt "CPU type"
10451da177e4SLinus Torvalds	default CPU_R4X00
10461da177e4SLinus Torvalds
10472a21c730SFuxin Zhangconfig CPU_LOONGSON2
10482a21c730SFuxin Zhang	bool "Loongson 2"
10492a21c730SFuxin Zhang	depends on SYS_HAS_CPU_LOONGSON2
10502a21c730SFuxin Zhang	select CPU_SUPPORTS_32BIT_KERNEL
10512a21c730SFuxin Zhang	select CPU_SUPPORTS_64BIT_KERNEL
10522a21c730SFuxin Zhang	select CPU_SUPPORTS_HIGHMEM
10532a21c730SFuxin Zhang	help
10542a21c730SFuxin Zhang	  The Loongson 2E processor implements the MIPS III instruction set
10552a21c730SFuxin Zhang	  with many extensions.
10562a21c730SFuxin Zhang
10576e760c8dSRalf Baechleconfig CPU_MIPS32_R1
10586e760c8dSRalf Baechle	bool "MIPS32 Release 1"
10597cf8053bSRalf Baechle	depends on SYS_HAS_CPU_MIPS32_R1
1060f7062ddbSRalf Baechle	select CPU_HAS_LLSC
10616e760c8dSRalf Baechle	select CPU_HAS_PREFETCH
1062797798c1SRalf Baechle	select CPU_SUPPORTS_32BIT_KERNEL
1063ec28f306SRalf Baechle	select CPU_SUPPORTS_HIGHMEM
10646e760c8dSRalf Baechle	help
10655e83d430SRalf Baechle	  Choose this option to build a kernel for release 1 or later of the
10661e5f1caaSRalf Baechle	  MIPS32 architecture.  Most modern embedded systems with a 32-bit
10671e5f1caaSRalf Baechle	  MIPS processor are based on a MIPS32 processor.  If you know the
10681e5f1caaSRalf Baechle	  specific type of processor in your system, choose those that one
10691e5f1caaSRalf Baechle	  otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
10701e5f1caaSRalf Baechle	  Release 2 of the MIPS32 architecture is available since several
10711e5f1caaSRalf Baechle	  years so chances are you even have a MIPS32 Release 2 processor
10721e5f1caaSRalf Baechle	  in which case you should choose CPU_MIPS32_R2 instead for better
10731e5f1caaSRalf Baechle	  performance.
10741e5f1caaSRalf Baechle
10751e5f1caaSRalf Baechleconfig CPU_MIPS32_R2
10761e5f1caaSRalf Baechle	bool "MIPS32 Release 2"
10777cf8053bSRalf Baechle	depends on SYS_HAS_CPU_MIPS32_R2
1078f7062ddbSRalf Baechle	select CPU_HAS_LLSC
10791e5f1caaSRalf Baechle	select CPU_HAS_PREFETCH
1080797798c1SRalf Baechle	select CPU_SUPPORTS_32BIT_KERNEL
1081ec28f306SRalf Baechle	select CPU_SUPPORTS_HIGHMEM
10821e5f1caaSRalf Baechle	help
10835e83d430SRalf Baechle	  Choose this option to build a kernel for release 2 or later of the
10846e760c8dSRalf Baechle	  MIPS32 architecture.  Most modern embedded systems with a 32-bit
10856e760c8dSRalf Baechle	  MIPS processor are based on a MIPS32 processor.  If you know the
10866e760c8dSRalf Baechle	  specific type of processor in your system, choose those that one
10876e760c8dSRalf Baechle	  otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
10881da177e4SLinus Torvalds
10896e760c8dSRalf Baechleconfig CPU_MIPS64_R1
10906e760c8dSRalf Baechle	bool "MIPS64 Release 1"
10917cf8053bSRalf Baechle	depends on SYS_HAS_CPU_MIPS64_R1
1092f7062ddbSRalf Baechle	select CPU_HAS_LLSC
1093797798c1SRalf Baechle	select CPU_HAS_PREFETCH
1094ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1095ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
1096ec28f306SRalf Baechle	select CPU_SUPPORTS_HIGHMEM
10979cffd154SDavid Daney	select CPU_SUPPORTS_HUGEPAGES
10986e760c8dSRalf Baechle	help
10996e760c8dSRalf Baechle	  Choose this option to build a kernel for release 1 or later of the
11006e760c8dSRalf Baechle	  MIPS64 architecture.  Many modern embedded systems with a 64-bit
11016e760c8dSRalf Baechle	  MIPS processor are based on a MIPS64 processor.  If you know the
11026e760c8dSRalf Baechle	  specific type of processor in your system, choose those that one
11036e760c8dSRalf Baechle	  otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
11041e5f1caaSRalf Baechle	  Release 2 of the MIPS64 architecture is available since several
11051e5f1caaSRalf Baechle	  years so chances are you even have a MIPS64 Release 2 processor
11061e5f1caaSRalf Baechle	  in which case you should choose CPU_MIPS64_R2 instead for better
11071e5f1caaSRalf Baechle	  performance.
11081e5f1caaSRalf Baechle
11091e5f1caaSRalf Baechleconfig CPU_MIPS64_R2
11101e5f1caaSRalf Baechle	bool "MIPS64 Release 2"
11117cf8053bSRalf Baechle	depends on SYS_HAS_CPU_MIPS64_R2
1112f7062ddbSRalf Baechle	select CPU_HAS_LLSC
1113797798c1SRalf Baechle	select CPU_HAS_PREFETCH
11141e5f1caaSRalf Baechle	select CPU_SUPPORTS_32BIT_KERNEL
11151e5f1caaSRalf Baechle	select CPU_SUPPORTS_64BIT_KERNEL
1116ec28f306SRalf Baechle	select CPU_SUPPORTS_HIGHMEM
11179cffd154SDavid Daney	select CPU_SUPPORTS_HUGEPAGES
11181e5f1caaSRalf Baechle	help
11191e5f1caaSRalf Baechle	  Choose this option to build a kernel for release 2 or later of the
11201e5f1caaSRalf Baechle	  MIPS64 architecture.  Many modern embedded systems with a 64-bit
11211e5f1caaSRalf Baechle	  MIPS processor are based on a MIPS64 processor.  If you know the
11221e5f1caaSRalf Baechle	  specific type of processor in your system, choose those that one
11231e5f1caaSRalf Baechle	  otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
11241da177e4SLinus Torvalds
11251da177e4SLinus Torvaldsconfig CPU_R3000
11261da177e4SLinus Torvalds	bool "R3000"
11277cf8053bSRalf Baechle	depends on SYS_HAS_CPU_R3000
1128f7062ddbSRalf Baechle	select CPU_HAS_WB
1129ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1130797798c1SRalf Baechle	select CPU_SUPPORTS_HIGHMEM
11311da177e4SLinus Torvalds	help
11321da177e4SLinus Torvalds	  Please make sure to pick the right CPU type. Linux/MIPS is not
11331da177e4SLinus Torvalds	  designed to be generic, i.e. Kernels compiled for R3000 CPUs will
11341da177e4SLinus Torvalds	  *not* work on R4000 machines and vice versa.  However, since most
11351da177e4SLinus Torvalds	  of the supported machines have an R4000 (or similar) CPU, R4x00
11361da177e4SLinus Torvalds	  might be a safe bet.  If the resulting kernel does not work,
11371da177e4SLinus Torvalds	  try to recompile with R3000.
11381da177e4SLinus Torvalds
11391da177e4SLinus Torvaldsconfig CPU_TX39XX
11401da177e4SLinus Torvalds	bool "R39XX"
11417cf8053bSRalf Baechle	depends on SYS_HAS_CPU_TX39XX
1142ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
11431da177e4SLinus Torvalds
11441da177e4SLinus Torvaldsconfig CPU_VR41XX
11451da177e4SLinus Torvalds	bool "R41xx"
11467cf8053bSRalf Baechle	depends on SYS_HAS_CPU_VR41XX
1147ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1148ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
11491da177e4SLinus Torvalds	help
11505e83d430SRalf Baechle	  The options selects support for the NEC VR4100 series of processors.
11511da177e4SLinus Torvalds	  Only choose this option if you have one of these processors as a
11521da177e4SLinus Torvalds	  kernel built with this option will not run on any other type of
11531da177e4SLinus Torvalds	  processor or vice versa.
11541da177e4SLinus Torvalds
11551da177e4SLinus Torvaldsconfig CPU_R4300
11561da177e4SLinus Torvalds	bool "R4300"
11577cf8053bSRalf Baechle	depends on SYS_HAS_CPU_R4300
1158f7062ddbSRalf Baechle	select CPU_HAS_LLSC
1159ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1160ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
11611da177e4SLinus Torvalds	help
11621da177e4SLinus Torvalds	  MIPS Technologies R4300-series processors.
11631da177e4SLinus Torvalds
11641da177e4SLinus Torvaldsconfig CPU_R4X00
11651da177e4SLinus Torvalds	bool "R4x00"
11667cf8053bSRalf Baechle	depends on SYS_HAS_CPU_R4X00
1167f7062ddbSRalf Baechle	select CPU_HAS_LLSC
1168ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1169ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
11701da177e4SLinus Torvalds	help
11711da177e4SLinus Torvalds	  MIPS Technologies R4000-series processors other than 4300, including
11721da177e4SLinus Torvalds	  the R4000, R4400, R4600, and 4700.
11731da177e4SLinus Torvalds
11741da177e4SLinus Torvaldsconfig CPU_TX49XX
11751da177e4SLinus Torvalds	bool "R49XX"
11767cf8053bSRalf Baechle	depends on SYS_HAS_CPU_TX49XX
1177f7062ddbSRalf Baechle	select CPU_HAS_LLSC
1178de862b48SAtsushi Nemoto	select CPU_HAS_PREFETCH
1179ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1180ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
11811da177e4SLinus Torvalds
11821da177e4SLinus Torvaldsconfig CPU_R5000
11831da177e4SLinus Torvalds	bool "R5000"
11847cf8053bSRalf Baechle	depends on SYS_HAS_CPU_R5000
1185f7062ddbSRalf Baechle	select CPU_HAS_LLSC
1186ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1187ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
11881da177e4SLinus Torvalds	help
11891da177e4SLinus Torvalds	  MIPS Technologies R5000-series processors other than the Nevada.
11901da177e4SLinus Torvalds
11911da177e4SLinus Torvaldsconfig CPU_R5432
11921da177e4SLinus Torvalds	bool "R5432"
11937cf8053bSRalf Baechle	depends on SYS_HAS_CPU_R5432
1194f7062ddbSRalf Baechle	select CPU_HAS_LLSC
11955e83d430SRalf Baechle	select CPU_SUPPORTS_32BIT_KERNEL
11965e83d430SRalf Baechle	select CPU_SUPPORTS_64BIT_KERNEL
11971da177e4SLinus Torvalds
1198542c1020SShinya Kuribayashiconfig CPU_R5500
1199542c1020SShinya Kuribayashi	bool "R5500"
1200542c1020SShinya Kuribayashi	depends on SYS_HAS_CPU_R5500
1201542c1020SShinya Kuribayashi	select CPU_HAS_LLSC
1202542c1020SShinya Kuribayashi	select CPU_SUPPORTS_32BIT_KERNEL
1203542c1020SShinya Kuribayashi	select CPU_SUPPORTS_64BIT_KERNEL
12049cffd154SDavid Daney	select CPU_SUPPORTS_HUGEPAGES
1205542c1020SShinya Kuribayashi	help
1206542c1020SShinya Kuribayashi	  NEC VR5500 and VR5500A series processors implement 64-bit MIPS IV
1207542c1020SShinya Kuribayashi	  instruction set.
1208542c1020SShinya Kuribayashi
12091da177e4SLinus Torvaldsconfig CPU_R6000
12101da177e4SLinus Torvalds	bool "R6000"
1211ed5ba2fbSYoichi Yuasa	depends on EXPERIMENTAL
1212f7062ddbSRalf Baechle	select CPU_HAS_LLSC
12137cf8053bSRalf Baechle	depends on SYS_HAS_CPU_R6000
1214ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
12151da177e4SLinus Torvalds	help
12161da177e4SLinus Torvalds	  MIPS Technologies R6000 and R6000A series processors.  Note these
1217c09b47d8SChris Dearman	  processors are extremely rare and the support for them is incomplete.
12181da177e4SLinus Torvalds
12191da177e4SLinus Torvaldsconfig CPU_NEVADA
12201da177e4SLinus Torvalds	bool "RM52xx"
12217cf8053bSRalf Baechle	depends on SYS_HAS_CPU_NEVADA
1222f7062ddbSRalf Baechle	select CPU_HAS_LLSC
1223ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1224ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
12251da177e4SLinus Torvalds	help
12261da177e4SLinus Torvalds	  QED / PMC-Sierra RM52xx-series ("Nevada") processors.
12271da177e4SLinus Torvalds
12281da177e4SLinus Torvaldsconfig CPU_R8000
12291da177e4SLinus Torvalds	bool "R8000"
1230ed5ba2fbSYoichi Yuasa	depends on EXPERIMENTAL
12317cf8053bSRalf Baechle	depends on SYS_HAS_CPU_R8000
1232f7062ddbSRalf Baechle	select CPU_HAS_LLSC
12335e83d430SRalf Baechle	select CPU_HAS_PREFETCH
1234ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
12351da177e4SLinus Torvalds	help
12361da177e4SLinus Torvalds	  MIPS Technologies R8000 processors.  Note these processors are
12371da177e4SLinus Torvalds	  uncommon and the support for them is incomplete.
12381da177e4SLinus Torvalds
12391da177e4SLinus Torvaldsconfig CPU_R10000
12401da177e4SLinus Torvalds	bool "R10000"
12417cf8053bSRalf Baechle	depends on SYS_HAS_CPU_R10000
1242f7062ddbSRalf Baechle	select CPU_HAS_LLSC
12435e83d430SRalf Baechle	select CPU_HAS_PREFETCH
1244ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1245ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
1246797798c1SRalf Baechle	select CPU_SUPPORTS_HIGHMEM
12471da177e4SLinus Torvalds	help
12481da177e4SLinus Torvalds	  MIPS Technologies R10000-series processors.
12491da177e4SLinus Torvalds
12501da177e4SLinus Torvaldsconfig CPU_RM7000
12511da177e4SLinus Torvalds	bool "RM7000"
12527cf8053bSRalf Baechle	depends on SYS_HAS_CPU_RM7000
1253f7062ddbSRalf Baechle	select CPU_HAS_LLSC
12545e83d430SRalf Baechle	select CPU_HAS_PREFETCH
1255ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1256ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
1257797798c1SRalf Baechle	select CPU_SUPPORTS_HIGHMEM
12581da177e4SLinus Torvalds
12591da177e4SLinus Torvaldsconfig CPU_RM9000
12601da177e4SLinus Torvalds	bool "RM9000"
12617cf8053bSRalf Baechle	depends on SYS_HAS_CPU_RM9000
1262f7062ddbSRalf Baechle	select CPU_HAS_LLSC
12635e83d430SRalf Baechle	select CPU_HAS_PREFETCH
1264ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1265ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
1266797798c1SRalf Baechle	select CPU_SUPPORTS_HIGHMEM
12670004a9dfSRalf Baechle	select WEAK_ORDERING
12681da177e4SLinus Torvalds
12691da177e4SLinus Torvaldsconfig CPU_SB1
12701da177e4SLinus Torvalds	bool "SB1"
12717cf8053bSRalf Baechle	depends on SYS_HAS_CPU_SB1
1272f7062ddbSRalf Baechle	select CPU_HAS_LLSC
1273ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1274ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
1275797798c1SRalf Baechle	select CPU_SUPPORTS_HIGHMEM
12760004a9dfSRalf Baechle	select WEAK_ORDERING
12771da177e4SLinus Torvalds
1278a86c7f72SDavid Daneyconfig CPU_CAVIUM_OCTEON
1279a86c7f72SDavid Daney	bool "Cavium Octeon processor"
12805e683389SDavid Daney	depends on SYS_HAS_CPU_CAVIUM_OCTEON
1281a86c7f72SDavid Daney	select IRQ_CPU
1282a86c7f72SDavid Daney	select IRQ_CPU_OCTEON
1283a86c7f72SDavid Daney	select CPU_HAS_PREFETCH
1284a86c7f72SDavid Daney	select CPU_SUPPORTS_64BIT_KERNEL
1285a86c7f72SDavid Daney	select SYS_SUPPORTS_SMP
1286a86c7f72SDavid Daney	select NR_CPUS_DEFAULT_16
1287a86c7f72SDavid Daney	select WEAK_ORDERING
1288a86c7f72SDavid Daney	select WEAK_REORDERING_BEYOND_LLSC
1289a86c7f72SDavid Daney	select CPU_SUPPORTS_HIGHMEM
12909cffd154SDavid Daney	select CPU_SUPPORTS_HUGEPAGES
1291a86c7f72SDavid Daney	help
1292a86c7f72SDavid Daney	  The Cavium Octeon processor is a highly integrated chip containing
1293a86c7f72SDavid Daney	  many ethernet hardware widgets for networking tasks. The processor
1294a86c7f72SDavid Daney	  can have up to 16 Mips64v2 cores and 8 integrated gigabit ethernets.
1295a86c7f72SDavid Daney	  Full details can be found at http://www.caviumnetworks.com.
1296a86c7f72SDavid Daney
12971da177e4SLinus Torvaldsendchoice
12981da177e4SLinus Torvalds
12992a21c730SFuxin Zhangconfig SYS_HAS_CPU_LOONGSON2
13002a21c730SFuxin Zhang	bool
13012a21c730SFuxin Zhang
13027cf8053bSRalf Baechleconfig SYS_HAS_CPU_MIPS32_R1
13037cf8053bSRalf Baechle	bool
13047cf8053bSRalf Baechle
13057cf8053bSRalf Baechleconfig SYS_HAS_CPU_MIPS32_R2
13067cf8053bSRalf Baechle	bool
13077cf8053bSRalf Baechle
13087cf8053bSRalf Baechleconfig SYS_HAS_CPU_MIPS64_R1
13097cf8053bSRalf Baechle	bool
13107cf8053bSRalf Baechle
13117cf8053bSRalf Baechleconfig SYS_HAS_CPU_MIPS64_R2
13127cf8053bSRalf Baechle	bool
13137cf8053bSRalf Baechle
13147cf8053bSRalf Baechleconfig SYS_HAS_CPU_R3000
13157cf8053bSRalf Baechle	bool
13167cf8053bSRalf Baechle
13177cf8053bSRalf Baechleconfig SYS_HAS_CPU_TX39XX
13187cf8053bSRalf Baechle	bool
13197cf8053bSRalf Baechle
13207cf8053bSRalf Baechleconfig SYS_HAS_CPU_VR41XX
13217cf8053bSRalf Baechle	bool
13227cf8053bSRalf Baechle
13237cf8053bSRalf Baechleconfig SYS_HAS_CPU_R4300
13247cf8053bSRalf Baechle	bool
13257cf8053bSRalf Baechle
13267cf8053bSRalf Baechleconfig SYS_HAS_CPU_R4X00
13277cf8053bSRalf Baechle	bool
13287cf8053bSRalf Baechle
13297cf8053bSRalf Baechleconfig SYS_HAS_CPU_TX49XX
13307cf8053bSRalf Baechle	bool
13317cf8053bSRalf Baechle
13327cf8053bSRalf Baechleconfig SYS_HAS_CPU_R5000
13337cf8053bSRalf Baechle	bool
13347cf8053bSRalf Baechle
13357cf8053bSRalf Baechleconfig SYS_HAS_CPU_R5432
13367cf8053bSRalf Baechle	bool
13377cf8053bSRalf Baechle
1338542c1020SShinya Kuribayashiconfig SYS_HAS_CPU_R5500
1339542c1020SShinya Kuribayashi	bool
1340542c1020SShinya Kuribayashi
13417cf8053bSRalf Baechleconfig SYS_HAS_CPU_R6000
13427cf8053bSRalf Baechle	bool
13437cf8053bSRalf Baechle
13447cf8053bSRalf Baechleconfig SYS_HAS_CPU_NEVADA
13457cf8053bSRalf Baechle	bool
13467cf8053bSRalf Baechle
13477cf8053bSRalf Baechleconfig SYS_HAS_CPU_R8000
13487cf8053bSRalf Baechle	bool
13497cf8053bSRalf Baechle
13507cf8053bSRalf Baechleconfig SYS_HAS_CPU_R10000
13517cf8053bSRalf Baechle	bool
13527cf8053bSRalf Baechle
13537cf8053bSRalf Baechleconfig SYS_HAS_CPU_RM7000
13547cf8053bSRalf Baechle	bool
13557cf8053bSRalf Baechle
13567cf8053bSRalf Baechleconfig SYS_HAS_CPU_RM9000
13577cf8053bSRalf Baechle	bool
13587cf8053bSRalf Baechle
13597cf8053bSRalf Baechleconfig SYS_HAS_CPU_SB1
13607cf8053bSRalf Baechle	bool
13617cf8053bSRalf Baechle
13625e683389SDavid Daneyconfig SYS_HAS_CPU_CAVIUM_OCTEON
13635e683389SDavid Daney	bool
13645e683389SDavid Daney
136517099b11SRalf Baechle#
136617099b11SRalf Baechle# CPU may reorder R->R, R->W, W->R, W->W
136717099b11SRalf Baechle# Reordering beyond LL and SC is handled in WEAK_REORDERING_BEYOND_LLSC
136817099b11SRalf Baechle#
13690004a9dfSRalf Baechleconfig WEAK_ORDERING
13700004a9dfSRalf Baechle	bool
137117099b11SRalf Baechle
137217099b11SRalf Baechle#
137317099b11SRalf Baechle# CPU may reorder reads and writes beyond LL/SC
137417099b11SRalf Baechle# CPU may reorder R->LL, R->LL, W->LL, W->LL, R->SC, R->SC, W->SC, W->SC
137517099b11SRalf Baechle#
137617099b11SRalf Baechleconfig WEAK_REORDERING_BEYOND_LLSC
137717099b11SRalf Baechle	bool
13785e83d430SRalf Baechleendmenu
13795e83d430SRalf Baechle
13805e83d430SRalf Baechle#
13815e83d430SRalf Baechle# These two indicate any level of the MIPS32 and MIPS64 architecture
13825e83d430SRalf Baechle#
13835e83d430SRalf Baechleconfig CPU_MIPS32
13845e83d430SRalf Baechle	bool
13855e83d430SRalf Baechle	default y if CPU_MIPS32_R1 || CPU_MIPS32_R2
13865e83d430SRalf Baechle
13875e83d430SRalf Baechleconfig CPU_MIPS64
13885e83d430SRalf Baechle	bool
13895e83d430SRalf Baechle	default y if CPU_MIPS64_R1 || CPU_MIPS64_R2
13905e83d430SRalf Baechle
13915e83d430SRalf Baechle#
1392c09b47d8SChris Dearman# These two indicate the revision of the architecture, either Release 1 or Release 2
13935e83d430SRalf Baechle#
13945e83d430SRalf Baechleconfig CPU_MIPSR1
13955e83d430SRalf Baechle	bool
13965e83d430SRalf Baechle	default y if CPU_MIPS32_R1 || CPU_MIPS64_R1
13975e83d430SRalf Baechle
13985e83d430SRalf Baechleconfig CPU_MIPSR2
13995e83d430SRalf Baechle	bool
1400a86c7f72SDavid Daney	default y if CPU_MIPS32_R2 || CPU_MIPS64_R2 || CPU_CAVIUM_OCTEON
14015e83d430SRalf Baechle
14025e83d430SRalf Baechleconfig SYS_SUPPORTS_32BIT_KERNEL
14035e83d430SRalf Baechle	bool
14045e83d430SRalf Baechleconfig SYS_SUPPORTS_64BIT_KERNEL
14055e83d430SRalf Baechle	bool
14065e83d430SRalf Baechleconfig CPU_SUPPORTS_32BIT_KERNEL
14075e83d430SRalf Baechle	bool
14085e83d430SRalf Baechleconfig CPU_SUPPORTS_64BIT_KERNEL
14095e83d430SRalf Baechle	bool
14109cffd154SDavid Daneyconfig CPU_SUPPORTS_HUGEPAGES
14119cffd154SDavid Daney	bool
14125e83d430SRalf Baechle
14138192c9eaSDavid Daney#
14148192c9eaSDavid Daney# Set to y for ptrace access to watch registers.
14158192c9eaSDavid Daney#
14168192c9eaSDavid Daneyconfig HARDWARE_WATCHPOINTS
14178192c9eaSDavid Daney       bool
1418f839490aSDavid Daney       default y if CPU_MIPSR1 || CPU_MIPSR2
14198192c9eaSDavid Daney
14205e83d430SRalf Baechlemenu "Kernel type"
14215e83d430SRalf Baechle
14225e83d430SRalf Baechlechoice
14235e83d430SRalf Baechle
14245e83d430SRalf Baechle	prompt "Kernel code model"
14255e83d430SRalf Baechle	help
14265e83d430SRalf Baechle	  You should only select this option if you have a workload that
14275e83d430SRalf Baechle	  actually benefits from 64-bit processing or if your machine has
14285e83d430SRalf Baechle	  large memory.  You will only be presented a single option in this
14295e83d430SRalf Baechle	  menu if your system does not support both 32-bit and 64-bit kernels.
14305e83d430SRalf Baechle
14315e83d430SRalf Baechleconfig 32BIT
14325e83d430SRalf Baechle	bool "32-bit kernel"
14335e83d430SRalf Baechle	depends on CPU_SUPPORTS_32BIT_KERNEL && SYS_SUPPORTS_32BIT_KERNEL
14345e83d430SRalf Baechle	select TRAD_SIGNALS
14355e83d430SRalf Baechle	help
14365e83d430SRalf Baechle	  Select this option if you want to build a 32-bit kernel.
14375e83d430SRalf Baechleconfig 64BIT
14385e83d430SRalf Baechle	bool "64-bit kernel"
14395e83d430SRalf Baechle	depends on CPU_SUPPORTS_64BIT_KERNEL && SYS_SUPPORTS_64BIT_KERNEL
1440dbda6ac0SRalf Baechle	select HAVE_SYSCALL_WRAPPERS
14415e83d430SRalf Baechle	help
14425e83d430SRalf Baechle	  Select this option if you want to build a 64-bit kernel.
14435e83d430SRalf Baechle
14445e83d430SRalf Baechleendchoice
14455e83d430SRalf Baechle
14461da177e4SLinus Torvaldschoice
14471da177e4SLinus Torvalds	prompt "Kernel page size"
14481da177e4SLinus Torvalds	default PAGE_SIZE_4KB
14491da177e4SLinus Torvalds
14501da177e4SLinus Torvaldsconfig PAGE_SIZE_4KB
14511da177e4SLinus Torvalds	bool "4kB"
14521da177e4SLinus Torvalds	help
14531da177e4SLinus Torvalds	 This option select the standard 4kB Linux page size.  On some
14541da177e4SLinus Torvalds	 R3000-family processors this is the only available page size.  Using
14551da177e4SLinus Torvalds	 4kB page size will minimize memory consumption and is therefore
14561da177e4SLinus Torvalds	 recommended for low memory systems.
14571da177e4SLinus Torvalds
14581da177e4SLinus Torvaldsconfig PAGE_SIZE_8KB
14591da177e4SLinus Torvalds	bool "8kB"
1460c52399beSRalf Baechle	depends on (EXPERIMENTAL && CPU_R8000) || CPU_CAVIUM_OCTEON
14611da177e4SLinus Torvalds	help
14621da177e4SLinus Torvalds	  Using 8kB page size will result in higher performance kernel at
14631da177e4SLinus Torvalds	  the price of higher memory consumption.  This option is available
1464c52399beSRalf Baechle	  only on R8000 and cnMIPS processors.  Note that you will need a
1465c52399beSRalf Baechle	  suitable Linux distribution to support this.
14661da177e4SLinus Torvalds
14671da177e4SLinus Torvaldsconfig PAGE_SIZE_16KB
14681da177e4SLinus Torvalds	bool "16kB"
1469714bfad6SRalf Baechle	depends on !CPU_R3000 && !CPU_TX39XX
14701da177e4SLinus Torvalds	help
14711da177e4SLinus Torvalds	  Using 16kB page size will result in higher performance kernel at
14721da177e4SLinus Torvalds	  the price of higher memory consumption.  This option is available on
1473714bfad6SRalf Baechle	  all non-R3000 family processors.  Note that you will need a suitable
1474714bfad6SRalf Baechle	  Linux distribution to support this.
14751da177e4SLinus Torvalds
1476c52399beSRalf Baechleconfig PAGE_SIZE_32KB
1477c52399beSRalf Baechle	bool "32kB"
1478c52399beSRalf Baechle	depends on CPU_CAVIUM_OCTEON
1479c52399beSRalf Baechle	help
1480c52399beSRalf Baechle	  Using 32kB page size will result in higher performance kernel at
1481c52399beSRalf Baechle	  the price of higher memory consumption.  This option is available
1482c52399beSRalf Baechle	  only on cnMIPS cores.  Note that you will need a suitable Linux
1483c52399beSRalf Baechle	  distribution to support this.
1484c52399beSRalf Baechle
14851da177e4SLinus Torvaldsconfig PAGE_SIZE_64KB
14861da177e4SLinus Torvalds	bool "64kB"
14871da177e4SLinus Torvalds	depends on EXPERIMENTAL && !CPU_R3000 && !CPU_TX39XX
14881da177e4SLinus Torvalds	help
14891da177e4SLinus Torvalds	  Using 64kB page size will result in higher performance kernel at
14901da177e4SLinus Torvalds	  the price of higher memory consumption.  This option is available on
14911da177e4SLinus Torvalds	  all non-R3000 family processor.  Not that at the time of this
1492714bfad6SRalf Baechle	  writing this option is still high experimental.
14931da177e4SLinus Torvalds
14941da177e4SLinus Torvaldsendchoice
14951da177e4SLinus Torvalds
14961da177e4SLinus Torvaldsconfig BOARD_SCACHE
14971da177e4SLinus Torvalds	bool
14981da177e4SLinus Torvalds
14991da177e4SLinus Torvaldsconfig IP22_CPU_SCACHE
15001da177e4SLinus Torvalds	bool
15011da177e4SLinus Torvalds	select BOARD_SCACHE
15021da177e4SLinus Torvalds
15039318c51aSChris Dearman#
15049318c51aSChris Dearman# Support for a MIPS32 / MIPS64 style S-caches
15059318c51aSChris Dearman#
15069318c51aSChris Dearmanconfig MIPS_CPU_SCACHE
15079318c51aSChris Dearman	bool
15089318c51aSChris Dearman	select BOARD_SCACHE
15099318c51aSChris Dearman
15101da177e4SLinus Torvaldsconfig R5000_CPU_SCACHE
15111da177e4SLinus Torvalds	bool
15121da177e4SLinus Torvalds	select BOARD_SCACHE
15131da177e4SLinus Torvalds
15141da177e4SLinus Torvaldsconfig RM7000_CPU_SCACHE
15151da177e4SLinus Torvalds	bool
15161da177e4SLinus Torvalds	select BOARD_SCACHE
15171da177e4SLinus Torvalds
15181da177e4SLinus Torvaldsconfig SIBYTE_DMA_PAGEOPS
15191da177e4SLinus Torvalds	bool "Use DMA to clear/copy pages"
15201da177e4SLinus Torvalds	depends on CPU_SB1
15211da177e4SLinus Torvalds	help
15221da177e4SLinus Torvalds	  Instead of using the CPU to zero and copy pages, use a Data Mover
15231da177e4SLinus Torvalds	  channel.  These DMA channels are otherwise unused by the standard
15241da177e4SLinus Torvalds	  SiByte Linux port.  Seems to give a small performance benefit.
15251da177e4SLinus Torvalds
15261da177e4SLinus Torvaldsconfig CPU_HAS_PREFETCH
1527c8094b53SRalf Baechle	bool
15281da177e4SLinus Torvalds
1529340ee4b9SRalf Baechlechoice
1530340ee4b9SRalf Baechle	prompt "MIPS MT options"
1531f41ae0b2SRalf Baechle
1532f41ae0b2SRalf Baechleconfig MIPS_MT_DISABLED
1533f41ae0b2SRalf Baechle	bool "Disable multithreading support."
1534f41ae0b2SRalf Baechle	help
1535f41ae0b2SRalf Baechle	  Use this option if your workload can't take advantage of
1536f41ae0b2SRalf Baechle	  MIPS hardware multithreading support.  On systems that don't have
1537f41ae0b2SRalf Baechle	  the option of an MT-enabled processor this option will be the only
1538f41ae0b2SRalf Baechle	  option in this menu.
1539340ee4b9SRalf Baechle
154059d6ab86SRalf Baechleconfig MIPS_MT_SMP
154159d6ab86SRalf Baechle	bool "Use 1 TC on each available VPE for SMP"
154259d6ab86SRalf Baechle	depends on SYS_SUPPORTS_MULTITHREADING
154359d6ab86SRalf Baechle	select CPU_MIPSR2_IRQ_VI
1544d725cf38SChris Dearman	select CPU_MIPSR2_IRQ_EI
154559d6ab86SRalf Baechle	select MIPS_MT
1546f510aa3bSRalf Baechle	select NR_CPUS_DEFAULT_2
154759d6ab86SRalf Baechle	select SMP
15480ab7aefcSRalf Baechle	select SYS_SUPPORTS_SCHED_SMT if SMP
154959d6ab86SRalf Baechle	select SYS_SUPPORTS_SMP
155087353d8aSRalf Baechle	select SMP_UP
155159d6ab86SRalf Baechle	help
155259d6ab86SRalf Baechle	  This is a kernel model which is also known a VSMP or lately
155359d6ab86SRalf Baechle	  has been marketesed into SMVP.
155459d6ab86SRalf Baechle
155541c594abSRalf Baechleconfig MIPS_MT_SMTC
155641c594abSRalf Baechle	bool "SMTC: Use all TCs on all VPEs for SMP"
1557f41ae0b2SRalf Baechle	depends on CPU_MIPS32_R2
1558f41ae0b2SRalf Baechle	#depends on CPU_MIPS64_R2		# once there is hardware ...
1559f41ae0b2SRalf Baechle	depends on SYS_SUPPORTS_MULTITHREADING
1560f7062ddbSRalf Baechle	select CPU_MIPSR2_IRQ_VI
1561d725cf38SChris Dearman	select CPU_MIPSR2_IRQ_EI
1562f41ae0b2SRalf Baechle	select MIPS_MT
1563130e2fb7SRalf Baechle	select NR_CPUS_DEFAULT_8
156441c594abSRalf Baechle	select SMP
156573b76c78SRalf Baechle	select SYS_SUPPORTS_SMP
156687353d8aSRalf Baechle	select SMP_UP
1567f41ae0b2SRalf Baechle	help
1568f41ae0b2SRalf Baechle	  This is a kernel model which is known a SMTC or lately has been
1569f41ae0b2SRalf Baechle	  marketesed into SMVP.
157041c594abSRalf Baechle
1571340ee4b9SRalf Baechleendchoice
1572340ee4b9SRalf Baechle
1573f41ae0b2SRalf Baechleconfig MIPS_MT
1574f41ae0b2SRalf Baechle	bool
1575f41ae0b2SRalf Baechle
15760ab7aefcSRalf Baechleconfig SCHED_SMT
15770ab7aefcSRalf Baechle	bool "SMT (multithreading) scheduler support"
15780ab7aefcSRalf Baechle	depends on SYS_SUPPORTS_SCHED_SMT
15790ab7aefcSRalf Baechle	default n
15800ab7aefcSRalf Baechle	help
15810ab7aefcSRalf Baechle	  SMT scheduler support improves the CPU scheduler's decision making
15820ab7aefcSRalf Baechle	  when dealing with MIPS MT enabled cores at a cost of slightly
15830ab7aefcSRalf Baechle	  increased overhead in some places. If unsure say N here.
15840ab7aefcSRalf Baechle
15850ab7aefcSRalf Baechleconfig SYS_SUPPORTS_SCHED_SMT
15860ab7aefcSRalf Baechle	bool
15870ab7aefcSRalf Baechle
15880ab7aefcSRalf Baechle
1589f41ae0b2SRalf Baechleconfig SYS_SUPPORTS_MULTITHREADING
1590f41ae0b2SRalf Baechle	bool
1591f41ae0b2SRalf Baechle
1592f088fc84SRalf Baechleconfig MIPS_MT_FPAFF
1593f088fc84SRalf Baechle	bool "Dynamic FPU affinity for FP-intensive threads"
1594f088fc84SRalf Baechle	default y
159507cc0c9eSRalf Baechle	depends on MIPS_MT_SMP || MIPS_MT_SMTC
159607cc0c9eSRalf Baechle
159707cc0c9eSRalf Baechleconfig MIPS_VPE_LOADER
159807cc0c9eSRalf Baechle	bool "VPE loader support."
159907cc0c9eSRalf Baechle	depends on SYS_SUPPORTS_MULTITHREADING
160007cc0c9eSRalf Baechle	select CPU_MIPSR2_IRQ_VI
160107cc0c9eSRalf Baechle	select CPU_MIPSR2_IRQ_EI
160207cc0c9eSRalf Baechle	select MIPS_MT
160307cc0c9eSRalf Baechle	help
160407cc0c9eSRalf Baechle	  Includes a loader for loading an elf relocatable object
160507cc0c9eSRalf Baechle	  onto another VPE and running it.
1606f088fc84SRalf Baechle
16070db34215SKevin D. Kissellconfig MIPS_MT_SMTC_IM_BACKSTOP
16080db34215SKevin D. Kissell	bool "Use per-TC register bits as backstop for inhibited IM bits"
16090db34215SKevin D. Kissell	depends on MIPS_MT_SMTC
16108531a35eSKevin D. Kissell	default n
16110db34215SKevin D. Kissell	help
16120db34215SKevin D. Kissell	  To support multiple TC microthreads acting as "CPUs" within
16130db34215SKevin D. Kissell	  a VPE, VPE-wide interrupt mask bits must be specially manipulated
16140db34215SKevin D. Kissell	  during interrupt handling. To support legacy drivers and interrupt
16150db34215SKevin D. Kissell	  controller management code, SMTC has a "backstop" to track and
16160db34215SKevin D. Kissell	  if necessary restore the interrupt mask. This has some performance
16178531a35eSKevin D. Kissell	  impact on interrupt service overhead.
16180db34215SKevin D. Kissell
1619f571eff0SKevin D. Kissellconfig MIPS_MT_SMTC_IRQAFF
1620f571eff0SKevin D. Kissell	bool "Support IRQ affinity API"
1621f571eff0SKevin D. Kissell	depends on MIPS_MT_SMTC
1622f571eff0SKevin D. Kissell	default n
1623f571eff0SKevin D. Kissell	help
1624f571eff0SKevin D. Kissell	  Enables SMP IRQ affinity API (/proc/irq/*/smp_affinity, etc.)
1625f571eff0SKevin D. Kissell	  for SMTC Linux kernel. Requires platform support, of which
1626f571eff0SKevin D. Kissell	  an example can be found in the MIPS kernel i8259 and Malta
16278531a35eSKevin D. Kissell	  platform code.  Adds some overhead to interrupt dispatch, and
16288531a35eSKevin D. Kissell	  should be used only if you know what you are doing.
1629f571eff0SKevin D. Kissell
1630e01402b1SRalf Baechleconfig MIPS_VPE_LOADER_TOM
1631e01402b1SRalf Baechle	bool "Load VPE program into memory hidden from linux"
1632e01402b1SRalf Baechle	depends on MIPS_VPE_LOADER
1633e01402b1SRalf Baechle	default y
1634e01402b1SRalf Baechle	help
1635e01402b1SRalf Baechle	  The loader can use memory that is present but has been hidden from
1636e01402b1SRalf Baechle	  Linux using the kernel command line option "mem=xxMB". It's up to
1637e01402b1SRalf Baechle	  you to ensure the amount you put in the option and the space your
1638e01402b1SRalf Baechle	  program requires is less or equal to the amount physically present.
1639e01402b1SRalf Baechle
1640e01402b1SRalf Baechle# this should possibly be in drivers/char, but it is rather cpu related. Hmmm
1641e01402b1SRalf Baechleconfig MIPS_VPE_APSP_API
1642e01402b1SRalf Baechle	bool "Enable support for AP/SP API (RTLX)"
1643e01402b1SRalf Baechle	depends on MIPS_VPE_LOADER
16445e83d430SRalf Baechle	help
1645e01402b1SRalf Baechle
16462600990eSRalf Baechleconfig MIPS_APSP_KSPD
16472600990eSRalf Baechle	bool "Enable KSPD"
16482600990eSRalf Baechle	depends on MIPS_VPE_APSP_API
16492600990eSRalf Baechle	default y
16502600990eSRalf Baechle	help
16512600990eSRalf Baechle	  KSPD is a kernel daemon that accepts syscall requests from the SP
16522600990eSRalf Baechle	  side, actions them and returns the results. It also handles the
16532600990eSRalf Baechle	  "exit" syscall notifying other kernel modules the SP program is
16542600990eSRalf Baechle	  exiting.  You probably want to say yes here.
16552600990eSRalf Baechle
16564a16ff4cSRalf Baechleconfig MIPS_CMP
16574a16ff4cSRalf Baechle	bool "MIPS CMP framework support"
16584a16ff4cSRalf Baechle	depends on SYS_SUPPORTS_MIPS_CMP
16594a16ff4cSRalf Baechle	select SYNC_R4K if BROKEN
16604a16ff4cSRalf Baechle	select SYS_SUPPORTS_SMP
16614a16ff4cSRalf Baechle	select SYS_SUPPORTS_SCHED_SMT if SMP
16624a16ff4cSRalf Baechle	select WEAK_ORDERING
16634a16ff4cSRalf Baechle	default n
16644a16ff4cSRalf Baechle	help
16654a16ff4cSRalf Baechle	  This is a placeholder option for the GCMP work. It will need to
16664a16ff4cSRalf Baechle	  be handled differently...
16674a16ff4cSRalf Baechle
16681da177e4SLinus Torvaldsconfig SB1_PASS_1_WORKAROUNDS
16691da177e4SLinus Torvalds	bool
16701da177e4SLinus Torvalds	depends on CPU_SB1_PASS_1
16711da177e4SLinus Torvalds	default y
16721da177e4SLinus Torvalds
16731da177e4SLinus Torvaldsconfig SB1_PASS_2_WORKAROUNDS
16741da177e4SLinus Torvalds	bool
16751da177e4SLinus Torvalds	depends on CPU_SB1 && (CPU_SB1_PASS_2_2 || CPU_SB1_PASS_2)
16761da177e4SLinus Torvalds	default y
16771da177e4SLinus Torvalds
16781da177e4SLinus Torvaldsconfig SB1_PASS_2_1_WORKAROUNDS
16791da177e4SLinus Torvalds	bool
16801da177e4SLinus Torvalds	depends on CPU_SB1 && CPU_SB1_PASS_2
16811da177e4SLinus Torvalds	default y
16821da177e4SLinus Torvalds
16831da177e4SLinus Torvaldsconfig 64BIT_PHYS_ADDR
1684d806cb2bSRalf Baechle	bool
16851da177e4SLinus Torvalds
16861da177e4SLinus Torvaldsconfig CPU_HAS_LLSC
1687f7062ddbSRalf Baechle	bool
16881da177e4SLinus Torvalds
16899693a853SFranck Bui-Huuconfig CPU_HAS_SMARTMIPS
16909693a853SFranck Bui-Huu	depends on SYS_SUPPORTS_SMARTMIPS
16919693a853SFranck Bui-Huu	bool "Support for the SmartMIPS ASE"
16929693a853SFranck Bui-Huu	help
16939693a853SFranck Bui-Huu	  SmartMIPS is a extension of the MIPS32 architecture aimed at
16949693a853SFranck Bui-Huu	  increased security at both hardware and software level for
16959693a853SFranck Bui-Huu	  smartcards.  Enabling this option will allow proper use of the
16969693a853SFranck Bui-Huu	  SmartMIPS instructions by Linux applications.  However a kernel with
16979693a853SFranck Bui-Huu	  this option will not work on a MIPS core without SmartMIPS core.  If
16989693a853SFranck Bui-Huu	  you don't know you probably don't have SmartMIPS and should say N
16999693a853SFranck Bui-Huu	  here.
17009693a853SFranck Bui-Huu
17011da177e4SLinus Torvaldsconfig CPU_HAS_WB
1702f7062ddbSRalf Baechle	bool
1703e01402b1SRalf Baechle
1704f41ae0b2SRalf Baechle#
1705f41ae0b2SRalf Baechle# Vectored interrupt mode is an R2 feature
1706f41ae0b2SRalf Baechle#
1707e01402b1SRalf Baechleconfig CPU_MIPSR2_IRQ_VI
1708f41ae0b2SRalf Baechle	bool
1709e01402b1SRalf Baechle
1710f41ae0b2SRalf Baechle#
1711f41ae0b2SRalf Baechle# Extended interrupt mode is an R2 feature
1712f41ae0b2SRalf Baechle#
1713e01402b1SRalf Baechleconfig CPU_MIPSR2_IRQ_EI
1714f41ae0b2SRalf Baechle	bool
1715e01402b1SRalf Baechle
17161da177e4SLinus Torvaldsconfig CPU_HAS_SYNC
17171da177e4SLinus Torvalds	bool
17181da177e4SLinus Torvalds	depends on !CPU_R3000
17191da177e4SLinus Torvalds	default y
17201da177e4SLinus Torvalds
1721ea580401SRalf Baechleconfig GENERIC_CLOCKEVENTS_BROADCAST
1722ea580401SRalf Baechle	bool
1723ea580401SRalf Baechle
17241da177e4SLinus Torvalds#
172520d60d99SMaciej W. Rozycki# CPU non-features
172620d60d99SMaciej W. Rozycki#
172720d60d99SMaciej W. Rozyckiconfig CPU_DADDI_WORKAROUNDS
172820d60d99SMaciej W. Rozycki	bool
172920d60d99SMaciej W. Rozycki
173020d60d99SMaciej W. Rozyckiconfig CPU_R4000_WORKAROUNDS
173120d60d99SMaciej W. Rozycki	bool
173220d60d99SMaciej W. Rozycki	select CPU_R4400_WORKAROUNDS
173320d60d99SMaciej W. Rozycki
173420d60d99SMaciej W. Rozyckiconfig CPU_R4400_WORKAROUNDS
173520d60d99SMaciej W. Rozycki	bool
173620d60d99SMaciej W. Rozycki
173720d60d99SMaciej W. Rozycki#
1738797798c1SRalf Baechle# Use the generic interrupt handling code in kernel/irq/:
1739797798c1SRalf Baechle#
1740797798c1SRalf Baechleconfig GENERIC_HARDIRQS
1741797798c1SRalf Baechle	bool
1742797798c1SRalf Baechle	default y
1743797798c1SRalf Baechle
1744797798c1SRalf Baechleconfig GENERIC_IRQ_PROBE
1745797798c1SRalf Baechle	bool
1746797798c1SRalf Baechle	default y
1747797798c1SRalf Baechle
17480d7012a9SIngo Molnarconfig IRQ_PER_CPU
17490d7012a9SIngo Molnar	bool
17500d7012a9SIngo Molnar
1751797798c1SRalf Baechle#
17521da177e4SLinus Torvalds# - Highmem only makes sense for the 32-bit kernel.
17531da177e4SLinus Torvalds# - The current highmem code will only work properly on physically indexed
17541da177e4SLinus Torvalds#   caches such as R3000, SB1, R7000 or those that look like they're virtually
17551da177e4SLinus Torvalds#   indexed such as R4000/R4400 SC and MC versions or R10000.  So for the
17561da177e4SLinus Torvalds#   moment we protect the user and offer the highmem option only on machines
17571da177e4SLinus Torvalds#   where it's known to be safe.  This will not offer highmem on a few systems
17581da177e4SLinus Torvalds#   such as MIPS32 and MIPS64 CPUs which may have virtual and physically
17591da177e4SLinus Torvalds#   indexed CPUs but we're playing safe.
1760797798c1SRalf Baechle# - We use SYS_SUPPORTS_HIGHMEM to offer highmem only for systems where we
1761797798c1SRalf Baechle#   know they might have memory configurations that could make use of highmem
1762797798c1SRalf Baechle#   support.
17631da177e4SLinus Torvalds#
17641da177e4SLinus Torvaldsconfig HIGHMEM
17651da177e4SLinus Torvalds	bool "High Memory Support"
1766797798c1SRalf Baechle	depends on 32BIT && CPU_SUPPORTS_HIGHMEM && SYS_SUPPORTS_HIGHMEM
1767797798c1SRalf Baechle
1768797798c1SRalf Baechleconfig CPU_SUPPORTS_HIGHMEM
1769797798c1SRalf Baechle	bool
1770797798c1SRalf Baechle
1771797798c1SRalf Baechleconfig SYS_SUPPORTS_HIGHMEM
1772797798c1SRalf Baechle	bool
17731da177e4SLinus Torvalds
17749693a853SFranck Bui-Huuconfig SYS_SUPPORTS_SMARTMIPS
17759693a853SFranck Bui-Huu	bool
17769693a853SFranck Bui-Huu
1777b4819b59SYoichi Yuasaconfig ARCH_FLATMEM_ENABLE
1778b4819b59SYoichi Yuasa	def_bool y
1779b4819b59SYoichi Yuasa	depends on !NUMA
1780b4819b59SYoichi Yuasa
1781d8cb4e11SRalf Baechleconfig ARCH_DISCONTIGMEM_ENABLE
1782d8cb4e11SRalf Baechle	bool
1783d8cb4e11SRalf Baechle	default y if SGI_IP27
1784d8cb4e11SRalf Baechle	help
17853dde6ad8SDavid Sterba	  Say Y to support efficient handling of discontiguous physical memory,
1786d8cb4e11SRalf Baechle	  for architectures which are either NUMA (Non-Uniform Memory Access)
1787d8cb4e11SRalf Baechle	  or have huge holes in the physical address space for other reasons.
1788d8cb4e11SRalf Baechle	  See <file:Documentation/vm/numa> for more.
1789d8cb4e11SRalf Baechle
1790cce335aeSRalf Baechleconfig ARCH_POPULATES_NODE_MAP
1791cce335aeSRalf Baechle	def_bool y
1792cce335aeSRalf Baechle
1793b1c6cd42SAtsushi Nemotoconfig ARCH_SPARSEMEM_ENABLE
1794b1c6cd42SAtsushi Nemoto	bool
17957de58fabSAtsushi Nemoto	select SPARSEMEM_STATIC
179631473747SAtsushi Nemoto
1797d8cb4e11SRalf Baechleconfig NUMA
1798d8cb4e11SRalf Baechle	bool "NUMA Support"
1799d8cb4e11SRalf Baechle	depends on SYS_SUPPORTS_NUMA
1800d8cb4e11SRalf Baechle	help
1801d8cb4e11SRalf Baechle	  Say Y to compile the kernel to support NUMA (Non-Uniform Memory
1802d8cb4e11SRalf Baechle	  Access).  This option improves performance on systems with more
1803d8cb4e11SRalf Baechle	  than two nodes; on two node systems it is generally better to
1804d8cb4e11SRalf Baechle	  leave it disabled; on single node systems disable this option
1805d8cb4e11SRalf Baechle	  disabled.
1806d8cb4e11SRalf Baechle
1807d8cb4e11SRalf Baechleconfig SYS_SUPPORTS_NUMA
1808d8cb4e11SRalf Baechle	bool
1809d8cb4e11SRalf Baechle
1810c80d79d7SYasunori Gotoconfig NODES_SHIFT
1811c80d79d7SYasunori Goto	int
1812c80d79d7SYasunori Goto	default "6"
1813c80d79d7SYasunori Goto	depends on NEED_MULTIPLE_NODES
1814c80d79d7SYasunori Goto
1815b4819b59SYoichi Yuasasource "mm/Kconfig"
1816b4819b59SYoichi Yuasa
18171da177e4SLinus Torvaldsconfig SMP
18181da177e4SLinus Torvalds	bool "Multi-Processing support"
1819e73ea273SRalf Baechle	depends on SYS_SUPPORTS_SMP
1820b4b30a5aSRalf Baechle	select IRQ_PER_CPU
18212f304c0aSJens Axboe	select USE_GENERIC_SMP_HELPERS
1822e73ea273SRalf Baechle	help
18231da177e4SLinus Torvalds	  This enables support for systems with more than one CPU. If you have
18241da177e4SLinus Torvalds	  a system with only one CPU, like most personal computers, say N. If
18251da177e4SLinus Torvalds	  you have a system with more than one CPU, say Y.
18261da177e4SLinus Torvalds
18271da177e4SLinus Torvalds	  If you say N here, the kernel will run on single and multiprocessor
18281da177e4SLinus Torvalds	  machines, but will use only one CPU of a multiprocessor machine. If
18291da177e4SLinus Torvalds	  you say Y here, the kernel will run on many, but not all,
18301da177e4SLinus Torvalds	  singleprocessor machines. On a singleprocessor machine, the kernel
18311da177e4SLinus Torvalds	  will run faster if you say N here.
18321da177e4SLinus Torvalds
18331da177e4SLinus Torvalds	  People using multiprocessor machines who say Y here should also say
18341da177e4SLinus Torvalds	  Y to "Enhanced Real Time Clock Support", below.
18351da177e4SLinus Torvalds
183603502faaSAdrian Bunk	  See also the SMP-HOWTO available at
183703502faaSAdrian Bunk	  <http://www.tldp.org/docs.html#howto>.
18381da177e4SLinus Torvalds
18391da177e4SLinus Torvalds	  If you don't know what to do here, say N.
18401da177e4SLinus Torvalds
184187353d8aSRalf Baechleconfig SMP_UP
184287353d8aSRalf Baechle	bool
184387353d8aSRalf Baechle
18444a16ff4cSRalf Baechleconfig SYS_SUPPORTS_MIPS_CMP
18454a16ff4cSRalf Baechle	bool
18464a16ff4cSRalf Baechle
1847e73ea273SRalf Baechleconfig SYS_SUPPORTS_SMP
1848e73ea273SRalf Baechle	bool
1849e73ea273SRalf Baechle
185072ede9b1SAtsushi Nemotoconfig NR_CPUS_DEFAULT_1
185172ede9b1SAtsushi Nemoto	bool
185272ede9b1SAtsushi Nemoto
1853130e2fb7SRalf Baechleconfig NR_CPUS_DEFAULT_2
1854130e2fb7SRalf Baechle	bool
1855130e2fb7SRalf Baechle
1856130e2fb7SRalf Baechleconfig NR_CPUS_DEFAULT_4
1857130e2fb7SRalf Baechle	bool
1858130e2fb7SRalf Baechle
1859130e2fb7SRalf Baechleconfig NR_CPUS_DEFAULT_8
1860130e2fb7SRalf Baechle	bool
1861130e2fb7SRalf Baechle
1862130e2fb7SRalf Baechleconfig NR_CPUS_DEFAULT_16
1863130e2fb7SRalf Baechle	bool
1864130e2fb7SRalf Baechle
1865130e2fb7SRalf Baechleconfig NR_CPUS_DEFAULT_32
1866130e2fb7SRalf Baechle	bool
1867130e2fb7SRalf Baechle
1868130e2fb7SRalf Baechleconfig NR_CPUS_DEFAULT_64
1869130e2fb7SRalf Baechle	bool
1870130e2fb7SRalf Baechle
18711da177e4SLinus Torvaldsconfig NR_CPUS
18721da177e4SLinus Torvalds	int "Maximum number of CPUs (2-64)"
187372ede9b1SAtsushi Nemoto	range 1 64 if NR_CPUS_DEFAULT_1
18741da177e4SLinus Torvalds	depends on SMP
187572ede9b1SAtsushi Nemoto	default "1" if NR_CPUS_DEFAULT_1
1876130e2fb7SRalf Baechle	default "2" if NR_CPUS_DEFAULT_2
1877130e2fb7SRalf Baechle	default "4" if NR_CPUS_DEFAULT_4
1878130e2fb7SRalf Baechle	default "8" if NR_CPUS_DEFAULT_8
1879130e2fb7SRalf Baechle	default "16" if NR_CPUS_DEFAULT_16
1880130e2fb7SRalf Baechle	default "32" if NR_CPUS_DEFAULT_32
1881130e2fb7SRalf Baechle	default "64" if NR_CPUS_DEFAULT_64
18821da177e4SLinus Torvalds	help
18831da177e4SLinus Torvalds	  This allows you to specify the maximum number of CPUs which this
18841da177e4SLinus Torvalds	  kernel will support.  The maximum supported value is 32 for 32-bit
18851da177e4SLinus Torvalds	  kernel and 64 for 64-bit kernels; the minimum value which makes
188672ede9b1SAtsushi Nemoto	  sense is 1 for Qemu (useful only for kernel debugging purposes)
188772ede9b1SAtsushi Nemoto	  and 2 for all others.
18881da177e4SLinus Torvalds
18891da177e4SLinus Torvalds	  This is purely to save memory - each supported CPU adds
189072ede9b1SAtsushi Nemoto	  approximately eight kilobytes to the kernel image.  For best
189172ede9b1SAtsushi Nemoto	  performance should round up your number of processors to the next
189272ede9b1SAtsushi Nemoto	  power of two.
18931da177e4SLinus Torvalds
1894c4eee283SAtsushi Nemotosource "kernel/time/Kconfig"
1895c4eee283SAtsushi Nemoto
18961723b4a3SAtsushi Nemoto#
18971723b4a3SAtsushi Nemoto# Timer Interrupt Frequency Configuration
18981723b4a3SAtsushi Nemoto#
18991723b4a3SAtsushi Nemoto
19001723b4a3SAtsushi Nemotochoice
19011723b4a3SAtsushi Nemoto	prompt "Timer frequency"
19021723b4a3SAtsushi Nemoto	default HZ_250
19031723b4a3SAtsushi Nemoto	help
19041723b4a3SAtsushi Nemoto	 Allows the configuration of the timer frequency.
19051723b4a3SAtsushi Nemoto
19061723b4a3SAtsushi Nemoto	config HZ_48
19070f873585SRalf Baechle		bool "48 HZ" if SYS_SUPPORTS_48HZ || SYS_SUPPORTS_ARBIT_HZ
19081723b4a3SAtsushi Nemoto
19091723b4a3SAtsushi Nemoto	config HZ_100
19101723b4a3SAtsushi Nemoto		bool "100 HZ" if SYS_SUPPORTS_100HZ || SYS_SUPPORTS_ARBIT_HZ
19111723b4a3SAtsushi Nemoto
19121723b4a3SAtsushi Nemoto	config HZ_128
19131723b4a3SAtsushi Nemoto		bool "128 HZ" if SYS_SUPPORTS_128HZ || SYS_SUPPORTS_ARBIT_HZ
19141723b4a3SAtsushi Nemoto
19151723b4a3SAtsushi Nemoto	config HZ_250
19161723b4a3SAtsushi Nemoto		bool "250 HZ" if SYS_SUPPORTS_250HZ || SYS_SUPPORTS_ARBIT_HZ
19171723b4a3SAtsushi Nemoto
19181723b4a3SAtsushi Nemoto	config HZ_256
19191723b4a3SAtsushi Nemoto		bool "256 HZ" if SYS_SUPPORTS_256HZ || SYS_SUPPORTS_ARBIT_HZ
19201723b4a3SAtsushi Nemoto
19211723b4a3SAtsushi Nemoto	config HZ_1000
19221723b4a3SAtsushi Nemoto		bool "1000 HZ" if SYS_SUPPORTS_1000HZ || SYS_SUPPORTS_ARBIT_HZ
19231723b4a3SAtsushi Nemoto
19241723b4a3SAtsushi Nemoto	config HZ_1024
19251723b4a3SAtsushi Nemoto		bool "1024 HZ" if SYS_SUPPORTS_1024HZ || SYS_SUPPORTS_ARBIT_HZ
19261723b4a3SAtsushi Nemoto
19271723b4a3SAtsushi Nemotoendchoice
19281723b4a3SAtsushi Nemoto
19291723b4a3SAtsushi Nemotoconfig SYS_SUPPORTS_48HZ
19301723b4a3SAtsushi Nemoto	bool
19311723b4a3SAtsushi Nemoto
19321723b4a3SAtsushi Nemotoconfig SYS_SUPPORTS_100HZ
19331723b4a3SAtsushi Nemoto	bool
19341723b4a3SAtsushi Nemoto
19351723b4a3SAtsushi Nemotoconfig SYS_SUPPORTS_128HZ
19361723b4a3SAtsushi Nemoto	bool
19371723b4a3SAtsushi Nemoto
19381723b4a3SAtsushi Nemotoconfig SYS_SUPPORTS_250HZ
19391723b4a3SAtsushi Nemoto	bool
19401723b4a3SAtsushi Nemoto
19411723b4a3SAtsushi Nemotoconfig SYS_SUPPORTS_256HZ
19421723b4a3SAtsushi Nemoto	bool
19431723b4a3SAtsushi Nemoto
19441723b4a3SAtsushi Nemotoconfig SYS_SUPPORTS_1000HZ
19451723b4a3SAtsushi Nemoto	bool
19461723b4a3SAtsushi Nemoto
19471723b4a3SAtsushi Nemotoconfig SYS_SUPPORTS_1024HZ
19481723b4a3SAtsushi Nemoto	bool
19491723b4a3SAtsushi Nemoto
19501723b4a3SAtsushi Nemotoconfig SYS_SUPPORTS_ARBIT_HZ
19511723b4a3SAtsushi Nemoto	bool
19521723b4a3SAtsushi Nemoto	default y if !SYS_SUPPORTS_48HZ && !SYS_SUPPORTS_100HZ && \
19531723b4a3SAtsushi Nemoto		     !SYS_SUPPORTS_128HZ && !SYS_SUPPORTS_250HZ && \
19541723b4a3SAtsushi Nemoto		     !SYS_SUPPORTS_256HZ && !SYS_SUPPORTS_1000HZ && \
19551723b4a3SAtsushi Nemoto		     !SYS_SUPPORTS_1024HZ
19561723b4a3SAtsushi Nemoto
19571723b4a3SAtsushi Nemotoconfig HZ
19581723b4a3SAtsushi Nemoto	int
19591723b4a3SAtsushi Nemoto	default 48 if HZ_48
19601723b4a3SAtsushi Nemoto	default 100 if HZ_100
19611723b4a3SAtsushi Nemoto	default 128 if HZ_128
19621723b4a3SAtsushi Nemoto	default 250 if HZ_250
19631723b4a3SAtsushi Nemoto	default 256 if HZ_256
19641723b4a3SAtsushi Nemoto	default 1000 if HZ_1000
19651723b4a3SAtsushi Nemoto	default 1024 if HZ_1024
19661723b4a3SAtsushi Nemoto
1967e80de850SRalf Baechlesource "kernel/Kconfig.preempt"
19681da177e4SLinus Torvalds
19691da177e4SLinus Torvaldsconfig MIPS_INSANE_LARGE
19701da177e4SLinus Torvalds	bool "Support for large 64-bit configurations"
1971875d43e7SRalf Baechle	depends on CPU_R10000 && 64BIT
19721da177e4SLinus Torvalds	help
19731da177e4SLinus Torvalds	  MIPS R10000 does support a 44 bit / 16TB address space as opposed to
19741da177e4SLinus Torvalds	  previous 64-bit processors which only supported 40 bit / 1TB. If you
19751da177e4SLinus Torvalds	  need processes of more than 1TB virtual address space, say Y here.
19761da177e4SLinus Torvalds	  This will result in additional memory usage, so it is not
19771da177e4SLinus Torvalds	  recommended for normal users.
19781da177e4SLinus Torvalds
1979ea6e942bSAtsushi Nemotoconfig KEXEC
1980ea6e942bSAtsushi Nemoto	bool "Kexec system call (EXPERIMENTAL)"
1981ea6e942bSAtsushi Nemoto	depends on EXPERIMENTAL
1982ea6e942bSAtsushi Nemoto	help
1983ea6e942bSAtsushi Nemoto	  kexec is a system call that implements the ability to shutdown your
1984ea6e942bSAtsushi Nemoto	  current kernel, and to start another kernel.  It is like a reboot
19853dde6ad8SDavid Sterba	  but it is independent of the system firmware.   And like a reboot
1986ea6e942bSAtsushi Nemoto	  you can start any kernel with it, not just Linux.
1987ea6e942bSAtsushi Nemoto
198801dd2fbfSMatt LaPlante	  The name comes from the similarity to the exec system call.
1989ea6e942bSAtsushi Nemoto
1990ea6e942bSAtsushi Nemoto	  It is an ongoing process to be certain the hardware in a machine
1991ea6e942bSAtsushi Nemoto	  is properly shutdown, so do not be surprised if this code does not
1992ea6e942bSAtsushi Nemoto	  initially work for you.  It may help to enable device hotplugging
1993ea6e942bSAtsushi Nemoto	  support.  As of this writing the exact hardware interface is
1994ea6e942bSAtsushi Nemoto	  strongly in flux, so no good recommendation can be made.
1995ea6e942bSAtsushi Nemoto
1996ea6e942bSAtsushi Nemotoconfig SECCOMP
1997ea6e942bSAtsushi Nemoto	bool "Enable seccomp to safely compute untrusted bytecode"
1998293c5bd1SRalf Baechle	depends on PROC_FS
1999ea6e942bSAtsushi Nemoto	default y
2000ea6e942bSAtsushi Nemoto	help
2001ea6e942bSAtsushi Nemoto	  This kernel feature is useful for number crunching applications
2002ea6e942bSAtsushi Nemoto	  that may need to compute untrusted bytecode during their
2003ea6e942bSAtsushi Nemoto	  execution. By using pipes or other transports made available to
2004ea6e942bSAtsushi Nemoto	  the process as file descriptors supporting the read/write
2005ea6e942bSAtsushi Nemoto	  syscalls, it's possible to isolate those applications in
2006ea6e942bSAtsushi Nemoto	  their own address space using seccomp. Once seccomp is
2007ea6e942bSAtsushi Nemoto	  enabled via /proc/<pid>/seccomp, it cannot be disabled
2008ea6e942bSAtsushi Nemoto	  and the task is only allowed to execute a few safe syscalls
2009ea6e942bSAtsushi Nemoto	  defined by each seccomp mode.
2010ea6e942bSAtsushi Nemoto
2011ea6e942bSAtsushi Nemoto	  If unsure, say Y. Only embedded should say N here.
2012ea6e942bSAtsushi Nemoto
20135e83d430SRalf Baechleendmenu
20145e83d430SRalf Baechle
20151df0f0ffSAtsushi Nemotoconfig LOCKDEP_SUPPORT
20161df0f0ffSAtsushi Nemoto	bool
20171df0f0ffSAtsushi Nemoto	default y
20181df0f0ffSAtsushi Nemoto
20191df0f0ffSAtsushi Nemotoconfig STACKTRACE_SUPPORT
20201df0f0ffSAtsushi Nemoto	bool
20211df0f0ffSAtsushi Nemoto	default y
20221df0f0ffSAtsushi Nemoto
2023b6c3539bSRalf Baechlesource "init/Kconfig"
2024b6c3539bSRalf Baechle
20250011036bSAtsushi Nemotoconfig PROBE_INITRD_HEADER
20260011036bSAtsushi Nemoto	bool "Probe initrd header created by addinitrd"
20270011036bSAtsushi Nemoto	depends on BLK_DEV_INITRD
20280011036bSAtsushi Nemoto	help
20290011036bSAtsushi Nemoto	  Probe initrd header at the last page of kernel image.
20300011036bSAtsushi Nemoto	  Say Y here if you are using arch/mips/boot/addinitrd.c to
20310011036bSAtsushi Nemoto	  add initrd or initramfs image to the kernel image.
20320011036bSAtsushi Nemoto	  Otherwise, say N.
20330011036bSAtsushi Nemoto
2034dc52ddc0SMatt Helsleysource "kernel/Kconfig.freezer"
2035dc52ddc0SMatt Helsley
20361da177e4SLinus Torvaldsmenu "Bus options (PCI, PCMCIA, EISA, ISA, TC)"
20371da177e4SLinus Torvalds
20385e83d430SRalf Baechleconfig HW_HAS_EISA
20395e83d430SRalf Baechle	bool
20401da177e4SLinus Torvaldsconfig HW_HAS_PCI
20411da177e4SLinus Torvalds	bool
20421da177e4SLinus Torvalds
20431da177e4SLinus Torvaldsconfig PCI
20441da177e4SLinus Torvalds	bool "Support for PCI controller"
20451da177e4SLinus Torvalds	depends on HW_HAS_PCI
2046abb4ae46SRalf Baechle	select PCI_DOMAINS
20471da177e4SLinus Torvalds	help
20481da177e4SLinus Torvalds	  Find out whether you have a PCI motherboard. PCI is the name of a
20491da177e4SLinus Torvalds	  bus system, i.e. the way the CPU talks to the other stuff inside
20501da177e4SLinus Torvalds	  your box. Other bus systems are ISA, EISA, or VESA. If you have PCI,
20511da177e4SLinus Torvalds	  say Y, otherwise N.
20521da177e4SLinus Torvalds
20531da177e4SLinus Torvaldsconfig PCI_DOMAINS
20541da177e4SLinus Torvalds	bool
20551da177e4SLinus Torvalds
20561da177e4SLinus Torvaldssource "drivers/pci/Kconfig"
20571da177e4SLinus Torvalds
20581da177e4SLinus Torvalds#
20591da177e4SLinus Torvalds# ISA support is now enabled via select.  Too many systems still have the one
20601da177e4SLinus Torvalds# or other ISA chip on the board that users don't know about so don't expect
20611da177e4SLinus Torvalds# users to choose the right thing ...
20621da177e4SLinus Torvalds#
20631da177e4SLinus Torvaldsconfig ISA
20641da177e4SLinus Torvalds	bool
20651da177e4SLinus Torvalds
20661da177e4SLinus Torvaldsconfig EISA
20671da177e4SLinus Torvalds	bool "EISA support"
20685e83d430SRalf Baechle	depends on HW_HAS_EISA
20691da177e4SLinus Torvalds	select ISA
2070aa414dffSRalf Baechle	select GENERIC_ISA_DMA
20711da177e4SLinus Torvalds	---help---
20721da177e4SLinus Torvalds	  The Extended Industry Standard Architecture (EISA) bus was
20731da177e4SLinus Torvalds	  developed as an open alternative to the IBM MicroChannel bus.
20741da177e4SLinus Torvalds
20751da177e4SLinus Torvalds	  The EISA bus provided some of the features of the IBM MicroChannel
20761da177e4SLinus Torvalds	  bus while maintaining backward compatibility with cards made for
20771da177e4SLinus Torvalds	  the older ISA bus.  The EISA bus saw limited use between 1988 and
20781da177e4SLinus Torvalds	  1995 when it was made obsolete by the PCI bus.
20791da177e4SLinus Torvalds
20801da177e4SLinus Torvalds	  Say Y here if you are building a kernel for an EISA-based machine.
20811da177e4SLinus Torvalds
20821da177e4SLinus Torvalds	  Otherwise, say N.
20831da177e4SLinus Torvalds
20841da177e4SLinus Torvaldssource "drivers/eisa/Kconfig"
20851da177e4SLinus Torvalds
20861da177e4SLinus Torvaldsconfig TC
20871da177e4SLinus Torvalds	bool "TURBOchannel support"
20881da177e4SLinus Torvalds	depends on MACH_DECSTATION
20891da177e4SLinus Torvalds	help
20901da177e4SLinus Torvalds	  TurboChannel is a DEC (now Compaq (now HP)) bus for Alpha and MIPS
20911da177e4SLinus Torvalds	  processors.  Documentation on writing device drivers for TurboChannel
20921da177e4SLinus Torvalds	  is available at:
20931da177e4SLinus Torvalds	  <http://www.cs.arizona.edu/computer.help/policy/DIGITAL_unix/AA-PS3HD-TET1_html/TITLE.html>.
20941da177e4SLinus Torvalds
20951da177e4SLinus Torvalds#config ACCESSBUS
20961da177e4SLinus Torvalds#	bool "Access.Bus support"
20971da177e4SLinus Torvalds#	depends on TC
20981da177e4SLinus Torvalds
20991da177e4SLinus Torvaldsconfig MMU
21001da177e4SLinus Torvalds	bool
21011da177e4SLinus Torvalds	default y
21021da177e4SLinus Torvalds
2103d865bea4SRalf Baechleconfig I8253
2104d865bea4SRalf Baechle	bool
2105d865bea4SRalf Baechle
2106cce335aeSRalf Baechleconfig ZONE_DMA32
2107cce335aeSRalf Baechle	bool
2108cce335aeSRalf Baechle
21091da177e4SLinus Torvaldssource "drivers/pcmcia/Kconfig"
21101da177e4SLinus Torvalds
21111da177e4SLinus Torvaldssource "drivers/pci/hotplug/Kconfig"
21121da177e4SLinus Torvalds
21131da177e4SLinus Torvaldsendmenu
21141da177e4SLinus Torvalds
21151da177e4SLinus Torvaldsmenu "Executable file formats"
21161da177e4SLinus Torvalds
21171da177e4SLinus Torvaldssource "fs/Kconfig.binfmt"
21181da177e4SLinus Torvalds
21191da177e4SLinus Torvaldsconfig TRAD_SIGNALS
21201da177e4SLinus Torvalds	bool
21211da177e4SLinus Torvalds
21221da177e4SLinus Torvaldsconfig MIPS32_COMPAT
21231da177e4SLinus Torvalds	bool "Kernel support for Linux/MIPS 32-bit binary compatibility"
2124875d43e7SRalf Baechle	depends on 64BIT
21251da177e4SLinus Torvalds	help
21261da177e4SLinus Torvalds	  Select this option if you want Linux/MIPS 32-bit binary
21271da177e4SLinus Torvalds	  compatibility. Since all software available for Linux/MIPS is
21281da177e4SLinus Torvalds	  currently 32-bit you should say Y here.
21291da177e4SLinus Torvalds
21301da177e4SLinus Torvaldsconfig COMPAT
21311da177e4SLinus Torvalds	bool
21321da177e4SLinus Torvalds	depends on MIPS32_COMPAT
21331da177e4SLinus Torvalds	default y
21341da177e4SLinus Torvalds
213505e43966SAtsushi Nemotoconfig SYSVIPC_COMPAT
213605e43966SAtsushi Nemoto	bool
213705e43966SAtsushi Nemoto	depends on COMPAT && SYSVIPC
213805e43966SAtsushi Nemoto	default y
213905e43966SAtsushi Nemoto
21401da177e4SLinus Torvaldsconfig MIPS32_O32
21411da177e4SLinus Torvalds	bool "Kernel support for o32 binaries"
21421da177e4SLinus Torvalds	depends on MIPS32_COMPAT
21431da177e4SLinus Torvalds	help
21441da177e4SLinus Torvalds	  Select this option if you want to run o32 binaries.  These are pure
21451da177e4SLinus Torvalds	  32-bit binaries as used by the 32-bit Linux/MIPS port.  Most of
21461da177e4SLinus Torvalds	  existing binaries are in this format.
21471da177e4SLinus Torvalds
21481da177e4SLinus Torvalds	  If unsure, say Y.
21491da177e4SLinus Torvalds
21501da177e4SLinus Torvaldsconfig MIPS32_N32
21511da177e4SLinus Torvalds	bool "Kernel support for n32 binaries"
21521da177e4SLinus Torvalds	depends on MIPS32_COMPAT
21531da177e4SLinus Torvalds	help
21541da177e4SLinus Torvalds	  Select this option if you want to run n32 binaries.  These are
21551da177e4SLinus Torvalds	  64-bit binaries using 32-bit quantities for addressing and certain
21561da177e4SLinus Torvalds	  data that would normally be 64-bit.  They are used in special
21571da177e4SLinus Torvalds	  cases.
21581da177e4SLinus Torvalds
21591da177e4SLinus Torvalds	  If unsure, say N.
21601da177e4SLinus Torvalds
21611da177e4SLinus Torvaldsconfig BINFMT_ELF32
21621da177e4SLinus Torvalds	bool
21631da177e4SLinus Torvalds	default y if MIPS32_O32 || MIPS32_N32
21641da177e4SLinus Torvalds
21652116245eSRalf Baechleendmenu
21661da177e4SLinus Torvalds
21672116245eSRalf Baechlemenu "Power management options"
2168952fa954SRodolfo Giometti
2169363c55caSWu Zhangjinconfig ARCH_HIBERNATION_POSSIBLE
2170363c55caSWu Zhangjin	def_bool y
21719801b321SRalf Baechle	depends on SYS_SUPPORTS_HOTPLUG_CPU
2172363c55caSWu Zhangjin
2173f4cb5700SJohannes Bergconfig ARCH_SUSPEND_POSSIBLE
2174f4cb5700SJohannes Berg	def_bool y
21759801b321SRalf Baechle	depends on SYS_SUPPORTS_HOTPLUG_CPU
2176f4cb5700SJohannes Berg
21772116245eSRalf Baechlesource "kernel/power/Kconfig"
2178952fa954SRodolfo Giometti
21791da177e4SLinus Torvaldsendmenu
21801da177e4SLinus Torvalds
2181d5950b43SSam Ravnborgsource "net/Kconfig"
2182d5950b43SSam Ravnborg
21831da177e4SLinus Torvaldssource "drivers/Kconfig"
21841da177e4SLinus Torvalds
21851da177e4SLinus Torvaldssource "fs/Kconfig"
21861da177e4SLinus Torvalds
21871da177e4SLinus Torvaldssource "arch/mips/Kconfig.debug"
21881da177e4SLinus Torvalds
21891da177e4SLinus Torvaldssource "security/Kconfig"
21901da177e4SLinus Torvalds
21911da177e4SLinus Torvaldssource "crypto/Kconfig"
21921da177e4SLinus Torvalds
21931da177e4SLinus Torvaldssource "lib/Kconfig"
2194