xref: /linux/arch/mips/Kconfig (revision 7ca5dc145bc7daddd8aed8bbda46b74af9cebefc)
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
25*7ca5dc14SFlorian Fainelliconfig AR7
26*7ca5dc14SFlorian Fainelli	bool "Texas Instruments AR7"
27*7ca5dc14SFlorian Fainelli	select BOOT_ELF32
28*7ca5dc14SFlorian Fainelli	select DMA_NONCOHERENT
29*7ca5dc14SFlorian Fainelli	select CEVT_R4K
30*7ca5dc14SFlorian Fainelli	select CSRC_R4K
31*7ca5dc14SFlorian Fainelli	select IRQ_CPU
32*7ca5dc14SFlorian Fainelli	select NO_EXCEPT_FILL
33*7ca5dc14SFlorian Fainelli	select SWAP_IO_SPACE
34*7ca5dc14SFlorian Fainelli	select SYS_HAS_CPU_MIPS32_R1
35*7ca5dc14SFlorian Fainelli	select SYS_HAS_EARLY_PRINTK
36*7ca5dc14SFlorian Fainelli	select SYS_SUPPORTS_32BIT_KERNEL
37*7ca5dc14SFlorian Fainelli	select SYS_SUPPORTS_LITTLE_ENDIAN
38*7ca5dc14SFlorian Fainelli	select GENERIC_GPIO
39*7ca5dc14SFlorian Fainelli	select GCD
40*7ca5dc14SFlorian Fainelli	select VLYNQ
41*7ca5dc14SFlorian Fainelli	help
42*7ca5dc14SFlorian Fainelli	  Support for the Texas Instruments AR7 System-on-a-Chip
43*7ca5dc14SFlorian Fainelli	  family: TNETD7100, 7200 and 7300.
44*7ca5dc14SFlorian 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
2705e83d430SRalf Baechle
271edb6310aSDaniel Lairdconfig NXP_STB220
272edb6310aSDaniel Laird	bool "NXP STB220 board"
273edb6310aSDaniel Laird	select SOC_PNX833X
274edb6310aSDaniel Laird	help
275edb6310aSDaniel Laird	 Support for NXP Semiconductors STB220 Development Board.
276edb6310aSDaniel Laird
277edb6310aSDaniel Lairdconfig NXP_STB225
278edb6310aSDaniel Laird	bool "NXP 225 board"
279edb6310aSDaniel Laird	select SOC_PNX833X
280edb6310aSDaniel Laird	select SOC_PNX8335
281edb6310aSDaniel Laird	help
282edb6310aSDaniel Laird	 Support for NXP Semiconductors STB225 Development Board.
283edb6310aSDaniel Laird
284ade299d8SYoichi Yuasaconfig PNX8550_JBS
285a92b0588SDaniel Laird	bool "NXP PNX8550 based JBS board"
286ade299d8SYoichi Yuasa	select PNX8550
287ade299d8SYoichi Yuasa	select SYS_SUPPORTS_LITTLE_ENDIAN
288ade299d8SYoichi Yuasa
289ade299d8SYoichi Yuasaconfig PNX8550_STB810
290a92b0588SDaniel Laird	bool "NXP PNX8550 based STB810 board"
291ade299d8SYoichi Yuasa	select PNX8550
292ade299d8SYoichi Yuasa	select SYS_SUPPORTS_LITTLE_ENDIAN
293ade299d8SYoichi Yuasa
2949267a30dSMarc St-Jeanconfig PMC_MSP
2959267a30dSMarc St-Jean	bool "PMC-Sierra MSP chipsets"
2969267a30dSMarc St-Jean	depends on EXPERIMENTAL
2979267a30dSMarc St-Jean	select DMA_NONCOHERENT
2989267a30dSMarc St-Jean	select SWAP_IO_SPACE
2999267a30dSMarc St-Jean	select NO_EXCEPT_FILL
3009267a30dSMarc St-Jean	select BOOT_RAW
3019267a30dSMarc St-Jean	select SYS_HAS_CPU_MIPS32_R1
3029267a30dSMarc St-Jean	select SYS_HAS_CPU_MIPS32_R2
3039267a30dSMarc St-Jean	select SYS_SUPPORTS_32BIT_KERNEL
3049267a30dSMarc St-Jean	select SYS_SUPPORTS_BIG_ENDIAN
3059267a30dSMarc St-Jean	select IRQ_CPU
3069267a30dSMarc St-Jean	select SERIAL_8250
3079267a30dSMarc St-Jean	select SERIAL_8250_CONSOLE
3089267a30dSMarc St-Jean	help
3099267a30dSMarc St-Jean	  This adds support for the PMC-Sierra family of Multi-Service
3109267a30dSMarc St-Jean	  Processor System-On-A-Chips.  These parts include a number
3119267a30dSMarc St-Jean	  of integrated peripherals, interfaces and DSPs in addition to
3129267a30dSMarc St-Jean	  a variety of MIPS cores.
3139267a30dSMarc St-Jean
3145e83d430SRalf Baechleconfig PMC_YOSEMITE
3153fa986faSMartin Michlmayr	bool "PMC-Sierra Yosemite eval board"
31642f77542SRalf Baechle	select CEVT_R4K
317940f6b48SRalf Baechle	select CSRC_R4K
3185e83d430SRalf Baechle	select DMA_COHERENT
3195e83d430SRalf Baechle	select HW_HAS_PCI
3205e83d430SRalf Baechle	select IRQ_CPU
3215e83d430SRalf Baechle	select IRQ_CPU_RM7K
3225e83d430SRalf Baechle	select IRQ_CPU_RM9K
3235e83d430SRalf Baechle	select SWAP_IO_SPACE
3247cf8053bSRalf Baechle	select SYS_HAS_CPU_RM9000
32536a88530SRalf Baechle	select SYS_HAS_EARLY_PRINTK
3265e83d430SRalf Baechle	select SYS_SUPPORTS_32BIT_KERNEL
3275e83d430SRalf Baechle	select SYS_SUPPORTS_64BIT_KERNEL
3285e83d430SRalf Baechle	select SYS_SUPPORTS_BIG_ENDIAN
3295e83d430SRalf Baechle	select SYS_SUPPORTS_HIGHMEM
330e73ea273SRalf Baechle	select SYS_SUPPORTS_SMP
3315e83d430SRalf Baechle	help
3325e83d430SRalf Baechle	  Yosemite is an evaluation board for the RM9000x2 processor
3335e83d430SRalf Baechle	  manufactured by PMC-Sierra.
3341da177e4SLinus Torvalds
3351da177e4SLinus Torvaldsconfig SGI_IP22
3363fa986faSMartin Michlmayr	bool "SGI IP22 (Indy/Indigo2)"
3371da177e4SLinus Torvalds	select ARC
3381da177e4SLinus Torvalds	select ARC32
3391da177e4SLinus Torvalds	select BOOT_ELF32
34042f77542SRalf Baechle	select CEVT_R4K
341940f6b48SRalf Baechle	select CSRC_R4K
342e2defae5SThomas Bogendoerfer	select DEFAULT_SGI_PARTITION
3431da177e4SLinus Torvalds	select DMA_NONCOHERENT
3445e83d430SRalf Baechle	select HW_HAS_EISA
345d865bea4SRalf Baechle	select I8253
34668de4803SThomas Bogendoerfer	select I8259
3471da177e4SLinus Torvalds	select IP22_CPU_SCACHE
3481da177e4SLinus Torvalds	select IRQ_CPU
349aa414dffSRalf Baechle	select GENERIC_ISA_DMA_SUPPORT_BROKEN
350e2defae5SThomas Bogendoerfer	select SGI_HAS_I8042
351e2defae5SThomas Bogendoerfer	select SGI_HAS_INDYDOG
35236e5c21dSThomas Bogendoerfer	select SGI_HAS_HAL2
353e2defae5SThomas Bogendoerfer	select SGI_HAS_SEEQ
354e2defae5SThomas Bogendoerfer	select SGI_HAS_WD93
355e2defae5SThomas Bogendoerfer	select SGI_HAS_ZILOG
3561da177e4SLinus Torvalds	select SWAP_IO_SPACE
3577cf8053bSRalf Baechle	select SYS_HAS_CPU_R4X00
3587cf8053bSRalf Baechle	select SYS_HAS_CPU_R5000
35936a88530SRalf Baechle	select SYS_HAS_EARLY_PRINTK
360ed5ba2fbSYoichi Yuasa	select SYS_SUPPORTS_32BIT_KERNEL
361ed5ba2fbSYoichi Yuasa	select SYS_SUPPORTS_64BIT_KERNEL
3625e83d430SRalf Baechle	select SYS_SUPPORTS_BIG_ENDIAN
3631da177e4SLinus Torvalds	help
3641da177e4SLinus Torvalds	  This are the SGI Indy, Challenge S and Indigo2, as well as certain
3651da177e4SLinus Torvalds	  OEM variants like the Tandem CMN B006S. To compile a Linux kernel
3661da177e4SLinus Torvalds	  that runs on these, say Y here.
3671da177e4SLinus Torvalds
3681da177e4SLinus Torvaldsconfig SGI_IP27
3693fa986faSMartin Michlmayr	bool "SGI IP27 (Origin200/2000)"
3701da177e4SLinus Torvalds	select ARC
3711da177e4SLinus Torvalds	select ARC64
3725e83d430SRalf Baechle	select BOOT_ELF64
373e2defae5SThomas Bogendoerfer	select DEFAULT_SGI_PARTITION
374634286f1SRalf Baechle	select DMA_COHERENT
37536a88530SRalf Baechle	select SYS_HAS_EARLY_PRINTK
3761da177e4SLinus Torvalds	select HW_HAS_PCI
377130e2fb7SRalf Baechle	select NR_CPUS_DEFAULT_64
3787cf8053bSRalf Baechle	select SYS_HAS_CPU_R10000
379ed5ba2fbSYoichi Yuasa	select SYS_SUPPORTS_64BIT_KERNEL
3805e83d430SRalf Baechle	select SYS_SUPPORTS_BIG_ENDIAN
381d8cb4e11SRalf Baechle	select SYS_SUPPORTS_NUMA
3821a5c5de1SRalf Baechle	select SYS_SUPPORTS_SMP
3831da177e4SLinus Torvalds	help
3841da177e4SLinus Torvalds	  This are the SGI Origin 200, Origin 2000 and Onyx 2 Graphics
3851da177e4SLinus Torvalds	  workstations.  To compile a Linux kernel that runs on these, say Y
3861da177e4SLinus Torvalds	  here.
3871da177e4SLinus Torvalds
388e2defae5SThomas Bogendoerferconfig SGI_IP28
389e2defae5SThomas Bogendoerfer	bool "SGI IP28 (Indigo2 R10k) (EXPERIMENTAL)"
390e2defae5SThomas Bogendoerfer	depends on EXPERIMENTAL
391e2defae5SThomas Bogendoerfer	select ARC
392e2defae5SThomas Bogendoerfer	select ARC64
393e2defae5SThomas Bogendoerfer	select BOOT_ELF64
394e2defae5SThomas Bogendoerfer	select CEVT_R4K
395e2defae5SThomas Bogendoerfer	select CSRC_R4K
396e2defae5SThomas Bogendoerfer	select DEFAULT_SGI_PARTITION
397e2defae5SThomas Bogendoerfer	select DMA_NONCOHERENT
398e2defae5SThomas Bogendoerfer	select GENERIC_ISA_DMA_SUPPORT_BROKEN
399e2defae5SThomas Bogendoerfer	select IRQ_CPU
400e2defae5SThomas Bogendoerfer	select HW_HAS_EISA
401e2defae5SThomas Bogendoerfer	select I8253
402e2defae5SThomas Bogendoerfer	select I8259
403e2defae5SThomas Bogendoerfer	select SGI_HAS_I8042
404e2defae5SThomas Bogendoerfer	select SGI_HAS_INDYDOG
4055b438c44SThomas Bogendoerfer	select SGI_HAS_HAL2
406e2defae5SThomas Bogendoerfer	select SGI_HAS_SEEQ
407e2defae5SThomas Bogendoerfer	select SGI_HAS_WD93
408e2defae5SThomas Bogendoerfer	select SGI_HAS_ZILOG
409e2defae5SThomas Bogendoerfer	select SWAP_IO_SPACE
410e2defae5SThomas Bogendoerfer	select SYS_HAS_CPU_R10000
411e2defae5SThomas Bogendoerfer	select SYS_HAS_EARLY_PRINTK
412e2defae5SThomas Bogendoerfer	select SYS_SUPPORTS_64BIT_KERNEL
413e2defae5SThomas Bogendoerfer	select SYS_SUPPORTS_BIG_ENDIAN
414e2defae5SThomas Bogendoerfer      help
415e2defae5SThomas Bogendoerfer        This is the SGI Indigo2 with R10000 processor.  To compile a Linux
416e2defae5SThomas Bogendoerfer        kernel that runs on these, say Y here.
417e2defae5SThomas Bogendoerfer
4181da177e4SLinus Torvaldsconfig SGI_IP32
419cfd2afc0SRalf Baechle	bool "SGI IP32 (O2)"
4201da177e4SLinus Torvalds	select ARC
4211da177e4SLinus Torvalds	select ARC32
4221da177e4SLinus Torvalds	select BOOT_ELF32
42342f77542SRalf Baechle	select CEVT_R4K
424940f6b48SRalf Baechle	select CSRC_R4K
4251da177e4SLinus Torvalds	select DMA_NONCOHERENT
4261da177e4SLinus Torvalds	select HW_HAS_PCI
427dd67b155SRalf Baechle	select IRQ_CPU
4281da177e4SLinus Torvalds	select R5000_CPU_SCACHE
4291da177e4SLinus Torvalds	select RM7000_CPU_SCACHE
4307cf8053bSRalf Baechle	select SYS_HAS_CPU_R5000
4317cf8053bSRalf Baechle	select SYS_HAS_CPU_R10000 if BROKEN
4327cf8053bSRalf Baechle	select SYS_HAS_CPU_RM7000
433dd2f18feSRalf Baechle	select SYS_HAS_CPU_NEVADA
434ed5ba2fbSYoichi Yuasa	select SYS_SUPPORTS_64BIT_KERNEL
4355e83d430SRalf Baechle	select SYS_SUPPORTS_BIG_ENDIAN
4361da177e4SLinus Torvalds	help
4371da177e4SLinus Torvalds	  If you want this kernel to run on SGI O2 workstation, say Y here.
4381da177e4SLinus Torvalds
439ade299d8SYoichi Yuasaconfig SIBYTE_CRHINE
440ade299d8SYoichi Yuasa	bool "Sibyte BCM91120C-CRhine"
4415e83d430SRalf Baechle	depends on EXPERIMENTAL
4425e83d430SRalf Baechle	select BOOT_ELF32
4435e83d430SRalf Baechle	select DMA_COHERENT
4445e83d430SRalf Baechle	select SIBYTE_BCM1120
4455e83d430SRalf Baechle	select SWAP_IO_SPACE
4467cf8053bSRalf Baechle	select SYS_HAS_CPU_SB1
4475e83d430SRalf Baechle	select SYS_SUPPORTS_BIG_ENDIAN
4485e83d430SRalf Baechle	select SYS_SUPPORTS_LITTLE_ENDIAN
4495e83d430SRalf Baechle
450ade299d8SYoichi Yuasaconfig SIBYTE_CARMEL
451ade299d8SYoichi Yuasa	bool "Sibyte BCM91120x-Carmel"
4525e83d430SRalf Baechle	depends on EXPERIMENTAL
4535e83d430SRalf Baechle	select BOOT_ELF32
4545e83d430SRalf Baechle	select DMA_COHERENT
4555e83d430SRalf Baechle	select SIBYTE_BCM1120
4565e83d430SRalf Baechle	select SWAP_IO_SPACE
4577cf8053bSRalf Baechle	select SYS_HAS_CPU_SB1
4585e83d430SRalf Baechle	select SYS_SUPPORTS_BIG_ENDIAN
4595e83d430SRalf Baechle	select SYS_SUPPORTS_LITTLE_ENDIAN
4605e83d430SRalf Baechle
4615e83d430SRalf Baechleconfig SIBYTE_CRHONE
4623fa986faSMartin Michlmayr	bool "Sibyte BCM91125C-CRhone"
4635e83d430SRalf Baechle	depends on EXPERIMENTAL
4645e83d430SRalf Baechle	select BOOT_ELF32
4655e83d430SRalf Baechle	select DMA_COHERENT
4665e83d430SRalf Baechle	select SIBYTE_BCM1125
4675e83d430SRalf Baechle	select SWAP_IO_SPACE
4687cf8053bSRalf Baechle	select SYS_HAS_CPU_SB1
4695e83d430SRalf Baechle	select SYS_SUPPORTS_BIG_ENDIAN
4705e83d430SRalf Baechle	select SYS_SUPPORTS_HIGHMEM
4715e83d430SRalf Baechle	select SYS_SUPPORTS_LITTLE_ENDIAN
4725e83d430SRalf Baechle
473ade299d8SYoichi Yuasaconfig SIBYTE_RHONE
474ade299d8SYoichi Yuasa	bool "Sibyte BCM91125E-Rhone"
475ade299d8SYoichi Yuasa	depends on EXPERIMENTAL
476ade299d8SYoichi Yuasa	select BOOT_ELF32
477ade299d8SYoichi Yuasa	select DMA_COHERENT
478ade299d8SYoichi Yuasa	select SIBYTE_BCM1125H
479ade299d8SYoichi Yuasa	select SWAP_IO_SPACE
480ade299d8SYoichi Yuasa	select SYS_HAS_CPU_SB1
481ade299d8SYoichi Yuasa	select SYS_SUPPORTS_BIG_ENDIAN
482ade299d8SYoichi Yuasa	select SYS_SUPPORTS_LITTLE_ENDIAN
483ade299d8SYoichi Yuasa
484ade299d8SYoichi Yuasaconfig SIBYTE_SWARM
485ade299d8SYoichi Yuasa	bool "Sibyte BCM91250A-SWARM"
486ade299d8SYoichi Yuasa	select BOOT_ELF32
487ade299d8SYoichi Yuasa	select DMA_COHERENT
488ade299d8SYoichi Yuasa	select NR_CPUS_DEFAULT_2
489ade299d8SYoichi Yuasa	select SIBYTE_SB1250
490ade299d8SYoichi Yuasa	select SWAP_IO_SPACE
491ade299d8SYoichi Yuasa	select SYS_HAS_CPU_SB1
492ade299d8SYoichi Yuasa	select SYS_SUPPORTS_BIG_ENDIAN
493ade299d8SYoichi Yuasa	select SYS_SUPPORTS_HIGHMEM
494ade299d8SYoichi Yuasa	select SYS_SUPPORTS_LITTLE_ENDIAN
495cce335aeSRalf Baechle	select ZONE_DMA32 if 64BIT
496ade299d8SYoichi Yuasa
497ade299d8SYoichi Yuasaconfig SIBYTE_LITTLESUR
498ade299d8SYoichi Yuasa	bool "Sibyte BCM91250C2-LittleSur"
499ade299d8SYoichi Yuasa	depends on EXPERIMENTAL
500ade299d8SYoichi Yuasa	select BOOT_ELF32
501ade299d8SYoichi Yuasa	select DMA_COHERENT
502ade299d8SYoichi Yuasa	select NR_CPUS_DEFAULT_2
503ade299d8SYoichi Yuasa	select SIBYTE_SB1250
504ade299d8SYoichi Yuasa	select SWAP_IO_SPACE
505ade299d8SYoichi Yuasa	select SYS_HAS_CPU_SB1
506ade299d8SYoichi Yuasa	select SYS_SUPPORTS_BIG_ENDIAN
507ade299d8SYoichi Yuasa	select SYS_SUPPORTS_HIGHMEM
508ade299d8SYoichi Yuasa	select SYS_SUPPORTS_LITTLE_ENDIAN
509ade299d8SYoichi Yuasa
510ade299d8SYoichi Yuasaconfig SIBYTE_SENTOSA
511ade299d8SYoichi Yuasa	bool "Sibyte BCM91250E-Sentosa"
512ade299d8SYoichi Yuasa	depends on EXPERIMENTAL
513ade299d8SYoichi Yuasa	select BOOT_ELF32
514ade299d8SYoichi Yuasa	select DMA_COHERENT
515ade299d8SYoichi Yuasa	select NR_CPUS_DEFAULT_2
516ade299d8SYoichi Yuasa	select SIBYTE_SB1250
517ade299d8SYoichi Yuasa	select SWAP_IO_SPACE
518ade299d8SYoichi Yuasa	select SYS_HAS_CPU_SB1
519ade299d8SYoichi Yuasa	select SYS_SUPPORTS_BIG_ENDIAN
520ade299d8SYoichi Yuasa	select SYS_SUPPORTS_LITTLE_ENDIAN
521ade299d8SYoichi Yuasa
522ade299d8SYoichi Yuasaconfig SIBYTE_BIGSUR
523ade299d8SYoichi Yuasa	bool "Sibyte BCM91480B-BigSur"
524ade299d8SYoichi Yuasa	select BOOT_ELF32
525ade299d8SYoichi Yuasa	select DMA_COHERENT
526ade299d8SYoichi Yuasa	select NR_CPUS_DEFAULT_4
527ade299d8SYoichi Yuasa	select SIBYTE_BCM1x80
528ade299d8SYoichi Yuasa	select SWAP_IO_SPACE
529ade299d8SYoichi Yuasa	select SYS_HAS_CPU_SB1
530ade299d8SYoichi Yuasa	select SYS_SUPPORTS_BIG_ENDIAN
531651194f8SRalf Baechle	select SYS_SUPPORTS_HIGHMEM
532ade299d8SYoichi Yuasa	select SYS_SUPPORTS_LITTLE_ENDIAN
533cce335aeSRalf Baechle	select ZONE_DMA32 if 64BIT
534ade299d8SYoichi Yuasa
53514b36af4SThomas Bogendoerferconfig SNI_RM
53614b36af4SThomas Bogendoerfer	bool "SNI RM200/300/400"
5374a0312fcSThomas Bogendoerfer	select ARC if CPU_LITTLE_ENDIAN
5384a0312fcSThomas Bogendoerfer	select ARC32 if CPU_LITTLE_ENDIAN
539231a35d3SThomas Bogendoerfer	select SNIPROM if CPU_BIG_ENDIAN
5405e83d430SRalf Baechle	select ARCH_MAY_HAVE_PC_FDC
5415e83d430SRalf Baechle	select BOOT_ELF32
54242f77542SRalf Baechle	select CEVT_R4K
543940f6b48SRalf Baechle	select CSRC_R4K
544e2defae5SThomas Bogendoerfer	select DEFAULT_SGI_PARTITION if CPU_BIG_ENDIAN
5455e83d430SRalf Baechle	select DMA_NONCOHERENT
5465e83d430SRalf Baechle	select GENERIC_ISA_DMA
5475e83d430SRalf Baechle	select HW_HAS_EISA
5485e83d430SRalf Baechle	select HW_HAS_PCI
549c066a32aSThomas Bogendoerfer	select IRQ_CPU
550d865bea4SRalf Baechle	select I8253
5515e83d430SRalf Baechle	select I8259
5525e83d430SRalf Baechle	select ISA
5534a0312fcSThomas Bogendoerfer	select SWAP_IO_SPACE if CPU_BIG_ENDIAN
5547cf8053bSRalf Baechle	select SYS_HAS_CPU_R4X00
5554a0312fcSThomas Bogendoerfer	select SYS_HAS_CPU_R5000
556c066a32aSThomas Bogendoerfer	select SYS_HAS_CPU_R10000
5574a0312fcSThomas Bogendoerfer	select R5000_CPU_SCACHE
55836a88530SRalf Baechle	select SYS_HAS_EARLY_PRINTK
559ed5ba2fbSYoichi Yuasa	select SYS_SUPPORTS_32BIT_KERNEL
5605e83d430SRalf Baechle	select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
5614a0312fcSThomas Bogendoerfer	select SYS_SUPPORTS_BIG_ENDIAN
5625e83d430SRalf Baechle	select SYS_SUPPORTS_HIGHMEM
5635e83d430SRalf Baechle	select SYS_SUPPORTS_LITTLE_ENDIAN
5641da177e4SLinus Torvalds	help
56514b36af4SThomas Bogendoerfer	  The SNI RM200/300/400 are MIPS-based machines manufactured by
56614b36af4SThomas Bogendoerfer	  Siemens Nixdorf Informationssysteme (SNI), parent company of Pyramid
5675e83d430SRalf Baechle	  Technology and now in turn merged with Fujitsu.  Say Y here to
5685e83d430SRalf Baechle	  support this machine type.
5691da177e4SLinus Torvalds
570edcaf1a6SAtsushi Nemotoconfig MACH_TX39XX
571edcaf1a6SAtsushi Nemoto	bool "Toshiba TX39 series based machines"
5725e83d430SRalf Baechle
573edcaf1a6SAtsushi Nemotoconfig MACH_TX49XX
574edcaf1a6SAtsushi Nemoto	bool "Toshiba TX49 series based machines"
57523fbee9dSRalf Baechle
57673b4390fSRalf Baechleconfig MIKROTIK_RB532
57773b4390fSRalf Baechle	bool "Mikrotik RB532 boards"
57873b4390fSRalf Baechle	select CEVT_R4K
57973b4390fSRalf Baechle	select CSRC_R4K
58073b4390fSRalf Baechle	select DMA_NONCOHERENT
58173b4390fSRalf Baechle	select HW_HAS_PCI
58273b4390fSRalf Baechle	select IRQ_CPU
58373b4390fSRalf Baechle	select SYS_HAS_CPU_MIPS32_R1
58473b4390fSRalf Baechle	select SYS_SUPPORTS_32BIT_KERNEL
58573b4390fSRalf Baechle	select SYS_SUPPORTS_LITTLE_ENDIAN
58673b4390fSRalf Baechle	select SWAP_IO_SPACE
58773b4390fSRalf Baechle	select BOOT_RAW
588d888e25bSFlorian Fainelli	select ARCH_REQUIRE_GPIOLIB
58973b4390fSRalf Baechle	help
59073b4390fSRalf Baechle	  Support the Mikrotik(tm) RouterBoard 532 series,
59173b4390fSRalf Baechle	  based on the IDT RC32434 SoC.
59273b4390fSRalf Baechle
593ade299d8SYoichi Yuasaconfig WR_PPMC
594ade299d8SYoichi Yuasa	bool "Wind River PPMC board"
59542f77542SRalf Baechle	select CEVT_R4K
596940f6b48SRalf Baechle	select CSRC_R4K
597ade299d8SYoichi Yuasa	select IRQ_CPU
598ade299d8SYoichi Yuasa	select BOOT_ELF32
599ade299d8SYoichi Yuasa	select DMA_NONCOHERENT
600ade299d8SYoichi Yuasa	select HW_HAS_PCI
601ade299d8SYoichi Yuasa	select PCI_GT64XXX_PCI0
602ade299d8SYoichi Yuasa	select SWAP_IO_SPACE
603ade299d8SYoichi Yuasa	select SYS_HAS_CPU_MIPS32_R1
604ade299d8SYoichi Yuasa	select SYS_HAS_CPU_MIPS32_R2
605ade299d8SYoichi Yuasa	select SYS_HAS_CPU_MIPS64_R1
606ade299d8SYoichi Yuasa	select SYS_HAS_CPU_NEVADA
607ade299d8SYoichi Yuasa	select SYS_HAS_CPU_RM7000
608ade299d8SYoichi Yuasa	select SYS_SUPPORTS_32BIT_KERNEL
609ade299d8SYoichi Yuasa	select SYS_SUPPORTS_64BIT_KERNEL
610ade299d8SYoichi Yuasa	select SYS_SUPPORTS_BIG_ENDIAN
611ade299d8SYoichi Yuasa	select SYS_SUPPORTS_LITTLE_ENDIAN
612ade299d8SYoichi Yuasa	help
613ade299d8SYoichi Yuasa	  This enables support for the Wind River MIPS32 4KC PPMC evaluation
614ade299d8SYoichi Yuasa	  board, which is based on GT64120 bridge chip.
615ade299d8SYoichi Yuasa
616a86c7f72SDavid Daneyconfig CAVIUM_OCTEON_SIMULATOR
617c9d89d97SYoichi Yuasa	bool "Cavium Networks Octeon Simulator"
618a86c7f72SDavid Daney	select CEVT_R4K
619a86c7f72SDavid Daney	select 64BIT_PHYS_ADDR
620a86c7f72SDavid Daney	select DMA_COHERENT
621a86c7f72SDavid Daney	select SYS_SUPPORTS_64BIT_KERNEL
622a86c7f72SDavid Daney	select SYS_SUPPORTS_BIG_ENDIAN
623a86c7f72SDavid Daney	select SYS_SUPPORTS_HIGHMEM
624773cb77dSRalf Baechle	select SYS_SUPPORTS_HOTPLUG_CPU
6255e683389SDavid Daney	select SYS_HAS_CPU_CAVIUM_OCTEON
626a86c7f72SDavid Daney	help
627a86c7f72SDavid Daney	  The Octeon simulator is software performance model of the Cavium
628a86c7f72SDavid Daney	  Octeon Processor. It supports simulating Octeon processors on x86
629a86c7f72SDavid Daney	  hardware.
630a86c7f72SDavid Daney
631a86c7f72SDavid Daneyconfig CAVIUM_OCTEON_REFERENCE_BOARD
632c9d89d97SYoichi Yuasa	bool "Cavium Networks Octeon reference board"
633a86c7f72SDavid Daney	select CEVT_R4K
634a86c7f72SDavid Daney	select 64BIT_PHYS_ADDR
635a86c7f72SDavid Daney	select DMA_COHERENT
636a86c7f72SDavid Daney	select SYS_SUPPORTS_64BIT_KERNEL
637a86c7f72SDavid Daney	select SYS_SUPPORTS_BIG_ENDIAN
638a86c7f72SDavid Daney	select SYS_SUPPORTS_HIGHMEM
639773cb77dSRalf Baechle	select SYS_SUPPORTS_HOTPLUG_CPU
640a86c7f72SDavid Daney	select SYS_HAS_EARLY_PRINTK
6415e683389SDavid Daney	select SYS_HAS_CPU_CAVIUM_OCTEON
642a86c7f72SDavid Daney	select SWAP_IO_SPACE
643e8635b48SDavid Daney	select HW_HAS_PCI
644e8635b48SDavid Daney	select ARCH_SUPPORTS_MSI
645a86c7f72SDavid Daney	help
646a86c7f72SDavid Daney	  This option supports all of the Octeon reference boards from Cavium
647a86c7f72SDavid Daney	  Networks. It builds a kernel that dynamically determines the Octeon
648a86c7f72SDavid Daney	  CPU type and supports all known board reference implementations.
649a86c7f72SDavid Daney	  Some of the supported boards are:
650a86c7f72SDavid Daney		EBT3000
651a86c7f72SDavid Daney		EBH3000
652a86c7f72SDavid Daney		EBH3100
653a86c7f72SDavid Daney		Thunder
654a86c7f72SDavid Daney		Kodama
655a86c7f72SDavid Daney		Hikari
656a86c7f72SDavid Daney	  Say Y here for most Octeon reference boards.
657a86c7f72SDavid Daney
6581da177e4SLinus Torvaldsendchoice
6591da177e4SLinus Torvalds
660e8c7c482SRalf Baechlesource "arch/mips/alchemy/Kconfig"
6619c746edbSYoichi Yuasasource "arch/mips/basler/excite/Kconfig"
6625e83d430SRalf Baechlesource "arch/mips/jazz/Kconfig"
6631f21d2bdSBrian Murphysource "arch/mips/lasat/Kconfig"
6645e83d430SRalf Baechlesource "arch/mips/pmc-sierra/Kconfig"
66529c48699SRalf Baechlesource "arch/mips/sgi-ip27/Kconfig"
66638b18f72SRalf Baechlesource "arch/mips/sibyte/Kconfig"
66722b1d707SAtsushi Nemotosource "arch/mips/txx9/Kconfig"
6685e83d430SRalf Baechlesource "arch/mips/vr41xx/Kconfig"
669a86c7f72SDavid Daneysource "arch/mips/cavium-octeon/Kconfig"
67038b18f72SRalf Baechle
6715e83d430SRalf Baechleendmenu
6725e83d430SRalf Baechle
6731da177e4SLinus Torvaldsconfig RWSEM_GENERIC_SPINLOCK
6741da177e4SLinus Torvalds	bool
6751da177e4SLinus Torvalds	default y
6761da177e4SLinus Torvalds
6771da177e4SLinus Torvaldsconfig RWSEM_XCHGADD_ALGORITHM
6781da177e4SLinus Torvalds	bool
6791da177e4SLinus Torvalds
680f0d1b0b3SDavid Howellsconfig ARCH_HAS_ILOG2_U32
681f0d1b0b3SDavid Howells	bool
682f0d1b0b3SDavid Howells	default n
683f0d1b0b3SDavid Howells
684f0d1b0b3SDavid Howellsconfig ARCH_HAS_ILOG2_U64
685f0d1b0b3SDavid Howells	bool
686f0d1b0b3SDavid Howells	default n
687f0d1b0b3SDavid Howells
68800a58253SRalf Baechleconfig ARCH_SUPPORTS_OPROFILE
68900a58253SRalf Baechle	bool
69000a58253SRalf Baechle	default y if !MIPS_MT_SMTC
69100a58253SRalf Baechle
6923c9ee7efSAkinobu Mitaconfig GENERIC_FIND_NEXT_BIT
6933c9ee7efSAkinobu Mita	bool
6943c9ee7efSAkinobu Mita	default y
6953c9ee7efSAkinobu Mita
6963c9ee7efSAkinobu Mitaconfig GENERIC_HWEIGHT
6973c9ee7efSAkinobu Mita	bool
6983c9ee7efSAkinobu Mita	default y
6993c9ee7efSAkinobu Mita
7001da177e4SLinus Torvaldsconfig GENERIC_CALIBRATE_DELAY
7011da177e4SLinus Torvalds	bool
7021da177e4SLinus Torvalds	default y
7031da177e4SLinus Torvalds
7047bcf7717SRalf Baechleconfig GENERIC_CLOCKEVENTS
7057bcf7717SRalf Baechle	bool
7067bcf7717SRalf Baechle	default y
7077bcf7717SRalf Baechle
7088db02010SRalf Baechleconfig GENERIC_TIME
7098db02010SRalf Baechle	bool
7108db02010SRalf Baechle	default y
7118db02010SRalf Baechle
712f5ff0a28SRalf Baechleconfig GENERIC_CMOS_UPDATE
713f5ff0a28SRalf Baechle	bool
714f5ff0a28SRalf Baechle	default y
715f5ff0a28SRalf Baechle
716ae1e9130SIngo Molnarconfig SCHED_OMIT_FRAME_POINTER
7171cc89038SAtsushi Nemoto	bool
7181cc89038SAtsushi Nemoto	default y
7191cc89038SAtsushi Nemoto
720e77c232cSFranck Bui-Huuconfig GENERIC_HARDIRQS_NO__DO_IRQ
721c87e0909SRalf Baechle	def_bool y
722e77c232cSFranck Bui-Huu
7231da177e4SLinus Torvalds#
7241da177e4SLinus Torvalds# Select some configuration options automatically based on user selections.
7251da177e4SLinus Torvalds#
7261da177e4SLinus Torvaldsconfig ARC
7271da177e4SLinus Torvalds	bool
7281da177e4SLinus Torvalds
72961ed242dSRalf Baechleconfig ARCH_MAY_HAVE_PC_FDC
73061ed242dSRalf Baechle	bool
73161ed242dSRalf Baechle
7329267a30dSMarc St-Jeanconfig BOOT_RAW
7339267a30dSMarc St-Jean	bool
7349267a30dSMarc St-Jean
735217dd11eSRalf Baechleconfig CEVT_BCM1480
736217dd11eSRalf Baechle	bool
737217dd11eSRalf Baechle
7386457d9fcSYoichi Yuasaconfig CEVT_DS1287
7396457d9fcSYoichi Yuasa	bool
7406457d9fcSYoichi Yuasa
7411097c6acSYoichi Yuasaconfig CEVT_GT641XX
7421097c6acSYoichi Yuasa	bool
7431097c6acSYoichi Yuasa
744779e7d41SManuel Laussconfig CEVT_R4K_LIB
745779e7d41SManuel Lauss	bool
746779e7d41SManuel Lauss
74742f77542SRalf Baechleconfig CEVT_R4K
748779e7d41SManuel Lauss	select CEVT_R4K_LIB
74942f77542SRalf Baechle	bool
75042f77542SRalf Baechle
751217dd11eSRalf Baechleconfig CEVT_SB1250
752217dd11eSRalf Baechle	bool
753217dd11eSRalf Baechle
754229f773eSAtsushi Nemotoconfig CEVT_TXX9
755229f773eSAtsushi Nemoto	bool
756229f773eSAtsushi Nemoto
757217dd11eSRalf Baechleconfig CSRC_BCM1480
758217dd11eSRalf Baechle	bool
759217dd11eSRalf Baechle
7604247417dSYoichi Yuasaconfig CSRC_IOASIC
7614247417dSYoichi Yuasa	bool
7624247417dSYoichi Yuasa
763779e7d41SManuel Laussconfig CSRC_R4K_LIB
764779e7d41SManuel Lauss	bool
765779e7d41SManuel Lauss
766940f6b48SRalf Baechleconfig CSRC_R4K
767779e7d41SManuel Lauss	select CSRC_R4K_LIB
768940f6b48SRalf Baechle	bool
769940f6b48SRalf Baechle
770217dd11eSRalf Baechleconfig CSRC_SB1250
771217dd11eSRalf Baechle	bool
772217dd11eSRalf Baechle
773a9aec7feSAtsushi Nemotoconfig GPIO_TXX9
774a9aec7feSAtsushi Nemoto	select GENERIC_GPIO
7757444a72eSMichael Buesch	select ARCH_REQUIRE_GPIOLIB
776a9aec7feSAtsushi Nemoto	bool
777a9aec7feSAtsushi Nemoto
778df78b5c8SAurelien Jarnoconfig CFE
779df78b5c8SAurelien Jarno	bool
780df78b5c8SAurelien Jarno
7811da177e4SLinus Torvaldsconfig DMA_COHERENT
7821da177e4SLinus Torvalds	bool
7831da177e4SLinus Torvalds
7841da177e4SLinus Torvaldsconfig DMA_NONCOHERENT
7851da177e4SLinus Torvalds	bool
7864ce588cdSRalf Baechle	select DMA_NEED_PCI_MAP_STATE
7874ce588cdSRalf Baechle
7884ce588cdSRalf Baechleconfig DMA_NEED_PCI_MAP_STATE
7894ce588cdSRalf Baechle	bool
7901da177e4SLinus Torvalds
7911da177e4SLinus Torvaldsconfig EARLY_PRINTK
79236a88530SRalf Baechle	bool "Early printk" if EMBEDDED && DEBUG_KERNEL
79336a88530SRalf Baechle	depends on SYS_HAS_EARLY_PRINTK
79436a88530SRalf Baechle	default y
79536a88530SRalf Baechle	help
79636a88530SRalf Baechle	  This option enables special console drivers which allow the kernel
79736a88530SRalf Baechle	  to print messages very early in the bootup process.
79836a88530SRalf Baechle
79936a88530SRalf Baechle	  This is useful for kernel debugging when your machine crashes very
800490dcc4dSRobert P. J. Day	  early before the console code is initialized. For normal operation,
801490dcc4dSRobert P. J. Day	  it is not recommended because it looks ugly on some machines and
802490dcc4dSRobert P. J. Day	  doesn't cooperate with an X server. You should normally say N here,
80336a88530SRalf Baechle	  unless you want to debug such a crash.
80436a88530SRalf Baechle
80536a88530SRalf Baechleconfig SYS_HAS_EARLY_PRINTK
8061da177e4SLinus Torvalds	bool
8071da177e4SLinus Torvalds
808dbb74540SRalf Baechleconfig HOTPLUG_CPU
8091b2bc75cSRalf Baechle	bool "Support for hot-pluggable CPUs"
8101b2bc75cSRalf Baechle	depends on SMP && HOTPLUG && SYS_SUPPORTS_HOTPLUG_CPU
8111b2bc75cSRalf Baechle	help
8121b2bc75cSRalf Baechle	  Say Y here to allow turning CPUs off and on. CPUs can be
8131b2bc75cSRalf Baechle	  controlled through /sys/devices/system/cpu.
8141b2bc75cSRalf Baechle	  (Note: power management support will enable this option
8151b2bc75cSRalf Baechle	    automatically on SMP systems. )
8161b2bc75cSRalf Baechle	  Say N if you want to disable CPU hotplug.
8171b2bc75cSRalf Baechle
8181b2bc75cSRalf Baechleconfig SYS_SUPPORTS_HOTPLUG_CPU
819dbb74540SRalf Baechle	bool
820dbb74540SRalf Baechle
8211da177e4SLinus Torvaldsconfig I8259
8221da177e4SLinus Torvalds	bool
8231da177e4SLinus Torvalds
8241da177e4SLinus Torvaldsconfig MIPS_BONITO64
8251da177e4SLinus Torvalds	bool
8261da177e4SLinus Torvalds
8271da177e4SLinus Torvaldsconfig MIPS_MSC
8281da177e4SLinus Torvalds	bool
8291da177e4SLinus Torvalds
8301f21d2bdSBrian Murphyconfig MIPS_NILE4
8311f21d2bdSBrian Murphy	bool
8321f21d2bdSBrian Murphy
8331da177e4SLinus Torvaldsconfig MIPS_DISABLE_OBSOLETE_IDE
8341da177e4SLinus Torvalds	bool
8351da177e4SLinus Torvalds
83639b8d525SRalf Baechleconfig SYNC_R4K
83739b8d525SRalf Baechle	bool
83839b8d525SRalf Baechle
839d388d685SMaciej W. Rozyckiconfig NO_IOPORT
840d388d685SMaciej W. Rozycki	def_bool n
841d388d685SMaciej W. Rozycki
8428313da30SRalf Baechleconfig GENERIC_ISA_DMA
8438313da30SRalf Baechle	bool
8448313da30SRalf Baechle	select ZONE_DMA if GENERIC_ISA_DMA_SUPPORT_BROKEN=n
8458313da30SRalf Baechle
846aa414dffSRalf Baechleconfig GENERIC_ISA_DMA_SUPPORT_BROKEN
847aa414dffSRalf Baechle	bool
8488313da30SRalf Baechle	select GENERIC_ISA_DMA
849aa414dffSRalf Baechle
85009663335SYoichi Yuasaconfig GENERIC_GPIO
85109663335SYoichi Yuasa	bool
85209663335SYoichi Yuasa
8535e83d430SRalf Baechle#
8543cb2fcccSMatt LaPlante# Endianess selection.  Sufficiently obscure so many users don't know what to
8555e83d430SRalf Baechle# answer,so we try hard to limit the available choices.  Also the use of a
8565e83d430SRalf Baechle# choice statement should be more obvious to the user.
8575e83d430SRalf Baechle#
8585e83d430SRalf Baechlechoice
8595e83d430SRalf Baechle	prompt "Endianess selection"
8601da177e4SLinus Torvalds	help
8611da177e4SLinus Torvalds	  Some MIPS machines can be configured for either little or big endian
8625e83d430SRalf Baechle	  byte order. These modes require different kernels and a different
8633cb2fcccSMatt LaPlante	  Linux distribution.  In general there is one preferred byteorder for a
8645e83d430SRalf Baechle	  particular system but some systems are just as commonly used in the
8653dde6ad8SDavid Sterba	  one or the other endianness.
8665e83d430SRalf Baechle
8675e83d430SRalf Baechleconfig CPU_BIG_ENDIAN
8685e83d430SRalf Baechle	bool "Big endian"
8695e83d430SRalf Baechle	depends on SYS_SUPPORTS_BIG_ENDIAN
8705e83d430SRalf Baechle
8715e83d430SRalf Baechleconfig CPU_LITTLE_ENDIAN
8725e83d430SRalf Baechle	bool "Little endian"
8735e83d430SRalf Baechle	depends on SYS_SUPPORTS_LITTLE_ENDIAN
8745e83d430SRalf Baechle	help
8755e83d430SRalf Baechle
8765e83d430SRalf Baechleendchoice
8775e83d430SRalf Baechle
8782116245eSRalf Baechleconfig SYS_SUPPORTS_APM_EMULATION
8792116245eSRalf Baechle	bool
8802116245eSRalf Baechle
8815e83d430SRalf Baechleconfig SYS_SUPPORTS_BIG_ENDIAN
8825e83d430SRalf Baechle	bool
8835e83d430SRalf Baechle
8845e83d430SRalf Baechleconfig SYS_SUPPORTS_LITTLE_ENDIAN
8855e83d430SRalf Baechle	bool
8861da177e4SLinus Torvalds
8879cffd154SDavid Daneyconfig SYS_SUPPORTS_HUGETLBFS
8889cffd154SDavid Daney	bool
8899cffd154SDavid Daney	depends on CPU_SUPPORTS_HUGEPAGES && 64BIT
8909cffd154SDavid Daney	default y
8919cffd154SDavid Daney
8921da177e4SLinus Torvaldsconfig IRQ_CPU
8931da177e4SLinus Torvalds	bool
8941da177e4SLinus Torvalds
8951da177e4SLinus Torvaldsconfig IRQ_CPU_RM7K
8961da177e4SLinus Torvalds	bool
8971da177e4SLinus Torvalds
8985e83d430SRalf Baechleconfig IRQ_CPU_RM9K
8995e83d430SRalf Baechle	bool
9005e83d430SRalf Baechle
9019267a30dSMarc St-Jeanconfig IRQ_MSP_SLP
9029267a30dSMarc St-Jean	bool
9039267a30dSMarc St-Jean
9049267a30dSMarc St-Jeanconfig IRQ_MSP_CIC
9059267a30dSMarc St-Jean	bool
9069267a30dSMarc St-Jean
9078420fd00SAtsushi Nemotoconfig IRQ_TXX9
9088420fd00SAtsushi Nemoto	bool
9098420fd00SAtsushi Nemoto
910d5ab1a69SYoichi Yuasaconfig IRQ_GT641XX
911d5ab1a69SYoichi Yuasa	bool
912d5ab1a69SYoichi Yuasa
91339b8d525SRalf Baechleconfig IRQ_GIC
91439b8d525SRalf Baechle	bool
91539b8d525SRalf Baechle
916a86c7f72SDavid Daneyconfig IRQ_CPU_OCTEON
917a86c7f72SDavid Daney	bool
918a86c7f72SDavid Daney
9191da177e4SLinus Torvaldsconfig MIPS_BOARDS_GEN
9201da177e4SLinus Torvalds	bool
9211da177e4SLinus Torvalds
922252161ecSYoichi Yuasaconfig PCI_GT64XXX_PCI0
9231da177e4SLinus Torvalds	bool
9241da177e4SLinus Torvalds
9259267a30dSMarc St-Jeanconfig NO_EXCEPT_FILL
9269267a30dSMarc St-Jean	bool
9279267a30dSMarc St-Jean
928663c3d90Sthomas@koeller.dyndns.orgconfig MIPS_RM9122
929663c3d90Sthomas@koeller.dyndns.org	bool
930663c3d90Sthomas@koeller.dyndns.org	select SERIAL_RM9000
931663c3d90Sthomas@koeller.dyndns.org
932a83860c2SRalf Baechleconfig SOC_EMMA2RH
933a83860c2SRalf Baechle	bool
934a83860c2SRalf Baechle	select CEVT_R4K
935a83860c2SRalf Baechle	select CSRC_R4K
936a83860c2SRalf Baechle	select DMA_NONCOHERENT
937a83860c2SRalf Baechle	select IRQ_CPU
938a83860c2SRalf Baechle	select SWAP_IO_SPACE
939a83860c2SRalf Baechle	select SYS_HAS_CPU_R5500
940a83860c2SRalf Baechle	select SYS_SUPPORTS_32BIT_KERNEL
941a83860c2SRalf Baechle	select SYS_SUPPORTS_64BIT_KERNEL
942a83860c2SRalf Baechle	select SYS_SUPPORTS_BIG_ENDIAN
943a83860c2SRalf Baechle
944edb6310aSDaniel Lairdconfig SOC_PNX833X
945edb6310aSDaniel Laird	bool
946edb6310aSDaniel Laird	select CEVT_R4K
947edb6310aSDaniel Laird	select CSRC_R4K
948edb6310aSDaniel Laird	select IRQ_CPU
949edb6310aSDaniel Laird	select DMA_NONCOHERENT
950edb6310aSDaniel Laird	select SYS_HAS_CPU_MIPS32_R2
951edb6310aSDaniel Laird	select SYS_SUPPORTS_32BIT_KERNEL
952edb6310aSDaniel Laird	select SYS_SUPPORTS_LITTLE_ENDIAN
953edb6310aSDaniel Laird	select SYS_SUPPORTS_BIG_ENDIAN
954edb6310aSDaniel Laird	select GENERIC_GPIO
955edb6310aSDaniel Laird	select CPU_MIPSR2_IRQ_VI
956edb6310aSDaniel Laird
957edb6310aSDaniel Lairdconfig SOC_PNX8335
958edb6310aSDaniel Laird	bool
959edb6310aSDaniel Laird	select SOC_PNX833X
960edb6310aSDaniel Laird
961bdf21b18SPete Popovconfig PNX8550
962bdf21b18SPete Popov	bool
963bdf21b18SPete Popov	select SOC_PNX8550
964bdf21b18SPete Popov
965bdf21b18SPete Popovconfig SOC_PNX8550
966bdf21b18SPete Popov	bool
967bdf21b18SPete Popov	select DMA_NONCOHERENT
968bdf21b18SPete Popov	select HW_HAS_PCI
969b8c2a77cSRalf Baechle	select SYS_HAS_CPU_MIPS32_R1
97036a88530SRalf Baechle	select SYS_HAS_EARLY_PRINTK
9717cf8053bSRalf Baechle	select SYS_SUPPORTS_32BIT_KERNEL
9724ead1681SFlorian Fainelli	select GENERIC_GPIO
973bdf21b18SPete Popov
9741da177e4SLinus Torvaldsconfig SWAP_IO_SPACE
9751da177e4SLinus Torvalds	bool
9761da177e4SLinus Torvalds
977663c3d90Sthomas@koeller.dyndns.orgconfig SERIAL_RM9000
978663c3d90Sthomas@koeller.dyndns.org	bool
979663c3d90Sthomas@koeller.dyndns.org
980e2defae5SThomas Bogendoerferconfig SGI_HAS_INDYDOG
981e2defae5SThomas Bogendoerfer	bool
982e2defae5SThomas Bogendoerfer
9835b438c44SThomas Bogendoerferconfig SGI_HAS_HAL2
9845b438c44SThomas Bogendoerfer	bool
9855b438c44SThomas Bogendoerfer
986e2defae5SThomas Bogendoerferconfig SGI_HAS_SEEQ
987e2defae5SThomas Bogendoerfer	bool
988e2defae5SThomas Bogendoerfer
989e2defae5SThomas Bogendoerferconfig SGI_HAS_WD93
990e2defae5SThomas Bogendoerfer	bool
991e2defae5SThomas Bogendoerfer
992e2defae5SThomas Bogendoerferconfig SGI_HAS_ZILOG
993e2defae5SThomas Bogendoerfer	bool
994e2defae5SThomas Bogendoerfer
995e2defae5SThomas Bogendoerferconfig SGI_HAS_I8042
996e2defae5SThomas Bogendoerfer	bool
997e2defae5SThomas Bogendoerfer
998e2defae5SThomas Bogendoerferconfig DEFAULT_SGI_PARTITION
999e2defae5SThomas Bogendoerfer	bool
1000e2defae5SThomas Bogendoerfer
10015e83d430SRalf Baechleconfig ARC32
10025e83d430SRalf Baechle	bool
10035e83d430SRalf Baechle
1004231a35d3SThomas Bogendoerferconfig SNIPROM
1005231a35d3SThomas Bogendoerfer	bool
1006231a35d3SThomas Bogendoerfer
10071da177e4SLinus Torvaldsconfig BOOT_ELF32
10081da177e4SLinus Torvalds	bool
10091da177e4SLinus Torvalds
10101da177e4SLinus Torvaldsconfig MIPS_L1_CACHE_SHIFT
10111da177e4SLinus Torvalds	int
101273b4390fSRalf Baechle	default "4" if MACH_DECSTATION || MIKROTIK_RB532
1013a86c7f72SDavid Daney	default "7" if SGI_IP22 || SGI_IP27 || SGI_IP28 || SNI_RM || CPU_CAVIUM_OCTEON
10149267a30dSMarc St-Jean	default "4" if PMC_MSP4200_EVAL
10151da177e4SLinus Torvalds	default "5"
10161da177e4SLinus Torvalds
10171da177e4SLinus Torvaldsconfig HAVE_STD_PC_SERIAL_PORT
10181da177e4SLinus Torvalds	bool
10191da177e4SLinus Torvalds
10201da177e4SLinus Torvaldsconfig ARC_CONSOLE
10211da177e4SLinus Torvalds	bool "ARC console support"
1022e2defae5SThomas Bogendoerfer	depends on SGI_IP22 || SGI_IP28 || (SNI_RM && CPU_LITTLE_ENDIAN)
10231da177e4SLinus Torvalds
10241da177e4SLinus Torvaldsconfig ARC_MEMORY
10251da177e4SLinus Torvalds	bool
102614b36af4SThomas Bogendoerfer	depends on MACH_JAZZ || SNI_RM || SGI_IP32
10271da177e4SLinus Torvalds	default y
10281da177e4SLinus Torvalds
10291da177e4SLinus Torvaldsconfig ARC_PROMLIB
10301da177e4SLinus Torvalds	bool
1031e2defae5SThomas Bogendoerfer	depends on MACH_JAZZ || SNI_RM || SGI_IP22 || SGI_IP28 || SGI_IP32
10321da177e4SLinus Torvalds	default y
10331da177e4SLinus Torvalds
10341da177e4SLinus Torvaldsconfig ARC64
10351da177e4SLinus Torvalds	bool
10361da177e4SLinus Torvalds
10371da177e4SLinus Torvaldsconfig BOOT_ELF64
10381da177e4SLinus Torvalds	bool
10391da177e4SLinus Torvalds
10401da177e4SLinus Torvaldsmenu "CPU selection"
10411da177e4SLinus Torvalds
10421da177e4SLinus Torvaldschoice
10431da177e4SLinus Torvalds	prompt "CPU type"
10441da177e4SLinus Torvalds	default CPU_R4X00
10451da177e4SLinus Torvalds
10462a21c730SFuxin Zhangconfig CPU_LOONGSON2
10472a21c730SFuxin Zhang	bool "Loongson 2"
10482a21c730SFuxin Zhang	depends on SYS_HAS_CPU_LOONGSON2
10492a21c730SFuxin Zhang	select CPU_SUPPORTS_32BIT_KERNEL
10502a21c730SFuxin Zhang	select CPU_SUPPORTS_64BIT_KERNEL
10512a21c730SFuxin Zhang	select CPU_SUPPORTS_HIGHMEM
10522a21c730SFuxin Zhang	help
10532a21c730SFuxin Zhang	  The Loongson 2E processor implements the MIPS III instruction set
10542a21c730SFuxin Zhang	  with many extensions.
10552a21c730SFuxin Zhang
10566e760c8dSRalf Baechleconfig CPU_MIPS32_R1
10576e760c8dSRalf Baechle	bool "MIPS32 Release 1"
10587cf8053bSRalf Baechle	depends on SYS_HAS_CPU_MIPS32_R1
1059f7062ddbSRalf Baechle	select CPU_HAS_LLSC
10606e760c8dSRalf Baechle	select CPU_HAS_PREFETCH
1061797798c1SRalf Baechle	select CPU_SUPPORTS_32BIT_KERNEL
1062ec28f306SRalf Baechle	select CPU_SUPPORTS_HIGHMEM
10636e760c8dSRalf Baechle	help
10645e83d430SRalf Baechle	  Choose this option to build a kernel for release 1 or later of the
10651e5f1caaSRalf Baechle	  MIPS32 architecture.  Most modern embedded systems with a 32-bit
10661e5f1caaSRalf Baechle	  MIPS processor are based on a MIPS32 processor.  If you know the
10671e5f1caaSRalf Baechle	  specific type of processor in your system, choose those that one
10681e5f1caaSRalf Baechle	  otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
10691e5f1caaSRalf Baechle	  Release 2 of the MIPS32 architecture is available since several
10701e5f1caaSRalf Baechle	  years so chances are you even have a MIPS32 Release 2 processor
10711e5f1caaSRalf Baechle	  in which case you should choose CPU_MIPS32_R2 instead for better
10721e5f1caaSRalf Baechle	  performance.
10731e5f1caaSRalf Baechle
10741e5f1caaSRalf Baechleconfig CPU_MIPS32_R2
10751e5f1caaSRalf Baechle	bool "MIPS32 Release 2"
10767cf8053bSRalf Baechle	depends on SYS_HAS_CPU_MIPS32_R2
1077f7062ddbSRalf Baechle	select CPU_HAS_LLSC
10781e5f1caaSRalf Baechle	select CPU_HAS_PREFETCH
1079797798c1SRalf Baechle	select CPU_SUPPORTS_32BIT_KERNEL
1080ec28f306SRalf Baechle	select CPU_SUPPORTS_HIGHMEM
10811e5f1caaSRalf Baechle	help
10825e83d430SRalf Baechle	  Choose this option to build a kernel for release 2 or later of the
10836e760c8dSRalf Baechle	  MIPS32 architecture.  Most modern embedded systems with a 32-bit
10846e760c8dSRalf Baechle	  MIPS processor are based on a MIPS32 processor.  If you know the
10856e760c8dSRalf Baechle	  specific type of processor in your system, choose those that one
10866e760c8dSRalf Baechle	  otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
10871da177e4SLinus Torvalds
10886e760c8dSRalf Baechleconfig CPU_MIPS64_R1
10896e760c8dSRalf Baechle	bool "MIPS64 Release 1"
10907cf8053bSRalf Baechle	depends on SYS_HAS_CPU_MIPS64_R1
1091f7062ddbSRalf Baechle	select CPU_HAS_LLSC
1092797798c1SRalf Baechle	select CPU_HAS_PREFETCH
1093ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1094ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
1095ec28f306SRalf Baechle	select CPU_SUPPORTS_HIGHMEM
10969cffd154SDavid Daney	select CPU_SUPPORTS_HUGEPAGES
10976e760c8dSRalf Baechle	help
10986e760c8dSRalf Baechle	  Choose this option to build a kernel for release 1 or later of the
10996e760c8dSRalf Baechle	  MIPS64 architecture.  Many modern embedded systems with a 64-bit
11006e760c8dSRalf Baechle	  MIPS processor are based on a MIPS64 processor.  If you know the
11016e760c8dSRalf Baechle	  specific type of processor in your system, choose those that one
11026e760c8dSRalf Baechle	  otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
11031e5f1caaSRalf Baechle	  Release 2 of the MIPS64 architecture is available since several
11041e5f1caaSRalf Baechle	  years so chances are you even have a MIPS64 Release 2 processor
11051e5f1caaSRalf Baechle	  in which case you should choose CPU_MIPS64_R2 instead for better
11061e5f1caaSRalf Baechle	  performance.
11071e5f1caaSRalf Baechle
11081e5f1caaSRalf Baechleconfig CPU_MIPS64_R2
11091e5f1caaSRalf Baechle	bool "MIPS64 Release 2"
11107cf8053bSRalf Baechle	depends on SYS_HAS_CPU_MIPS64_R2
1111f7062ddbSRalf Baechle	select CPU_HAS_LLSC
1112797798c1SRalf Baechle	select CPU_HAS_PREFETCH
11131e5f1caaSRalf Baechle	select CPU_SUPPORTS_32BIT_KERNEL
11141e5f1caaSRalf Baechle	select CPU_SUPPORTS_64BIT_KERNEL
1115ec28f306SRalf Baechle	select CPU_SUPPORTS_HIGHMEM
11169cffd154SDavid Daney	select CPU_SUPPORTS_HUGEPAGES
11171e5f1caaSRalf Baechle	help
11181e5f1caaSRalf Baechle	  Choose this option to build a kernel for release 2 or later of the
11191e5f1caaSRalf Baechle	  MIPS64 architecture.  Many modern embedded systems with a 64-bit
11201e5f1caaSRalf Baechle	  MIPS processor are based on a MIPS64 processor.  If you know the
11211e5f1caaSRalf Baechle	  specific type of processor in your system, choose those that one
11221e5f1caaSRalf Baechle	  otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
11231da177e4SLinus Torvalds
11241da177e4SLinus Torvaldsconfig CPU_R3000
11251da177e4SLinus Torvalds	bool "R3000"
11267cf8053bSRalf Baechle	depends on SYS_HAS_CPU_R3000
1127f7062ddbSRalf Baechle	select CPU_HAS_WB
1128ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1129797798c1SRalf Baechle	select CPU_SUPPORTS_HIGHMEM
11301da177e4SLinus Torvalds	help
11311da177e4SLinus Torvalds	  Please make sure to pick the right CPU type. Linux/MIPS is not
11321da177e4SLinus Torvalds	  designed to be generic, i.e. Kernels compiled for R3000 CPUs will
11331da177e4SLinus Torvalds	  *not* work on R4000 machines and vice versa.  However, since most
11341da177e4SLinus Torvalds	  of the supported machines have an R4000 (or similar) CPU, R4x00
11351da177e4SLinus Torvalds	  might be a safe bet.  If the resulting kernel does not work,
11361da177e4SLinus Torvalds	  try to recompile with R3000.
11371da177e4SLinus Torvalds
11381da177e4SLinus Torvaldsconfig CPU_TX39XX
11391da177e4SLinus Torvalds	bool "R39XX"
11407cf8053bSRalf Baechle	depends on SYS_HAS_CPU_TX39XX
1141ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
11421da177e4SLinus Torvalds
11431da177e4SLinus Torvaldsconfig CPU_VR41XX
11441da177e4SLinus Torvalds	bool "R41xx"
11457cf8053bSRalf Baechle	depends on SYS_HAS_CPU_VR41XX
1146ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1147ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
11481da177e4SLinus Torvalds	help
11495e83d430SRalf Baechle	  The options selects support for the NEC VR4100 series of processors.
11501da177e4SLinus Torvalds	  Only choose this option if you have one of these processors as a
11511da177e4SLinus Torvalds	  kernel built with this option will not run on any other type of
11521da177e4SLinus Torvalds	  processor or vice versa.
11531da177e4SLinus Torvalds
11541da177e4SLinus Torvaldsconfig CPU_R4300
11551da177e4SLinus Torvalds	bool "R4300"
11567cf8053bSRalf Baechle	depends on SYS_HAS_CPU_R4300
1157f7062ddbSRalf Baechle	select CPU_HAS_LLSC
1158ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1159ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
11601da177e4SLinus Torvalds	help
11611da177e4SLinus Torvalds	  MIPS Technologies R4300-series processors.
11621da177e4SLinus Torvalds
11631da177e4SLinus Torvaldsconfig CPU_R4X00
11641da177e4SLinus Torvalds	bool "R4x00"
11657cf8053bSRalf Baechle	depends on SYS_HAS_CPU_R4X00
1166f7062ddbSRalf Baechle	select CPU_HAS_LLSC
1167ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1168ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
11691da177e4SLinus Torvalds	help
11701da177e4SLinus Torvalds	  MIPS Technologies R4000-series processors other than 4300, including
11711da177e4SLinus Torvalds	  the R4000, R4400, R4600, and 4700.
11721da177e4SLinus Torvalds
11731da177e4SLinus Torvaldsconfig CPU_TX49XX
11741da177e4SLinus Torvalds	bool "R49XX"
11757cf8053bSRalf Baechle	depends on SYS_HAS_CPU_TX49XX
1176f7062ddbSRalf Baechle	select CPU_HAS_LLSC
1177de862b48SAtsushi Nemoto	select CPU_HAS_PREFETCH
1178ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1179ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
11801da177e4SLinus Torvalds
11811da177e4SLinus Torvaldsconfig CPU_R5000
11821da177e4SLinus Torvalds	bool "R5000"
11837cf8053bSRalf Baechle	depends on SYS_HAS_CPU_R5000
1184f7062ddbSRalf Baechle	select CPU_HAS_LLSC
1185ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1186ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
11871da177e4SLinus Torvalds	help
11881da177e4SLinus Torvalds	  MIPS Technologies R5000-series processors other than the Nevada.
11891da177e4SLinus Torvalds
11901da177e4SLinus Torvaldsconfig CPU_R5432
11911da177e4SLinus Torvalds	bool "R5432"
11927cf8053bSRalf Baechle	depends on SYS_HAS_CPU_R5432
1193f7062ddbSRalf Baechle	select CPU_HAS_LLSC
11945e83d430SRalf Baechle	select CPU_SUPPORTS_32BIT_KERNEL
11955e83d430SRalf Baechle	select CPU_SUPPORTS_64BIT_KERNEL
11961da177e4SLinus Torvalds
1197542c1020SShinya Kuribayashiconfig CPU_R5500
1198542c1020SShinya Kuribayashi	bool "R5500"
1199542c1020SShinya Kuribayashi	depends on SYS_HAS_CPU_R5500
1200542c1020SShinya Kuribayashi	select CPU_HAS_LLSC
1201542c1020SShinya Kuribayashi	select CPU_SUPPORTS_32BIT_KERNEL
1202542c1020SShinya Kuribayashi	select CPU_SUPPORTS_64BIT_KERNEL
12039cffd154SDavid Daney	select CPU_SUPPORTS_HUGEPAGES
1204542c1020SShinya Kuribayashi	help
1205542c1020SShinya Kuribayashi	  NEC VR5500 and VR5500A series processors implement 64-bit MIPS IV
1206542c1020SShinya Kuribayashi	  instruction set.
1207542c1020SShinya Kuribayashi
12081da177e4SLinus Torvaldsconfig CPU_R6000
12091da177e4SLinus Torvalds	bool "R6000"
1210ed5ba2fbSYoichi Yuasa	depends on EXPERIMENTAL
1211f7062ddbSRalf Baechle	select CPU_HAS_LLSC
12127cf8053bSRalf Baechle	depends on SYS_HAS_CPU_R6000
1213ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
12141da177e4SLinus Torvalds	help
12151da177e4SLinus Torvalds	  MIPS Technologies R6000 and R6000A series processors.  Note these
1216c09b47d8SChris Dearman	  processors are extremely rare and the support for them is incomplete.
12171da177e4SLinus Torvalds
12181da177e4SLinus Torvaldsconfig CPU_NEVADA
12191da177e4SLinus Torvalds	bool "RM52xx"
12207cf8053bSRalf Baechle	depends on SYS_HAS_CPU_NEVADA
1221f7062ddbSRalf Baechle	select CPU_HAS_LLSC
1222ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1223ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
12241da177e4SLinus Torvalds	help
12251da177e4SLinus Torvalds	  QED / PMC-Sierra RM52xx-series ("Nevada") processors.
12261da177e4SLinus Torvalds
12271da177e4SLinus Torvaldsconfig CPU_R8000
12281da177e4SLinus Torvalds	bool "R8000"
1229ed5ba2fbSYoichi Yuasa	depends on EXPERIMENTAL
12307cf8053bSRalf Baechle	depends on SYS_HAS_CPU_R8000
1231f7062ddbSRalf Baechle	select CPU_HAS_LLSC
12325e83d430SRalf Baechle	select CPU_HAS_PREFETCH
1233ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
12341da177e4SLinus Torvalds	help
12351da177e4SLinus Torvalds	  MIPS Technologies R8000 processors.  Note these processors are
12361da177e4SLinus Torvalds	  uncommon and the support for them is incomplete.
12371da177e4SLinus Torvalds
12381da177e4SLinus Torvaldsconfig CPU_R10000
12391da177e4SLinus Torvalds	bool "R10000"
12407cf8053bSRalf Baechle	depends on SYS_HAS_CPU_R10000
1241f7062ddbSRalf Baechle	select CPU_HAS_LLSC
12425e83d430SRalf Baechle	select CPU_HAS_PREFETCH
1243ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1244ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
1245797798c1SRalf Baechle	select CPU_SUPPORTS_HIGHMEM
12461da177e4SLinus Torvalds	help
12471da177e4SLinus Torvalds	  MIPS Technologies R10000-series processors.
12481da177e4SLinus Torvalds
12491da177e4SLinus Torvaldsconfig CPU_RM7000
12501da177e4SLinus Torvalds	bool "RM7000"
12517cf8053bSRalf Baechle	depends on SYS_HAS_CPU_RM7000
1252f7062ddbSRalf Baechle	select CPU_HAS_LLSC
12535e83d430SRalf Baechle	select CPU_HAS_PREFETCH
1254ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1255ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
1256797798c1SRalf Baechle	select CPU_SUPPORTS_HIGHMEM
12571da177e4SLinus Torvalds
12581da177e4SLinus Torvaldsconfig CPU_RM9000
12591da177e4SLinus Torvalds	bool "RM9000"
12607cf8053bSRalf Baechle	depends on SYS_HAS_CPU_RM9000
1261f7062ddbSRalf Baechle	select CPU_HAS_LLSC
12625e83d430SRalf Baechle	select CPU_HAS_PREFETCH
1263ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1264ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
1265797798c1SRalf Baechle	select CPU_SUPPORTS_HIGHMEM
12660004a9dfSRalf Baechle	select WEAK_ORDERING
12671da177e4SLinus Torvalds
12681da177e4SLinus Torvaldsconfig CPU_SB1
12691da177e4SLinus Torvalds	bool "SB1"
12707cf8053bSRalf Baechle	depends on SYS_HAS_CPU_SB1
1271f7062ddbSRalf Baechle	select CPU_HAS_LLSC
1272ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1273ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
1274797798c1SRalf Baechle	select CPU_SUPPORTS_HIGHMEM
12750004a9dfSRalf Baechle	select WEAK_ORDERING
12761da177e4SLinus Torvalds
1277a86c7f72SDavid Daneyconfig CPU_CAVIUM_OCTEON
1278a86c7f72SDavid Daney	bool "Cavium Octeon processor"
12795e683389SDavid Daney	depends on SYS_HAS_CPU_CAVIUM_OCTEON
1280a86c7f72SDavid Daney	select IRQ_CPU
1281a86c7f72SDavid Daney	select IRQ_CPU_OCTEON
1282a86c7f72SDavid Daney	select CPU_HAS_PREFETCH
1283a86c7f72SDavid Daney	select CPU_SUPPORTS_64BIT_KERNEL
1284a86c7f72SDavid Daney	select SYS_SUPPORTS_SMP
1285a86c7f72SDavid Daney	select NR_CPUS_DEFAULT_16
1286a86c7f72SDavid Daney	select WEAK_ORDERING
1287a86c7f72SDavid Daney	select WEAK_REORDERING_BEYOND_LLSC
1288a86c7f72SDavid Daney	select CPU_SUPPORTS_HIGHMEM
12899cffd154SDavid Daney	select CPU_SUPPORTS_HUGEPAGES
1290a86c7f72SDavid Daney	help
1291a86c7f72SDavid Daney	  The Cavium Octeon processor is a highly integrated chip containing
1292a86c7f72SDavid Daney	  many ethernet hardware widgets for networking tasks. The processor
1293a86c7f72SDavid Daney	  can have up to 16 Mips64v2 cores and 8 integrated gigabit ethernets.
1294a86c7f72SDavid Daney	  Full details can be found at http://www.caviumnetworks.com.
1295a86c7f72SDavid Daney
12961da177e4SLinus Torvaldsendchoice
12971da177e4SLinus Torvalds
12982a21c730SFuxin Zhangconfig SYS_HAS_CPU_LOONGSON2
12992a21c730SFuxin Zhang	bool
13002a21c730SFuxin Zhang
13017cf8053bSRalf Baechleconfig SYS_HAS_CPU_MIPS32_R1
13027cf8053bSRalf Baechle	bool
13037cf8053bSRalf Baechle
13047cf8053bSRalf Baechleconfig SYS_HAS_CPU_MIPS32_R2
13057cf8053bSRalf Baechle	bool
13067cf8053bSRalf Baechle
13077cf8053bSRalf Baechleconfig SYS_HAS_CPU_MIPS64_R1
13087cf8053bSRalf Baechle	bool
13097cf8053bSRalf Baechle
13107cf8053bSRalf Baechleconfig SYS_HAS_CPU_MIPS64_R2
13117cf8053bSRalf Baechle	bool
13127cf8053bSRalf Baechle
13137cf8053bSRalf Baechleconfig SYS_HAS_CPU_R3000
13147cf8053bSRalf Baechle	bool
13157cf8053bSRalf Baechle
13167cf8053bSRalf Baechleconfig SYS_HAS_CPU_TX39XX
13177cf8053bSRalf Baechle	bool
13187cf8053bSRalf Baechle
13197cf8053bSRalf Baechleconfig SYS_HAS_CPU_VR41XX
13207cf8053bSRalf Baechle	bool
13217cf8053bSRalf Baechle
13227cf8053bSRalf Baechleconfig SYS_HAS_CPU_R4300
13237cf8053bSRalf Baechle	bool
13247cf8053bSRalf Baechle
13257cf8053bSRalf Baechleconfig SYS_HAS_CPU_R4X00
13267cf8053bSRalf Baechle	bool
13277cf8053bSRalf Baechle
13287cf8053bSRalf Baechleconfig SYS_HAS_CPU_TX49XX
13297cf8053bSRalf Baechle	bool
13307cf8053bSRalf Baechle
13317cf8053bSRalf Baechleconfig SYS_HAS_CPU_R5000
13327cf8053bSRalf Baechle	bool
13337cf8053bSRalf Baechle
13347cf8053bSRalf Baechleconfig SYS_HAS_CPU_R5432
13357cf8053bSRalf Baechle	bool
13367cf8053bSRalf Baechle
1337542c1020SShinya Kuribayashiconfig SYS_HAS_CPU_R5500
1338542c1020SShinya Kuribayashi	bool
1339542c1020SShinya Kuribayashi
13407cf8053bSRalf Baechleconfig SYS_HAS_CPU_R6000
13417cf8053bSRalf Baechle	bool
13427cf8053bSRalf Baechle
13437cf8053bSRalf Baechleconfig SYS_HAS_CPU_NEVADA
13447cf8053bSRalf Baechle	bool
13457cf8053bSRalf Baechle
13467cf8053bSRalf Baechleconfig SYS_HAS_CPU_R8000
13477cf8053bSRalf Baechle	bool
13487cf8053bSRalf Baechle
13497cf8053bSRalf Baechleconfig SYS_HAS_CPU_R10000
13507cf8053bSRalf Baechle	bool
13517cf8053bSRalf Baechle
13527cf8053bSRalf Baechleconfig SYS_HAS_CPU_RM7000
13537cf8053bSRalf Baechle	bool
13547cf8053bSRalf Baechle
13557cf8053bSRalf Baechleconfig SYS_HAS_CPU_RM9000
13567cf8053bSRalf Baechle	bool
13577cf8053bSRalf Baechle
13587cf8053bSRalf Baechleconfig SYS_HAS_CPU_SB1
13597cf8053bSRalf Baechle	bool
13607cf8053bSRalf Baechle
13615e683389SDavid Daneyconfig SYS_HAS_CPU_CAVIUM_OCTEON
13625e683389SDavid Daney	bool
13635e683389SDavid Daney
136417099b11SRalf Baechle#
136517099b11SRalf Baechle# CPU may reorder R->R, R->W, W->R, W->W
136617099b11SRalf Baechle# Reordering beyond LL and SC is handled in WEAK_REORDERING_BEYOND_LLSC
136717099b11SRalf Baechle#
13680004a9dfSRalf Baechleconfig WEAK_ORDERING
13690004a9dfSRalf Baechle	bool
137017099b11SRalf Baechle
137117099b11SRalf Baechle#
137217099b11SRalf Baechle# CPU may reorder reads and writes beyond LL/SC
137317099b11SRalf Baechle# CPU may reorder R->LL, R->LL, W->LL, W->LL, R->SC, R->SC, W->SC, W->SC
137417099b11SRalf Baechle#
137517099b11SRalf Baechleconfig WEAK_REORDERING_BEYOND_LLSC
137617099b11SRalf Baechle	bool
13775e83d430SRalf Baechleendmenu
13785e83d430SRalf Baechle
13795e83d430SRalf Baechle#
13805e83d430SRalf Baechle# These two indicate any level of the MIPS32 and MIPS64 architecture
13815e83d430SRalf Baechle#
13825e83d430SRalf Baechleconfig CPU_MIPS32
13835e83d430SRalf Baechle	bool
13845e83d430SRalf Baechle	default y if CPU_MIPS32_R1 || CPU_MIPS32_R2
13855e83d430SRalf Baechle
13865e83d430SRalf Baechleconfig CPU_MIPS64
13875e83d430SRalf Baechle	bool
13885e83d430SRalf Baechle	default y if CPU_MIPS64_R1 || CPU_MIPS64_R2
13895e83d430SRalf Baechle
13905e83d430SRalf Baechle#
1391c09b47d8SChris Dearman# These two indicate the revision of the architecture, either Release 1 or Release 2
13925e83d430SRalf Baechle#
13935e83d430SRalf Baechleconfig CPU_MIPSR1
13945e83d430SRalf Baechle	bool
13955e83d430SRalf Baechle	default y if CPU_MIPS32_R1 || CPU_MIPS64_R1
13965e83d430SRalf Baechle
13975e83d430SRalf Baechleconfig CPU_MIPSR2
13985e83d430SRalf Baechle	bool
1399a86c7f72SDavid Daney	default y if CPU_MIPS32_R2 || CPU_MIPS64_R2 || CPU_CAVIUM_OCTEON
14005e83d430SRalf Baechle
14015e83d430SRalf Baechleconfig SYS_SUPPORTS_32BIT_KERNEL
14025e83d430SRalf Baechle	bool
14035e83d430SRalf Baechleconfig SYS_SUPPORTS_64BIT_KERNEL
14045e83d430SRalf Baechle	bool
14055e83d430SRalf Baechleconfig CPU_SUPPORTS_32BIT_KERNEL
14065e83d430SRalf Baechle	bool
14075e83d430SRalf Baechleconfig CPU_SUPPORTS_64BIT_KERNEL
14085e83d430SRalf Baechle	bool
14099cffd154SDavid Daneyconfig CPU_SUPPORTS_HUGEPAGES
14109cffd154SDavid Daney	bool
14115e83d430SRalf Baechle
14128192c9eaSDavid Daney#
14138192c9eaSDavid Daney# Set to y for ptrace access to watch registers.
14148192c9eaSDavid Daney#
14158192c9eaSDavid Daneyconfig HARDWARE_WATCHPOINTS
14168192c9eaSDavid Daney       bool
1417f839490aSDavid Daney       default y if CPU_MIPSR1 || CPU_MIPSR2
14188192c9eaSDavid Daney
14195e83d430SRalf Baechlemenu "Kernel type"
14205e83d430SRalf Baechle
14215e83d430SRalf Baechlechoice
14225e83d430SRalf Baechle
14235e83d430SRalf Baechle	prompt "Kernel code model"
14245e83d430SRalf Baechle	help
14255e83d430SRalf Baechle	  You should only select this option if you have a workload that
14265e83d430SRalf Baechle	  actually benefits from 64-bit processing or if your machine has
14275e83d430SRalf Baechle	  large memory.  You will only be presented a single option in this
14285e83d430SRalf Baechle	  menu if your system does not support both 32-bit and 64-bit kernels.
14295e83d430SRalf Baechle
14305e83d430SRalf Baechleconfig 32BIT
14315e83d430SRalf Baechle	bool "32-bit kernel"
14325e83d430SRalf Baechle	depends on CPU_SUPPORTS_32BIT_KERNEL && SYS_SUPPORTS_32BIT_KERNEL
14335e83d430SRalf Baechle	select TRAD_SIGNALS
14345e83d430SRalf Baechle	help
14355e83d430SRalf Baechle	  Select this option if you want to build a 32-bit kernel.
14365e83d430SRalf Baechleconfig 64BIT
14375e83d430SRalf Baechle	bool "64-bit kernel"
14385e83d430SRalf Baechle	depends on CPU_SUPPORTS_64BIT_KERNEL && SYS_SUPPORTS_64BIT_KERNEL
1439dbda6ac0SRalf Baechle	select HAVE_SYSCALL_WRAPPERS
14405e83d430SRalf Baechle	help
14415e83d430SRalf Baechle	  Select this option if you want to build a 64-bit kernel.
14425e83d430SRalf Baechle
14435e83d430SRalf Baechleendchoice
14445e83d430SRalf Baechle
14451da177e4SLinus Torvaldschoice
14461da177e4SLinus Torvalds	prompt "Kernel page size"
14471da177e4SLinus Torvalds	default PAGE_SIZE_4KB
14481da177e4SLinus Torvalds
14491da177e4SLinus Torvaldsconfig PAGE_SIZE_4KB
14501da177e4SLinus Torvalds	bool "4kB"
14511da177e4SLinus Torvalds	help
14521da177e4SLinus Torvalds	 This option select the standard 4kB Linux page size.  On some
14531da177e4SLinus Torvalds	 R3000-family processors this is the only available page size.  Using
14541da177e4SLinus Torvalds	 4kB page size will minimize memory consumption and is therefore
14551da177e4SLinus Torvalds	 recommended for low memory systems.
14561da177e4SLinus Torvalds
14571da177e4SLinus Torvaldsconfig PAGE_SIZE_8KB
14581da177e4SLinus Torvalds	bool "8kB"
1459c52399beSRalf Baechle	depends on (EXPERIMENTAL && CPU_R8000) || CPU_CAVIUM_OCTEON
14601da177e4SLinus Torvalds	help
14611da177e4SLinus Torvalds	  Using 8kB page size will result in higher performance kernel at
14621da177e4SLinus Torvalds	  the price of higher memory consumption.  This option is available
1463c52399beSRalf Baechle	  only on R8000 and cnMIPS processors.  Note that you will need a
1464c52399beSRalf Baechle	  suitable Linux distribution to support this.
14651da177e4SLinus Torvalds
14661da177e4SLinus Torvaldsconfig PAGE_SIZE_16KB
14671da177e4SLinus Torvalds	bool "16kB"
1468714bfad6SRalf Baechle	depends on !CPU_R3000 && !CPU_TX39XX
14691da177e4SLinus Torvalds	help
14701da177e4SLinus Torvalds	  Using 16kB page size will result in higher performance kernel at
14711da177e4SLinus Torvalds	  the price of higher memory consumption.  This option is available on
1472714bfad6SRalf Baechle	  all non-R3000 family processors.  Note that you will need a suitable
1473714bfad6SRalf Baechle	  Linux distribution to support this.
14741da177e4SLinus Torvalds
1475c52399beSRalf Baechleconfig PAGE_SIZE_32KB
1476c52399beSRalf Baechle	bool "32kB"
1477c52399beSRalf Baechle	depends on CPU_CAVIUM_OCTEON
1478c52399beSRalf Baechle	help
1479c52399beSRalf Baechle	  Using 32kB page size will result in higher performance kernel at
1480c52399beSRalf Baechle	  the price of higher memory consumption.  This option is available
1481c52399beSRalf Baechle	  only on cnMIPS cores.  Note that you will need a suitable Linux
1482c52399beSRalf Baechle	  distribution to support this.
1483c52399beSRalf Baechle
14841da177e4SLinus Torvaldsconfig PAGE_SIZE_64KB
14851da177e4SLinus Torvalds	bool "64kB"
14861da177e4SLinus Torvalds	depends on EXPERIMENTAL && !CPU_R3000 && !CPU_TX39XX
14871da177e4SLinus Torvalds	help
14881da177e4SLinus Torvalds	  Using 64kB page size will result in higher performance kernel at
14891da177e4SLinus Torvalds	  the price of higher memory consumption.  This option is available on
14901da177e4SLinus Torvalds	  all non-R3000 family processor.  Not that at the time of this
1491714bfad6SRalf Baechle	  writing this option is still high experimental.
14921da177e4SLinus Torvalds
14931da177e4SLinus Torvaldsendchoice
14941da177e4SLinus Torvalds
14951da177e4SLinus Torvaldsconfig BOARD_SCACHE
14961da177e4SLinus Torvalds	bool
14971da177e4SLinus Torvalds
14981da177e4SLinus Torvaldsconfig IP22_CPU_SCACHE
14991da177e4SLinus Torvalds	bool
15001da177e4SLinus Torvalds	select BOARD_SCACHE
15011da177e4SLinus Torvalds
15029318c51aSChris Dearman#
15039318c51aSChris Dearman# Support for a MIPS32 / MIPS64 style S-caches
15049318c51aSChris Dearman#
15059318c51aSChris Dearmanconfig MIPS_CPU_SCACHE
15069318c51aSChris Dearman	bool
15079318c51aSChris Dearman	select BOARD_SCACHE
15089318c51aSChris Dearman
15091da177e4SLinus Torvaldsconfig R5000_CPU_SCACHE
15101da177e4SLinus Torvalds	bool
15111da177e4SLinus Torvalds	select BOARD_SCACHE
15121da177e4SLinus Torvalds
15131da177e4SLinus Torvaldsconfig RM7000_CPU_SCACHE
15141da177e4SLinus Torvalds	bool
15151da177e4SLinus Torvalds	select BOARD_SCACHE
15161da177e4SLinus Torvalds
15171da177e4SLinus Torvaldsconfig SIBYTE_DMA_PAGEOPS
15181da177e4SLinus Torvalds	bool "Use DMA to clear/copy pages"
15191da177e4SLinus Torvalds	depends on CPU_SB1
15201da177e4SLinus Torvalds	help
15211da177e4SLinus Torvalds	  Instead of using the CPU to zero and copy pages, use a Data Mover
15221da177e4SLinus Torvalds	  channel.  These DMA channels are otherwise unused by the standard
15231da177e4SLinus Torvalds	  SiByte Linux port.  Seems to give a small performance benefit.
15241da177e4SLinus Torvalds
15251da177e4SLinus Torvaldsconfig CPU_HAS_PREFETCH
1526c8094b53SRalf Baechle	bool
15271da177e4SLinus Torvalds
1528340ee4b9SRalf Baechlechoice
1529340ee4b9SRalf Baechle	prompt "MIPS MT options"
1530f41ae0b2SRalf Baechle
1531f41ae0b2SRalf Baechleconfig MIPS_MT_DISABLED
1532f41ae0b2SRalf Baechle	bool "Disable multithreading support."
1533f41ae0b2SRalf Baechle	help
1534f41ae0b2SRalf Baechle	  Use this option if your workload can't take advantage of
1535f41ae0b2SRalf Baechle	  MIPS hardware multithreading support.  On systems that don't have
1536f41ae0b2SRalf Baechle	  the option of an MT-enabled processor this option will be the only
1537f41ae0b2SRalf Baechle	  option in this menu.
1538340ee4b9SRalf Baechle
153959d6ab86SRalf Baechleconfig MIPS_MT_SMP
154059d6ab86SRalf Baechle	bool "Use 1 TC on each available VPE for SMP"
154159d6ab86SRalf Baechle	depends on SYS_SUPPORTS_MULTITHREADING
154259d6ab86SRalf Baechle	select CPU_MIPSR2_IRQ_VI
1543d725cf38SChris Dearman	select CPU_MIPSR2_IRQ_EI
154459d6ab86SRalf Baechle	select MIPS_MT
1545f510aa3bSRalf Baechle	select NR_CPUS_DEFAULT_2
154659d6ab86SRalf Baechle	select SMP
15470ab7aefcSRalf Baechle	select SYS_SUPPORTS_SCHED_SMT if SMP
154859d6ab86SRalf Baechle	select SYS_SUPPORTS_SMP
154987353d8aSRalf Baechle	select SMP_UP
155059d6ab86SRalf Baechle	help
155159d6ab86SRalf Baechle	  This is a kernel model which is also known a VSMP or lately
155259d6ab86SRalf Baechle	  has been marketesed into SMVP.
155359d6ab86SRalf Baechle
155441c594abSRalf Baechleconfig MIPS_MT_SMTC
155541c594abSRalf Baechle	bool "SMTC: Use all TCs on all VPEs for SMP"
1556f41ae0b2SRalf Baechle	depends on CPU_MIPS32_R2
1557f41ae0b2SRalf Baechle	#depends on CPU_MIPS64_R2		# once there is hardware ...
1558f41ae0b2SRalf Baechle	depends on SYS_SUPPORTS_MULTITHREADING
1559f7062ddbSRalf Baechle	select CPU_MIPSR2_IRQ_VI
1560d725cf38SChris Dearman	select CPU_MIPSR2_IRQ_EI
1561f41ae0b2SRalf Baechle	select MIPS_MT
1562130e2fb7SRalf Baechle	select NR_CPUS_DEFAULT_8
156341c594abSRalf Baechle	select SMP
156473b76c78SRalf Baechle	select SYS_SUPPORTS_SMP
156587353d8aSRalf Baechle	select SMP_UP
1566f41ae0b2SRalf Baechle	help
1567f41ae0b2SRalf Baechle	  This is a kernel model which is known a SMTC or lately has been
1568f41ae0b2SRalf Baechle	  marketesed into SMVP.
156941c594abSRalf Baechle
1570340ee4b9SRalf Baechleendchoice
1571340ee4b9SRalf Baechle
1572f41ae0b2SRalf Baechleconfig MIPS_MT
1573f41ae0b2SRalf Baechle	bool
1574f41ae0b2SRalf Baechle
15750ab7aefcSRalf Baechleconfig SCHED_SMT
15760ab7aefcSRalf Baechle	bool "SMT (multithreading) scheduler support"
15770ab7aefcSRalf Baechle	depends on SYS_SUPPORTS_SCHED_SMT
15780ab7aefcSRalf Baechle	default n
15790ab7aefcSRalf Baechle	help
15800ab7aefcSRalf Baechle	  SMT scheduler support improves the CPU scheduler's decision making
15810ab7aefcSRalf Baechle	  when dealing with MIPS MT enabled cores at a cost of slightly
15820ab7aefcSRalf Baechle	  increased overhead in some places. If unsure say N here.
15830ab7aefcSRalf Baechle
15840ab7aefcSRalf Baechleconfig SYS_SUPPORTS_SCHED_SMT
15850ab7aefcSRalf Baechle	bool
15860ab7aefcSRalf Baechle
15870ab7aefcSRalf Baechle
1588f41ae0b2SRalf Baechleconfig SYS_SUPPORTS_MULTITHREADING
1589f41ae0b2SRalf Baechle	bool
1590f41ae0b2SRalf Baechle
1591f088fc84SRalf Baechleconfig MIPS_MT_FPAFF
1592f088fc84SRalf Baechle	bool "Dynamic FPU affinity for FP-intensive threads"
1593f088fc84SRalf Baechle	default y
159407cc0c9eSRalf Baechle	depends on MIPS_MT_SMP || MIPS_MT_SMTC
159507cc0c9eSRalf Baechle
159607cc0c9eSRalf Baechleconfig MIPS_VPE_LOADER
159707cc0c9eSRalf Baechle	bool "VPE loader support."
159807cc0c9eSRalf Baechle	depends on SYS_SUPPORTS_MULTITHREADING
159907cc0c9eSRalf Baechle	select CPU_MIPSR2_IRQ_VI
160007cc0c9eSRalf Baechle	select CPU_MIPSR2_IRQ_EI
160107cc0c9eSRalf Baechle	select MIPS_MT
160207cc0c9eSRalf Baechle	help
160307cc0c9eSRalf Baechle	  Includes a loader for loading an elf relocatable object
160407cc0c9eSRalf Baechle	  onto another VPE and running it.
1605f088fc84SRalf Baechle
16060db34215SKevin D. Kissellconfig MIPS_MT_SMTC_IM_BACKSTOP
16070db34215SKevin D. Kissell	bool "Use per-TC register bits as backstop for inhibited IM bits"
16080db34215SKevin D. Kissell	depends on MIPS_MT_SMTC
16098531a35eSKevin D. Kissell	default n
16100db34215SKevin D. Kissell	help
16110db34215SKevin D. Kissell	  To support multiple TC microthreads acting as "CPUs" within
16120db34215SKevin D. Kissell	  a VPE, VPE-wide interrupt mask bits must be specially manipulated
16130db34215SKevin D. Kissell	  during interrupt handling. To support legacy drivers and interrupt
16140db34215SKevin D. Kissell	  controller management code, SMTC has a "backstop" to track and
16150db34215SKevin D. Kissell	  if necessary restore the interrupt mask. This has some performance
16168531a35eSKevin D. Kissell	  impact on interrupt service overhead.
16170db34215SKevin D. Kissell
1618f571eff0SKevin D. Kissellconfig MIPS_MT_SMTC_IRQAFF
1619f571eff0SKevin D. Kissell	bool "Support IRQ affinity API"
1620f571eff0SKevin D. Kissell	depends on MIPS_MT_SMTC
1621f571eff0SKevin D. Kissell	default n
1622f571eff0SKevin D. Kissell	help
1623f571eff0SKevin D. Kissell	  Enables SMP IRQ affinity API (/proc/irq/*/smp_affinity, etc.)
1624f571eff0SKevin D. Kissell	  for SMTC Linux kernel. Requires platform support, of which
1625f571eff0SKevin D. Kissell	  an example can be found in the MIPS kernel i8259 and Malta
16268531a35eSKevin D. Kissell	  platform code.  Adds some overhead to interrupt dispatch, and
16278531a35eSKevin D. Kissell	  should be used only if you know what you are doing.
1628f571eff0SKevin D. Kissell
1629e01402b1SRalf Baechleconfig MIPS_VPE_LOADER_TOM
1630e01402b1SRalf Baechle	bool "Load VPE program into memory hidden from linux"
1631e01402b1SRalf Baechle	depends on MIPS_VPE_LOADER
1632e01402b1SRalf Baechle	default y
1633e01402b1SRalf Baechle	help
1634e01402b1SRalf Baechle	  The loader can use memory that is present but has been hidden from
1635e01402b1SRalf Baechle	  Linux using the kernel command line option "mem=xxMB". It's up to
1636e01402b1SRalf Baechle	  you to ensure the amount you put in the option and the space your
1637e01402b1SRalf Baechle	  program requires is less or equal to the amount physically present.
1638e01402b1SRalf Baechle
1639e01402b1SRalf Baechle# this should possibly be in drivers/char, but it is rather cpu related. Hmmm
1640e01402b1SRalf Baechleconfig MIPS_VPE_APSP_API
1641e01402b1SRalf Baechle	bool "Enable support for AP/SP API (RTLX)"
1642e01402b1SRalf Baechle	depends on MIPS_VPE_LOADER
16435e83d430SRalf Baechle	help
1644e01402b1SRalf Baechle
16452600990eSRalf Baechleconfig MIPS_APSP_KSPD
16462600990eSRalf Baechle	bool "Enable KSPD"
16472600990eSRalf Baechle	depends on MIPS_VPE_APSP_API
16482600990eSRalf Baechle	default y
16492600990eSRalf Baechle	help
16502600990eSRalf Baechle	  KSPD is a kernel daemon that accepts syscall requests from the SP
16512600990eSRalf Baechle	  side, actions them and returns the results. It also handles the
16522600990eSRalf Baechle	  "exit" syscall notifying other kernel modules the SP program is
16532600990eSRalf Baechle	  exiting.  You probably want to say yes here.
16542600990eSRalf Baechle
16554a16ff4cSRalf Baechleconfig MIPS_CMP
16564a16ff4cSRalf Baechle	bool "MIPS CMP framework support"
16574a16ff4cSRalf Baechle	depends on SYS_SUPPORTS_MIPS_CMP
16584a16ff4cSRalf Baechle	select SYNC_R4K if BROKEN
16594a16ff4cSRalf Baechle	select SYS_SUPPORTS_SMP
16604a16ff4cSRalf Baechle	select SYS_SUPPORTS_SCHED_SMT if SMP
16614a16ff4cSRalf Baechle	select WEAK_ORDERING
16624a16ff4cSRalf Baechle	default n
16634a16ff4cSRalf Baechle	help
16644a16ff4cSRalf Baechle	  This is a placeholder option for the GCMP work. It will need to
16654a16ff4cSRalf Baechle	  be handled differently...
16664a16ff4cSRalf Baechle
16671da177e4SLinus Torvaldsconfig SB1_PASS_1_WORKAROUNDS
16681da177e4SLinus Torvalds	bool
16691da177e4SLinus Torvalds	depends on CPU_SB1_PASS_1
16701da177e4SLinus Torvalds	default y
16711da177e4SLinus Torvalds
16721da177e4SLinus Torvaldsconfig SB1_PASS_2_WORKAROUNDS
16731da177e4SLinus Torvalds	bool
16741da177e4SLinus Torvalds	depends on CPU_SB1 && (CPU_SB1_PASS_2_2 || CPU_SB1_PASS_2)
16751da177e4SLinus Torvalds	default y
16761da177e4SLinus Torvalds
16771da177e4SLinus Torvaldsconfig SB1_PASS_2_1_WORKAROUNDS
16781da177e4SLinus Torvalds	bool
16791da177e4SLinus Torvalds	depends on CPU_SB1 && CPU_SB1_PASS_2
16801da177e4SLinus Torvalds	default y
16811da177e4SLinus Torvalds
16821da177e4SLinus Torvaldsconfig 64BIT_PHYS_ADDR
1683d806cb2bSRalf Baechle	bool
16841da177e4SLinus Torvalds
16851da177e4SLinus Torvaldsconfig CPU_HAS_LLSC
1686f7062ddbSRalf Baechle	bool
16871da177e4SLinus Torvalds
16889693a853SFranck Bui-Huuconfig CPU_HAS_SMARTMIPS
16899693a853SFranck Bui-Huu	depends on SYS_SUPPORTS_SMARTMIPS
16909693a853SFranck Bui-Huu	bool "Support for the SmartMIPS ASE"
16919693a853SFranck Bui-Huu	help
16929693a853SFranck Bui-Huu	  SmartMIPS is a extension of the MIPS32 architecture aimed at
16939693a853SFranck Bui-Huu	  increased security at both hardware and software level for
16949693a853SFranck Bui-Huu	  smartcards.  Enabling this option will allow proper use of the
16959693a853SFranck Bui-Huu	  SmartMIPS instructions by Linux applications.  However a kernel with
16969693a853SFranck Bui-Huu	  this option will not work on a MIPS core without SmartMIPS core.  If
16979693a853SFranck Bui-Huu	  you don't know you probably don't have SmartMIPS and should say N
16989693a853SFranck Bui-Huu	  here.
16999693a853SFranck Bui-Huu
17001da177e4SLinus Torvaldsconfig CPU_HAS_WB
1701f7062ddbSRalf Baechle	bool
1702e01402b1SRalf Baechle
1703f41ae0b2SRalf Baechle#
1704f41ae0b2SRalf Baechle# Vectored interrupt mode is an R2 feature
1705f41ae0b2SRalf Baechle#
1706e01402b1SRalf Baechleconfig CPU_MIPSR2_IRQ_VI
1707f41ae0b2SRalf Baechle	bool
1708e01402b1SRalf Baechle
1709f41ae0b2SRalf Baechle#
1710f41ae0b2SRalf Baechle# Extended interrupt mode is an R2 feature
1711f41ae0b2SRalf Baechle#
1712e01402b1SRalf Baechleconfig CPU_MIPSR2_IRQ_EI
1713f41ae0b2SRalf Baechle	bool
1714e01402b1SRalf Baechle
17151da177e4SLinus Torvaldsconfig CPU_HAS_SYNC
17161da177e4SLinus Torvalds	bool
17171da177e4SLinus Torvalds	depends on !CPU_R3000
17181da177e4SLinus Torvalds	default y
17191da177e4SLinus Torvalds
1720ea580401SRalf Baechleconfig GENERIC_CLOCKEVENTS_BROADCAST
1721ea580401SRalf Baechle	bool
1722ea580401SRalf Baechle
17231da177e4SLinus Torvalds#
172420d60d99SMaciej W. Rozycki# CPU non-features
172520d60d99SMaciej W. Rozycki#
172620d60d99SMaciej W. Rozyckiconfig CPU_DADDI_WORKAROUNDS
172720d60d99SMaciej W. Rozycki	bool
172820d60d99SMaciej W. Rozycki
172920d60d99SMaciej W. Rozyckiconfig CPU_R4000_WORKAROUNDS
173020d60d99SMaciej W. Rozycki	bool
173120d60d99SMaciej W. Rozycki	select CPU_R4400_WORKAROUNDS
173220d60d99SMaciej W. Rozycki
173320d60d99SMaciej W. Rozyckiconfig CPU_R4400_WORKAROUNDS
173420d60d99SMaciej W. Rozycki	bool
173520d60d99SMaciej W. Rozycki
173620d60d99SMaciej W. Rozycki#
1737797798c1SRalf Baechle# Use the generic interrupt handling code in kernel/irq/:
1738797798c1SRalf Baechle#
1739797798c1SRalf Baechleconfig GENERIC_HARDIRQS
1740797798c1SRalf Baechle	bool
1741797798c1SRalf Baechle	default y
1742797798c1SRalf Baechle
1743797798c1SRalf Baechleconfig GENERIC_IRQ_PROBE
1744797798c1SRalf Baechle	bool
1745797798c1SRalf Baechle	default y
1746797798c1SRalf Baechle
17470d7012a9SIngo Molnarconfig IRQ_PER_CPU
17480d7012a9SIngo Molnar	bool
17490d7012a9SIngo Molnar
1750797798c1SRalf Baechle#
17511da177e4SLinus Torvalds# - Highmem only makes sense for the 32-bit kernel.
17521da177e4SLinus Torvalds# - The current highmem code will only work properly on physically indexed
17531da177e4SLinus Torvalds#   caches such as R3000, SB1, R7000 or those that look like they're virtually
17541da177e4SLinus Torvalds#   indexed such as R4000/R4400 SC and MC versions or R10000.  So for the
17551da177e4SLinus Torvalds#   moment we protect the user and offer the highmem option only on machines
17561da177e4SLinus Torvalds#   where it's known to be safe.  This will not offer highmem on a few systems
17571da177e4SLinus Torvalds#   such as MIPS32 and MIPS64 CPUs which may have virtual and physically
17581da177e4SLinus Torvalds#   indexed CPUs but we're playing safe.
1759797798c1SRalf Baechle# - We use SYS_SUPPORTS_HIGHMEM to offer highmem only for systems where we
1760797798c1SRalf Baechle#   know they might have memory configurations that could make use of highmem
1761797798c1SRalf Baechle#   support.
17621da177e4SLinus Torvalds#
17631da177e4SLinus Torvaldsconfig HIGHMEM
17641da177e4SLinus Torvalds	bool "High Memory Support"
1765797798c1SRalf Baechle	depends on 32BIT && CPU_SUPPORTS_HIGHMEM && SYS_SUPPORTS_HIGHMEM
1766797798c1SRalf Baechle
1767797798c1SRalf Baechleconfig CPU_SUPPORTS_HIGHMEM
1768797798c1SRalf Baechle	bool
1769797798c1SRalf Baechle
1770797798c1SRalf Baechleconfig SYS_SUPPORTS_HIGHMEM
1771797798c1SRalf Baechle	bool
17721da177e4SLinus Torvalds
17739693a853SFranck Bui-Huuconfig SYS_SUPPORTS_SMARTMIPS
17749693a853SFranck Bui-Huu	bool
17759693a853SFranck Bui-Huu
1776b4819b59SYoichi Yuasaconfig ARCH_FLATMEM_ENABLE
1777b4819b59SYoichi Yuasa	def_bool y
1778b4819b59SYoichi Yuasa	depends on !NUMA
1779b4819b59SYoichi Yuasa
1780d8cb4e11SRalf Baechleconfig ARCH_DISCONTIGMEM_ENABLE
1781d8cb4e11SRalf Baechle	bool
1782d8cb4e11SRalf Baechle	default y if SGI_IP27
1783d8cb4e11SRalf Baechle	help
17843dde6ad8SDavid Sterba	  Say Y to support efficient handling of discontiguous physical memory,
1785d8cb4e11SRalf Baechle	  for architectures which are either NUMA (Non-Uniform Memory Access)
1786d8cb4e11SRalf Baechle	  or have huge holes in the physical address space for other reasons.
1787d8cb4e11SRalf Baechle	  See <file:Documentation/vm/numa> for more.
1788d8cb4e11SRalf Baechle
1789cce335aeSRalf Baechleconfig ARCH_POPULATES_NODE_MAP
1790cce335aeSRalf Baechle	def_bool y
1791cce335aeSRalf Baechle
1792b1c6cd42SAtsushi Nemotoconfig ARCH_SPARSEMEM_ENABLE
1793b1c6cd42SAtsushi Nemoto	bool
17947de58fabSAtsushi Nemoto	select SPARSEMEM_STATIC
179531473747SAtsushi Nemoto
1796d8cb4e11SRalf Baechleconfig NUMA
1797d8cb4e11SRalf Baechle	bool "NUMA Support"
1798d8cb4e11SRalf Baechle	depends on SYS_SUPPORTS_NUMA
1799d8cb4e11SRalf Baechle	help
1800d8cb4e11SRalf Baechle	  Say Y to compile the kernel to support NUMA (Non-Uniform Memory
1801d8cb4e11SRalf Baechle	  Access).  This option improves performance on systems with more
1802d8cb4e11SRalf Baechle	  than two nodes; on two node systems it is generally better to
1803d8cb4e11SRalf Baechle	  leave it disabled; on single node systems disable this option
1804d8cb4e11SRalf Baechle	  disabled.
1805d8cb4e11SRalf Baechle
1806d8cb4e11SRalf Baechleconfig SYS_SUPPORTS_NUMA
1807d8cb4e11SRalf Baechle	bool
1808d8cb4e11SRalf Baechle
1809c80d79d7SYasunori Gotoconfig NODES_SHIFT
1810c80d79d7SYasunori Goto	int
1811c80d79d7SYasunori Goto	default "6"
1812c80d79d7SYasunori Goto	depends on NEED_MULTIPLE_NODES
1813c80d79d7SYasunori Goto
1814b4819b59SYoichi Yuasasource "mm/Kconfig"
1815b4819b59SYoichi Yuasa
18161da177e4SLinus Torvaldsconfig SMP
18171da177e4SLinus Torvalds	bool "Multi-Processing support"
1818e73ea273SRalf Baechle	depends on SYS_SUPPORTS_SMP
1819b4b30a5aSRalf Baechle	select IRQ_PER_CPU
18202f304c0aSJens Axboe	select USE_GENERIC_SMP_HELPERS
1821e73ea273SRalf Baechle	help
18221da177e4SLinus Torvalds	  This enables support for systems with more than one CPU. If you have
18231da177e4SLinus Torvalds	  a system with only one CPU, like most personal computers, say N. If
18241da177e4SLinus Torvalds	  you have a system with more than one CPU, say Y.
18251da177e4SLinus Torvalds
18261da177e4SLinus Torvalds	  If you say N here, the kernel will run on single and multiprocessor
18271da177e4SLinus Torvalds	  machines, but will use only one CPU of a multiprocessor machine. If
18281da177e4SLinus Torvalds	  you say Y here, the kernel will run on many, but not all,
18291da177e4SLinus Torvalds	  singleprocessor machines. On a singleprocessor machine, the kernel
18301da177e4SLinus Torvalds	  will run faster if you say N here.
18311da177e4SLinus Torvalds
18321da177e4SLinus Torvalds	  People using multiprocessor machines who say Y here should also say
18331da177e4SLinus Torvalds	  Y to "Enhanced Real Time Clock Support", below.
18341da177e4SLinus Torvalds
183503502faaSAdrian Bunk	  See also the SMP-HOWTO available at
183603502faaSAdrian Bunk	  <http://www.tldp.org/docs.html#howto>.
18371da177e4SLinus Torvalds
18381da177e4SLinus Torvalds	  If you don't know what to do here, say N.
18391da177e4SLinus Torvalds
184087353d8aSRalf Baechleconfig SMP_UP
184187353d8aSRalf Baechle	bool
184287353d8aSRalf Baechle
18434a16ff4cSRalf Baechleconfig SYS_SUPPORTS_MIPS_CMP
18444a16ff4cSRalf Baechle	bool
18454a16ff4cSRalf Baechle
1846e73ea273SRalf Baechleconfig SYS_SUPPORTS_SMP
1847e73ea273SRalf Baechle	bool
1848e73ea273SRalf Baechle
184972ede9b1SAtsushi Nemotoconfig NR_CPUS_DEFAULT_1
185072ede9b1SAtsushi Nemoto	bool
185172ede9b1SAtsushi Nemoto
1852130e2fb7SRalf Baechleconfig NR_CPUS_DEFAULT_2
1853130e2fb7SRalf Baechle	bool
1854130e2fb7SRalf Baechle
1855130e2fb7SRalf Baechleconfig NR_CPUS_DEFAULT_4
1856130e2fb7SRalf Baechle	bool
1857130e2fb7SRalf Baechle
1858130e2fb7SRalf Baechleconfig NR_CPUS_DEFAULT_8
1859130e2fb7SRalf Baechle	bool
1860130e2fb7SRalf Baechle
1861130e2fb7SRalf Baechleconfig NR_CPUS_DEFAULT_16
1862130e2fb7SRalf Baechle	bool
1863130e2fb7SRalf Baechle
1864130e2fb7SRalf Baechleconfig NR_CPUS_DEFAULT_32
1865130e2fb7SRalf Baechle	bool
1866130e2fb7SRalf Baechle
1867130e2fb7SRalf Baechleconfig NR_CPUS_DEFAULT_64
1868130e2fb7SRalf Baechle	bool
1869130e2fb7SRalf Baechle
18701da177e4SLinus Torvaldsconfig NR_CPUS
18711da177e4SLinus Torvalds	int "Maximum number of CPUs (2-64)"
187272ede9b1SAtsushi Nemoto	range 1 64 if NR_CPUS_DEFAULT_1
18731da177e4SLinus Torvalds	depends on SMP
187472ede9b1SAtsushi Nemoto	default "1" if NR_CPUS_DEFAULT_1
1875130e2fb7SRalf Baechle	default "2" if NR_CPUS_DEFAULT_2
1876130e2fb7SRalf Baechle	default "4" if NR_CPUS_DEFAULT_4
1877130e2fb7SRalf Baechle	default "8" if NR_CPUS_DEFAULT_8
1878130e2fb7SRalf Baechle	default "16" if NR_CPUS_DEFAULT_16
1879130e2fb7SRalf Baechle	default "32" if NR_CPUS_DEFAULT_32
1880130e2fb7SRalf Baechle	default "64" if NR_CPUS_DEFAULT_64
18811da177e4SLinus Torvalds	help
18821da177e4SLinus Torvalds	  This allows you to specify the maximum number of CPUs which this
18831da177e4SLinus Torvalds	  kernel will support.  The maximum supported value is 32 for 32-bit
18841da177e4SLinus Torvalds	  kernel and 64 for 64-bit kernels; the minimum value which makes
188572ede9b1SAtsushi Nemoto	  sense is 1 for Qemu (useful only for kernel debugging purposes)
188672ede9b1SAtsushi Nemoto	  and 2 for all others.
18871da177e4SLinus Torvalds
18881da177e4SLinus Torvalds	  This is purely to save memory - each supported CPU adds
188972ede9b1SAtsushi Nemoto	  approximately eight kilobytes to the kernel image.  For best
189072ede9b1SAtsushi Nemoto	  performance should round up your number of processors to the next
189172ede9b1SAtsushi Nemoto	  power of two.
18921da177e4SLinus Torvalds
1893c4eee283SAtsushi Nemotosource "kernel/time/Kconfig"
1894c4eee283SAtsushi Nemoto
18951723b4a3SAtsushi Nemoto#
18961723b4a3SAtsushi Nemoto# Timer Interrupt Frequency Configuration
18971723b4a3SAtsushi Nemoto#
18981723b4a3SAtsushi Nemoto
18991723b4a3SAtsushi Nemotochoice
19001723b4a3SAtsushi Nemoto	prompt "Timer frequency"
19011723b4a3SAtsushi Nemoto	default HZ_250
19021723b4a3SAtsushi Nemoto	help
19031723b4a3SAtsushi Nemoto	 Allows the configuration of the timer frequency.
19041723b4a3SAtsushi Nemoto
19051723b4a3SAtsushi Nemoto	config HZ_48
19060f873585SRalf Baechle		bool "48 HZ" if SYS_SUPPORTS_48HZ || SYS_SUPPORTS_ARBIT_HZ
19071723b4a3SAtsushi Nemoto
19081723b4a3SAtsushi Nemoto	config HZ_100
19091723b4a3SAtsushi Nemoto		bool "100 HZ" if SYS_SUPPORTS_100HZ || SYS_SUPPORTS_ARBIT_HZ
19101723b4a3SAtsushi Nemoto
19111723b4a3SAtsushi Nemoto	config HZ_128
19121723b4a3SAtsushi Nemoto		bool "128 HZ" if SYS_SUPPORTS_128HZ || SYS_SUPPORTS_ARBIT_HZ
19131723b4a3SAtsushi Nemoto
19141723b4a3SAtsushi Nemoto	config HZ_250
19151723b4a3SAtsushi Nemoto		bool "250 HZ" if SYS_SUPPORTS_250HZ || SYS_SUPPORTS_ARBIT_HZ
19161723b4a3SAtsushi Nemoto
19171723b4a3SAtsushi Nemoto	config HZ_256
19181723b4a3SAtsushi Nemoto		bool "256 HZ" if SYS_SUPPORTS_256HZ || SYS_SUPPORTS_ARBIT_HZ
19191723b4a3SAtsushi Nemoto
19201723b4a3SAtsushi Nemoto	config HZ_1000
19211723b4a3SAtsushi Nemoto		bool "1000 HZ" if SYS_SUPPORTS_1000HZ || SYS_SUPPORTS_ARBIT_HZ
19221723b4a3SAtsushi Nemoto
19231723b4a3SAtsushi Nemoto	config HZ_1024
19241723b4a3SAtsushi Nemoto		bool "1024 HZ" if SYS_SUPPORTS_1024HZ || SYS_SUPPORTS_ARBIT_HZ
19251723b4a3SAtsushi Nemoto
19261723b4a3SAtsushi Nemotoendchoice
19271723b4a3SAtsushi Nemoto
19281723b4a3SAtsushi Nemotoconfig SYS_SUPPORTS_48HZ
19291723b4a3SAtsushi Nemoto	bool
19301723b4a3SAtsushi Nemoto
19311723b4a3SAtsushi Nemotoconfig SYS_SUPPORTS_100HZ
19321723b4a3SAtsushi Nemoto	bool
19331723b4a3SAtsushi Nemoto
19341723b4a3SAtsushi Nemotoconfig SYS_SUPPORTS_128HZ
19351723b4a3SAtsushi Nemoto	bool
19361723b4a3SAtsushi Nemoto
19371723b4a3SAtsushi Nemotoconfig SYS_SUPPORTS_250HZ
19381723b4a3SAtsushi Nemoto	bool
19391723b4a3SAtsushi Nemoto
19401723b4a3SAtsushi Nemotoconfig SYS_SUPPORTS_256HZ
19411723b4a3SAtsushi Nemoto	bool
19421723b4a3SAtsushi Nemoto
19431723b4a3SAtsushi Nemotoconfig SYS_SUPPORTS_1000HZ
19441723b4a3SAtsushi Nemoto	bool
19451723b4a3SAtsushi Nemoto
19461723b4a3SAtsushi Nemotoconfig SYS_SUPPORTS_1024HZ
19471723b4a3SAtsushi Nemoto	bool
19481723b4a3SAtsushi Nemoto
19491723b4a3SAtsushi Nemotoconfig SYS_SUPPORTS_ARBIT_HZ
19501723b4a3SAtsushi Nemoto	bool
19511723b4a3SAtsushi Nemoto	default y if !SYS_SUPPORTS_48HZ && !SYS_SUPPORTS_100HZ && \
19521723b4a3SAtsushi Nemoto		     !SYS_SUPPORTS_128HZ && !SYS_SUPPORTS_250HZ && \
19531723b4a3SAtsushi Nemoto		     !SYS_SUPPORTS_256HZ && !SYS_SUPPORTS_1000HZ && \
19541723b4a3SAtsushi Nemoto		     !SYS_SUPPORTS_1024HZ
19551723b4a3SAtsushi Nemoto
19561723b4a3SAtsushi Nemotoconfig HZ
19571723b4a3SAtsushi Nemoto	int
19581723b4a3SAtsushi Nemoto	default 48 if HZ_48
19591723b4a3SAtsushi Nemoto	default 100 if HZ_100
19601723b4a3SAtsushi Nemoto	default 128 if HZ_128
19611723b4a3SAtsushi Nemoto	default 250 if HZ_250
19621723b4a3SAtsushi Nemoto	default 256 if HZ_256
19631723b4a3SAtsushi Nemoto	default 1000 if HZ_1000
19641723b4a3SAtsushi Nemoto	default 1024 if HZ_1024
19651723b4a3SAtsushi Nemoto
1966e80de850SRalf Baechlesource "kernel/Kconfig.preempt"
19671da177e4SLinus Torvalds
19681da177e4SLinus Torvaldsconfig MIPS_INSANE_LARGE
19691da177e4SLinus Torvalds	bool "Support for large 64-bit configurations"
1970875d43e7SRalf Baechle	depends on CPU_R10000 && 64BIT
19711da177e4SLinus Torvalds	help
19721da177e4SLinus Torvalds	  MIPS R10000 does support a 44 bit / 16TB address space as opposed to
19731da177e4SLinus Torvalds	  previous 64-bit processors which only supported 40 bit / 1TB. If you
19741da177e4SLinus Torvalds	  need processes of more than 1TB virtual address space, say Y here.
19751da177e4SLinus Torvalds	  This will result in additional memory usage, so it is not
19761da177e4SLinus Torvalds	  recommended for normal users.
19771da177e4SLinus Torvalds
1978ea6e942bSAtsushi Nemotoconfig KEXEC
1979ea6e942bSAtsushi Nemoto	bool "Kexec system call (EXPERIMENTAL)"
1980ea6e942bSAtsushi Nemoto	depends on EXPERIMENTAL
1981ea6e942bSAtsushi Nemoto	help
1982ea6e942bSAtsushi Nemoto	  kexec is a system call that implements the ability to shutdown your
1983ea6e942bSAtsushi Nemoto	  current kernel, and to start another kernel.  It is like a reboot
19843dde6ad8SDavid Sterba	  but it is independent of the system firmware.   And like a reboot
1985ea6e942bSAtsushi Nemoto	  you can start any kernel with it, not just Linux.
1986ea6e942bSAtsushi Nemoto
198701dd2fbfSMatt LaPlante	  The name comes from the similarity to the exec system call.
1988ea6e942bSAtsushi Nemoto
1989ea6e942bSAtsushi Nemoto	  It is an ongoing process to be certain the hardware in a machine
1990ea6e942bSAtsushi Nemoto	  is properly shutdown, so do not be surprised if this code does not
1991ea6e942bSAtsushi Nemoto	  initially work for you.  It may help to enable device hotplugging
1992ea6e942bSAtsushi Nemoto	  support.  As of this writing the exact hardware interface is
1993ea6e942bSAtsushi Nemoto	  strongly in flux, so no good recommendation can be made.
1994ea6e942bSAtsushi Nemoto
1995ea6e942bSAtsushi Nemotoconfig SECCOMP
1996ea6e942bSAtsushi Nemoto	bool "Enable seccomp to safely compute untrusted bytecode"
1997293c5bd1SRalf Baechle	depends on PROC_FS
1998ea6e942bSAtsushi Nemoto	default y
1999ea6e942bSAtsushi Nemoto	help
2000ea6e942bSAtsushi Nemoto	  This kernel feature is useful for number crunching applications
2001ea6e942bSAtsushi Nemoto	  that may need to compute untrusted bytecode during their
2002ea6e942bSAtsushi Nemoto	  execution. By using pipes or other transports made available to
2003ea6e942bSAtsushi Nemoto	  the process as file descriptors supporting the read/write
2004ea6e942bSAtsushi Nemoto	  syscalls, it's possible to isolate those applications in
2005ea6e942bSAtsushi Nemoto	  their own address space using seccomp. Once seccomp is
2006ea6e942bSAtsushi Nemoto	  enabled via /proc/<pid>/seccomp, it cannot be disabled
2007ea6e942bSAtsushi Nemoto	  and the task is only allowed to execute a few safe syscalls
2008ea6e942bSAtsushi Nemoto	  defined by each seccomp mode.
2009ea6e942bSAtsushi Nemoto
2010ea6e942bSAtsushi Nemoto	  If unsure, say Y. Only embedded should say N here.
2011ea6e942bSAtsushi Nemoto
20125e83d430SRalf Baechleendmenu
20135e83d430SRalf Baechle
20141df0f0ffSAtsushi Nemotoconfig LOCKDEP_SUPPORT
20151df0f0ffSAtsushi Nemoto	bool
20161df0f0ffSAtsushi Nemoto	default y
20171df0f0ffSAtsushi Nemoto
20181df0f0ffSAtsushi Nemotoconfig STACKTRACE_SUPPORT
20191df0f0ffSAtsushi Nemoto	bool
20201df0f0ffSAtsushi Nemoto	default y
20211df0f0ffSAtsushi Nemoto
2022b6c3539bSRalf Baechlesource "init/Kconfig"
2023b6c3539bSRalf Baechle
20240011036bSAtsushi Nemotoconfig PROBE_INITRD_HEADER
20250011036bSAtsushi Nemoto	bool "Probe initrd header created by addinitrd"
20260011036bSAtsushi Nemoto	depends on BLK_DEV_INITRD
20270011036bSAtsushi Nemoto	help
20280011036bSAtsushi Nemoto	  Probe initrd header at the last page of kernel image.
20290011036bSAtsushi Nemoto	  Say Y here if you are using arch/mips/boot/addinitrd.c to
20300011036bSAtsushi Nemoto	  add initrd or initramfs image to the kernel image.
20310011036bSAtsushi Nemoto	  Otherwise, say N.
20320011036bSAtsushi Nemoto
2033dc52ddc0SMatt Helsleysource "kernel/Kconfig.freezer"
2034dc52ddc0SMatt Helsley
20351da177e4SLinus Torvaldsmenu "Bus options (PCI, PCMCIA, EISA, ISA, TC)"
20361da177e4SLinus Torvalds
20375e83d430SRalf Baechleconfig HW_HAS_EISA
20385e83d430SRalf Baechle	bool
20391da177e4SLinus Torvaldsconfig HW_HAS_PCI
20401da177e4SLinus Torvalds	bool
20411da177e4SLinus Torvalds
20421da177e4SLinus Torvaldsconfig PCI
20431da177e4SLinus Torvalds	bool "Support for PCI controller"
20441da177e4SLinus Torvalds	depends on HW_HAS_PCI
2045abb4ae46SRalf Baechle	select PCI_DOMAINS
20461da177e4SLinus Torvalds	help
20471da177e4SLinus Torvalds	  Find out whether you have a PCI motherboard. PCI is the name of a
20481da177e4SLinus Torvalds	  bus system, i.e. the way the CPU talks to the other stuff inside
20491da177e4SLinus Torvalds	  your box. Other bus systems are ISA, EISA, or VESA. If you have PCI,
20501da177e4SLinus Torvalds	  say Y, otherwise N.
20511da177e4SLinus Torvalds
20521da177e4SLinus Torvaldsconfig PCI_DOMAINS
20531da177e4SLinus Torvalds	bool
20541da177e4SLinus Torvalds
20551da177e4SLinus Torvaldssource "drivers/pci/Kconfig"
20561da177e4SLinus Torvalds
20571da177e4SLinus Torvalds#
20581da177e4SLinus Torvalds# ISA support is now enabled via select.  Too many systems still have the one
20591da177e4SLinus Torvalds# or other ISA chip on the board that users don't know about so don't expect
20601da177e4SLinus Torvalds# users to choose the right thing ...
20611da177e4SLinus Torvalds#
20621da177e4SLinus Torvaldsconfig ISA
20631da177e4SLinus Torvalds	bool
20641da177e4SLinus Torvalds
20651da177e4SLinus Torvaldsconfig EISA
20661da177e4SLinus Torvalds	bool "EISA support"
20675e83d430SRalf Baechle	depends on HW_HAS_EISA
20681da177e4SLinus Torvalds	select ISA
2069aa414dffSRalf Baechle	select GENERIC_ISA_DMA
20701da177e4SLinus Torvalds	---help---
20711da177e4SLinus Torvalds	  The Extended Industry Standard Architecture (EISA) bus was
20721da177e4SLinus Torvalds	  developed as an open alternative to the IBM MicroChannel bus.
20731da177e4SLinus Torvalds
20741da177e4SLinus Torvalds	  The EISA bus provided some of the features of the IBM MicroChannel
20751da177e4SLinus Torvalds	  bus while maintaining backward compatibility with cards made for
20761da177e4SLinus Torvalds	  the older ISA bus.  The EISA bus saw limited use between 1988 and
20771da177e4SLinus Torvalds	  1995 when it was made obsolete by the PCI bus.
20781da177e4SLinus Torvalds
20791da177e4SLinus Torvalds	  Say Y here if you are building a kernel for an EISA-based machine.
20801da177e4SLinus Torvalds
20811da177e4SLinus Torvalds	  Otherwise, say N.
20821da177e4SLinus Torvalds
20831da177e4SLinus Torvaldssource "drivers/eisa/Kconfig"
20841da177e4SLinus Torvalds
20851da177e4SLinus Torvaldsconfig TC
20861da177e4SLinus Torvalds	bool "TURBOchannel support"
20871da177e4SLinus Torvalds	depends on MACH_DECSTATION
20881da177e4SLinus Torvalds	help
20891da177e4SLinus Torvalds	  TurboChannel is a DEC (now Compaq (now HP)) bus for Alpha and MIPS
20901da177e4SLinus Torvalds	  processors.  Documentation on writing device drivers for TurboChannel
20911da177e4SLinus Torvalds	  is available at:
20921da177e4SLinus Torvalds	  <http://www.cs.arizona.edu/computer.help/policy/DIGITAL_unix/AA-PS3HD-TET1_html/TITLE.html>.
20931da177e4SLinus Torvalds
20941da177e4SLinus Torvalds#config ACCESSBUS
20951da177e4SLinus Torvalds#	bool "Access.Bus support"
20961da177e4SLinus Torvalds#	depends on TC
20971da177e4SLinus Torvalds
20981da177e4SLinus Torvaldsconfig MMU
20991da177e4SLinus Torvalds	bool
21001da177e4SLinus Torvalds	default y
21011da177e4SLinus Torvalds
2102d865bea4SRalf Baechleconfig I8253
2103d865bea4SRalf Baechle	bool
2104d865bea4SRalf Baechle
2105cce335aeSRalf Baechleconfig ZONE_DMA32
2106cce335aeSRalf Baechle	bool
2107cce335aeSRalf Baechle
21081da177e4SLinus Torvaldssource "drivers/pcmcia/Kconfig"
21091da177e4SLinus Torvalds
21101da177e4SLinus Torvaldssource "drivers/pci/hotplug/Kconfig"
21111da177e4SLinus Torvalds
21121da177e4SLinus Torvaldsendmenu
21131da177e4SLinus Torvalds
21141da177e4SLinus Torvaldsmenu "Executable file formats"
21151da177e4SLinus Torvalds
21161da177e4SLinus Torvaldssource "fs/Kconfig.binfmt"
21171da177e4SLinus Torvalds
21181da177e4SLinus Torvaldsconfig TRAD_SIGNALS
21191da177e4SLinus Torvalds	bool
21201da177e4SLinus Torvalds
21211da177e4SLinus Torvaldsconfig MIPS32_COMPAT
21221da177e4SLinus Torvalds	bool "Kernel support for Linux/MIPS 32-bit binary compatibility"
2123875d43e7SRalf Baechle	depends on 64BIT
21241da177e4SLinus Torvalds	help
21251da177e4SLinus Torvalds	  Select this option if you want Linux/MIPS 32-bit binary
21261da177e4SLinus Torvalds	  compatibility. Since all software available for Linux/MIPS is
21271da177e4SLinus Torvalds	  currently 32-bit you should say Y here.
21281da177e4SLinus Torvalds
21291da177e4SLinus Torvaldsconfig COMPAT
21301da177e4SLinus Torvalds	bool
21311da177e4SLinus Torvalds	depends on MIPS32_COMPAT
21321da177e4SLinus Torvalds	default y
21331da177e4SLinus Torvalds
213405e43966SAtsushi Nemotoconfig SYSVIPC_COMPAT
213505e43966SAtsushi Nemoto	bool
213605e43966SAtsushi Nemoto	depends on COMPAT && SYSVIPC
213705e43966SAtsushi Nemoto	default y
213805e43966SAtsushi Nemoto
21391da177e4SLinus Torvaldsconfig MIPS32_O32
21401da177e4SLinus Torvalds	bool "Kernel support for o32 binaries"
21411da177e4SLinus Torvalds	depends on MIPS32_COMPAT
21421da177e4SLinus Torvalds	help
21431da177e4SLinus Torvalds	  Select this option if you want to run o32 binaries.  These are pure
21441da177e4SLinus Torvalds	  32-bit binaries as used by the 32-bit Linux/MIPS port.  Most of
21451da177e4SLinus Torvalds	  existing binaries are in this format.
21461da177e4SLinus Torvalds
21471da177e4SLinus Torvalds	  If unsure, say Y.
21481da177e4SLinus Torvalds
21491da177e4SLinus Torvaldsconfig MIPS32_N32
21501da177e4SLinus Torvalds	bool "Kernel support for n32 binaries"
21511da177e4SLinus Torvalds	depends on MIPS32_COMPAT
21521da177e4SLinus Torvalds	help
21531da177e4SLinus Torvalds	  Select this option if you want to run n32 binaries.  These are
21541da177e4SLinus Torvalds	  64-bit binaries using 32-bit quantities for addressing and certain
21551da177e4SLinus Torvalds	  data that would normally be 64-bit.  They are used in special
21561da177e4SLinus Torvalds	  cases.
21571da177e4SLinus Torvalds
21581da177e4SLinus Torvalds	  If unsure, say N.
21591da177e4SLinus Torvalds
21601da177e4SLinus Torvaldsconfig BINFMT_ELF32
21611da177e4SLinus Torvalds	bool
21621da177e4SLinus Torvalds	default y if MIPS32_O32 || MIPS32_N32
21631da177e4SLinus Torvalds
21642116245eSRalf Baechleendmenu
21651da177e4SLinus Torvalds
21662116245eSRalf Baechlemenu "Power management options"
2167952fa954SRodolfo Giometti
2168363c55caSWu Zhangjinconfig ARCH_HIBERNATION_POSSIBLE
2169363c55caSWu Zhangjin	def_bool y
21709801b321SRalf Baechle	depends on SYS_SUPPORTS_HOTPLUG_CPU
2171363c55caSWu Zhangjin
2172f4cb5700SJohannes Bergconfig ARCH_SUSPEND_POSSIBLE
2173f4cb5700SJohannes Berg	def_bool y
21749801b321SRalf Baechle	depends on SYS_SUPPORTS_HOTPLUG_CPU
2175f4cb5700SJohannes Berg
21762116245eSRalf Baechlesource "kernel/power/Kconfig"
2177952fa954SRodolfo Giometti
21781da177e4SLinus Torvaldsendmenu
21791da177e4SLinus Torvalds
2180d5950b43SSam Ravnborgsource "net/Kconfig"
2181d5950b43SSam Ravnborg
21821da177e4SLinus Torvaldssource "drivers/Kconfig"
21831da177e4SLinus Torvalds
21841da177e4SLinus Torvaldssource "fs/Kconfig"
21851da177e4SLinus Torvalds
21861da177e4SLinus Torvaldssource "arch/mips/Kconfig.debug"
21871da177e4SLinus Torvalds
21881da177e4SLinus Torvaldssource "security/Kconfig"
21891da177e4SLinus Torvalds
21901da177e4SLinus Torvaldssource "crypto/Kconfig"
21911da177e4SLinus Torvalds
21921da177e4SLinus Torvaldssource "lib/Kconfig"
2193