xref: /linux/arch/mips/Kconfig (revision 6f7a251a259e5bf58a9ff334bdcfa3e42b6cb7a3)
11da177e4SLinus Torvaldsconfig MIPS
21da177e4SLinus Torvalds	bool
31da177e4SLinus Torvalds	default y
4f8ac0425SYoichi Yuasa	select HAVE_GENERIC_DMA_COHERENT
5ec7748b5SSam Ravnborg	select HAVE_IDE
642d4b839SMathieu Desnoyers	select HAVE_OPROFILE
788547001SJason Wessel	select HAVE_ARCH_KGDB
81da177e4SLinus Torvalds	# Horrible source of confusion.  Die, die, die ...
91da177e4SLinus Torvalds	select EMBEDDED
108e497117SWu Zhangjin	select RTC_LIB if !LEMOTE_FULOONG2E
111da177e4SLinus Torvalds
121da177e4SLinus Torvaldsmainmenu "Linux/MIPS Kernel Configuration"
131da177e4SLinus Torvalds
141da177e4SLinus Torvaldsmenu "Machine selection"
151da177e4SLinus Torvalds
165ac6da66SChristoph Lameterconfig ZONE_DMA
175ac6da66SChristoph Lameter	bool
185ac6da66SChristoph Lameter
195e83d430SRalf Baechlechoice
205e83d430SRalf Baechle	prompt "System type"
215e83d430SRalf Baechle	default SGI_IP22
221da177e4SLinus Torvalds
23c3543e25SYoichi Yuasaconfig MACH_ALCHEMY
24c3543e25SYoichi Yuasa	bool "Alchemy processor based machines"
251b93b3c3SWu Zhangjin	select SYS_SUPPORTS_ZBOOT
261da177e4SLinus Torvalds
277ca5dc14SFlorian Fainelliconfig AR7
287ca5dc14SFlorian Fainelli	bool "Texas Instruments AR7"
297ca5dc14SFlorian Fainelli	select BOOT_ELF32
307ca5dc14SFlorian Fainelli	select DMA_NONCOHERENT
317ca5dc14SFlorian Fainelli	select CEVT_R4K
327ca5dc14SFlorian Fainelli	select CSRC_R4K
337ca5dc14SFlorian Fainelli	select IRQ_CPU
347ca5dc14SFlorian Fainelli	select NO_EXCEPT_FILL
357ca5dc14SFlorian Fainelli	select SWAP_IO_SPACE
367ca5dc14SFlorian Fainelli	select SYS_HAS_CPU_MIPS32_R1
377ca5dc14SFlorian Fainelli	select SYS_HAS_EARLY_PRINTK
387ca5dc14SFlorian Fainelli	select SYS_SUPPORTS_32BIT_KERNEL
397ca5dc14SFlorian Fainelli	select SYS_SUPPORTS_LITTLE_ENDIAN
401b93b3c3SWu Zhangjin	select SYS_SUPPORTS_ZBOOT_UART16550
417ca5dc14SFlorian Fainelli	select GENERIC_GPIO
427ca5dc14SFlorian Fainelli	select GCD
437ca5dc14SFlorian Fainelli	select VLYNQ
447ca5dc14SFlorian Fainelli	help
457ca5dc14SFlorian Fainelli	  Support for the Texas Instruments AR7 System-on-a-Chip
467ca5dc14SFlorian Fainelli	  family: TNETD7100, 7200 and 7300.
477ca5dc14SFlorian Fainelli
4835189fadSRalf Baechleconfig BASLER_EXCITE
49be91589eSThomas Koeller	bool "Basler eXcite smart camera"
5042f77542SRalf Baechle	select CEVT_R4K
51940f6b48SRalf Baechle	select CSRC_R4K
5235189fadSRalf Baechle	select DMA_COHERENT
5335189fadSRalf Baechle	select HW_HAS_PCI
5435189fadSRalf Baechle	select IRQ_CPU
5535189fadSRalf Baechle	select IRQ_CPU_RM7K
5635189fadSRalf Baechle	select IRQ_CPU_RM9K
57663c3d90Sthomas@koeller.dyndns.org	select MIPS_RM9122
5835189fadSRalf Baechle	select SYS_HAS_CPU_RM9000
5935189fadSRalf Baechle	select SYS_SUPPORTS_32BIT_KERNEL
6035189fadSRalf Baechle	select SYS_SUPPORTS_BIG_ENDIAN
6135189fadSRalf Baechle	help
6235189fadSRalf Baechle	  The eXcite is a smart camera platform manufactured by
63be91589eSThomas Koeller	  Basler Vision Technologies AG.
6435189fadSRalf Baechle
651c0c13ebSAurelien Jarnoconfig BCM47XX
661c0c13ebSAurelien Jarno	bool "BCM47XX based boards"
6742f77542SRalf Baechle	select CEVT_R4K
68940f6b48SRalf Baechle	select CSRC_R4K
691c0c13ebSAurelien Jarno	select DMA_NONCOHERENT
701c0c13ebSAurelien Jarno	select HW_HAS_PCI
711c0c13ebSAurelien Jarno	select IRQ_CPU
721c0c13ebSAurelien Jarno	select SYS_HAS_CPU_MIPS32_R1
731c0c13ebSAurelien Jarno	select SYS_SUPPORTS_32BIT_KERNEL
741c0c13ebSAurelien Jarno	select SYS_SUPPORTS_LITTLE_ENDIAN
751c0c13ebSAurelien Jarno	select SSB
761c0c13ebSAurelien Jarno	select SSB_DRIVER_MIPS
772f02c15aSAurelien Jarno	select SSB_DRIVER_EXTIF
78b06f3e19SAurelien Jarno	select SSB_EMBEDDED
792f02c15aSAurelien Jarno	select SSB_PCICORE_HOSTMODE if PCI
801c0c13ebSAurelien Jarno	select GENERIC_GPIO
8125e5fb97SAurelien Jarno	select SYS_HAS_EARLY_PRINTK
8225e5fb97SAurelien Jarno	select CFE
831c0c13ebSAurelien Jarno	help
841c0c13ebSAurelien Jarno	 Support for BCM47XX based boards
851c0c13ebSAurelien Jarno
86e7300d04SMaxime Bizonconfig BCM63XX
87e7300d04SMaxime Bizon	bool "Broadcom BCM63XX based boards"
88e7300d04SMaxime Bizon	select CEVT_R4K
89e7300d04SMaxime Bizon	select CSRC_R4K
90e7300d04SMaxime Bizon	select DMA_NONCOHERENT
91e7300d04SMaxime Bizon	select IRQ_CPU
92e7300d04SMaxime Bizon	select SYS_HAS_CPU_MIPS32_R1
93e7300d04SMaxime Bizon	select SYS_SUPPORTS_32BIT_KERNEL
94e7300d04SMaxime Bizon	select SYS_SUPPORTS_BIG_ENDIAN
95e7300d04SMaxime Bizon	select SYS_HAS_EARLY_PRINTK
96e7300d04SMaxime Bizon	select SWAP_IO_SPACE
97e7300d04SMaxime Bizon	select ARCH_REQUIRE_GPIOLIB
98e7300d04SMaxime Bizon	help
99e7300d04SMaxime Bizon	 Support for BCM63XX based boards
100e7300d04SMaxime Bizon
1011da177e4SLinus Torvaldsconfig MIPS_COBALT
1023fa986faSMartin Michlmayr	bool "Cobalt Server"
10342f77542SRalf Baechle	select CEVT_R4K
104940f6b48SRalf Baechle	select CSRC_R4K
1051097c6acSYoichi Yuasa	select CEVT_GT641XX
1061da177e4SLinus Torvalds	select DMA_NONCOHERENT
1071da177e4SLinus Torvalds	select HW_HAS_PCI
108d865bea4SRalf Baechle	select I8253
1091da177e4SLinus Torvalds	select I8259
1101da177e4SLinus Torvalds	select IRQ_CPU
111d5ab1a69SYoichi Yuasa	select IRQ_GT641XX
112252161ecSYoichi Yuasa	select PCI_GT64XXX_PCI0
113e25bfc92SYoichi Yuasa	select PCI
1147cf8053bSRalf Baechle	select SYS_HAS_CPU_NEVADA
1150a22e0d4SYoichi Yuasa	select SYS_HAS_EARLY_PRINTK
116ed5ba2fbSYoichi Yuasa	select SYS_SUPPORTS_32BIT_KERNEL
1170e8774b6SFlorian Fainelli	select SYS_SUPPORTS_64BIT_KERNEL
1185e83d430SRalf Baechle	select SYS_SUPPORTS_LITTLE_ENDIAN
1191da177e4SLinus Torvalds
1201da177e4SLinus Torvaldsconfig MACH_DECSTATION
1213fa986faSMartin Michlmayr	bool "DECstations"
1221da177e4SLinus Torvalds	select BOOT_ELF32
1236457d9fcSYoichi Yuasa	select CEVT_DS1287
12442f77542SRalf Baechle	select CEVT_R4K
1254247417dSYoichi Yuasa	select CSRC_IOASIC
126940f6b48SRalf Baechle	select CSRC_R4K
12720d60d99SMaciej W. Rozycki	select CPU_DADDI_WORKAROUNDS if 64BIT
12820d60d99SMaciej W. Rozycki	select CPU_R4000_WORKAROUNDS if 64BIT
12920d60d99SMaciej W. Rozycki	select CPU_R4400_WORKAROUNDS if 64BIT
1301da177e4SLinus Torvalds	select DMA_NONCOHERENT
131d388d685SMaciej W. Rozycki	select NO_IOPORT
1321da177e4SLinus Torvalds	select IRQ_CPU
1337cf8053bSRalf Baechle	select SYS_HAS_CPU_R3000
1347cf8053bSRalf Baechle	select SYS_HAS_CPU_R4X00
135ed5ba2fbSYoichi Yuasa	select SYS_SUPPORTS_32BIT_KERNEL
136ed5ba2fbSYoichi Yuasa	select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
1375e83d430SRalf Baechle	select SYS_SUPPORTS_LITTLE_ENDIAN
1381723b4a3SAtsushi Nemoto	select SYS_SUPPORTS_128HZ
1391723b4a3SAtsushi Nemoto	select SYS_SUPPORTS_256HZ
1401723b4a3SAtsushi Nemoto	select SYS_SUPPORTS_1024HZ
1415e83d430SRalf Baechle	help
1421da177e4SLinus Torvalds	  This enables support for DEC's MIPS based workstations.  For details
1431da177e4SLinus Torvalds	  see the Linux/MIPS FAQ on <http://www.linux-mips.org/> and the
1441da177e4SLinus Torvalds	  DECstation porting pages on <http://decstation.unix-ag.org/>.
1451da177e4SLinus Torvalds
1461da177e4SLinus Torvalds	  If you have one of the following DECstation Models you definitely
1471da177e4SLinus Torvalds	  want to choose R4xx0 for the CPU Type:
1481da177e4SLinus Torvalds
1491da177e4SLinus Torvalds		DECstation 5000/50
1501da177e4SLinus Torvalds		DECstation 5000/150
1511da177e4SLinus Torvalds		DECstation 5000/260
1521da177e4SLinus Torvalds		DECsystem 5900/260
1531da177e4SLinus Torvalds
1541da177e4SLinus Torvalds	  otherwise choose R3000.
1551da177e4SLinus Torvalds
1565e83d430SRalf Baechleconfig MACH_JAZZ
1573fa986faSMartin Michlmayr	bool "Jazz family of machines"
1585e83d430SRalf Baechle	select ARC
1595e83d430SRalf Baechle	select ARC32
1605e83d430SRalf Baechle	select ARCH_MAY_HAVE_PC_FDC
16142f77542SRalf Baechle	select CEVT_R4K
162940f6b48SRalf Baechle	select CSRC_R4K
163e2defae5SThomas Bogendoerfer	select DEFAULT_SGI_PARTITION if CPU_BIG_ENDIAN
1645e83d430SRalf Baechle	select GENERIC_ISA_DMA
165ea202c63SThomas Bogendoerfer	select IRQ_CPU
166d865bea4SRalf Baechle	select I8253
1675e83d430SRalf Baechle	select I8259
1685e83d430SRalf Baechle	select ISA
1697cf8053bSRalf Baechle	select SYS_HAS_CPU_R4X00
1705e83d430SRalf Baechle	select SYS_SUPPORTS_32BIT_KERNEL
1715e83d430SRalf Baechle	select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
1721723b4a3SAtsushi Nemoto	select SYS_SUPPORTS_100HZ
1731da177e4SLinus Torvalds	help
1745e83d430SRalf Baechle	 This a family of machines based on the MIPS R4030 chipset which was
1755e83d430SRalf Baechle	 used by several vendors to build RISC/os and Windows NT workstations.
176692105b8SMatt LaPlante	 Members include the Acer PICA, MIPS Magnum 4000, MIPS Millennium and
1775e83d430SRalf Baechle	 Olivetti M700-10 workstations.
1785e83d430SRalf Baechle
1791f21d2bdSBrian Murphyconfig LASAT
1801f21d2bdSBrian Murphy	bool "LASAT Networks platforms"
18142f77542SRalf Baechle	select CEVT_R4K
182940f6b48SRalf Baechle	select CSRC_R4K
1831f21d2bdSBrian Murphy	select DMA_NONCOHERENT
1841f21d2bdSBrian Murphy	select SYS_HAS_EARLY_PRINTK
1851f21d2bdSBrian Murphy	select HW_HAS_PCI
186a5ccfe5cSRalf Baechle	select IRQ_CPU
1871f21d2bdSBrian Murphy	select PCI_GT64XXX_PCI0
1881f21d2bdSBrian Murphy	select MIPS_NILE4
1891f21d2bdSBrian Murphy	select R5000_CPU_SCACHE
1901f21d2bdSBrian Murphy	select SYS_HAS_CPU_R5000
1911f21d2bdSBrian Murphy	select SYS_SUPPORTS_32BIT_KERNEL
1921f21d2bdSBrian Murphy	select SYS_SUPPORTS_64BIT_KERNEL if BROKEN
1931f21d2bdSBrian Murphy	select SYS_SUPPORTS_LITTLE_ENDIAN
1941f21d2bdSBrian Murphy
19585749d24SWu Zhangjinconfig MACH_LOONGSON
19685749d24SWu Zhangjin	bool "Loongson family of machines"
1971b93b3c3SWu Zhangjin	select SYS_SUPPORTS_ZBOOT_UART16550
198ade299d8SYoichi Yuasa	help
19985749d24SWu Zhangjin	  This enables the support of Loongson family of machines.
20085749d24SWu Zhangjin
20185749d24SWu Zhangjin	  Loongson is a family of general-purpose MIPS-compatible CPUs.
20285749d24SWu Zhangjin	  developed at Institute of Computing Technology (ICT),
20385749d24SWu Zhangjin	  Chinese Academy of Sciences (CAS) in the People's Republic
20485749d24SWu Zhangjin	  of China. The chief architect is Professor Weiwu Hu.
205ade299d8SYoichi Yuasa
2061da177e4SLinus Torvaldsconfig MIPS_MALTA
2073fa986faSMartin Michlmayr	bool "MIPS Malta board"
20861ed242dSRalf Baechle	select ARCH_MAY_HAVE_PC_FDC
2091da177e4SLinus Torvalds	select BOOT_ELF32
210fa71c960SRalf Baechle	select BOOT_RAW
21142f77542SRalf Baechle	select CEVT_R4K
212940f6b48SRalf Baechle	select CSRC_R4K
2131da177e4SLinus Torvalds	select DMA_NONCOHERENT
2141da177e4SLinus Torvalds	select GENERIC_ISA_DMA
215aa414dffSRalf Baechle	select IRQ_CPU
21639b8d525SRalf Baechle	select IRQ_GIC
2171da177e4SLinus Torvalds	select HW_HAS_PCI
218d865bea4SRalf Baechle	select I8253
2191da177e4SLinus Torvalds	select I8259
2205e83d430SRalf Baechle	select MIPS_BOARDS_GEN
2215e83d430SRalf Baechle	select MIPS_BONITO64
2229318c51aSChris Dearman	select MIPS_CPU_SCACHE
223252161ecSYoichi Yuasa	select PCI_GT64XXX_PCI0
2245e83d430SRalf Baechle	select MIPS_MSC
2251da177e4SLinus Torvalds	select SWAP_IO_SPACE
2267cf8053bSRalf Baechle	select SYS_HAS_CPU_MIPS32_R1
2277cf8053bSRalf Baechle	select SYS_HAS_CPU_MIPS32_R2
2287cf8053bSRalf Baechle	select SYS_HAS_CPU_MIPS64_R1
2297cf8053bSRalf Baechle	select SYS_HAS_CPU_NEVADA
2307cf8053bSRalf Baechle	select SYS_HAS_CPU_RM7000
23136a88530SRalf Baechle	select SYS_HAS_EARLY_PRINTK
232ed5ba2fbSYoichi Yuasa	select SYS_SUPPORTS_32BIT_KERNEL
233ed5ba2fbSYoichi Yuasa	select SYS_SUPPORTS_64BIT_KERNEL
2345e83d430SRalf Baechle	select SYS_SUPPORTS_BIG_ENDIAN
2355e83d430SRalf Baechle	select SYS_SUPPORTS_LITTLE_ENDIAN
2360365070fSTim Anderson	select SYS_SUPPORTS_MIPS_CMP
237f41ae0b2SRalf Baechle	select SYS_SUPPORTS_MULTITHREADING
2389693a853SFranck Bui-Huu	select SYS_SUPPORTS_SMARTMIPS
2391b93b3c3SWu Zhangjin	select SYS_SUPPORTS_ZBOOT
2401da177e4SLinus Torvalds	help
241f638d197SMaciej W. Rozycki	  This enables support for the MIPS Technologies Malta evaluation
2421da177e4SLinus Torvalds	  board.
2431da177e4SLinus Torvalds
244c78cbf49SRalf Baechleconfig MIPS_SIM
2453fa986faSMartin Michlmayr	bool 'MIPS simulator (MIPSsim)'
24642f77542SRalf Baechle	select CEVT_R4K
247940f6b48SRalf Baechle	select CSRC_R4K
248c78cbf49SRalf Baechle	select DMA_NONCOHERENT
24936a88530SRalf Baechle	select SYS_HAS_EARLY_PRINTK
250c78cbf49SRalf Baechle	select IRQ_CPU
2519267a30dSMarc St-Jean	select BOOT_RAW
2527cf8053bSRalf Baechle	select SYS_HAS_CPU_MIPS32_R1
2537cf8053bSRalf Baechle	select SYS_HAS_CPU_MIPS32_R2
25436a88530SRalf Baechle	select SYS_HAS_EARLY_PRINTK
255c78cbf49SRalf Baechle	select SYS_SUPPORTS_32BIT_KERNEL
256c78cbf49SRalf Baechle	select SYS_SUPPORTS_BIG_ENDIAN
257f6e2373aSRalf Baechle	select SYS_SUPPORTS_MULTITHREADING
258c78cbf49SRalf Baechle	select SYS_SUPPORTS_LITTLE_ENDIAN
259c78cbf49SRalf Baechle	help
260c78cbf49SRalf Baechle	  This option enables support for MIPS Technologies MIPSsim software
261c78cbf49SRalf Baechle	  emulator.
262c78cbf49SRalf Baechle
263a83860c2SRalf Baechleconfig NEC_MARKEINS
264a83860c2SRalf Baechle	bool "NEC EMMA2RH Mark-eins board"
265a83860c2SRalf Baechle	select SOC_EMMA2RH
266a83860c2SRalf Baechle	select HW_HAS_PCI
267a83860c2SRalf Baechle	help
268a83860c2SRalf Baechle	  This enables support for the NEC Electronics Mark-eins boards.
269ade299d8SYoichi Yuasa
2705e83d430SRalf Baechleconfig MACH_VR41XX
27174142d65SYoichi Yuasa	bool "NEC VR4100 series based machines"
27242f77542SRalf Baechle	select CEVT_R4K
273940f6b48SRalf Baechle	select CSRC_R4K
2747cf8053bSRalf Baechle	select SYS_HAS_CPU_VR41XX
27527fdd325SYoichi Yuasa	select ARCH_REQUIRE_GPIOLIB
2765e83d430SRalf Baechle
277edb6310aSDaniel Lairdconfig NXP_STB220
278edb6310aSDaniel Laird	bool "NXP STB220 board"
279edb6310aSDaniel Laird	select SOC_PNX833X
280edb6310aSDaniel Laird	help
281edb6310aSDaniel Laird	 Support for NXP Semiconductors STB220 Development Board.
282edb6310aSDaniel Laird
283edb6310aSDaniel Lairdconfig NXP_STB225
284edb6310aSDaniel Laird	bool "NXP 225 board"
285edb6310aSDaniel Laird	select SOC_PNX833X
286edb6310aSDaniel Laird	select SOC_PNX8335
287edb6310aSDaniel Laird	help
288edb6310aSDaniel Laird	 Support for NXP Semiconductors STB225 Development Board.
289edb6310aSDaniel Laird
290ade299d8SYoichi Yuasaconfig PNX8550_JBS
291a92b0588SDaniel Laird	bool "NXP PNX8550 based JBS board"
292ade299d8SYoichi Yuasa	select PNX8550
293ade299d8SYoichi Yuasa	select SYS_SUPPORTS_LITTLE_ENDIAN
294ade299d8SYoichi Yuasa
295ade299d8SYoichi Yuasaconfig PNX8550_STB810
296a92b0588SDaniel Laird	bool "NXP PNX8550 based STB810 board"
297ade299d8SYoichi Yuasa	select PNX8550
298ade299d8SYoichi Yuasa	select SYS_SUPPORTS_LITTLE_ENDIAN
299ade299d8SYoichi Yuasa
3009267a30dSMarc St-Jeanconfig PMC_MSP
3019267a30dSMarc St-Jean	bool "PMC-Sierra MSP chipsets"
3029267a30dSMarc St-Jean	depends on EXPERIMENTAL
3039267a30dSMarc St-Jean	select DMA_NONCOHERENT
3049267a30dSMarc St-Jean	select SWAP_IO_SPACE
3059267a30dSMarc St-Jean	select NO_EXCEPT_FILL
3069267a30dSMarc St-Jean	select BOOT_RAW
3079267a30dSMarc St-Jean	select SYS_HAS_CPU_MIPS32_R1
3089267a30dSMarc St-Jean	select SYS_HAS_CPU_MIPS32_R2
3099267a30dSMarc St-Jean	select SYS_SUPPORTS_32BIT_KERNEL
3109267a30dSMarc St-Jean	select SYS_SUPPORTS_BIG_ENDIAN
3119267a30dSMarc St-Jean	select IRQ_CPU
3129267a30dSMarc St-Jean	select SERIAL_8250
3139267a30dSMarc St-Jean	select SERIAL_8250_CONSOLE
3149267a30dSMarc St-Jean	help
3159267a30dSMarc St-Jean	  This adds support for the PMC-Sierra family of Multi-Service
3169267a30dSMarc St-Jean	  Processor System-On-A-Chips.  These parts include a number
3179267a30dSMarc St-Jean	  of integrated peripherals, interfaces and DSPs in addition to
3189267a30dSMarc St-Jean	  a variety of MIPS cores.
3199267a30dSMarc St-Jean
3205e83d430SRalf Baechleconfig PMC_YOSEMITE
3213fa986faSMartin Michlmayr	bool "PMC-Sierra Yosemite eval board"
32242f77542SRalf Baechle	select CEVT_R4K
323940f6b48SRalf Baechle	select CSRC_R4K
3245e83d430SRalf Baechle	select DMA_COHERENT
3255e83d430SRalf Baechle	select HW_HAS_PCI
3265e83d430SRalf Baechle	select IRQ_CPU
3275e83d430SRalf Baechle	select IRQ_CPU_RM7K
3285e83d430SRalf Baechle	select IRQ_CPU_RM9K
3295e83d430SRalf Baechle	select SWAP_IO_SPACE
3307cf8053bSRalf Baechle	select SYS_HAS_CPU_RM9000
33136a88530SRalf Baechle	select SYS_HAS_EARLY_PRINTK
3325e83d430SRalf Baechle	select SYS_SUPPORTS_32BIT_KERNEL
3335e83d430SRalf Baechle	select SYS_SUPPORTS_64BIT_KERNEL
3345e83d430SRalf Baechle	select SYS_SUPPORTS_BIG_ENDIAN
3355e83d430SRalf Baechle	select SYS_SUPPORTS_HIGHMEM
336e73ea273SRalf Baechle	select SYS_SUPPORTS_SMP
3375e83d430SRalf Baechle	help
3385e83d430SRalf Baechle	  Yosemite is an evaluation board for the RM9000x2 processor
3395e83d430SRalf Baechle	  manufactured by PMC-Sierra.
3401da177e4SLinus Torvalds
3411da177e4SLinus Torvaldsconfig SGI_IP22
3423fa986faSMartin Michlmayr	bool "SGI IP22 (Indy/Indigo2)"
3431da177e4SLinus Torvalds	select ARC
3441da177e4SLinus Torvalds	select ARC32
3451da177e4SLinus Torvalds	select BOOT_ELF32
34642f77542SRalf Baechle	select CEVT_R4K
347940f6b48SRalf Baechle	select CSRC_R4K
348e2defae5SThomas Bogendoerfer	select DEFAULT_SGI_PARTITION
3491da177e4SLinus Torvalds	select DMA_NONCOHERENT
3505e83d430SRalf Baechle	select HW_HAS_EISA
351d865bea4SRalf Baechle	select I8253
35268de4803SThomas Bogendoerfer	select I8259
3531da177e4SLinus Torvalds	select IP22_CPU_SCACHE
3541da177e4SLinus Torvalds	select IRQ_CPU
355aa414dffSRalf Baechle	select GENERIC_ISA_DMA_SUPPORT_BROKEN
356e2defae5SThomas Bogendoerfer	select SGI_HAS_I8042
357e2defae5SThomas Bogendoerfer	select SGI_HAS_INDYDOG
35836e5c21dSThomas Bogendoerfer	select SGI_HAS_HAL2
359e2defae5SThomas Bogendoerfer	select SGI_HAS_SEEQ
360e2defae5SThomas Bogendoerfer	select SGI_HAS_WD93
361e2defae5SThomas Bogendoerfer	select SGI_HAS_ZILOG
3621da177e4SLinus Torvalds	select SWAP_IO_SPACE
3637cf8053bSRalf Baechle	select SYS_HAS_CPU_R4X00
3647cf8053bSRalf Baechle	select SYS_HAS_CPU_R5000
3652b5e63f6SMartin Michlmayr	#
3662b5e63f6SMartin Michlmayr	# Disable EARLY_PRINTK for now since it leads to overwritten prom
3672b5e63f6SMartin Michlmayr	# memory during early boot on some machines.
3682b5e63f6SMartin Michlmayr	#
3692b5e63f6SMartin Michlmayr	# See http://www.linux-mips.org/cgi-bin/mesg.cgi?a=linux-mips&i=20091119164009.GA15038%40deprecation.cyrius.com
3702b5e63f6SMartin Michlmayr	# for a more details discussion
3712b5e63f6SMartin Michlmayr	#
3722b5e63f6SMartin Michlmayr	# select SYS_HAS_EARLY_PRINTK
373ed5ba2fbSYoichi Yuasa	select SYS_SUPPORTS_32BIT_KERNEL
374ed5ba2fbSYoichi Yuasa	select SYS_SUPPORTS_64BIT_KERNEL
3755e83d430SRalf Baechle	select SYS_SUPPORTS_BIG_ENDIAN
3761da177e4SLinus Torvalds	help
3771da177e4SLinus Torvalds	  This are the SGI Indy, Challenge S and Indigo2, as well as certain
3781da177e4SLinus Torvalds	  OEM variants like the Tandem CMN B006S. To compile a Linux kernel
3791da177e4SLinus Torvalds	  that runs on these, say Y here.
3801da177e4SLinus Torvalds
3811da177e4SLinus Torvaldsconfig SGI_IP27
3823fa986faSMartin Michlmayr	bool "SGI IP27 (Origin200/2000)"
3831da177e4SLinus Torvalds	select ARC
3841da177e4SLinus Torvalds	select ARC64
3855e83d430SRalf Baechle	select BOOT_ELF64
386e2defae5SThomas Bogendoerfer	select DEFAULT_SGI_PARTITION
387634286f1SRalf Baechle	select DMA_COHERENT
38836a88530SRalf Baechle	select SYS_HAS_EARLY_PRINTK
3891da177e4SLinus Torvalds	select HW_HAS_PCI
390130e2fb7SRalf Baechle	select NR_CPUS_DEFAULT_64
3917cf8053bSRalf Baechle	select SYS_HAS_CPU_R10000
392ed5ba2fbSYoichi Yuasa	select SYS_SUPPORTS_64BIT_KERNEL
3935e83d430SRalf Baechle	select SYS_SUPPORTS_BIG_ENDIAN
394d8cb4e11SRalf Baechle	select SYS_SUPPORTS_NUMA
3951a5c5de1SRalf Baechle	select SYS_SUPPORTS_SMP
3961da177e4SLinus Torvalds	help
3971da177e4SLinus Torvalds	  This are the SGI Origin 200, Origin 2000 and Onyx 2 Graphics
3981da177e4SLinus Torvalds	  workstations.  To compile a Linux kernel that runs on these, say Y
3991da177e4SLinus Torvalds	  here.
4001da177e4SLinus Torvalds
401e2defae5SThomas Bogendoerferconfig SGI_IP28
402e2defae5SThomas Bogendoerfer	bool "SGI IP28 (Indigo2 R10k) (EXPERIMENTAL)"
403e2defae5SThomas Bogendoerfer	depends on EXPERIMENTAL
404e2defae5SThomas Bogendoerfer	select ARC
405e2defae5SThomas Bogendoerfer	select ARC64
406e2defae5SThomas Bogendoerfer	select BOOT_ELF64
407e2defae5SThomas Bogendoerfer	select CEVT_R4K
408e2defae5SThomas Bogendoerfer	select CSRC_R4K
409e2defae5SThomas Bogendoerfer	select DEFAULT_SGI_PARTITION
410e2defae5SThomas Bogendoerfer	select DMA_NONCOHERENT
411e2defae5SThomas Bogendoerfer	select GENERIC_ISA_DMA_SUPPORT_BROKEN
412e2defae5SThomas Bogendoerfer	select IRQ_CPU
413e2defae5SThomas Bogendoerfer	select HW_HAS_EISA
414e2defae5SThomas Bogendoerfer	select I8253
415e2defae5SThomas Bogendoerfer	select I8259
416e2defae5SThomas Bogendoerfer	select SGI_HAS_I8042
417e2defae5SThomas Bogendoerfer	select SGI_HAS_INDYDOG
4185b438c44SThomas Bogendoerfer	select SGI_HAS_HAL2
419e2defae5SThomas Bogendoerfer	select SGI_HAS_SEEQ
420e2defae5SThomas Bogendoerfer	select SGI_HAS_WD93
421e2defae5SThomas Bogendoerfer	select SGI_HAS_ZILOG
422e2defae5SThomas Bogendoerfer	select SWAP_IO_SPACE
423e2defae5SThomas Bogendoerfer	select SYS_HAS_CPU_R10000
4242b5e63f6SMartin Michlmayr	#
4252b5e63f6SMartin Michlmayr	# Disable EARLY_PRINTK for now since it leads to overwritten prom
4262b5e63f6SMartin Michlmayr	# memory during early boot on some machines.
4272b5e63f6SMartin Michlmayr	#
4282b5e63f6SMartin Michlmayr	# See http://www.linux-mips.org/cgi-bin/mesg.cgi?a=linux-mips&i=20091119164009.GA15038%40deprecation.cyrius.com
4292b5e63f6SMartin Michlmayr	# for a more details discussion
4302b5e63f6SMartin Michlmayr	#
4312b5e63f6SMartin Michlmayr	# select SYS_HAS_EARLY_PRINTK
432e2defae5SThomas Bogendoerfer	select SYS_SUPPORTS_64BIT_KERNEL
433e2defae5SThomas Bogendoerfer	select SYS_SUPPORTS_BIG_ENDIAN
434e2defae5SThomas Bogendoerfer      help
435e2defae5SThomas Bogendoerfer        This is the SGI Indigo2 with R10000 processor.  To compile a Linux
436e2defae5SThomas Bogendoerfer        kernel that runs on these, say Y here.
437e2defae5SThomas Bogendoerfer
4381da177e4SLinus Torvaldsconfig SGI_IP32
439cfd2afc0SRalf Baechle	bool "SGI IP32 (O2)"
4401da177e4SLinus Torvalds	select ARC
4411da177e4SLinus Torvalds	select ARC32
4421da177e4SLinus Torvalds	select BOOT_ELF32
44342f77542SRalf Baechle	select CEVT_R4K
444940f6b48SRalf Baechle	select CSRC_R4K
4451da177e4SLinus Torvalds	select DMA_NONCOHERENT
4461da177e4SLinus Torvalds	select HW_HAS_PCI
447dd67b155SRalf Baechle	select IRQ_CPU
4481da177e4SLinus Torvalds	select R5000_CPU_SCACHE
4491da177e4SLinus Torvalds	select RM7000_CPU_SCACHE
4507cf8053bSRalf Baechle	select SYS_HAS_CPU_R5000
4517cf8053bSRalf Baechle	select SYS_HAS_CPU_R10000 if BROKEN
4527cf8053bSRalf Baechle	select SYS_HAS_CPU_RM7000
453dd2f18feSRalf Baechle	select SYS_HAS_CPU_NEVADA
454ed5ba2fbSYoichi Yuasa	select SYS_SUPPORTS_64BIT_KERNEL
4555e83d430SRalf Baechle	select SYS_SUPPORTS_BIG_ENDIAN
4561da177e4SLinus Torvalds	help
4571da177e4SLinus Torvalds	  If you want this kernel to run on SGI O2 workstation, say Y here.
4581da177e4SLinus Torvalds
459ade299d8SYoichi Yuasaconfig SIBYTE_CRHINE
460ade299d8SYoichi Yuasa	bool "Sibyte BCM91120C-CRhine"
4615e83d430SRalf Baechle	depends on EXPERIMENTAL
4625e83d430SRalf Baechle	select BOOT_ELF32
4635e83d430SRalf Baechle	select DMA_COHERENT
4645e83d430SRalf Baechle	select SIBYTE_BCM1120
4655e83d430SRalf Baechle	select SWAP_IO_SPACE
4667cf8053bSRalf Baechle	select SYS_HAS_CPU_SB1
4675e83d430SRalf Baechle	select SYS_SUPPORTS_BIG_ENDIAN
4685e83d430SRalf Baechle	select SYS_SUPPORTS_LITTLE_ENDIAN
4695e83d430SRalf Baechle
470ade299d8SYoichi Yuasaconfig SIBYTE_CARMEL
471ade299d8SYoichi Yuasa	bool "Sibyte BCM91120x-Carmel"
4725e83d430SRalf Baechle	depends on EXPERIMENTAL
4735e83d430SRalf Baechle	select BOOT_ELF32
4745e83d430SRalf Baechle	select DMA_COHERENT
4755e83d430SRalf Baechle	select SIBYTE_BCM1120
4765e83d430SRalf Baechle	select SWAP_IO_SPACE
4777cf8053bSRalf Baechle	select SYS_HAS_CPU_SB1
4785e83d430SRalf Baechle	select SYS_SUPPORTS_BIG_ENDIAN
4795e83d430SRalf Baechle	select SYS_SUPPORTS_LITTLE_ENDIAN
4805e83d430SRalf Baechle
4815e83d430SRalf Baechleconfig SIBYTE_CRHONE
4823fa986faSMartin Michlmayr	bool "Sibyte BCM91125C-CRhone"
4835e83d430SRalf Baechle	depends on EXPERIMENTAL
4845e83d430SRalf Baechle	select BOOT_ELF32
4855e83d430SRalf Baechle	select DMA_COHERENT
4865e83d430SRalf Baechle	select SIBYTE_BCM1125
4875e83d430SRalf Baechle	select SWAP_IO_SPACE
4887cf8053bSRalf Baechle	select SYS_HAS_CPU_SB1
4895e83d430SRalf Baechle	select SYS_SUPPORTS_BIG_ENDIAN
4905e83d430SRalf Baechle	select SYS_SUPPORTS_HIGHMEM
4915e83d430SRalf Baechle	select SYS_SUPPORTS_LITTLE_ENDIAN
4925e83d430SRalf Baechle
493ade299d8SYoichi Yuasaconfig SIBYTE_RHONE
494ade299d8SYoichi Yuasa	bool "Sibyte BCM91125E-Rhone"
495ade299d8SYoichi Yuasa	depends on EXPERIMENTAL
496ade299d8SYoichi Yuasa	select BOOT_ELF32
497ade299d8SYoichi Yuasa	select DMA_COHERENT
498ade299d8SYoichi Yuasa	select SIBYTE_BCM1125H
499ade299d8SYoichi Yuasa	select SWAP_IO_SPACE
500ade299d8SYoichi Yuasa	select SYS_HAS_CPU_SB1
501ade299d8SYoichi Yuasa	select SYS_SUPPORTS_BIG_ENDIAN
502ade299d8SYoichi Yuasa	select SYS_SUPPORTS_LITTLE_ENDIAN
503ade299d8SYoichi Yuasa
504ade299d8SYoichi Yuasaconfig SIBYTE_SWARM
505ade299d8SYoichi Yuasa	bool "Sibyte BCM91250A-SWARM"
506ade299d8SYoichi Yuasa	select BOOT_ELF32
507ade299d8SYoichi Yuasa	select DMA_COHERENT
508ade299d8SYoichi Yuasa	select NR_CPUS_DEFAULT_2
509ade299d8SYoichi Yuasa	select SIBYTE_SB1250
510ade299d8SYoichi Yuasa	select SWAP_IO_SPACE
511ade299d8SYoichi Yuasa	select SYS_HAS_CPU_SB1
512ade299d8SYoichi Yuasa	select SYS_SUPPORTS_BIG_ENDIAN
513ade299d8SYoichi Yuasa	select SYS_SUPPORTS_HIGHMEM
514ade299d8SYoichi Yuasa	select SYS_SUPPORTS_LITTLE_ENDIAN
515cce335aeSRalf Baechle	select ZONE_DMA32 if 64BIT
516ade299d8SYoichi Yuasa
517ade299d8SYoichi Yuasaconfig SIBYTE_LITTLESUR
518ade299d8SYoichi Yuasa	bool "Sibyte BCM91250C2-LittleSur"
519ade299d8SYoichi Yuasa	depends on EXPERIMENTAL
520ade299d8SYoichi Yuasa	select BOOT_ELF32
521ade299d8SYoichi Yuasa	select DMA_COHERENT
522ade299d8SYoichi Yuasa	select NR_CPUS_DEFAULT_2
523ade299d8SYoichi Yuasa	select SIBYTE_SB1250
524ade299d8SYoichi Yuasa	select SWAP_IO_SPACE
525ade299d8SYoichi Yuasa	select SYS_HAS_CPU_SB1
526ade299d8SYoichi Yuasa	select SYS_SUPPORTS_BIG_ENDIAN
527ade299d8SYoichi Yuasa	select SYS_SUPPORTS_HIGHMEM
528ade299d8SYoichi Yuasa	select SYS_SUPPORTS_LITTLE_ENDIAN
529ade299d8SYoichi Yuasa
530ade299d8SYoichi Yuasaconfig SIBYTE_SENTOSA
531ade299d8SYoichi Yuasa	bool "Sibyte BCM91250E-Sentosa"
532ade299d8SYoichi Yuasa	depends on EXPERIMENTAL
533ade299d8SYoichi Yuasa	select BOOT_ELF32
534ade299d8SYoichi Yuasa	select DMA_COHERENT
535ade299d8SYoichi Yuasa	select NR_CPUS_DEFAULT_2
536ade299d8SYoichi Yuasa	select SIBYTE_SB1250
537ade299d8SYoichi Yuasa	select SWAP_IO_SPACE
538ade299d8SYoichi Yuasa	select SYS_HAS_CPU_SB1
539ade299d8SYoichi Yuasa	select SYS_SUPPORTS_BIG_ENDIAN
540ade299d8SYoichi Yuasa	select SYS_SUPPORTS_LITTLE_ENDIAN
541ade299d8SYoichi Yuasa
542ade299d8SYoichi Yuasaconfig SIBYTE_BIGSUR
543ade299d8SYoichi Yuasa	bool "Sibyte BCM91480B-BigSur"
544ade299d8SYoichi Yuasa	select BOOT_ELF32
545ade299d8SYoichi Yuasa	select DMA_COHERENT
546ade299d8SYoichi Yuasa	select NR_CPUS_DEFAULT_4
547ade299d8SYoichi Yuasa	select SIBYTE_BCM1x80
548ade299d8SYoichi Yuasa	select SWAP_IO_SPACE
549ade299d8SYoichi Yuasa	select SYS_HAS_CPU_SB1
550ade299d8SYoichi Yuasa	select SYS_SUPPORTS_BIG_ENDIAN
551651194f8SRalf Baechle	select SYS_SUPPORTS_HIGHMEM
552ade299d8SYoichi Yuasa	select SYS_SUPPORTS_LITTLE_ENDIAN
553cce335aeSRalf Baechle	select ZONE_DMA32 if 64BIT
554ade299d8SYoichi Yuasa
55514b36af4SThomas Bogendoerferconfig SNI_RM
55614b36af4SThomas Bogendoerfer	bool "SNI RM200/300/400"
5574a0312fcSThomas Bogendoerfer	select ARC if CPU_LITTLE_ENDIAN
5584a0312fcSThomas Bogendoerfer	select ARC32 if CPU_LITTLE_ENDIAN
559231a35d3SThomas Bogendoerfer	select SNIPROM if CPU_BIG_ENDIAN
5605e83d430SRalf Baechle	select ARCH_MAY_HAVE_PC_FDC
5615e83d430SRalf Baechle	select BOOT_ELF32
56242f77542SRalf Baechle	select CEVT_R4K
563940f6b48SRalf Baechle	select CSRC_R4K
564e2defae5SThomas Bogendoerfer	select DEFAULT_SGI_PARTITION if CPU_BIG_ENDIAN
5655e83d430SRalf Baechle	select DMA_NONCOHERENT
5665e83d430SRalf Baechle	select GENERIC_ISA_DMA
5675e83d430SRalf Baechle	select HW_HAS_EISA
5685e83d430SRalf Baechle	select HW_HAS_PCI
569c066a32aSThomas Bogendoerfer	select IRQ_CPU
570d865bea4SRalf Baechle	select I8253
5715e83d430SRalf Baechle	select I8259
5725e83d430SRalf Baechle	select ISA
5734a0312fcSThomas Bogendoerfer	select SWAP_IO_SPACE if CPU_BIG_ENDIAN
5747cf8053bSRalf Baechle	select SYS_HAS_CPU_R4X00
5754a0312fcSThomas Bogendoerfer	select SYS_HAS_CPU_R5000
576c066a32aSThomas Bogendoerfer	select SYS_HAS_CPU_R10000
5774a0312fcSThomas Bogendoerfer	select R5000_CPU_SCACHE
57836a88530SRalf Baechle	select SYS_HAS_EARLY_PRINTK
579ed5ba2fbSYoichi Yuasa	select SYS_SUPPORTS_32BIT_KERNEL
5805e83d430SRalf Baechle	select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
5814a0312fcSThomas Bogendoerfer	select SYS_SUPPORTS_BIG_ENDIAN
5825e83d430SRalf Baechle	select SYS_SUPPORTS_HIGHMEM
5835e83d430SRalf Baechle	select SYS_SUPPORTS_LITTLE_ENDIAN
5841da177e4SLinus Torvalds	help
58514b36af4SThomas Bogendoerfer	  The SNI RM200/300/400 are MIPS-based machines manufactured by
58614b36af4SThomas Bogendoerfer	  Siemens Nixdorf Informationssysteme (SNI), parent company of Pyramid
5875e83d430SRalf Baechle	  Technology and now in turn merged with Fujitsu.  Say Y here to
5885e83d430SRalf Baechle	  support this machine type.
5891da177e4SLinus Torvalds
590edcaf1a6SAtsushi Nemotoconfig MACH_TX39XX
591edcaf1a6SAtsushi Nemoto	bool "Toshiba TX39 series based machines"
5925e83d430SRalf Baechle
593edcaf1a6SAtsushi Nemotoconfig MACH_TX49XX
594edcaf1a6SAtsushi Nemoto	bool "Toshiba TX49 series based machines"
59523fbee9dSRalf Baechle
59673b4390fSRalf Baechleconfig MIKROTIK_RB532
59773b4390fSRalf Baechle	bool "Mikrotik RB532 boards"
59873b4390fSRalf Baechle	select CEVT_R4K
59973b4390fSRalf Baechle	select CSRC_R4K
60073b4390fSRalf Baechle	select DMA_NONCOHERENT
60173b4390fSRalf Baechle	select HW_HAS_PCI
60273b4390fSRalf Baechle	select IRQ_CPU
60373b4390fSRalf Baechle	select SYS_HAS_CPU_MIPS32_R1
60473b4390fSRalf Baechle	select SYS_SUPPORTS_32BIT_KERNEL
60573b4390fSRalf Baechle	select SYS_SUPPORTS_LITTLE_ENDIAN
60673b4390fSRalf Baechle	select SWAP_IO_SPACE
60773b4390fSRalf Baechle	select BOOT_RAW
608d888e25bSFlorian Fainelli	select ARCH_REQUIRE_GPIOLIB
60973b4390fSRalf Baechle	help
61073b4390fSRalf Baechle	  Support the Mikrotik(tm) RouterBoard 532 series,
61173b4390fSRalf Baechle	  based on the IDT RC32434 SoC.
61273b4390fSRalf Baechle
613ade299d8SYoichi Yuasaconfig WR_PPMC
614ade299d8SYoichi Yuasa	bool "Wind River PPMC board"
61542f77542SRalf Baechle	select CEVT_R4K
616940f6b48SRalf Baechle	select CSRC_R4K
617ade299d8SYoichi Yuasa	select IRQ_CPU
618ade299d8SYoichi Yuasa	select BOOT_ELF32
619ade299d8SYoichi Yuasa	select DMA_NONCOHERENT
620ade299d8SYoichi Yuasa	select HW_HAS_PCI
621ade299d8SYoichi Yuasa	select PCI_GT64XXX_PCI0
622ade299d8SYoichi Yuasa	select SWAP_IO_SPACE
623ade299d8SYoichi Yuasa	select SYS_HAS_CPU_MIPS32_R1
624ade299d8SYoichi Yuasa	select SYS_HAS_CPU_MIPS32_R2
625ade299d8SYoichi Yuasa	select SYS_HAS_CPU_MIPS64_R1
626ade299d8SYoichi Yuasa	select SYS_HAS_CPU_NEVADA
627ade299d8SYoichi Yuasa	select SYS_HAS_CPU_RM7000
628ade299d8SYoichi Yuasa	select SYS_SUPPORTS_32BIT_KERNEL
629ade299d8SYoichi Yuasa	select SYS_SUPPORTS_64BIT_KERNEL
630ade299d8SYoichi Yuasa	select SYS_SUPPORTS_BIG_ENDIAN
631ade299d8SYoichi Yuasa	select SYS_SUPPORTS_LITTLE_ENDIAN
632ade299d8SYoichi Yuasa	help
633ade299d8SYoichi Yuasa	  This enables support for the Wind River MIPS32 4KC PPMC evaluation
634ade299d8SYoichi Yuasa	  board, which is based on GT64120 bridge chip.
635ade299d8SYoichi Yuasa
636a86c7f72SDavid Daneyconfig CAVIUM_OCTEON_SIMULATOR
637c9d89d97SYoichi Yuasa	bool "Cavium Networks Octeon Simulator"
638a86c7f72SDavid Daney	select CEVT_R4K
639a86c7f72SDavid Daney	select 64BIT_PHYS_ADDR
640a86c7f72SDavid Daney	select DMA_COHERENT
641a86c7f72SDavid Daney	select SYS_SUPPORTS_64BIT_KERNEL
642a86c7f72SDavid Daney	select SYS_SUPPORTS_BIG_ENDIAN
643a86c7f72SDavid Daney	select SYS_SUPPORTS_HIGHMEM
644773cb77dSRalf Baechle	select SYS_SUPPORTS_HOTPLUG_CPU
6455e683389SDavid Daney	select SYS_HAS_CPU_CAVIUM_OCTEON
646a86c7f72SDavid Daney	help
647a86c7f72SDavid Daney	  The Octeon simulator is software performance model of the Cavium
648a86c7f72SDavid Daney	  Octeon Processor. It supports simulating Octeon processors on x86
649a86c7f72SDavid Daney	  hardware.
650a86c7f72SDavid Daney
651a86c7f72SDavid Daneyconfig CAVIUM_OCTEON_REFERENCE_BOARD
652c9d89d97SYoichi Yuasa	bool "Cavium Networks Octeon reference board"
653a86c7f72SDavid Daney	select CEVT_R4K
654a86c7f72SDavid Daney	select 64BIT_PHYS_ADDR
655a86c7f72SDavid Daney	select DMA_COHERENT
656a86c7f72SDavid Daney	select SYS_SUPPORTS_64BIT_KERNEL
657a86c7f72SDavid Daney	select SYS_SUPPORTS_BIG_ENDIAN
658a86c7f72SDavid Daney	select SYS_SUPPORTS_HIGHMEM
659773cb77dSRalf Baechle	select SYS_SUPPORTS_HOTPLUG_CPU
660a86c7f72SDavid Daney	select SYS_HAS_EARLY_PRINTK
6615e683389SDavid Daney	select SYS_HAS_CPU_CAVIUM_OCTEON
662a86c7f72SDavid Daney	select SWAP_IO_SPACE
663e8635b48SDavid Daney	select HW_HAS_PCI
664e8635b48SDavid Daney	select ARCH_SUPPORTS_MSI
665a86c7f72SDavid Daney	help
666a86c7f72SDavid Daney	  This option supports all of the Octeon reference boards from Cavium
667a86c7f72SDavid Daney	  Networks. It builds a kernel that dynamically determines the Octeon
668a86c7f72SDavid Daney	  CPU type and supports all known board reference implementations.
669a86c7f72SDavid Daney	  Some of the supported boards are:
670a86c7f72SDavid Daney		EBT3000
671a86c7f72SDavid Daney		EBH3000
672a86c7f72SDavid Daney		EBH3100
673a86c7f72SDavid Daney		Thunder
674a86c7f72SDavid Daney		Kodama
675a86c7f72SDavid Daney		Hikari
676a86c7f72SDavid Daney	  Say Y here for most Octeon reference boards.
677a86c7f72SDavid Daney
6781da177e4SLinus Torvaldsendchoice
6791da177e4SLinus Torvalds
680e8c7c482SRalf Baechlesource "arch/mips/alchemy/Kconfig"
6819c746edbSYoichi Yuasasource "arch/mips/basler/excite/Kconfig"
682e7300d04SMaxime Bizonsource "arch/mips/bcm63xx/Kconfig"
6835e83d430SRalf Baechlesource "arch/mips/jazz/Kconfig"
6841f21d2bdSBrian Murphysource "arch/mips/lasat/Kconfig"
6855e83d430SRalf Baechlesource "arch/mips/pmc-sierra/Kconfig"
68629c48699SRalf Baechlesource "arch/mips/sgi-ip27/Kconfig"
68738b18f72SRalf Baechlesource "arch/mips/sibyte/Kconfig"
68822b1d707SAtsushi Nemotosource "arch/mips/txx9/Kconfig"
6895e83d430SRalf Baechlesource "arch/mips/vr41xx/Kconfig"
690a86c7f72SDavid Daneysource "arch/mips/cavium-octeon/Kconfig"
69185749d24SWu Zhangjinsource "arch/mips/loongson/Kconfig"
69238b18f72SRalf Baechle
6935e83d430SRalf Baechleendmenu
6945e83d430SRalf Baechle
6951da177e4SLinus Torvaldsconfig RWSEM_GENERIC_SPINLOCK
6961da177e4SLinus Torvalds	bool
6971da177e4SLinus Torvalds	default y
6981da177e4SLinus Torvalds
6991da177e4SLinus Torvaldsconfig RWSEM_XCHGADD_ALGORITHM
7001da177e4SLinus Torvalds	bool
7011da177e4SLinus Torvalds
702f0d1b0b3SDavid Howellsconfig ARCH_HAS_ILOG2_U32
703f0d1b0b3SDavid Howells	bool
704f0d1b0b3SDavid Howells	default n
705f0d1b0b3SDavid Howells
706f0d1b0b3SDavid Howellsconfig ARCH_HAS_ILOG2_U64
707f0d1b0b3SDavid Howells	bool
708f0d1b0b3SDavid Howells	default n
709f0d1b0b3SDavid Howells
71000a58253SRalf Baechleconfig ARCH_SUPPORTS_OPROFILE
71100a58253SRalf Baechle	bool
71200a58253SRalf Baechle	default y if !MIPS_MT_SMTC
71300a58253SRalf Baechle
7143c9ee7efSAkinobu Mitaconfig GENERIC_FIND_NEXT_BIT
7153c9ee7efSAkinobu Mita	bool
7163c9ee7efSAkinobu Mita	default y
7173c9ee7efSAkinobu Mita
7183c9ee7efSAkinobu Mitaconfig GENERIC_HWEIGHT
7193c9ee7efSAkinobu Mita	bool
7203c9ee7efSAkinobu Mita	default y
7213c9ee7efSAkinobu Mita
7221da177e4SLinus Torvaldsconfig GENERIC_CALIBRATE_DELAY
7231da177e4SLinus Torvalds	bool
7241da177e4SLinus Torvalds	default y
7251da177e4SLinus Torvalds
7267bcf7717SRalf Baechleconfig GENERIC_CLOCKEVENTS
7277bcf7717SRalf Baechle	bool
7287bcf7717SRalf Baechle	default y
7297bcf7717SRalf Baechle
7308db02010SRalf Baechleconfig GENERIC_TIME
7318db02010SRalf Baechle	bool
7328db02010SRalf Baechle	default y
7338db02010SRalf Baechle
734f5ff0a28SRalf Baechleconfig GENERIC_CMOS_UPDATE
735f5ff0a28SRalf Baechle	bool
736f5ff0a28SRalf Baechle	default y
737f5ff0a28SRalf Baechle
738ae1e9130SIngo Molnarconfig SCHED_OMIT_FRAME_POINTER
7391cc89038SAtsushi Nemoto	bool
7401cc89038SAtsushi Nemoto	default y
7411cc89038SAtsushi Nemoto
742e77c232cSFranck Bui-Huuconfig GENERIC_HARDIRQS_NO__DO_IRQ
743c87e0909SRalf Baechle	def_bool y
744e77c232cSFranck Bui-Huu
7451da177e4SLinus Torvalds#
7461da177e4SLinus Torvalds# Select some configuration options automatically based on user selections.
7471da177e4SLinus Torvalds#
7481da177e4SLinus Torvaldsconfig ARC
7491da177e4SLinus Torvalds	bool
7501da177e4SLinus Torvalds
75161ed242dSRalf Baechleconfig ARCH_MAY_HAVE_PC_FDC
75261ed242dSRalf Baechle	bool
75361ed242dSRalf Baechle
7549267a30dSMarc St-Jeanconfig BOOT_RAW
7559267a30dSMarc St-Jean	bool
7569267a30dSMarc St-Jean
757217dd11eSRalf Baechleconfig CEVT_BCM1480
758217dd11eSRalf Baechle	bool
759217dd11eSRalf Baechle
7606457d9fcSYoichi Yuasaconfig CEVT_DS1287
7616457d9fcSYoichi Yuasa	bool
7626457d9fcSYoichi Yuasa
7631097c6acSYoichi Yuasaconfig CEVT_GT641XX
7641097c6acSYoichi Yuasa	bool
7651097c6acSYoichi Yuasa
766779e7d41SManuel Laussconfig CEVT_R4K_LIB
767779e7d41SManuel Lauss	bool
768779e7d41SManuel Lauss
76942f77542SRalf Baechleconfig CEVT_R4K
770779e7d41SManuel Lauss	select CEVT_R4K_LIB
77142f77542SRalf Baechle	bool
77242f77542SRalf Baechle
773217dd11eSRalf Baechleconfig CEVT_SB1250
774217dd11eSRalf Baechle	bool
775217dd11eSRalf Baechle
776229f773eSAtsushi Nemotoconfig CEVT_TXX9
777229f773eSAtsushi Nemoto	bool
778229f773eSAtsushi Nemoto
779217dd11eSRalf Baechleconfig CSRC_BCM1480
780217dd11eSRalf Baechle	bool
781217dd11eSRalf Baechle
7824247417dSYoichi Yuasaconfig CSRC_IOASIC
7834247417dSYoichi Yuasa	bool
7844247417dSYoichi Yuasa
785779e7d41SManuel Laussconfig CSRC_R4K_LIB
786779e7d41SManuel Lauss	bool
787779e7d41SManuel Lauss
788940f6b48SRalf Baechleconfig CSRC_R4K
789779e7d41SManuel Lauss	select CSRC_R4K_LIB
790940f6b48SRalf Baechle	bool
791940f6b48SRalf Baechle
792217dd11eSRalf Baechleconfig CSRC_SB1250
793217dd11eSRalf Baechle	bool
794217dd11eSRalf Baechle
795a9aec7feSAtsushi Nemotoconfig GPIO_TXX9
796a9aec7feSAtsushi Nemoto	select GENERIC_GPIO
7977444a72eSMichael Buesch	select ARCH_REQUIRE_GPIOLIB
798a9aec7feSAtsushi Nemoto	bool
799a9aec7feSAtsushi Nemoto
800df78b5c8SAurelien Jarnoconfig CFE
801df78b5c8SAurelien Jarno	bool
802df78b5c8SAurelien Jarno
8031da177e4SLinus Torvaldsconfig DMA_COHERENT
8041da177e4SLinus Torvalds	bool
8051da177e4SLinus Torvalds
8061da177e4SLinus Torvaldsconfig DMA_NONCOHERENT
8071da177e4SLinus Torvalds	bool
8084ce588cdSRalf Baechle	select DMA_NEED_PCI_MAP_STATE
8094ce588cdSRalf Baechle
8104ce588cdSRalf Baechleconfig DMA_NEED_PCI_MAP_STATE
8114ce588cdSRalf Baechle	bool
8121da177e4SLinus Torvalds
8131da177e4SLinus Torvaldsconfig EARLY_PRINTK
81436a88530SRalf Baechle	bool "Early printk" if EMBEDDED && DEBUG_KERNEL
81536a88530SRalf Baechle	depends on SYS_HAS_EARLY_PRINTK
81636a88530SRalf Baechle	default y
81736a88530SRalf Baechle	help
81836a88530SRalf Baechle	  This option enables special console drivers which allow the kernel
81936a88530SRalf Baechle	  to print messages very early in the bootup process.
82036a88530SRalf Baechle
82136a88530SRalf Baechle	  This is useful for kernel debugging when your machine crashes very
822490dcc4dSRobert P. J. Day	  early before the console code is initialized. For normal operation,
823490dcc4dSRobert P. J. Day	  it is not recommended because it looks ugly on some machines and
824490dcc4dSRobert P. J. Day	  doesn't cooperate with an X server. You should normally say N here,
82536a88530SRalf Baechle	  unless you want to debug such a crash.
82636a88530SRalf Baechle
82736a88530SRalf Baechleconfig SYS_HAS_EARLY_PRINTK
8281da177e4SLinus Torvalds	bool
8291da177e4SLinus Torvalds
830dbb74540SRalf Baechleconfig HOTPLUG_CPU
8311b2bc75cSRalf Baechle	bool "Support for hot-pluggable CPUs"
8321b2bc75cSRalf Baechle	depends on SMP && HOTPLUG && SYS_SUPPORTS_HOTPLUG_CPU
8331b2bc75cSRalf Baechle	help
8341b2bc75cSRalf Baechle	  Say Y here to allow turning CPUs off and on. CPUs can be
8351b2bc75cSRalf Baechle	  controlled through /sys/devices/system/cpu.
8361b2bc75cSRalf Baechle	  (Note: power management support will enable this option
8371b2bc75cSRalf Baechle	    automatically on SMP systems. )
8381b2bc75cSRalf Baechle	  Say N if you want to disable CPU hotplug.
8391b2bc75cSRalf Baechle
8401b2bc75cSRalf Baechleconfig SYS_SUPPORTS_HOTPLUG_CPU
841dbb74540SRalf Baechle	bool
842dbb74540SRalf Baechle
8431da177e4SLinus Torvaldsconfig I8259
8441da177e4SLinus Torvalds	bool
8451da177e4SLinus Torvalds
8461da177e4SLinus Torvaldsconfig MIPS_BONITO64
8471da177e4SLinus Torvalds	bool
8481da177e4SLinus Torvalds
8491da177e4SLinus Torvaldsconfig MIPS_MSC
8501da177e4SLinus Torvalds	bool
8511da177e4SLinus Torvalds
8521f21d2bdSBrian Murphyconfig MIPS_NILE4
8531f21d2bdSBrian Murphy	bool
8541f21d2bdSBrian Murphy
8551da177e4SLinus Torvaldsconfig MIPS_DISABLE_OBSOLETE_IDE
8561da177e4SLinus Torvalds	bool
8571da177e4SLinus Torvalds
85839b8d525SRalf Baechleconfig SYNC_R4K
85939b8d525SRalf Baechle	bool
86039b8d525SRalf Baechle
861d388d685SMaciej W. Rozyckiconfig NO_IOPORT
862d388d685SMaciej W. Rozycki	def_bool n
863d388d685SMaciej W. Rozycki
8648313da30SRalf Baechleconfig GENERIC_ISA_DMA
8658313da30SRalf Baechle	bool
8668313da30SRalf Baechle	select ZONE_DMA if GENERIC_ISA_DMA_SUPPORT_BROKEN=n
8678313da30SRalf Baechle
868aa414dffSRalf Baechleconfig GENERIC_ISA_DMA_SUPPORT_BROKEN
869aa414dffSRalf Baechle	bool
8708313da30SRalf Baechle	select GENERIC_ISA_DMA
871aa414dffSRalf Baechle
87209663335SYoichi Yuasaconfig GENERIC_GPIO
87309663335SYoichi Yuasa	bool
87409663335SYoichi Yuasa
8755e83d430SRalf Baechle#
8763cb2fcccSMatt LaPlante# Endianess selection.  Sufficiently obscure so many users don't know what to
8775e83d430SRalf Baechle# answer,so we try hard to limit the available choices.  Also the use of a
8785e83d430SRalf Baechle# choice statement should be more obvious to the user.
8795e83d430SRalf Baechle#
8805e83d430SRalf Baechlechoice
8815e83d430SRalf Baechle	prompt "Endianess selection"
8821da177e4SLinus Torvalds	help
8831da177e4SLinus Torvalds	  Some MIPS machines can be configured for either little or big endian
8845e83d430SRalf Baechle	  byte order. These modes require different kernels and a different
8853cb2fcccSMatt LaPlante	  Linux distribution.  In general there is one preferred byteorder for a
8865e83d430SRalf Baechle	  particular system but some systems are just as commonly used in the
8873dde6ad8SDavid Sterba	  one or the other endianness.
8885e83d430SRalf Baechle
8895e83d430SRalf Baechleconfig CPU_BIG_ENDIAN
8905e83d430SRalf Baechle	bool "Big endian"
8915e83d430SRalf Baechle	depends on SYS_SUPPORTS_BIG_ENDIAN
8925e83d430SRalf Baechle
8935e83d430SRalf Baechleconfig CPU_LITTLE_ENDIAN
8945e83d430SRalf Baechle	bool "Little endian"
8955e83d430SRalf Baechle	depends on SYS_SUPPORTS_LITTLE_ENDIAN
8965e83d430SRalf Baechle	help
8975e83d430SRalf Baechle
8985e83d430SRalf Baechleendchoice
8995e83d430SRalf Baechle
9002116245eSRalf Baechleconfig SYS_SUPPORTS_APM_EMULATION
9012116245eSRalf Baechle	bool
9022116245eSRalf Baechle
9035e83d430SRalf Baechleconfig SYS_SUPPORTS_BIG_ENDIAN
9045e83d430SRalf Baechle	bool
9055e83d430SRalf Baechle
9065e83d430SRalf Baechleconfig SYS_SUPPORTS_LITTLE_ENDIAN
9075e83d430SRalf Baechle	bool
9081da177e4SLinus Torvalds
9099cffd154SDavid Daneyconfig SYS_SUPPORTS_HUGETLBFS
9109cffd154SDavid Daney	bool
9119cffd154SDavid Daney	depends on CPU_SUPPORTS_HUGEPAGES && 64BIT
9129cffd154SDavid Daney	default y
9139cffd154SDavid Daney
9141da177e4SLinus Torvaldsconfig IRQ_CPU
9151da177e4SLinus Torvalds	bool
9161da177e4SLinus Torvalds
9171da177e4SLinus Torvaldsconfig IRQ_CPU_RM7K
9181da177e4SLinus Torvalds	bool
9191da177e4SLinus Torvalds
9205e83d430SRalf Baechleconfig IRQ_CPU_RM9K
9215e83d430SRalf Baechle	bool
9225e83d430SRalf Baechle
9239267a30dSMarc St-Jeanconfig IRQ_MSP_SLP
9249267a30dSMarc St-Jean	bool
9259267a30dSMarc St-Jean
9269267a30dSMarc St-Jeanconfig IRQ_MSP_CIC
9279267a30dSMarc St-Jean	bool
9289267a30dSMarc St-Jean
9298420fd00SAtsushi Nemotoconfig IRQ_TXX9
9308420fd00SAtsushi Nemoto	bool
9318420fd00SAtsushi Nemoto
932d5ab1a69SYoichi Yuasaconfig IRQ_GT641XX
933d5ab1a69SYoichi Yuasa	bool
934d5ab1a69SYoichi Yuasa
93539b8d525SRalf Baechleconfig IRQ_GIC
93639b8d525SRalf Baechle	bool
93739b8d525SRalf Baechle
938a86c7f72SDavid Daneyconfig IRQ_CPU_OCTEON
939a86c7f72SDavid Daney	bool
940a86c7f72SDavid Daney
9411da177e4SLinus Torvaldsconfig MIPS_BOARDS_GEN
9421da177e4SLinus Torvalds	bool
9431da177e4SLinus Torvalds
944252161ecSYoichi Yuasaconfig PCI_GT64XXX_PCI0
9451da177e4SLinus Torvalds	bool
9461da177e4SLinus Torvalds
9479267a30dSMarc St-Jeanconfig NO_EXCEPT_FILL
9489267a30dSMarc St-Jean	bool
9499267a30dSMarc St-Jean
950663c3d90Sthomas@koeller.dyndns.orgconfig MIPS_RM9122
951663c3d90Sthomas@koeller.dyndns.org	bool
952663c3d90Sthomas@koeller.dyndns.org	select SERIAL_RM9000
953663c3d90Sthomas@koeller.dyndns.org
954a83860c2SRalf Baechleconfig SOC_EMMA2RH
955a83860c2SRalf Baechle	bool
956a83860c2SRalf Baechle	select CEVT_R4K
957a83860c2SRalf Baechle	select CSRC_R4K
958a83860c2SRalf Baechle	select DMA_NONCOHERENT
959a83860c2SRalf Baechle	select IRQ_CPU
960a83860c2SRalf Baechle	select SWAP_IO_SPACE
961a83860c2SRalf Baechle	select SYS_HAS_CPU_R5500
962a83860c2SRalf Baechle	select SYS_SUPPORTS_32BIT_KERNEL
963a83860c2SRalf Baechle	select SYS_SUPPORTS_64BIT_KERNEL
964a83860c2SRalf Baechle	select SYS_SUPPORTS_BIG_ENDIAN
965a83860c2SRalf Baechle
966edb6310aSDaniel Lairdconfig SOC_PNX833X
967edb6310aSDaniel Laird	bool
968edb6310aSDaniel Laird	select CEVT_R4K
969edb6310aSDaniel Laird	select CSRC_R4K
970edb6310aSDaniel Laird	select IRQ_CPU
971edb6310aSDaniel Laird	select DMA_NONCOHERENT
972edb6310aSDaniel Laird	select SYS_HAS_CPU_MIPS32_R2
973edb6310aSDaniel Laird	select SYS_SUPPORTS_32BIT_KERNEL
974edb6310aSDaniel Laird	select SYS_SUPPORTS_LITTLE_ENDIAN
975edb6310aSDaniel Laird	select SYS_SUPPORTS_BIG_ENDIAN
976edb6310aSDaniel Laird	select GENERIC_GPIO
977edb6310aSDaniel Laird	select CPU_MIPSR2_IRQ_VI
978edb6310aSDaniel Laird
979edb6310aSDaniel Lairdconfig SOC_PNX8335
980edb6310aSDaniel Laird	bool
981edb6310aSDaniel Laird	select SOC_PNX833X
982edb6310aSDaniel Laird
983bdf21b18SPete Popovconfig PNX8550
984bdf21b18SPete Popov	bool
985bdf21b18SPete Popov	select SOC_PNX8550
986bdf21b18SPete Popov
987bdf21b18SPete Popovconfig SOC_PNX8550
988bdf21b18SPete Popov	bool
989bdf21b18SPete Popov	select DMA_NONCOHERENT
990bdf21b18SPete Popov	select HW_HAS_PCI
991b8c2a77cSRalf Baechle	select SYS_HAS_CPU_MIPS32_R1
99236a88530SRalf Baechle	select SYS_HAS_EARLY_PRINTK
9937cf8053bSRalf Baechle	select SYS_SUPPORTS_32BIT_KERNEL
9944ead1681SFlorian Fainelli	select GENERIC_GPIO
995bdf21b18SPete Popov
9961da177e4SLinus Torvaldsconfig SWAP_IO_SPACE
9971da177e4SLinus Torvalds	bool
9981da177e4SLinus Torvalds
999663c3d90Sthomas@koeller.dyndns.orgconfig SERIAL_RM9000
1000663c3d90Sthomas@koeller.dyndns.org	bool
1001663c3d90Sthomas@koeller.dyndns.org
1002e2defae5SThomas Bogendoerferconfig SGI_HAS_INDYDOG
1003e2defae5SThomas Bogendoerfer	bool
1004e2defae5SThomas Bogendoerfer
10055b438c44SThomas Bogendoerferconfig SGI_HAS_HAL2
10065b438c44SThomas Bogendoerfer	bool
10075b438c44SThomas Bogendoerfer
1008e2defae5SThomas Bogendoerferconfig SGI_HAS_SEEQ
1009e2defae5SThomas Bogendoerfer	bool
1010e2defae5SThomas Bogendoerfer
1011e2defae5SThomas Bogendoerferconfig SGI_HAS_WD93
1012e2defae5SThomas Bogendoerfer	bool
1013e2defae5SThomas Bogendoerfer
1014e2defae5SThomas Bogendoerferconfig SGI_HAS_ZILOG
1015e2defae5SThomas Bogendoerfer	bool
1016e2defae5SThomas Bogendoerfer
1017e2defae5SThomas Bogendoerferconfig SGI_HAS_I8042
1018e2defae5SThomas Bogendoerfer	bool
1019e2defae5SThomas Bogendoerfer
1020e2defae5SThomas Bogendoerferconfig DEFAULT_SGI_PARTITION
1021e2defae5SThomas Bogendoerfer	bool
1022e2defae5SThomas Bogendoerfer
10235e83d430SRalf Baechleconfig ARC32
10245e83d430SRalf Baechle	bool
10255e83d430SRalf Baechle
1026231a35d3SThomas Bogendoerferconfig SNIPROM
1027231a35d3SThomas Bogendoerfer	bool
1028231a35d3SThomas Bogendoerfer
10291da177e4SLinus Torvaldsconfig BOOT_ELF32
10301da177e4SLinus Torvalds	bool
10311da177e4SLinus Torvalds
10321da177e4SLinus Torvaldsconfig MIPS_L1_CACHE_SHIFT
10331da177e4SLinus Torvalds	int
1034c7088755SRalf Baechle	default "4" if MACH_DECSTATION || MIKROTIK_RB532 || PMC_MSP4200_EVAL
10350db2b74eSRalf Baechle	default "6" if MIPS_CPU_SCACHE
1036a86c7f72SDavid Daney	default "7" if SGI_IP22 || SGI_IP27 || SGI_IP28 || SNI_RM || CPU_CAVIUM_OCTEON
10371da177e4SLinus Torvalds	default "5"
10381da177e4SLinus Torvalds
10391da177e4SLinus Torvaldsconfig HAVE_STD_PC_SERIAL_PORT
10401da177e4SLinus Torvalds	bool
10411da177e4SLinus Torvalds
10421da177e4SLinus Torvaldsconfig ARC_CONSOLE
10431da177e4SLinus Torvalds	bool "ARC console support"
1044e2defae5SThomas Bogendoerfer	depends on SGI_IP22 || SGI_IP28 || (SNI_RM && CPU_LITTLE_ENDIAN)
10451da177e4SLinus Torvalds
10461da177e4SLinus Torvaldsconfig ARC_MEMORY
10471da177e4SLinus Torvalds	bool
104814b36af4SThomas Bogendoerfer	depends on MACH_JAZZ || SNI_RM || SGI_IP32
10491da177e4SLinus Torvalds	default y
10501da177e4SLinus Torvalds
10511da177e4SLinus Torvaldsconfig ARC_PROMLIB
10521da177e4SLinus Torvalds	bool
1053e2defae5SThomas Bogendoerfer	depends on MACH_JAZZ || SNI_RM || SGI_IP22 || SGI_IP28 || SGI_IP32
10541da177e4SLinus Torvalds	default y
10551da177e4SLinus Torvalds
10561da177e4SLinus Torvaldsconfig ARC64
10571da177e4SLinus Torvalds	bool
10581da177e4SLinus Torvalds
10591da177e4SLinus Torvaldsconfig BOOT_ELF64
10601da177e4SLinus Torvalds	bool
10611da177e4SLinus Torvalds
10621da177e4SLinus Torvaldsmenu "CPU selection"
10631da177e4SLinus Torvalds
10641da177e4SLinus Torvaldschoice
10651da177e4SLinus Torvalds	prompt "CPU type"
10661da177e4SLinus Torvalds	default CPU_R4X00
10671da177e4SLinus Torvalds
10683702bba5SWu Zhangjinconfig CPU_LOONGSON2E
10693702bba5SWu Zhangjin	bool "Loongson 2E"
10703702bba5SWu Zhangjin	depends on SYS_HAS_CPU_LOONGSON2E
10713702bba5SWu Zhangjin	select CPU_LOONGSON2
10722a21c730SFuxin Zhang	help
10732a21c730SFuxin Zhang	  The Loongson 2E processor implements the MIPS III instruction set
10742a21c730SFuxin Zhang	  with many extensions.
10752a21c730SFuxin Zhang
1076*6f7a251aSWu Zhangjin	  It has an internal FPGA northbridge, which is compatiable to
1077*6f7a251aSWu Zhangjin	  bonito64.
1078*6f7a251aSWu Zhangjin
1079*6f7a251aSWu Zhangjinconfig CPU_LOONGSON2F
1080*6f7a251aSWu Zhangjin	bool "Loongson 2F"
1081*6f7a251aSWu Zhangjin	depends on SYS_HAS_CPU_LOONGSON2F
1082*6f7a251aSWu Zhangjin	select CPU_LOONGSON2
1083*6f7a251aSWu Zhangjin	help
1084*6f7a251aSWu Zhangjin	  The Loongson 2F processor implements the MIPS III instruction set
1085*6f7a251aSWu Zhangjin	  with many extensions.
1086*6f7a251aSWu Zhangjin
1087*6f7a251aSWu Zhangjin	  Loongson2F have built-in DDR2 and PCIX controller. The PCIX controller
1088*6f7a251aSWu Zhangjin	  have a similar programming interface with FPGA northbridge used in
1089*6f7a251aSWu Zhangjin	  Loongson2E.
1090*6f7a251aSWu Zhangjin
10916e760c8dSRalf Baechleconfig CPU_MIPS32_R1
10926e760c8dSRalf Baechle	bool "MIPS32 Release 1"
10937cf8053bSRalf Baechle	depends on SYS_HAS_CPU_MIPS32_R1
10946e760c8dSRalf Baechle	select CPU_HAS_PREFETCH
1095797798c1SRalf Baechle	select CPU_SUPPORTS_32BIT_KERNEL
1096ec28f306SRalf Baechle	select CPU_SUPPORTS_HIGHMEM
10976e760c8dSRalf Baechle	help
10985e83d430SRalf Baechle	  Choose this option to build a kernel for release 1 or later of the
10991e5f1caaSRalf Baechle	  MIPS32 architecture.  Most modern embedded systems with a 32-bit
11001e5f1caaSRalf Baechle	  MIPS processor are based on a MIPS32 processor.  If you know the
11011e5f1caaSRalf Baechle	  specific type of processor in your system, choose those that one
11021e5f1caaSRalf Baechle	  otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
11031e5f1caaSRalf Baechle	  Release 2 of the MIPS32 architecture is available since several
11041e5f1caaSRalf Baechle	  years so chances are you even have a MIPS32 Release 2 processor
11051e5f1caaSRalf Baechle	  in which case you should choose CPU_MIPS32_R2 instead for better
11061e5f1caaSRalf Baechle	  performance.
11071e5f1caaSRalf Baechle
11081e5f1caaSRalf Baechleconfig CPU_MIPS32_R2
11091e5f1caaSRalf Baechle	bool "MIPS32 Release 2"
11107cf8053bSRalf Baechle	depends on SYS_HAS_CPU_MIPS32_R2
11111e5f1caaSRalf Baechle	select CPU_HAS_PREFETCH
1112797798c1SRalf Baechle	select CPU_SUPPORTS_32BIT_KERNEL
1113ec28f306SRalf Baechle	select CPU_SUPPORTS_HIGHMEM
11141e5f1caaSRalf Baechle	help
11155e83d430SRalf Baechle	  Choose this option to build a kernel for release 2 or later of the
11166e760c8dSRalf Baechle	  MIPS32 architecture.  Most modern embedded systems with a 32-bit
11176e760c8dSRalf Baechle	  MIPS processor are based on a MIPS32 processor.  If you know the
11186e760c8dSRalf Baechle	  specific type of processor in your system, choose those that one
11196e760c8dSRalf Baechle	  otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
11201da177e4SLinus Torvalds
11216e760c8dSRalf Baechleconfig CPU_MIPS64_R1
11226e760c8dSRalf Baechle	bool "MIPS64 Release 1"
11237cf8053bSRalf Baechle	depends on SYS_HAS_CPU_MIPS64_R1
1124797798c1SRalf Baechle	select CPU_HAS_PREFETCH
1125ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1126ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
1127ec28f306SRalf Baechle	select CPU_SUPPORTS_HIGHMEM
11289cffd154SDavid Daney	select CPU_SUPPORTS_HUGEPAGES
11296e760c8dSRalf Baechle	help
11306e760c8dSRalf Baechle	  Choose this option to build a kernel for release 1 or later of the
11316e760c8dSRalf Baechle	  MIPS64 architecture.  Many modern embedded systems with a 64-bit
11326e760c8dSRalf Baechle	  MIPS processor are based on a MIPS64 processor.  If you know the
11336e760c8dSRalf Baechle	  specific type of processor in your system, choose those that one
11346e760c8dSRalf Baechle	  otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
11351e5f1caaSRalf Baechle	  Release 2 of the MIPS64 architecture is available since several
11361e5f1caaSRalf Baechle	  years so chances are you even have a MIPS64 Release 2 processor
11371e5f1caaSRalf Baechle	  in which case you should choose CPU_MIPS64_R2 instead for better
11381e5f1caaSRalf Baechle	  performance.
11391e5f1caaSRalf Baechle
11401e5f1caaSRalf Baechleconfig CPU_MIPS64_R2
11411e5f1caaSRalf Baechle	bool "MIPS64 Release 2"
11427cf8053bSRalf Baechle	depends on SYS_HAS_CPU_MIPS64_R2
1143797798c1SRalf Baechle	select CPU_HAS_PREFETCH
11441e5f1caaSRalf Baechle	select CPU_SUPPORTS_32BIT_KERNEL
11451e5f1caaSRalf Baechle	select CPU_SUPPORTS_64BIT_KERNEL
1146ec28f306SRalf Baechle	select CPU_SUPPORTS_HIGHMEM
11479cffd154SDavid Daney	select CPU_SUPPORTS_HUGEPAGES
11481e5f1caaSRalf Baechle	help
11491e5f1caaSRalf Baechle	  Choose this option to build a kernel for release 2 or later of the
11501e5f1caaSRalf Baechle	  MIPS64 architecture.  Many modern embedded systems with a 64-bit
11511e5f1caaSRalf Baechle	  MIPS processor are based on a MIPS64 processor.  If you know the
11521e5f1caaSRalf Baechle	  specific type of processor in your system, choose those that one
11531e5f1caaSRalf Baechle	  otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
11541da177e4SLinus Torvalds
11551da177e4SLinus Torvaldsconfig CPU_R3000
11561da177e4SLinus Torvalds	bool "R3000"
11577cf8053bSRalf Baechle	depends on SYS_HAS_CPU_R3000
1158f7062ddbSRalf Baechle	select CPU_HAS_WB
1159ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1160797798c1SRalf Baechle	select CPU_SUPPORTS_HIGHMEM
11611da177e4SLinus Torvalds	help
11621da177e4SLinus Torvalds	  Please make sure to pick the right CPU type. Linux/MIPS is not
11631da177e4SLinus Torvalds	  designed to be generic, i.e. Kernels compiled for R3000 CPUs will
11641da177e4SLinus Torvalds	  *not* work on R4000 machines and vice versa.  However, since most
11651da177e4SLinus Torvalds	  of the supported machines have an R4000 (or similar) CPU, R4x00
11661da177e4SLinus Torvalds	  might be a safe bet.  If the resulting kernel does not work,
11671da177e4SLinus Torvalds	  try to recompile with R3000.
11681da177e4SLinus Torvalds
11691da177e4SLinus Torvaldsconfig CPU_TX39XX
11701da177e4SLinus Torvalds	bool "R39XX"
11717cf8053bSRalf Baechle	depends on SYS_HAS_CPU_TX39XX
1172ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
11731da177e4SLinus Torvalds
11741da177e4SLinus Torvaldsconfig CPU_VR41XX
11751da177e4SLinus Torvalds	bool "R41xx"
11767cf8053bSRalf Baechle	depends on SYS_HAS_CPU_VR41XX
1177ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1178ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
11791da177e4SLinus Torvalds	help
11805e83d430SRalf Baechle	  The options selects support for the NEC VR4100 series of processors.
11811da177e4SLinus Torvalds	  Only choose this option if you have one of these processors as a
11821da177e4SLinus Torvalds	  kernel built with this option will not run on any other type of
11831da177e4SLinus Torvalds	  processor or vice versa.
11841da177e4SLinus Torvalds
11851da177e4SLinus Torvaldsconfig CPU_R4300
11861da177e4SLinus Torvalds	bool "R4300"
11877cf8053bSRalf Baechle	depends on SYS_HAS_CPU_R4300
1188ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1189ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
11901da177e4SLinus Torvalds	help
11911da177e4SLinus Torvalds	  MIPS Technologies R4300-series processors.
11921da177e4SLinus Torvalds
11931da177e4SLinus Torvaldsconfig CPU_R4X00
11941da177e4SLinus Torvalds	bool "R4x00"
11957cf8053bSRalf Baechle	depends on SYS_HAS_CPU_R4X00
1196ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1197ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
11981da177e4SLinus Torvalds	help
11991da177e4SLinus Torvalds	  MIPS Technologies R4000-series processors other than 4300, including
12001da177e4SLinus Torvalds	  the R4000, R4400, R4600, and 4700.
12011da177e4SLinus Torvalds
12021da177e4SLinus Torvaldsconfig CPU_TX49XX
12031da177e4SLinus Torvalds	bool "R49XX"
12047cf8053bSRalf Baechle	depends on SYS_HAS_CPU_TX49XX
1205de862b48SAtsushi Nemoto	select CPU_HAS_PREFETCH
1206ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1207ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
12081da177e4SLinus Torvalds
12091da177e4SLinus Torvaldsconfig CPU_R5000
12101da177e4SLinus Torvalds	bool "R5000"
12117cf8053bSRalf Baechle	depends on SYS_HAS_CPU_R5000
1212ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1213ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
12141da177e4SLinus Torvalds	help
12151da177e4SLinus Torvalds	  MIPS Technologies R5000-series processors other than the Nevada.
12161da177e4SLinus Torvalds
12171da177e4SLinus Torvaldsconfig CPU_R5432
12181da177e4SLinus Torvalds	bool "R5432"
12197cf8053bSRalf Baechle	depends on SYS_HAS_CPU_R5432
12205e83d430SRalf Baechle	select CPU_SUPPORTS_32BIT_KERNEL
12215e83d430SRalf Baechle	select CPU_SUPPORTS_64BIT_KERNEL
12221da177e4SLinus Torvalds
1223542c1020SShinya Kuribayashiconfig CPU_R5500
1224542c1020SShinya Kuribayashi	bool "R5500"
1225542c1020SShinya Kuribayashi	depends on SYS_HAS_CPU_R5500
1226542c1020SShinya Kuribayashi	select CPU_SUPPORTS_32BIT_KERNEL
1227542c1020SShinya Kuribayashi	select CPU_SUPPORTS_64BIT_KERNEL
12289cffd154SDavid Daney	select CPU_SUPPORTS_HUGEPAGES
1229542c1020SShinya Kuribayashi	help
1230542c1020SShinya Kuribayashi	  NEC VR5500 and VR5500A series processors implement 64-bit MIPS IV
1231542c1020SShinya Kuribayashi	  instruction set.
1232542c1020SShinya Kuribayashi
12331da177e4SLinus Torvaldsconfig CPU_R6000
12341da177e4SLinus Torvalds	bool "R6000"
1235ed5ba2fbSYoichi Yuasa	depends on EXPERIMENTAL
12367cf8053bSRalf Baechle	depends on SYS_HAS_CPU_R6000
1237ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
12381da177e4SLinus Torvalds	help
12391da177e4SLinus Torvalds	  MIPS Technologies R6000 and R6000A series processors.  Note these
1240c09b47d8SChris Dearman	  processors are extremely rare and the support for them is incomplete.
12411da177e4SLinus Torvalds
12421da177e4SLinus Torvaldsconfig CPU_NEVADA
12431da177e4SLinus Torvalds	bool "RM52xx"
12447cf8053bSRalf Baechle	depends on SYS_HAS_CPU_NEVADA
1245ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1246ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
12471da177e4SLinus Torvalds	help
12481da177e4SLinus Torvalds	  QED / PMC-Sierra RM52xx-series ("Nevada") processors.
12491da177e4SLinus Torvalds
12501da177e4SLinus Torvaldsconfig CPU_R8000
12511da177e4SLinus Torvalds	bool "R8000"
1252ed5ba2fbSYoichi Yuasa	depends on EXPERIMENTAL
12537cf8053bSRalf Baechle	depends on SYS_HAS_CPU_R8000
12545e83d430SRalf Baechle	select CPU_HAS_PREFETCH
1255ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
12561da177e4SLinus Torvalds	help
12571da177e4SLinus Torvalds	  MIPS Technologies R8000 processors.  Note these processors are
12581da177e4SLinus Torvalds	  uncommon and the support for them is incomplete.
12591da177e4SLinus Torvalds
12601da177e4SLinus Torvaldsconfig CPU_R10000
12611da177e4SLinus Torvalds	bool "R10000"
12627cf8053bSRalf Baechle	depends on SYS_HAS_CPU_R10000
12635e83d430SRalf Baechle	select CPU_HAS_PREFETCH
1264ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1265ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
1266797798c1SRalf Baechle	select CPU_SUPPORTS_HIGHMEM
12671da177e4SLinus Torvalds	help
12681da177e4SLinus Torvalds	  MIPS Technologies R10000-series processors.
12691da177e4SLinus Torvalds
12701da177e4SLinus Torvaldsconfig CPU_RM7000
12711da177e4SLinus Torvalds	bool "RM7000"
12727cf8053bSRalf Baechle	depends on SYS_HAS_CPU_RM7000
12735e83d430SRalf Baechle	select CPU_HAS_PREFETCH
1274ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1275ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
1276797798c1SRalf Baechle	select CPU_SUPPORTS_HIGHMEM
12771da177e4SLinus Torvalds
12781da177e4SLinus Torvaldsconfig CPU_RM9000
12791da177e4SLinus Torvalds	bool "RM9000"
12807cf8053bSRalf Baechle	depends on SYS_HAS_CPU_RM9000
12815e83d430SRalf Baechle	select CPU_HAS_PREFETCH
1282ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1283ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
1284797798c1SRalf Baechle	select CPU_SUPPORTS_HIGHMEM
12850004a9dfSRalf Baechle	select WEAK_ORDERING
12861da177e4SLinus Torvalds
12871da177e4SLinus Torvaldsconfig CPU_SB1
12881da177e4SLinus Torvalds	bool "SB1"
12897cf8053bSRalf Baechle	depends on SYS_HAS_CPU_SB1
1290ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1291ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
1292797798c1SRalf Baechle	select CPU_SUPPORTS_HIGHMEM
12930004a9dfSRalf Baechle	select WEAK_ORDERING
12941da177e4SLinus Torvalds
1295a86c7f72SDavid Daneyconfig CPU_CAVIUM_OCTEON
1296a86c7f72SDavid Daney	bool "Cavium Octeon processor"
12975e683389SDavid Daney	depends on SYS_HAS_CPU_CAVIUM_OCTEON
1298a86c7f72SDavid Daney	select IRQ_CPU
1299a86c7f72SDavid Daney	select IRQ_CPU_OCTEON
1300a86c7f72SDavid Daney	select CPU_HAS_PREFETCH
1301a86c7f72SDavid Daney	select CPU_SUPPORTS_64BIT_KERNEL
1302a86c7f72SDavid Daney	select SYS_SUPPORTS_SMP
1303a86c7f72SDavid Daney	select NR_CPUS_DEFAULT_16
1304a86c7f72SDavid Daney	select WEAK_ORDERING
1305a86c7f72SDavid Daney	select WEAK_REORDERING_BEYOND_LLSC
1306a86c7f72SDavid Daney	select CPU_SUPPORTS_HIGHMEM
13079cffd154SDavid Daney	select CPU_SUPPORTS_HUGEPAGES
1308a86c7f72SDavid Daney	help
1309a86c7f72SDavid Daney	  The Cavium Octeon processor is a highly integrated chip containing
1310a86c7f72SDavid Daney	  many ethernet hardware widgets for networking tasks. The processor
1311a86c7f72SDavid Daney	  can have up to 16 Mips64v2 cores and 8 integrated gigabit ethernets.
1312a86c7f72SDavid Daney	  Full details can be found at http://www.caviumnetworks.com.
1313a86c7f72SDavid Daney
13141da177e4SLinus Torvaldsendchoice
13151da177e4SLinus Torvalds
13161b93b3c3SWu Zhangjinconfig SYS_SUPPORTS_ZBOOT
13171b93b3c3SWu Zhangjin	bool
13181b93b3c3SWu Zhangjin	select HAVE_KERNEL_GZIP
13191b93b3c3SWu Zhangjin	select HAVE_KERNEL_BZIP2
13201b93b3c3SWu Zhangjin	select HAVE_KERNEL_LZMA
13211b93b3c3SWu Zhangjin
13221b93b3c3SWu Zhangjinconfig SYS_SUPPORTS_ZBOOT_UART16550
13231b93b3c3SWu Zhangjin	bool
13241b93b3c3SWu Zhangjin	select SYS_SUPPORTS_ZBOOT
13251b93b3c3SWu Zhangjin
13263702bba5SWu Zhangjinconfig CPU_LOONGSON2
13273702bba5SWu Zhangjin	bool
13283702bba5SWu Zhangjin	select CPU_SUPPORTS_32BIT_KERNEL
13293702bba5SWu Zhangjin	select CPU_SUPPORTS_64BIT_KERNEL
13303702bba5SWu Zhangjin	select CPU_SUPPORTS_HIGHMEM
13313702bba5SWu Zhangjin
13323702bba5SWu Zhangjinconfig SYS_HAS_CPU_LOONGSON2E
13332a21c730SFuxin Zhang	bool
13342a21c730SFuxin Zhang
1335*6f7a251aSWu Zhangjinconfig SYS_HAS_CPU_LOONGSON2F
1336*6f7a251aSWu Zhangjin	bool
1337*6f7a251aSWu Zhangjin
13387cf8053bSRalf Baechleconfig SYS_HAS_CPU_MIPS32_R1
13397cf8053bSRalf Baechle	bool
13407cf8053bSRalf Baechle
13417cf8053bSRalf Baechleconfig SYS_HAS_CPU_MIPS32_R2
13427cf8053bSRalf Baechle	bool
13437cf8053bSRalf Baechle
13447cf8053bSRalf Baechleconfig SYS_HAS_CPU_MIPS64_R1
13457cf8053bSRalf Baechle	bool
13467cf8053bSRalf Baechle
13477cf8053bSRalf Baechleconfig SYS_HAS_CPU_MIPS64_R2
13487cf8053bSRalf Baechle	bool
13497cf8053bSRalf Baechle
13507cf8053bSRalf Baechleconfig SYS_HAS_CPU_R3000
13517cf8053bSRalf Baechle	bool
13527cf8053bSRalf Baechle
13537cf8053bSRalf Baechleconfig SYS_HAS_CPU_TX39XX
13547cf8053bSRalf Baechle	bool
13557cf8053bSRalf Baechle
13567cf8053bSRalf Baechleconfig SYS_HAS_CPU_VR41XX
13577cf8053bSRalf Baechle	bool
13587cf8053bSRalf Baechle
13597cf8053bSRalf Baechleconfig SYS_HAS_CPU_R4300
13607cf8053bSRalf Baechle	bool
13617cf8053bSRalf Baechle
13627cf8053bSRalf Baechleconfig SYS_HAS_CPU_R4X00
13637cf8053bSRalf Baechle	bool
13647cf8053bSRalf Baechle
13657cf8053bSRalf Baechleconfig SYS_HAS_CPU_TX49XX
13667cf8053bSRalf Baechle	bool
13677cf8053bSRalf Baechle
13687cf8053bSRalf Baechleconfig SYS_HAS_CPU_R5000
13697cf8053bSRalf Baechle	bool
13707cf8053bSRalf Baechle
13717cf8053bSRalf Baechleconfig SYS_HAS_CPU_R5432
13727cf8053bSRalf Baechle	bool
13737cf8053bSRalf Baechle
1374542c1020SShinya Kuribayashiconfig SYS_HAS_CPU_R5500
1375542c1020SShinya Kuribayashi	bool
1376542c1020SShinya Kuribayashi
13777cf8053bSRalf Baechleconfig SYS_HAS_CPU_R6000
13787cf8053bSRalf Baechle	bool
13797cf8053bSRalf Baechle
13807cf8053bSRalf Baechleconfig SYS_HAS_CPU_NEVADA
13817cf8053bSRalf Baechle	bool
13827cf8053bSRalf Baechle
13837cf8053bSRalf Baechleconfig SYS_HAS_CPU_R8000
13847cf8053bSRalf Baechle	bool
13857cf8053bSRalf Baechle
13867cf8053bSRalf Baechleconfig SYS_HAS_CPU_R10000
13877cf8053bSRalf Baechle	bool
13887cf8053bSRalf Baechle
13897cf8053bSRalf Baechleconfig SYS_HAS_CPU_RM7000
13907cf8053bSRalf Baechle	bool
13917cf8053bSRalf Baechle
13927cf8053bSRalf Baechleconfig SYS_HAS_CPU_RM9000
13937cf8053bSRalf Baechle	bool
13947cf8053bSRalf Baechle
13957cf8053bSRalf Baechleconfig SYS_HAS_CPU_SB1
13967cf8053bSRalf Baechle	bool
13977cf8053bSRalf Baechle
13985e683389SDavid Daneyconfig SYS_HAS_CPU_CAVIUM_OCTEON
13995e683389SDavid Daney	bool
14005e683389SDavid Daney
140117099b11SRalf Baechle#
140217099b11SRalf Baechle# CPU may reorder R->R, R->W, W->R, W->W
140317099b11SRalf Baechle# Reordering beyond LL and SC is handled in WEAK_REORDERING_BEYOND_LLSC
140417099b11SRalf Baechle#
14050004a9dfSRalf Baechleconfig WEAK_ORDERING
14060004a9dfSRalf Baechle	bool
140717099b11SRalf Baechle
140817099b11SRalf Baechle#
140917099b11SRalf Baechle# CPU may reorder reads and writes beyond LL/SC
141017099b11SRalf Baechle# CPU may reorder R->LL, R->LL, W->LL, W->LL, R->SC, R->SC, W->SC, W->SC
141117099b11SRalf Baechle#
141217099b11SRalf Baechleconfig WEAK_REORDERING_BEYOND_LLSC
141317099b11SRalf Baechle	bool
14145e83d430SRalf Baechleendmenu
14155e83d430SRalf Baechle
14165e83d430SRalf Baechle#
14175e83d430SRalf Baechle# These two indicate any level of the MIPS32 and MIPS64 architecture
14185e83d430SRalf Baechle#
14195e83d430SRalf Baechleconfig CPU_MIPS32
14205e83d430SRalf Baechle	bool
14215e83d430SRalf Baechle	default y if CPU_MIPS32_R1 || CPU_MIPS32_R2
14225e83d430SRalf Baechle
14235e83d430SRalf Baechleconfig CPU_MIPS64
14245e83d430SRalf Baechle	bool
14255e83d430SRalf Baechle	default y if CPU_MIPS64_R1 || CPU_MIPS64_R2
14265e83d430SRalf Baechle
14275e83d430SRalf Baechle#
1428c09b47d8SChris Dearman# These two indicate the revision of the architecture, either Release 1 or Release 2
14295e83d430SRalf Baechle#
14305e83d430SRalf Baechleconfig CPU_MIPSR1
14315e83d430SRalf Baechle	bool
14325e83d430SRalf Baechle	default y if CPU_MIPS32_R1 || CPU_MIPS64_R1
14335e83d430SRalf Baechle
14345e83d430SRalf Baechleconfig CPU_MIPSR2
14355e83d430SRalf Baechle	bool
1436a86c7f72SDavid Daney	default y if CPU_MIPS32_R2 || CPU_MIPS64_R2 || CPU_CAVIUM_OCTEON
14375e83d430SRalf Baechle
14385e83d430SRalf Baechleconfig SYS_SUPPORTS_32BIT_KERNEL
14395e83d430SRalf Baechle	bool
14405e83d430SRalf Baechleconfig SYS_SUPPORTS_64BIT_KERNEL
14415e83d430SRalf Baechle	bool
14425e83d430SRalf Baechleconfig CPU_SUPPORTS_32BIT_KERNEL
14435e83d430SRalf Baechle	bool
14445e83d430SRalf Baechleconfig CPU_SUPPORTS_64BIT_KERNEL
14455e83d430SRalf Baechle	bool
14469cffd154SDavid Daneyconfig CPU_SUPPORTS_HUGEPAGES
14479cffd154SDavid Daney	bool
144882622284SDavid Daneyconfig MIPS_PGD_C0_CONTEXT
144982622284SDavid Daney	bool
145082622284SDavid Daney	default y if 64BIT && CPU_MIPSR2
14515e83d430SRalf Baechle
14528192c9eaSDavid Daney#
14538192c9eaSDavid Daney# Set to y for ptrace access to watch registers.
14548192c9eaSDavid Daney#
14558192c9eaSDavid Daneyconfig HARDWARE_WATCHPOINTS
14568192c9eaSDavid Daney       bool
1457f839490aSDavid Daney       default y if CPU_MIPSR1 || CPU_MIPSR2
14588192c9eaSDavid Daney
14595e83d430SRalf Baechlemenu "Kernel type"
14605e83d430SRalf Baechle
14615e83d430SRalf Baechlechoice
14625e83d430SRalf Baechle
14635e83d430SRalf Baechle	prompt "Kernel code model"
14645e83d430SRalf Baechle	help
14655e83d430SRalf Baechle	  You should only select this option if you have a workload that
14665e83d430SRalf Baechle	  actually benefits from 64-bit processing or if your machine has
14675e83d430SRalf Baechle	  large memory.  You will only be presented a single option in this
14685e83d430SRalf Baechle	  menu if your system does not support both 32-bit and 64-bit kernels.
14695e83d430SRalf Baechle
14705e83d430SRalf Baechleconfig 32BIT
14715e83d430SRalf Baechle	bool "32-bit kernel"
14725e83d430SRalf Baechle	depends on CPU_SUPPORTS_32BIT_KERNEL && SYS_SUPPORTS_32BIT_KERNEL
14735e83d430SRalf Baechle	select TRAD_SIGNALS
14745e83d430SRalf Baechle	help
14755e83d430SRalf Baechle	  Select this option if you want to build a 32-bit kernel.
14765e83d430SRalf Baechleconfig 64BIT
14775e83d430SRalf Baechle	bool "64-bit kernel"
14785e83d430SRalf Baechle	depends on CPU_SUPPORTS_64BIT_KERNEL && SYS_SUPPORTS_64BIT_KERNEL
1479dbda6ac0SRalf Baechle	select HAVE_SYSCALL_WRAPPERS
14805e83d430SRalf Baechle	help
14815e83d430SRalf Baechle	  Select this option if you want to build a 64-bit kernel.
14825e83d430SRalf Baechle
14835e83d430SRalf Baechleendchoice
14845e83d430SRalf Baechle
14851da177e4SLinus Torvaldschoice
14861da177e4SLinus Torvalds	prompt "Kernel page size"
14871da177e4SLinus Torvalds	default PAGE_SIZE_4KB
14881da177e4SLinus Torvalds
14891da177e4SLinus Torvaldsconfig PAGE_SIZE_4KB
14901da177e4SLinus Torvalds	bool "4kB"
1491315fe625SWu Zhangjin	depends on !CPU_LOONGSON2
14921da177e4SLinus Torvalds	help
14931da177e4SLinus Torvalds	 This option select the standard 4kB Linux page size.  On some
14941da177e4SLinus Torvalds	 R3000-family processors this is the only available page size.  Using
14951da177e4SLinus Torvalds	 4kB page size will minimize memory consumption and is therefore
14961da177e4SLinus Torvalds	 recommended for low memory systems.
14971da177e4SLinus Torvalds
14981da177e4SLinus Torvaldsconfig PAGE_SIZE_8KB
14991da177e4SLinus Torvalds	bool "8kB"
1500c52399beSRalf Baechle	depends on (EXPERIMENTAL && CPU_R8000) || CPU_CAVIUM_OCTEON
15011da177e4SLinus Torvalds	help
15021da177e4SLinus Torvalds	  Using 8kB page size will result in higher performance kernel at
15031da177e4SLinus Torvalds	  the price of higher memory consumption.  This option is available
1504c52399beSRalf Baechle	  only on R8000 and cnMIPS processors.  Note that you will need a
1505c52399beSRalf Baechle	  suitable Linux distribution to support this.
15061da177e4SLinus Torvalds
15071da177e4SLinus Torvaldsconfig PAGE_SIZE_16KB
15081da177e4SLinus Torvalds	bool "16kB"
1509714bfad6SRalf Baechle	depends on !CPU_R3000 && !CPU_TX39XX
15101da177e4SLinus Torvalds	help
15111da177e4SLinus Torvalds	  Using 16kB page size will result in higher performance kernel at
15121da177e4SLinus Torvalds	  the price of higher memory consumption.  This option is available on
1513714bfad6SRalf Baechle	  all non-R3000 family processors.  Note that you will need a suitable
1514714bfad6SRalf Baechle	  Linux distribution to support this.
15151da177e4SLinus Torvalds
1516c52399beSRalf Baechleconfig PAGE_SIZE_32KB
1517c52399beSRalf Baechle	bool "32kB"
1518c52399beSRalf Baechle	depends on CPU_CAVIUM_OCTEON
1519c52399beSRalf Baechle	help
1520c52399beSRalf Baechle	  Using 32kB page size will result in higher performance kernel at
1521c52399beSRalf Baechle	  the price of higher memory consumption.  This option is available
1522c52399beSRalf Baechle	  only on cnMIPS cores.  Note that you will need a suitable Linux
1523c52399beSRalf Baechle	  distribution to support this.
1524c52399beSRalf Baechle
15251da177e4SLinus Torvaldsconfig PAGE_SIZE_64KB
15261da177e4SLinus Torvalds	bool "64kB"
15271da177e4SLinus Torvalds	depends on EXPERIMENTAL && !CPU_R3000 && !CPU_TX39XX
15281da177e4SLinus Torvalds	help
15291da177e4SLinus Torvalds	  Using 64kB page size will result in higher performance kernel at
15301da177e4SLinus Torvalds	  the price of higher memory consumption.  This option is available on
15311da177e4SLinus Torvalds	  all non-R3000 family processor.  Not that at the time of this
1532714bfad6SRalf Baechle	  writing this option is still high experimental.
15331da177e4SLinus Torvalds
15341da177e4SLinus Torvaldsendchoice
15351da177e4SLinus Torvalds
15361da177e4SLinus Torvaldsconfig BOARD_SCACHE
15371da177e4SLinus Torvalds	bool
15381da177e4SLinus Torvalds
15391da177e4SLinus Torvaldsconfig IP22_CPU_SCACHE
15401da177e4SLinus Torvalds	bool
15411da177e4SLinus Torvalds	select BOARD_SCACHE
15421da177e4SLinus Torvalds
15439318c51aSChris Dearman#
15449318c51aSChris Dearman# Support for a MIPS32 / MIPS64 style S-caches
15459318c51aSChris Dearman#
15469318c51aSChris Dearmanconfig MIPS_CPU_SCACHE
15479318c51aSChris Dearman	bool
15489318c51aSChris Dearman	select BOARD_SCACHE
15499318c51aSChris Dearman
15501da177e4SLinus Torvaldsconfig R5000_CPU_SCACHE
15511da177e4SLinus Torvalds	bool
15521da177e4SLinus Torvalds	select BOARD_SCACHE
15531da177e4SLinus Torvalds
15541da177e4SLinus Torvaldsconfig RM7000_CPU_SCACHE
15551da177e4SLinus Torvalds	bool
15561da177e4SLinus Torvalds	select BOARD_SCACHE
15571da177e4SLinus Torvalds
15581da177e4SLinus Torvaldsconfig SIBYTE_DMA_PAGEOPS
15591da177e4SLinus Torvalds	bool "Use DMA to clear/copy pages"
15601da177e4SLinus Torvalds	depends on CPU_SB1
15611da177e4SLinus Torvalds	help
15621da177e4SLinus Torvalds	  Instead of using the CPU to zero and copy pages, use a Data Mover
15631da177e4SLinus Torvalds	  channel.  These DMA channels are otherwise unused by the standard
15641da177e4SLinus Torvalds	  SiByte Linux port.  Seems to give a small performance benefit.
15651da177e4SLinus Torvalds
15661da177e4SLinus Torvaldsconfig CPU_HAS_PREFETCH
1567c8094b53SRalf Baechle	bool
15681da177e4SLinus Torvalds
1569340ee4b9SRalf Baechlechoice
1570340ee4b9SRalf Baechle	prompt "MIPS MT options"
1571f41ae0b2SRalf Baechle
1572f41ae0b2SRalf Baechleconfig MIPS_MT_DISABLED
1573f41ae0b2SRalf Baechle	bool "Disable multithreading support."
1574f41ae0b2SRalf Baechle	help
1575f41ae0b2SRalf Baechle	  Use this option if your workload can't take advantage of
1576f41ae0b2SRalf Baechle	  MIPS hardware multithreading support.  On systems that don't have
1577f41ae0b2SRalf Baechle	  the option of an MT-enabled processor this option will be the only
1578f41ae0b2SRalf Baechle	  option in this menu.
1579340ee4b9SRalf Baechle
158059d6ab86SRalf Baechleconfig MIPS_MT_SMP
158159d6ab86SRalf Baechle	bool "Use 1 TC on each available VPE for SMP"
158259d6ab86SRalf Baechle	depends on SYS_SUPPORTS_MULTITHREADING
158359d6ab86SRalf Baechle	select CPU_MIPSR2_IRQ_VI
1584d725cf38SChris Dearman	select CPU_MIPSR2_IRQ_EI
158559d6ab86SRalf Baechle	select MIPS_MT
1586f510aa3bSRalf Baechle	select NR_CPUS_DEFAULT_2
158759d6ab86SRalf Baechle	select SMP
15880ab7aefcSRalf Baechle	select SYS_SUPPORTS_SCHED_SMT if SMP
158959d6ab86SRalf Baechle	select SYS_SUPPORTS_SMP
159087353d8aSRalf Baechle	select SMP_UP
159159d6ab86SRalf Baechle	help
159259d6ab86SRalf Baechle	  This is a kernel model which is also known a VSMP or lately
159359d6ab86SRalf Baechle	  has been marketesed into SMVP.
159459d6ab86SRalf Baechle
159541c594abSRalf Baechleconfig MIPS_MT_SMTC
159641c594abSRalf Baechle	bool "SMTC: Use all TCs on all VPEs for SMP"
1597f41ae0b2SRalf Baechle	depends on CPU_MIPS32_R2
1598f41ae0b2SRalf Baechle	#depends on CPU_MIPS64_R2		# once there is hardware ...
1599f41ae0b2SRalf Baechle	depends on SYS_SUPPORTS_MULTITHREADING
1600f7062ddbSRalf Baechle	select CPU_MIPSR2_IRQ_VI
1601d725cf38SChris Dearman	select CPU_MIPSR2_IRQ_EI
1602f41ae0b2SRalf Baechle	select MIPS_MT
1603130e2fb7SRalf Baechle	select NR_CPUS_DEFAULT_8
160441c594abSRalf Baechle	select SMP
160573b76c78SRalf Baechle	select SYS_SUPPORTS_SMP
160687353d8aSRalf Baechle	select SMP_UP
1607f41ae0b2SRalf Baechle	help
1608f41ae0b2SRalf Baechle	  This is a kernel model which is known a SMTC or lately has been
1609f41ae0b2SRalf Baechle	  marketesed into SMVP.
161041c594abSRalf Baechle
1611340ee4b9SRalf Baechleendchoice
1612340ee4b9SRalf Baechle
1613f41ae0b2SRalf Baechleconfig MIPS_MT
1614f41ae0b2SRalf Baechle	bool
1615f41ae0b2SRalf Baechle
16160ab7aefcSRalf Baechleconfig SCHED_SMT
16170ab7aefcSRalf Baechle	bool "SMT (multithreading) scheduler support"
16180ab7aefcSRalf Baechle	depends on SYS_SUPPORTS_SCHED_SMT
16190ab7aefcSRalf Baechle	default n
16200ab7aefcSRalf Baechle	help
16210ab7aefcSRalf Baechle	  SMT scheduler support improves the CPU scheduler's decision making
16220ab7aefcSRalf Baechle	  when dealing with MIPS MT enabled cores at a cost of slightly
16230ab7aefcSRalf Baechle	  increased overhead in some places. If unsure say N here.
16240ab7aefcSRalf Baechle
16250ab7aefcSRalf Baechleconfig SYS_SUPPORTS_SCHED_SMT
16260ab7aefcSRalf Baechle	bool
16270ab7aefcSRalf Baechle
16280ab7aefcSRalf Baechle
1629f41ae0b2SRalf Baechleconfig SYS_SUPPORTS_MULTITHREADING
1630f41ae0b2SRalf Baechle	bool
1631f41ae0b2SRalf Baechle
1632f088fc84SRalf Baechleconfig MIPS_MT_FPAFF
1633f088fc84SRalf Baechle	bool "Dynamic FPU affinity for FP-intensive threads"
1634f088fc84SRalf Baechle	default y
163507cc0c9eSRalf Baechle	depends on MIPS_MT_SMP || MIPS_MT_SMTC
163607cc0c9eSRalf Baechle
163707cc0c9eSRalf Baechleconfig MIPS_VPE_LOADER
163807cc0c9eSRalf Baechle	bool "VPE loader support."
163907cc0c9eSRalf Baechle	depends on SYS_SUPPORTS_MULTITHREADING
164007cc0c9eSRalf Baechle	select CPU_MIPSR2_IRQ_VI
164107cc0c9eSRalf Baechle	select CPU_MIPSR2_IRQ_EI
164207cc0c9eSRalf Baechle	select MIPS_MT
164307cc0c9eSRalf Baechle	help
164407cc0c9eSRalf Baechle	  Includes a loader for loading an elf relocatable object
164507cc0c9eSRalf Baechle	  onto another VPE and running it.
1646f088fc84SRalf Baechle
16470db34215SKevin D. Kissellconfig MIPS_MT_SMTC_IM_BACKSTOP
16480db34215SKevin D. Kissell	bool "Use per-TC register bits as backstop for inhibited IM bits"
16490db34215SKevin D. Kissell	depends on MIPS_MT_SMTC
16508531a35eSKevin D. Kissell	default n
16510db34215SKevin D. Kissell	help
16520db34215SKevin D. Kissell	  To support multiple TC microthreads acting as "CPUs" within
16530db34215SKevin D. Kissell	  a VPE, VPE-wide interrupt mask bits must be specially manipulated
16540db34215SKevin D. Kissell	  during interrupt handling. To support legacy drivers and interrupt
16550db34215SKevin D. Kissell	  controller management code, SMTC has a "backstop" to track and
16560db34215SKevin D. Kissell	  if necessary restore the interrupt mask. This has some performance
16578531a35eSKevin D. Kissell	  impact on interrupt service overhead.
16580db34215SKevin D. Kissell
1659f571eff0SKevin D. Kissellconfig MIPS_MT_SMTC_IRQAFF
1660f571eff0SKevin D. Kissell	bool "Support IRQ affinity API"
1661f571eff0SKevin D. Kissell	depends on MIPS_MT_SMTC
1662f571eff0SKevin D. Kissell	default n
1663f571eff0SKevin D. Kissell	help
1664f571eff0SKevin D. Kissell	  Enables SMP IRQ affinity API (/proc/irq/*/smp_affinity, etc.)
1665f571eff0SKevin D. Kissell	  for SMTC Linux kernel. Requires platform support, of which
1666f571eff0SKevin D. Kissell	  an example can be found in the MIPS kernel i8259 and Malta
16678531a35eSKevin D. Kissell	  platform code.  Adds some overhead to interrupt dispatch, and
16688531a35eSKevin D. Kissell	  should be used only if you know what you are doing.
1669f571eff0SKevin D. Kissell
1670e01402b1SRalf Baechleconfig MIPS_VPE_LOADER_TOM
1671e01402b1SRalf Baechle	bool "Load VPE program into memory hidden from linux"
1672e01402b1SRalf Baechle	depends on MIPS_VPE_LOADER
1673e01402b1SRalf Baechle	default y
1674e01402b1SRalf Baechle	help
1675e01402b1SRalf Baechle	  The loader can use memory that is present but has been hidden from
1676e01402b1SRalf Baechle	  Linux using the kernel command line option "mem=xxMB". It's up to
1677e01402b1SRalf Baechle	  you to ensure the amount you put in the option and the space your
1678e01402b1SRalf Baechle	  program requires is less or equal to the amount physically present.
1679e01402b1SRalf Baechle
1680e01402b1SRalf Baechle# this should possibly be in drivers/char, but it is rather cpu related. Hmmm
1681e01402b1SRalf Baechleconfig MIPS_VPE_APSP_API
1682e01402b1SRalf Baechle	bool "Enable support for AP/SP API (RTLX)"
1683e01402b1SRalf Baechle	depends on MIPS_VPE_LOADER
16845e83d430SRalf Baechle	help
1685e01402b1SRalf Baechle
16862600990eSRalf Baechleconfig MIPS_APSP_KSPD
16872600990eSRalf Baechle	bool "Enable KSPD"
16882600990eSRalf Baechle	depends on MIPS_VPE_APSP_API
16892600990eSRalf Baechle	default y
16902600990eSRalf Baechle	help
16912600990eSRalf Baechle	  KSPD is a kernel daemon that accepts syscall requests from the SP
16922600990eSRalf Baechle	  side, actions them and returns the results. It also handles the
16932600990eSRalf Baechle	  "exit" syscall notifying other kernel modules the SP program is
16942600990eSRalf Baechle	  exiting.  You probably want to say yes here.
16952600990eSRalf Baechle
16964a16ff4cSRalf Baechleconfig MIPS_CMP
16974a16ff4cSRalf Baechle	bool "MIPS CMP framework support"
16984a16ff4cSRalf Baechle	depends on SYS_SUPPORTS_MIPS_CMP
1699eb9b5141STim Anderson	select SYNC_R4K
17004a16ff4cSRalf Baechle	select SYS_SUPPORTS_SMP
17014a16ff4cSRalf Baechle	select SYS_SUPPORTS_SCHED_SMT if SMP
17024a16ff4cSRalf Baechle	select WEAK_ORDERING
17034a16ff4cSRalf Baechle	default n
17044a16ff4cSRalf Baechle	help
17054a16ff4cSRalf Baechle	  This is a placeholder option for the GCMP work. It will need to
17064a16ff4cSRalf Baechle	  be handled differently...
17074a16ff4cSRalf Baechle
17081da177e4SLinus Torvaldsconfig SB1_PASS_1_WORKAROUNDS
17091da177e4SLinus Torvalds	bool
17101da177e4SLinus Torvalds	depends on CPU_SB1_PASS_1
17111da177e4SLinus Torvalds	default y
17121da177e4SLinus Torvalds
17131da177e4SLinus Torvaldsconfig SB1_PASS_2_WORKAROUNDS
17141da177e4SLinus Torvalds	bool
17151da177e4SLinus Torvalds	depends on CPU_SB1 && (CPU_SB1_PASS_2_2 || CPU_SB1_PASS_2)
17161da177e4SLinus Torvalds	default y
17171da177e4SLinus Torvalds
17181da177e4SLinus Torvaldsconfig SB1_PASS_2_1_WORKAROUNDS
17191da177e4SLinus Torvalds	bool
17201da177e4SLinus Torvalds	depends on CPU_SB1 && CPU_SB1_PASS_2
17211da177e4SLinus Torvalds	default y
17221da177e4SLinus Torvalds
17231da177e4SLinus Torvaldsconfig 64BIT_PHYS_ADDR
1724d806cb2bSRalf Baechle	bool
17251da177e4SLinus Torvalds
17269693a853SFranck Bui-Huuconfig CPU_HAS_SMARTMIPS
17279693a853SFranck Bui-Huu	depends on SYS_SUPPORTS_SMARTMIPS
17289693a853SFranck Bui-Huu	bool "Support for the SmartMIPS ASE"
17299693a853SFranck Bui-Huu	help
17309693a853SFranck Bui-Huu	  SmartMIPS is a extension of the MIPS32 architecture aimed at
17319693a853SFranck Bui-Huu	  increased security at both hardware and software level for
17329693a853SFranck Bui-Huu	  smartcards.  Enabling this option will allow proper use of the
17339693a853SFranck Bui-Huu	  SmartMIPS instructions by Linux applications.  However a kernel with
17349693a853SFranck Bui-Huu	  this option will not work on a MIPS core without SmartMIPS core.  If
17359693a853SFranck Bui-Huu	  you don't know you probably don't have SmartMIPS and should say N
17369693a853SFranck Bui-Huu	  here.
17379693a853SFranck Bui-Huu
17381da177e4SLinus Torvaldsconfig CPU_HAS_WB
1739f7062ddbSRalf Baechle	bool
1740e01402b1SRalf Baechle
1741f41ae0b2SRalf Baechle#
1742f41ae0b2SRalf Baechle# Vectored interrupt mode is an R2 feature
1743f41ae0b2SRalf Baechle#
1744e01402b1SRalf Baechleconfig CPU_MIPSR2_IRQ_VI
1745f41ae0b2SRalf Baechle	bool
1746e01402b1SRalf Baechle
1747f41ae0b2SRalf Baechle#
1748f41ae0b2SRalf Baechle# Extended interrupt mode is an R2 feature
1749f41ae0b2SRalf Baechle#
1750e01402b1SRalf Baechleconfig CPU_MIPSR2_IRQ_EI
1751f41ae0b2SRalf Baechle	bool
1752e01402b1SRalf Baechle
17531da177e4SLinus Torvaldsconfig CPU_HAS_SYNC
17541da177e4SLinus Torvalds	bool
17551da177e4SLinus Torvalds	depends on !CPU_R3000
17561da177e4SLinus Torvalds	default y
17571da177e4SLinus Torvalds
1758ea580401SRalf Baechleconfig GENERIC_CLOCKEVENTS_BROADCAST
1759ea580401SRalf Baechle	bool
1760ea580401SRalf Baechle
17611da177e4SLinus Torvalds#
176220d60d99SMaciej W. Rozycki# CPU non-features
176320d60d99SMaciej W. Rozycki#
176420d60d99SMaciej W. Rozyckiconfig CPU_DADDI_WORKAROUNDS
176520d60d99SMaciej W. Rozycki	bool
176620d60d99SMaciej W. Rozycki
176720d60d99SMaciej W. Rozyckiconfig CPU_R4000_WORKAROUNDS
176820d60d99SMaciej W. Rozycki	bool
176920d60d99SMaciej W. Rozycki	select CPU_R4400_WORKAROUNDS
177020d60d99SMaciej W. Rozycki
177120d60d99SMaciej W. Rozyckiconfig CPU_R4400_WORKAROUNDS
177220d60d99SMaciej W. Rozycki	bool
177320d60d99SMaciej W. Rozycki
177420d60d99SMaciej W. Rozycki#
1775797798c1SRalf Baechle# Use the generic interrupt handling code in kernel/irq/:
1776797798c1SRalf Baechle#
1777797798c1SRalf Baechleconfig GENERIC_HARDIRQS
1778797798c1SRalf Baechle	bool
1779797798c1SRalf Baechle	default y
1780797798c1SRalf Baechle
1781797798c1SRalf Baechleconfig GENERIC_IRQ_PROBE
1782797798c1SRalf Baechle	bool
1783797798c1SRalf Baechle	default y
1784797798c1SRalf Baechle
17850d7012a9SIngo Molnarconfig IRQ_PER_CPU
17860d7012a9SIngo Molnar	bool
17870d7012a9SIngo Molnar
1788797798c1SRalf Baechle#
17891da177e4SLinus Torvalds# - Highmem only makes sense for the 32-bit kernel.
17901da177e4SLinus Torvalds# - The current highmem code will only work properly on physically indexed
17911da177e4SLinus Torvalds#   caches such as R3000, SB1, R7000 or those that look like they're virtually
17921da177e4SLinus Torvalds#   indexed such as R4000/R4400 SC and MC versions or R10000.  So for the
17931da177e4SLinus Torvalds#   moment we protect the user and offer the highmem option only on machines
17941da177e4SLinus Torvalds#   where it's known to be safe.  This will not offer highmem on a few systems
17951da177e4SLinus Torvalds#   such as MIPS32 and MIPS64 CPUs which may have virtual and physically
17961da177e4SLinus Torvalds#   indexed CPUs but we're playing safe.
1797797798c1SRalf Baechle# - We use SYS_SUPPORTS_HIGHMEM to offer highmem only for systems where we
1798797798c1SRalf Baechle#   know they might have memory configurations that could make use of highmem
1799797798c1SRalf Baechle#   support.
18001da177e4SLinus Torvalds#
18011da177e4SLinus Torvaldsconfig HIGHMEM
18021da177e4SLinus Torvalds	bool "High Memory Support"
1803797798c1SRalf Baechle	depends on 32BIT && CPU_SUPPORTS_HIGHMEM && SYS_SUPPORTS_HIGHMEM
1804797798c1SRalf Baechle
1805797798c1SRalf Baechleconfig CPU_SUPPORTS_HIGHMEM
1806797798c1SRalf Baechle	bool
1807797798c1SRalf Baechle
1808797798c1SRalf Baechleconfig SYS_SUPPORTS_HIGHMEM
1809797798c1SRalf Baechle	bool
18101da177e4SLinus Torvalds
18119693a853SFranck Bui-Huuconfig SYS_SUPPORTS_SMARTMIPS
18129693a853SFranck Bui-Huu	bool
18139693a853SFranck Bui-Huu
1814b4819b59SYoichi Yuasaconfig ARCH_FLATMEM_ENABLE
1815b4819b59SYoichi Yuasa	def_bool y
1816f133f22dSWu Zhangjin	depends on !NUMA && !CPU_LOONGSON2
1817b4819b59SYoichi Yuasa
1818d8cb4e11SRalf Baechleconfig ARCH_DISCONTIGMEM_ENABLE
1819d8cb4e11SRalf Baechle	bool
1820d8cb4e11SRalf Baechle	default y if SGI_IP27
1821d8cb4e11SRalf Baechle	help
18223dde6ad8SDavid Sterba	  Say Y to support efficient handling of discontiguous physical memory,
1823d8cb4e11SRalf Baechle	  for architectures which are either NUMA (Non-Uniform Memory Access)
1824d8cb4e11SRalf Baechle	  or have huge holes in the physical address space for other reasons.
1825d8cb4e11SRalf Baechle	  See <file:Documentation/vm/numa> for more.
1826d8cb4e11SRalf Baechle
1827cce335aeSRalf Baechleconfig ARCH_POPULATES_NODE_MAP
1828cce335aeSRalf Baechle	def_bool y
1829cce335aeSRalf Baechle
1830b1c6cd42SAtsushi Nemotoconfig ARCH_SPARSEMEM_ENABLE
1831b1c6cd42SAtsushi Nemoto	bool
18327de58fabSAtsushi Nemoto	select SPARSEMEM_STATIC
183331473747SAtsushi Nemoto
1834d8cb4e11SRalf Baechleconfig NUMA
1835d8cb4e11SRalf Baechle	bool "NUMA Support"
1836d8cb4e11SRalf Baechle	depends on SYS_SUPPORTS_NUMA
1837d8cb4e11SRalf Baechle	help
1838d8cb4e11SRalf Baechle	  Say Y to compile the kernel to support NUMA (Non-Uniform Memory
1839d8cb4e11SRalf Baechle	  Access).  This option improves performance on systems with more
1840d8cb4e11SRalf Baechle	  than two nodes; on two node systems it is generally better to
1841d8cb4e11SRalf Baechle	  leave it disabled; on single node systems disable this option
1842d8cb4e11SRalf Baechle	  disabled.
1843d8cb4e11SRalf Baechle
1844d8cb4e11SRalf Baechleconfig SYS_SUPPORTS_NUMA
1845d8cb4e11SRalf Baechle	bool
1846d8cb4e11SRalf Baechle
1847c80d79d7SYasunori Gotoconfig NODES_SHIFT
1848c80d79d7SYasunori Goto	int
1849c80d79d7SYasunori Goto	default "6"
1850c80d79d7SYasunori Goto	depends on NEED_MULTIPLE_NODES
1851c80d79d7SYasunori Goto
1852b4819b59SYoichi Yuasasource "mm/Kconfig"
1853b4819b59SYoichi Yuasa
18541da177e4SLinus Torvaldsconfig SMP
18551da177e4SLinus Torvalds	bool "Multi-Processing support"
1856e73ea273SRalf Baechle	depends on SYS_SUPPORTS_SMP
1857b4b30a5aSRalf Baechle	select IRQ_PER_CPU
18582f304c0aSJens Axboe	select USE_GENERIC_SMP_HELPERS
1859e73ea273SRalf Baechle	help
18601da177e4SLinus Torvalds	  This enables support for systems with more than one CPU. If you have
18611da177e4SLinus Torvalds	  a system with only one CPU, like most personal computers, say N. If
18621da177e4SLinus Torvalds	  you have a system with more than one CPU, say Y.
18631da177e4SLinus Torvalds
18641da177e4SLinus Torvalds	  If you say N here, the kernel will run on single and multiprocessor
18651da177e4SLinus Torvalds	  machines, but will use only one CPU of a multiprocessor machine. If
18661da177e4SLinus Torvalds	  you say Y here, the kernel will run on many, but not all,
18671da177e4SLinus Torvalds	  singleprocessor machines. On a singleprocessor machine, the kernel
18681da177e4SLinus Torvalds	  will run faster if you say N here.
18691da177e4SLinus Torvalds
18701da177e4SLinus Torvalds	  People using multiprocessor machines who say Y here should also say
18711da177e4SLinus Torvalds	  Y to "Enhanced Real Time Clock Support", below.
18721da177e4SLinus Torvalds
187303502faaSAdrian Bunk	  See also the SMP-HOWTO available at
187403502faaSAdrian Bunk	  <http://www.tldp.org/docs.html#howto>.
18751da177e4SLinus Torvalds
18761da177e4SLinus Torvalds	  If you don't know what to do here, say N.
18771da177e4SLinus Torvalds
187887353d8aSRalf Baechleconfig SMP_UP
187987353d8aSRalf Baechle	bool
188087353d8aSRalf Baechle
18814a16ff4cSRalf Baechleconfig SYS_SUPPORTS_MIPS_CMP
18824a16ff4cSRalf Baechle	bool
18834a16ff4cSRalf Baechle
1884e73ea273SRalf Baechleconfig SYS_SUPPORTS_SMP
1885e73ea273SRalf Baechle	bool
1886e73ea273SRalf Baechle
188772ede9b1SAtsushi Nemotoconfig NR_CPUS_DEFAULT_1
188872ede9b1SAtsushi Nemoto	bool
188972ede9b1SAtsushi Nemoto
1890130e2fb7SRalf Baechleconfig NR_CPUS_DEFAULT_2
1891130e2fb7SRalf Baechle	bool
1892130e2fb7SRalf Baechle
1893130e2fb7SRalf Baechleconfig NR_CPUS_DEFAULT_4
1894130e2fb7SRalf Baechle	bool
1895130e2fb7SRalf Baechle
1896130e2fb7SRalf Baechleconfig NR_CPUS_DEFAULT_8
1897130e2fb7SRalf Baechle	bool
1898130e2fb7SRalf Baechle
1899130e2fb7SRalf Baechleconfig NR_CPUS_DEFAULT_16
1900130e2fb7SRalf Baechle	bool
1901130e2fb7SRalf Baechle
1902130e2fb7SRalf Baechleconfig NR_CPUS_DEFAULT_32
1903130e2fb7SRalf Baechle	bool
1904130e2fb7SRalf Baechle
1905130e2fb7SRalf Baechleconfig NR_CPUS_DEFAULT_64
1906130e2fb7SRalf Baechle	bool
1907130e2fb7SRalf Baechle
19081da177e4SLinus Torvaldsconfig NR_CPUS
19091da177e4SLinus Torvalds	int "Maximum number of CPUs (2-64)"
191072ede9b1SAtsushi Nemoto	range 1 64 if NR_CPUS_DEFAULT_1
19111da177e4SLinus Torvalds	depends on SMP
191272ede9b1SAtsushi Nemoto	default "1" if NR_CPUS_DEFAULT_1
1913130e2fb7SRalf Baechle	default "2" if NR_CPUS_DEFAULT_2
1914130e2fb7SRalf Baechle	default "4" if NR_CPUS_DEFAULT_4
1915130e2fb7SRalf Baechle	default "8" if NR_CPUS_DEFAULT_8
1916130e2fb7SRalf Baechle	default "16" if NR_CPUS_DEFAULT_16
1917130e2fb7SRalf Baechle	default "32" if NR_CPUS_DEFAULT_32
1918130e2fb7SRalf Baechle	default "64" if NR_CPUS_DEFAULT_64
19191da177e4SLinus Torvalds	help
19201da177e4SLinus Torvalds	  This allows you to specify the maximum number of CPUs which this
19211da177e4SLinus Torvalds	  kernel will support.  The maximum supported value is 32 for 32-bit
19221da177e4SLinus Torvalds	  kernel and 64 for 64-bit kernels; the minimum value which makes
192372ede9b1SAtsushi Nemoto	  sense is 1 for Qemu (useful only for kernel debugging purposes)
192472ede9b1SAtsushi Nemoto	  and 2 for all others.
19251da177e4SLinus Torvalds
19261da177e4SLinus Torvalds	  This is purely to save memory - each supported CPU adds
192772ede9b1SAtsushi Nemoto	  approximately eight kilobytes to the kernel image.  For best
192872ede9b1SAtsushi Nemoto	  performance should round up your number of processors to the next
192972ede9b1SAtsushi Nemoto	  power of two.
19301da177e4SLinus Torvalds
1931c4eee283SAtsushi Nemotosource "kernel/time/Kconfig"
1932c4eee283SAtsushi Nemoto
19331723b4a3SAtsushi Nemoto#
19341723b4a3SAtsushi Nemoto# Timer Interrupt Frequency Configuration
19351723b4a3SAtsushi Nemoto#
19361723b4a3SAtsushi Nemoto
19371723b4a3SAtsushi Nemotochoice
19381723b4a3SAtsushi Nemoto	prompt "Timer frequency"
19391723b4a3SAtsushi Nemoto	default HZ_250
19401723b4a3SAtsushi Nemoto	help
19411723b4a3SAtsushi Nemoto	 Allows the configuration of the timer frequency.
19421723b4a3SAtsushi Nemoto
19431723b4a3SAtsushi Nemoto	config HZ_48
19440f873585SRalf Baechle		bool "48 HZ" if SYS_SUPPORTS_48HZ || SYS_SUPPORTS_ARBIT_HZ
19451723b4a3SAtsushi Nemoto
19461723b4a3SAtsushi Nemoto	config HZ_100
19471723b4a3SAtsushi Nemoto		bool "100 HZ" if SYS_SUPPORTS_100HZ || SYS_SUPPORTS_ARBIT_HZ
19481723b4a3SAtsushi Nemoto
19491723b4a3SAtsushi Nemoto	config HZ_128
19501723b4a3SAtsushi Nemoto		bool "128 HZ" if SYS_SUPPORTS_128HZ || SYS_SUPPORTS_ARBIT_HZ
19511723b4a3SAtsushi Nemoto
19521723b4a3SAtsushi Nemoto	config HZ_250
19531723b4a3SAtsushi Nemoto		bool "250 HZ" if SYS_SUPPORTS_250HZ || SYS_SUPPORTS_ARBIT_HZ
19541723b4a3SAtsushi Nemoto
19551723b4a3SAtsushi Nemoto	config HZ_256
19561723b4a3SAtsushi Nemoto		bool "256 HZ" if SYS_SUPPORTS_256HZ || SYS_SUPPORTS_ARBIT_HZ
19571723b4a3SAtsushi Nemoto
19581723b4a3SAtsushi Nemoto	config HZ_1000
19591723b4a3SAtsushi Nemoto		bool "1000 HZ" if SYS_SUPPORTS_1000HZ || SYS_SUPPORTS_ARBIT_HZ
19601723b4a3SAtsushi Nemoto
19611723b4a3SAtsushi Nemoto	config HZ_1024
19621723b4a3SAtsushi Nemoto		bool "1024 HZ" if SYS_SUPPORTS_1024HZ || SYS_SUPPORTS_ARBIT_HZ
19631723b4a3SAtsushi Nemoto
19641723b4a3SAtsushi Nemotoendchoice
19651723b4a3SAtsushi Nemoto
19661723b4a3SAtsushi Nemotoconfig SYS_SUPPORTS_48HZ
19671723b4a3SAtsushi Nemoto	bool
19681723b4a3SAtsushi Nemoto
19691723b4a3SAtsushi Nemotoconfig SYS_SUPPORTS_100HZ
19701723b4a3SAtsushi Nemoto	bool
19711723b4a3SAtsushi Nemoto
19721723b4a3SAtsushi Nemotoconfig SYS_SUPPORTS_128HZ
19731723b4a3SAtsushi Nemoto	bool
19741723b4a3SAtsushi Nemoto
19751723b4a3SAtsushi Nemotoconfig SYS_SUPPORTS_250HZ
19761723b4a3SAtsushi Nemoto	bool
19771723b4a3SAtsushi Nemoto
19781723b4a3SAtsushi Nemotoconfig SYS_SUPPORTS_256HZ
19791723b4a3SAtsushi Nemoto	bool
19801723b4a3SAtsushi Nemoto
19811723b4a3SAtsushi Nemotoconfig SYS_SUPPORTS_1000HZ
19821723b4a3SAtsushi Nemoto	bool
19831723b4a3SAtsushi Nemoto
19841723b4a3SAtsushi Nemotoconfig SYS_SUPPORTS_1024HZ
19851723b4a3SAtsushi Nemoto	bool
19861723b4a3SAtsushi Nemoto
19871723b4a3SAtsushi Nemotoconfig SYS_SUPPORTS_ARBIT_HZ
19881723b4a3SAtsushi Nemoto	bool
19891723b4a3SAtsushi Nemoto	default y if !SYS_SUPPORTS_48HZ && !SYS_SUPPORTS_100HZ && \
19901723b4a3SAtsushi Nemoto		     !SYS_SUPPORTS_128HZ && !SYS_SUPPORTS_250HZ && \
19911723b4a3SAtsushi Nemoto		     !SYS_SUPPORTS_256HZ && !SYS_SUPPORTS_1000HZ && \
19921723b4a3SAtsushi Nemoto		     !SYS_SUPPORTS_1024HZ
19931723b4a3SAtsushi Nemoto
19941723b4a3SAtsushi Nemotoconfig HZ
19951723b4a3SAtsushi Nemoto	int
19961723b4a3SAtsushi Nemoto	default 48 if HZ_48
19971723b4a3SAtsushi Nemoto	default 100 if HZ_100
19981723b4a3SAtsushi Nemoto	default 128 if HZ_128
19991723b4a3SAtsushi Nemoto	default 250 if HZ_250
20001723b4a3SAtsushi Nemoto	default 256 if HZ_256
20011723b4a3SAtsushi Nemoto	default 1000 if HZ_1000
20021723b4a3SAtsushi Nemoto	default 1024 if HZ_1024
20031723b4a3SAtsushi Nemoto
2004e80de850SRalf Baechlesource "kernel/Kconfig.preempt"
20051da177e4SLinus Torvalds
20061da177e4SLinus Torvaldsconfig MIPS_INSANE_LARGE
20071da177e4SLinus Torvalds	bool "Support for large 64-bit configurations"
2008875d43e7SRalf Baechle	depends on CPU_R10000 && 64BIT
20091da177e4SLinus Torvalds	help
20101da177e4SLinus Torvalds	  MIPS R10000 does support a 44 bit / 16TB address space as opposed to
20111da177e4SLinus Torvalds	  previous 64-bit processors which only supported 40 bit / 1TB. If you
20121da177e4SLinus Torvalds	  need processes of more than 1TB virtual address space, say Y here.
20131da177e4SLinus Torvalds	  This will result in additional memory usage, so it is not
20141da177e4SLinus Torvalds	  recommended for normal users.
20151da177e4SLinus Torvalds
2016ea6e942bSAtsushi Nemotoconfig KEXEC
2017ea6e942bSAtsushi Nemoto	bool "Kexec system call (EXPERIMENTAL)"
2018ea6e942bSAtsushi Nemoto	depends on EXPERIMENTAL
2019ea6e942bSAtsushi Nemoto	help
2020ea6e942bSAtsushi Nemoto	  kexec is a system call that implements the ability to shutdown your
2021ea6e942bSAtsushi Nemoto	  current kernel, and to start another kernel.  It is like a reboot
20223dde6ad8SDavid Sterba	  but it is independent of the system firmware.   And like a reboot
2023ea6e942bSAtsushi Nemoto	  you can start any kernel with it, not just Linux.
2024ea6e942bSAtsushi Nemoto
202501dd2fbfSMatt LaPlante	  The name comes from the similarity to the exec system call.
2026ea6e942bSAtsushi Nemoto
2027ea6e942bSAtsushi Nemoto	  It is an ongoing process to be certain the hardware in a machine
2028ea6e942bSAtsushi Nemoto	  is properly shutdown, so do not be surprised if this code does not
2029ea6e942bSAtsushi Nemoto	  initially work for you.  It may help to enable device hotplugging
2030ea6e942bSAtsushi Nemoto	  support.  As of this writing the exact hardware interface is
2031ea6e942bSAtsushi Nemoto	  strongly in flux, so no good recommendation can be made.
2032ea6e942bSAtsushi Nemoto
2033ea6e942bSAtsushi Nemotoconfig SECCOMP
2034ea6e942bSAtsushi Nemoto	bool "Enable seccomp to safely compute untrusted bytecode"
2035293c5bd1SRalf Baechle	depends on PROC_FS
2036ea6e942bSAtsushi Nemoto	default y
2037ea6e942bSAtsushi Nemoto	help
2038ea6e942bSAtsushi Nemoto	  This kernel feature is useful for number crunching applications
2039ea6e942bSAtsushi Nemoto	  that may need to compute untrusted bytecode during their
2040ea6e942bSAtsushi Nemoto	  execution. By using pipes or other transports made available to
2041ea6e942bSAtsushi Nemoto	  the process as file descriptors supporting the read/write
2042ea6e942bSAtsushi Nemoto	  syscalls, it's possible to isolate those applications in
2043ea6e942bSAtsushi Nemoto	  their own address space using seccomp. Once seccomp is
2044ea6e942bSAtsushi Nemoto	  enabled via /proc/<pid>/seccomp, it cannot be disabled
2045ea6e942bSAtsushi Nemoto	  and the task is only allowed to execute a few safe syscalls
2046ea6e942bSAtsushi Nemoto	  defined by each seccomp mode.
2047ea6e942bSAtsushi Nemoto
2048ea6e942bSAtsushi Nemoto	  If unsure, say Y. Only embedded should say N here.
2049ea6e942bSAtsushi Nemoto
20505e83d430SRalf Baechleendmenu
20515e83d430SRalf Baechle
20521df0f0ffSAtsushi Nemotoconfig LOCKDEP_SUPPORT
20531df0f0ffSAtsushi Nemoto	bool
20541df0f0ffSAtsushi Nemoto	default y
20551df0f0ffSAtsushi Nemoto
20561df0f0ffSAtsushi Nemotoconfig STACKTRACE_SUPPORT
20571df0f0ffSAtsushi Nemoto	bool
20581df0f0ffSAtsushi Nemoto	default y
20591df0f0ffSAtsushi Nemoto
2060b6c3539bSRalf Baechlesource "init/Kconfig"
2061b6c3539bSRalf Baechle
2062dc52ddc0SMatt Helsleysource "kernel/Kconfig.freezer"
2063dc52ddc0SMatt Helsley
20641da177e4SLinus Torvaldsmenu "Bus options (PCI, PCMCIA, EISA, ISA, TC)"
20651da177e4SLinus Torvalds
20665e83d430SRalf Baechleconfig HW_HAS_EISA
20675e83d430SRalf Baechle	bool
20681da177e4SLinus Torvaldsconfig HW_HAS_PCI
20691da177e4SLinus Torvalds	bool
20701da177e4SLinus Torvalds
20711da177e4SLinus Torvaldsconfig PCI
20721da177e4SLinus Torvalds	bool "Support for PCI controller"
20731da177e4SLinus Torvalds	depends on HW_HAS_PCI
2074abb4ae46SRalf Baechle	select PCI_DOMAINS
20751da177e4SLinus Torvalds	help
20761da177e4SLinus Torvalds	  Find out whether you have a PCI motherboard. PCI is the name of a
20771da177e4SLinus Torvalds	  bus system, i.e. the way the CPU talks to the other stuff inside
20781da177e4SLinus Torvalds	  your box. Other bus systems are ISA, EISA, or VESA. If you have PCI,
20791da177e4SLinus Torvalds	  say Y, otherwise N.
20801da177e4SLinus Torvalds
20811da177e4SLinus Torvaldsconfig PCI_DOMAINS
20821da177e4SLinus Torvalds	bool
20831da177e4SLinus Torvalds
20841da177e4SLinus Torvaldssource "drivers/pci/Kconfig"
20851da177e4SLinus Torvalds
20861da177e4SLinus Torvalds#
20871da177e4SLinus Torvalds# ISA support is now enabled via select.  Too many systems still have the one
20881da177e4SLinus Torvalds# or other ISA chip on the board that users don't know about so don't expect
20891da177e4SLinus Torvalds# users to choose the right thing ...
20901da177e4SLinus Torvalds#
20911da177e4SLinus Torvaldsconfig ISA
20921da177e4SLinus Torvalds	bool
20931da177e4SLinus Torvalds
20941da177e4SLinus Torvaldsconfig EISA
20951da177e4SLinus Torvalds	bool "EISA support"
20965e83d430SRalf Baechle	depends on HW_HAS_EISA
20971da177e4SLinus Torvalds	select ISA
2098aa414dffSRalf Baechle	select GENERIC_ISA_DMA
20991da177e4SLinus Torvalds	---help---
21001da177e4SLinus Torvalds	  The Extended Industry Standard Architecture (EISA) bus was
21011da177e4SLinus Torvalds	  developed as an open alternative to the IBM MicroChannel bus.
21021da177e4SLinus Torvalds
21031da177e4SLinus Torvalds	  The EISA bus provided some of the features of the IBM MicroChannel
21041da177e4SLinus Torvalds	  bus while maintaining backward compatibility with cards made for
21051da177e4SLinus Torvalds	  the older ISA bus.  The EISA bus saw limited use between 1988 and
21061da177e4SLinus Torvalds	  1995 when it was made obsolete by the PCI bus.
21071da177e4SLinus Torvalds
21081da177e4SLinus Torvalds	  Say Y here if you are building a kernel for an EISA-based machine.
21091da177e4SLinus Torvalds
21101da177e4SLinus Torvalds	  Otherwise, say N.
21111da177e4SLinus Torvalds
21121da177e4SLinus Torvaldssource "drivers/eisa/Kconfig"
21131da177e4SLinus Torvalds
21141da177e4SLinus Torvaldsconfig TC
21151da177e4SLinus Torvalds	bool "TURBOchannel support"
21161da177e4SLinus Torvalds	depends on MACH_DECSTATION
21171da177e4SLinus Torvalds	help
21181da177e4SLinus Torvalds	  TurboChannel is a DEC (now Compaq (now HP)) bus for Alpha and MIPS
21191da177e4SLinus Torvalds	  processors.  Documentation on writing device drivers for TurboChannel
21201da177e4SLinus Torvalds	  is available at:
21211da177e4SLinus Torvalds	  <http://www.cs.arizona.edu/computer.help/policy/DIGITAL_unix/AA-PS3HD-TET1_html/TITLE.html>.
21221da177e4SLinus Torvalds
21231da177e4SLinus Torvalds#config ACCESSBUS
21241da177e4SLinus Torvalds#	bool "Access.Bus support"
21251da177e4SLinus Torvalds#	depends on TC
21261da177e4SLinus Torvalds
21271da177e4SLinus Torvaldsconfig MMU
21281da177e4SLinus Torvalds	bool
21291da177e4SLinus Torvalds	default y
21301da177e4SLinus Torvalds
2131d865bea4SRalf Baechleconfig I8253
2132d865bea4SRalf Baechle	bool
2133d865bea4SRalf Baechle
2134cce335aeSRalf Baechleconfig ZONE_DMA32
2135cce335aeSRalf Baechle	bool
2136cce335aeSRalf Baechle
21371da177e4SLinus Torvaldssource "drivers/pcmcia/Kconfig"
21381da177e4SLinus Torvalds
21391da177e4SLinus Torvaldssource "drivers/pci/hotplug/Kconfig"
21401da177e4SLinus Torvalds
21411da177e4SLinus Torvaldsendmenu
21421da177e4SLinus Torvalds
21431da177e4SLinus Torvaldsmenu "Executable file formats"
21441da177e4SLinus Torvalds
21451da177e4SLinus Torvaldssource "fs/Kconfig.binfmt"
21461da177e4SLinus Torvalds
21471da177e4SLinus Torvaldsconfig TRAD_SIGNALS
21481da177e4SLinus Torvalds	bool
21491da177e4SLinus Torvalds
21501da177e4SLinus Torvaldsconfig MIPS32_COMPAT
21511da177e4SLinus Torvalds	bool "Kernel support for Linux/MIPS 32-bit binary compatibility"
2152875d43e7SRalf Baechle	depends on 64BIT
21531da177e4SLinus Torvalds	help
21541da177e4SLinus Torvalds	  Select this option if you want Linux/MIPS 32-bit binary
21551da177e4SLinus Torvalds	  compatibility. Since all software available for Linux/MIPS is
21561da177e4SLinus Torvalds	  currently 32-bit you should say Y here.
21571da177e4SLinus Torvalds
21581da177e4SLinus Torvaldsconfig COMPAT
21591da177e4SLinus Torvalds	bool
21601da177e4SLinus Torvalds	depends on MIPS32_COMPAT
21611da177e4SLinus Torvalds	default y
21621da177e4SLinus Torvalds
216305e43966SAtsushi Nemotoconfig SYSVIPC_COMPAT
216405e43966SAtsushi Nemoto	bool
216505e43966SAtsushi Nemoto	depends on COMPAT && SYSVIPC
216605e43966SAtsushi Nemoto	default y
216705e43966SAtsushi Nemoto
21681da177e4SLinus Torvaldsconfig MIPS32_O32
21691da177e4SLinus Torvalds	bool "Kernel support for o32 binaries"
21701da177e4SLinus Torvalds	depends on MIPS32_COMPAT
21711da177e4SLinus Torvalds	help
21721da177e4SLinus Torvalds	  Select this option if you want to run o32 binaries.  These are pure
21731da177e4SLinus Torvalds	  32-bit binaries as used by the 32-bit Linux/MIPS port.  Most of
21741da177e4SLinus Torvalds	  existing binaries are in this format.
21751da177e4SLinus Torvalds
21761da177e4SLinus Torvalds	  If unsure, say Y.
21771da177e4SLinus Torvalds
21781da177e4SLinus Torvaldsconfig MIPS32_N32
21791da177e4SLinus Torvalds	bool "Kernel support for n32 binaries"
21801da177e4SLinus Torvalds	depends on MIPS32_COMPAT
21811da177e4SLinus Torvalds	help
21821da177e4SLinus Torvalds	  Select this option if you want to run n32 binaries.  These are
21831da177e4SLinus Torvalds	  64-bit binaries using 32-bit quantities for addressing and certain
21841da177e4SLinus Torvalds	  data that would normally be 64-bit.  They are used in special
21851da177e4SLinus Torvalds	  cases.
21861da177e4SLinus Torvalds
21871da177e4SLinus Torvalds	  If unsure, say N.
21881da177e4SLinus Torvalds
21891da177e4SLinus Torvaldsconfig BINFMT_ELF32
21901da177e4SLinus Torvalds	bool
21911da177e4SLinus Torvalds	default y if MIPS32_O32 || MIPS32_N32
21921da177e4SLinus Torvalds
21932116245eSRalf Baechleendmenu
21941da177e4SLinus Torvalds
21952116245eSRalf Baechlemenu "Power management options"
2196952fa954SRodolfo Giometti
2197363c55caSWu Zhangjinconfig ARCH_HIBERNATION_POSSIBLE
2198363c55caSWu Zhangjin	def_bool y
21993f5b3e17SRalf Baechle	depends on SYS_SUPPORTS_HOTPLUG_CPU || !SMP
2200363c55caSWu Zhangjin
2201f4cb5700SJohannes Bergconfig ARCH_SUSPEND_POSSIBLE
2202f4cb5700SJohannes Berg	def_bool y
22033f5b3e17SRalf Baechle	depends on SYS_SUPPORTS_HOTPLUG_CPU || !SMP
2204f4cb5700SJohannes Berg
22052116245eSRalf Baechlesource "kernel/power/Kconfig"
2206952fa954SRodolfo Giometti
22071da177e4SLinus Torvaldsendmenu
22081da177e4SLinus Torvalds
2209d5950b43SSam Ravnborgsource "net/Kconfig"
2210d5950b43SSam Ravnborg
22111da177e4SLinus Torvaldssource "drivers/Kconfig"
22121da177e4SLinus Torvalds
22131da177e4SLinus Torvaldssource "fs/Kconfig"
22141da177e4SLinus Torvalds
22151da177e4SLinus Torvaldssource "arch/mips/Kconfig.debug"
22161da177e4SLinus Torvalds
22171da177e4SLinus Torvaldssource "security/Kconfig"
22181da177e4SLinus Torvalds
22191da177e4SLinus Torvaldssource "crypto/Kconfig"
22201da177e4SLinus Torvalds
22211da177e4SLinus Torvaldssource "lib/Kconfig"
2222