xref: /linux/arch/mips/Kconfig (revision d2bb0762993e11363d8343127516b8fe88f9006f)
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
8*d2bb0762SWu Zhangjin	select HAVE_FUNCTION_TRACER
91da177e4SLinus Torvalds	# Horrible source of confusion.  Die, die, die ...
101da177e4SLinus Torvalds	select EMBEDDED
1121a41faaSWu Zhangjin	select RTC_LIB if !MACH_LOONGSON
121da177e4SLinus Torvalds
131da177e4SLinus Torvaldsmainmenu "Linux/MIPS Kernel Configuration"
141da177e4SLinus Torvalds
151da177e4SLinus Torvaldsmenu "Machine selection"
161da177e4SLinus Torvalds
175ac6da66SChristoph Lameterconfig ZONE_DMA
185ac6da66SChristoph Lameter	bool
195ac6da66SChristoph Lameter
205e83d430SRalf Baechlechoice
215e83d430SRalf Baechle	prompt "System type"
225e83d430SRalf Baechle	default SGI_IP22
231da177e4SLinus Torvalds
24c3543e25SYoichi Yuasaconfig MACH_ALCHEMY
25c3543e25SYoichi Yuasa	bool "Alchemy processor based machines"
261b93b3c3SWu Zhangjin	select SYS_SUPPORTS_ZBOOT
271da177e4SLinus Torvalds
287ca5dc14SFlorian Fainelliconfig AR7
297ca5dc14SFlorian Fainelli	bool "Texas Instruments AR7"
307ca5dc14SFlorian Fainelli	select BOOT_ELF32
317ca5dc14SFlorian Fainelli	select DMA_NONCOHERENT
327ca5dc14SFlorian Fainelli	select CEVT_R4K
337ca5dc14SFlorian Fainelli	select CSRC_R4K
347ca5dc14SFlorian Fainelli	select IRQ_CPU
357ca5dc14SFlorian Fainelli	select NO_EXCEPT_FILL
367ca5dc14SFlorian Fainelli	select SWAP_IO_SPACE
377ca5dc14SFlorian Fainelli	select SYS_HAS_CPU_MIPS32_R1
387ca5dc14SFlorian Fainelli	select SYS_HAS_EARLY_PRINTK
397ca5dc14SFlorian Fainelli	select SYS_SUPPORTS_32BIT_KERNEL
407ca5dc14SFlorian Fainelli	select SYS_SUPPORTS_LITTLE_ENDIAN
411b93b3c3SWu Zhangjin	select SYS_SUPPORTS_ZBOOT_UART16550
427ca5dc14SFlorian Fainelli	select GENERIC_GPIO
437ca5dc14SFlorian Fainelli	select GCD
447ca5dc14SFlorian Fainelli	select VLYNQ
457ca5dc14SFlorian Fainelli	help
467ca5dc14SFlorian Fainelli	  Support for the Texas Instruments AR7 System-on-a-Chip
477ca5dc14SFlorian Fainelli	  family: TNETD7100, 7200 and 7300.
487ca5dc14SFlorian Fainelli
4935189fadSRalf Baechleconfig BASLER_EXCITE
50be91589eSThomas Koeller	bool "Basler eXcite smart camera"
5142f77542SRalf Baechle	select CEVT_R4K
52940f6b48SRalf Baechle	select CSRC_R4K
5335189fadSRalf Baechle	select DMA_COHERENT
5435189fadSRalf Baechle	select HW_HAS_PCI
5535189fadSRalf Baechle	select IRQ_CPU
5635189fadSRalf Baechle	select IRQ_CPU_RM7K
5735189fadSRalf Baechle	select IRQ_CPU_RM9K
58663c3d90Sthomas@koeller.dyndns.org	select MIPS_RM9122
5935189fadSRalf Baechle	select SYS_HAS_CPU_RM9000
6035189fadSRalf Baechle	select SYS_SUPPORTS_32BIT_KERNEL
6135189fadSRalf Baechle	select SYS_SUPPORTS_BIG_ENDIAN
6235189fadSRalf Baechle	help
6335189fadSRalf Baechle	  The eXcite is a smart camera platform manufactured by
64be91589eSThomas Koeller	  Basler Vision Technologies AG.
6535189fadSRalf Baechle
661c0c13ebSAurelien Jarnoconfig BCM47XX
671c0c13ebSAurelien Jarno	bool "BCM47XX based boards"
6842f77542SRalf Baechle	select CEVT_R4K
69940f6b48SRalf Baechle	select CSRC_R4K
701c0c13ebSAurelien Jarno	select DMA_NONCOHERENT
711c0c13ebSAurelien Jarno	select HW_HAS_PCI
721c0c13ebSAurelien Jarno	select IRQ_CPU
731c0c13ebSAurelien Jarno	select SYS_HAS_CPU_MIPS32_R1
741c0c13ebSAurelien Jarno	select SYS_SUPPORTS_32BIT_KERNEL
751c0c13ebSAurelien Jarno	select SYS_SUPPORTS_LITTLE_ENDIAN
761c0c13ebSAurelien Jarno	select SSB
771c0c13ebSAurelien Jarno	select SSB_DRIVER_MIPS
782f02c15aSAurelien Jarno	select SSB_DRIVER_EXTIF
79b06f3e19SAurelien Jarno	select SSB_EMBEDDED
802f02c15aSAurelien Jarno	select SSB_PCICORE_HOSTMODE if PCI
811c0c13ebSAurelien Jarno	select GENERIC_GPIO
8225e5fb97SAurelien Jarno	select SYS_HAS_EARLY_PRINTK
8325e5fb97SAurelien Jarno	select CFE
841c0c13ebSAurelien Jarno	help
851c0c13ebSAurelien Jarno	 Support for BCM47XX based boards
861c0c13ebSAurelien Jarno
87e7300d04SMaxime Bizonconfig BCM63XX
88e7300d04SMaxime Bizon	bool "Broadcom BCM63XX based boards"
89e7300d04SMaxime Bizon	select CEVT_R4K
90e7300d04SMaxime Bizon	select CSRC_R4K
91e7300d04SMaxime Bizon	select DMA_NONCOHERENT
92e7300d04SMaxime Bizon	select IRQ_CPU
93e7300d04SMaxime Bizon	select SYS_HAS_CPU_MIPS32_R1
94e7300d04SMaxime Bizon	select SYS_SUPPORTS_32BIT_KERNEL
95e7300d04SMaxime Bizon	select SYS_SUPPORTS_BIG_ENDIAN
96e7300d04SMaxime Bizon	select SYS_HAS_EARLY_PRINTK
97e7300d04SMaxime Bizon	select SWAP_IO_SPACE
98e7300d04SMaxime Bizon	select ARCH_REQUIRE_GPIOLIB
99e7300d04SMaxime Bizon	help
100e7300d04SMaxime Bizon	 Support for BCM63XX based boards
101e7300d04SMaxime Bizon
1021da177e4SLinus Torvaldsconfig MIPS_COBALT
1033fa986faSMartin Michlmayr	bool "Cobalt Server"
10442f77542SRalf Baechle	select CEVT_R4K
105940f6b48SRalf Baechle	select CSRC_R4K
1061097c6acSYoichi Yuasa	select CEVT_GT641XX
1071da177e4SLinus Torvalds	select DMA_NONCOHERENT
1081da177e4SLinus Torvalds	select HW_HAS_PCI
109d865bea4SRalf Baechle	select I8253
1101da177e4SLinus Torvalds	select I8259
1111da177e4SLinus Torvalds	select IRQ_CPU
112d5ab1a69SYoichi Yuasa	select IRQ_GT641XX
113252161ecSYoichi Yuasa	select PCI_GT64XXX_PCI0
114e25bfc92SYoichi Yuasa	select PCI
1157cf8053bSRalf Baechle	select SYS_HAS_CPU_NEVADA
1160a22e0d4SYoichi Yuasa	select SYS_HAS_EARLY_PRINTK
117ed5ba2fbSYoichi Yuasa	select SYS_SUPPORTS_32BIT_KERNEL
1180e8774b6SFlorian Fainelli	select SYS_SUPPORTS_64BIT_KERNEL
1195e83d430SRalf Baechle	select SYS_SUPPORTS_LITTLE_ENDIAN
1201da177e4SLinus Torvalds
1211da177e4SLinus Torvaldsconfig MACH_DECSTATION
1223fa986faSMartin Michlmayr	bool "DECstations"
1231da177e4SLinus Torvalds	select BOOT_ELF32
1246457d9fcSYoichi Yuasa	select CEVT_DS1287
12542f77542SRalf Baechle	select CEVT_R4K
1264247417dSYoichi Yuasa	select CSRC_IOASIC
127940f6b48SRalf Baechle	select CSRC_R4K
12820d60d99SMaciej W. Rozycki	select CPU_DADDI_WORKAROUNDS if 64BIT
12920d60d99SMaciej W. Rozycki	select CPU_R4000_WORKAROUNDS if 64BIT
13020d60d99SMaciej W. Rozycki	select CPU_R4400_WORKAROUNDS if 64BIT
1311da177e4SLinus Torvalds	select DMA_NONCOHERENT
132d388d685SMaciej W. Rozycki	select NO_IOPORT
1331da177e4SLinus Torvalds	select IRQ_CPU
1347cf8053bSRalf Baechle	select SYS_HAS_CPU_R3000
1357cf8053bSRalf Baechle	select SYS_HAS_CPU_R4X00
136ed5ba2fbSYoichi Yuasa	select SYS_SUPPORTS_32BIT_KERNEL
137ed5ba2fbSYoichi Yuasa	select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
1385e83d430SRalf Baechle	select SYS_SUPPORTS_LITTLE_ENDIAN
1391723b4a3SAtsushi Nemoto	select SYS_SUPPORTS_128HZ
1401723b4a3SAtsushi Nemoto	select SYS_SUPPORTS_256HZ
1411723b4a3SAtsushi Nemoto	select SYS_SUPPORTS_1024HZ
1425e83d430SRalf Baechle	help
1431da177e4SLinus Torvalds	  This enables support for DEC's MIPS based workstations.  For details
1441da177e4SLinus Torvalds	  see the Linux/MIPS FAQ on <http://www.linux-mips.org/> and the
1451da177e4SLinus Torvalds	  DECstation porting pages on <http://decstation.unix-ag.org/>.
1461da177e4SLinus Torvalds
1471da177e4SLinus Torvalds	  If you have one of the following DECstation Models you definitely
1481da177e4SLinus Torvalds	  want to choose R4xx0 for the CPU Type:
1491da177e4SLinus Torvalds
1501da177e4SLinus Torvalds		DECstation 5000/50
1511da177e4SLinus Torvalds		DECstation 5000/150
1521da177e4SLinus Torvalds		DECstation 5000/260
1531da177e4SLinus Torvalds		DECsystem 5900/260
1541da177e4SLinus Torvalds
1551da177e4SLinus Torvalds	  otherwise choose R3000.
1561da177e4SLinus Torvalds
1575e83d430SRalf Baechleconfig MACH_JAZZ
1583fa986faSMartin Michlmayr	bool "Jazz family of machines"
1595e83d430SRalf Baechle	select ARC
1605e83d430SRalf Baechle	select ARC32
1615e83d430SRalf Baechle	select ARCH_MAY_HAVE_PC_FDC
16242f77542SRalf Baechle	select CEVT_R4K
163940f6b48SRalf Baechle	select CSRC_R4K
164e2defae5SThomas Bogendoerfer	select DEFAULT_SGI_PARTITION if CPU_BIG_ENDIAN
1655e83d430SRalf Baechle	select GENERIC_ISA_DMA
166ea202c63SThomas Bogendoerfer	select IRQ_CPU
167d865bea4SRalf Baechle	select I8253
1685e83d430SRalf Baechle	select I8259
1695e83d430SRalf Baechle	select ISA
1707cf8053bSRalf Baechle	select SYS_HAS_CPU_R4X00
1715e83d430SRalf Baechle	select SYS_SUPPORTS_32BIT_KERNEL
1725e83d430SRalf Baechle	select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
1731723b4a3SAtsushi Nemoto	select SYS_SUPPORTS_100HZ
1741da177e4SLinus Torvalds	help
1755e83d430SRalf Baechle	 This a family of machines based on the MIPS R4030 chipset which was
1765e83d430SRalf Baechle	 used by several vendors to build RISC/os and Windows NT workstations.
177692105b8SMatt LaPlante	 Members include the Acer PICA, MIPS Magnum 4000, MIPS Millennium and
1785e83d430SRalf Baechle	 Olivetti M700-10 workstations.
1795e83d430SRalf Baechle
1801f21d2bdSBrian Murphyconfig LASAT
1811f21d2bdSBrian Murphy	bool "LASAT Networks platforms"
18242f77542SRalf Baechle	select CEVT_R4K
183940f6b48SRalf Baechle	select CSRC_R4K
1841f21d2bdSBrian Murphy	select DMA_NONCOHERENT
1851f21d2bdSBrian Murphy	select SYS_HAS_EARLY_PRINTK
1861f21d2bdSBrian Murphy	select HW_HAS_PCI
187a5ccfe5cSRalf Baechle	select IRQ_CPU
1881f21d2bdSBrian Murphy	select PCI_GT64XXX_PCI0
1891f21d2bdSBrian Murphy	select MIPS_NILE4
1901f21d2bdSBrian Murphy	select R5000_CPU_SCACHE
1911f21d2bdSBrian Murphy	select SYS_HAS_CPU_R5000
1921f21d2bdSBrian Murphy	select SYS_SUPPORTS_32BIT_KERNEL
1931f21d2bdSBrian Murphy	select SYS_SUPPORTS_64BIT_KERNEL if BROKEN
1941f21d2bdSBrian Murphy	select SYS_SUPPORTS_LITTLE_ENDIAN
1951f21d2bdSBrian Murphy
19685749d24SWu Zhangjinconfig MACH_LOONGSON
19785749d24SWu Zhangjin	bool "Loongson family of machines"
1981b93b3c3SWu Zhangjin	select SYS_SUPPORTS_ZBOOT_UART16550
199ade299d8SYoichi Yuasa	help
20085749d24SWu Zhangjin	  This enables the support of Loongson family of machines.
20185749d24SWu Zhangjin
20285749d24SWu Zhangjin	  Loongson is a family of general-purpose MIPS-compatible CPUs.
20385749d24SWu Zhangjin	  developed at Institute of Computing Technology (ICT),
20485749d24SWu Zhangjin	  Chinese Academy of Sciences (CAS) in the People's Republic
20585749d24SWu Zhangjin	  of China. The chief architect is Professor Weiwu Hu.
206ade299d8SYoichi Yuasa
2071da177e4SLinus Torvaldsconfig MIPS_MALTA
2083fa986faSMartin Michlmayr	bool "MIPS Malta board"
20961ed242dSRalf Baechle	select ARCH_MAY_HAVE_PC_FDC
2101da177e4SLinus Torvalds	select BOOT_ELF32
211fa71c960SRalf Baechle	select BOOT_RAW
21242f77542SRalf Baechle	select CEVT_R4K
213940f6b48SRalf Baechle	select CSRC_R4K
2141da177e4SLinus Torvalds	select DMA_NONCOHERENT
2151da177e4SLinus Torvalds	select GENERIC_ISA_DMA
216aa414dffSRalf Baechle	select IRQ_CPU
21739b8d525SRalf Baechle	select IRQ_GIC
2181da177e4SLinus Torvalds	select HW_HAS_PCI
219d865bea4SRalf Baechle	select I8253
2201da177e4SLinus Torvalds	select I8259
2215e83d430SRalf Baechle	select MIPS_BOARDS_GEN
2225e83d430SRalf Baechle	select MIPS_BONITO64
2239318c51aSChris Dearman	select MIPS_CPU_SCACHE
224252161ecSYoichi Yuasa	select PCI_GT64XXX_PCI0
2255e83d430SRalf Baechle	select MIPS_MSC
2261da177e4SLinus Torvalds	select SWAP_IO_SPACE
2277cf8053bSRalf Baechle	select SYS_HAS_CPU_MIPS32_R1
2287cf8053bSRalf Baechle	select SYS_HAS_CPU_MIPS32_R2
2297cf8053bSRalf Baechle	select SYS_HAS_CPU_MIPS64_R1
2307cf8053bSRalf Baechle	select SYS_HAS_CPU_NEVADA
2317cf8053bSRalf Baechle	select SYS_HAS_CPU_RM7000
23236a88530SRalf Baechle	select SYS_HAS_EARLY_PRINTK
233ed5ba2fbSYoichi Yuasa	select SYS_SUPPORTS_32BIT_KERNEL
234ed5ba2fbSYoichi Yuasa	select SYS_SUPPORTS_64BIT_KERNEL
2355e83d430SRalf Baechle	select SYS_SUPPORTS_BIG_ENDIAN
2365e83d430SRalf Baechle	select SYS_SUPPORTS_LITTLE_ENDIAN
2370365070fSTim Anderson	select SYS_SUPPORTS_MIPS_CMP
238f41ae0b2SRalf Baechle	select SYS_SUPPORTS_MULTITHREADING
2399693a853SFranck Bui-Huu	select SYS_SUPPORTS_SMARTMIPS
2401b93b3c3SWu Zhangjin	select SYS_SUPPORTS_ZBOOT
2411da177e4SLinus Torvalds	help
242f638d197SMaciej W. Rozycki	  This enables support for the MIPS Technologies Malta evaluation
2431da177e4SLinus Torvalds	  board.
2441da177e4SLinus Torvalds
245c78cbf49SRalf Baechleconfig MIPS_SIM
2463fa986faSMartin Michlmayr	bool 'MIPS simulator (MIPSsim)'
24742f77542SRalf Baechle	select CEVT_R4K
248940f6b48SRalf Baechle	select CSRC_R4K
249c78cbf49SRalf Baechle	select DMA_NONCOHERENT
25036a88530SRalf Baechle	select SYS_HAS_EARLY_PRINTK
251c78cbf49SRalf Baechle	select IRQ_CPU
2529267a30dSMarc St-Jean	select BOOT_RAW
2537cf8053bSRalf Baechle	select SYS_HAS_CPU_MIPS32_R1
2547cf8053bSRalf Baechle	select SYS_HAS_CPU_MIPS32_R2
25536a88530SRalf Baechle	select SYS_HAS_EARLY_PRINTK
256c78cbf49SRalf Baechle	select SYS_SUPPORTS_32BIT_KERNEL
257c78cbf49SRalf Baechle	select SYS_SUPPORTS_BIG_ENDIAN
258f6e2373aSRalf Baechle	select SYS_SUPPORTS_MULTITHREADING
259c78cbf49SRalf Baechle	select SYS_SUPPORTS_LITTLE_ENDIAN
260c78cbf49SRalf Baechle	help
261c78cbf49SRalf Baechle	  This option enables support for MIPS Technologies MIPSsim software
262c78cbf49SRalf Baechle	  emulator.
263c78cbf49SRalf Baechle
264a83860c2SRalf Baechleconfig NEC_MARKEINS
265a83860c2SRalf Baechle	bool "NEC EMMA2RH Mark-eins board"
266a83860c2SRalf Baechle	select SOC_EMMA2RH
267a83860c2SRalf Baechle	select HW_HAS_PCI
268a83860c2SRalf Baechle	help
269a83860c2SRalf Baechle	  This enables support for the NEC Electronics Mark-eins boards.
270ade299d8SYoichi Yuasa
2715e83d430SRalf Baechleconfig MACH_VR41XX
27274142d65SYoichi Yuasa	bool "NEC VR4100 series based machines"
27342f77542SRalf Baechle	select CEVT_R4K
274940f6b48SRalf Baechle	select CSRC_R4K
2757cf8053bSRalf Baechle	select SYS_HAS_CPU_VR41XX
27627fdd325SYoichi Yuasa	select ARCH_REQUIRE_GPIOLIB
2775e83d430SRalf Baechle
278edb6310aSDaniel Lairdconfig NXP_STB220
279edb6310aSDaniel Laird	bool "NXP STB220 board"
280edb6310aSDaniel Laird	select SOC_PNX833X
281edb6310aSDaniel Laird	help
282edb6310aSDaniel Laird	 Support for NXP Semiconductors STB220 Development Board.
283edb6310aSDaniel Laird
284edb6310aSDaniel Lairdconfig NXP_STB225
285edb6310aSDaniel Laird	bool "NXP 225 board"
286edb6310aSDaniel Laird	select SOC_PNX833X
287edb6310aSDaniel Laird	select SOC_PNX8335
288edb6310aSDaniel Laird	help
289edb6310aSDaniel Laird	 Support for NXP Semiconductors STB225 Development Board.
290edb6310aSDaniel Laird
291ade299d8SYoichi Yuasaconfig PNX8550_JBS
292a92b0588SDaniel Laird	bool "NXP PNX8550 based JBS board"
293ade299d8SYoichi Yuasa	select PNX8550
294ade299d8SYoichi Yuasa	select SYS_SUPPORTS_LITTLE_ENDIAN
295ade299d8SYoichi Yuasa
296ade299d8SYoichi Yuasaconfig PNX8550_STB810
297a92b0588SDaniel Laird	bool "NXP PNX8550 based STB810 board"
298ade299d8SYoichi Yuasa	select PNX8550
299ade299d8SYoichi Yuasa	select SYS_SUPPORTS_LITTLE_ENDIAN
300ade299d8SYoichi Yuasa
3019267a30dSMarc St-Jeanconfig PMC_MSP
3029267a30dSMarc St-Jean	bool "PMC-Sierra MSP chipsets"
3039267a30dSMarc St-Jean	depends on EXPERIMENTAL
3049267a30dSMarc St-Jean	select DMA_NONCOHERENT
3059267a30dSMarc St-Jean	select SWAP_IO_SPACE
3069267a30dSMarc St-Jean	select NO_EXCEPT_FILL
3079267a30dSMarc St-Jean	select BOOT_RAW
3089267a30dSMarc St-Jean	select SYS_HAS_CPU_MIPS32_R1
3099267a30dSMarc St-Jean	select SYS_HAS_CPU_MIPS32_R2
3109267a30dSMarc St-Jean	select SYS_SUPPORTS_32BIT_KERNEL
3119267a30dSMarc St-Jean	select SYS_SUPPORTS_BIG_ENDIAN
3129267a30dSMarc St-Jean	select IRQ_CPU
3139267a30dSMarc St-Jean	select SERIAL_8250
3149267a30dSMarc St-Jean	select SERIAL_8250_CONSOLE
3159267a30dSMarc St-Jean	help
3169267a30dSMarc St-Jean	  This adds support for the PMC-Sierra family of Multi-Service
3179267a30dSMarc St-Jean	  Processor System-On-A-Chips.  These parts include a number
3189267a30dSMarc St-Jean	  of integrated peripherals, interfaces and DSPs in addition to
3199267a30dSMarc St-Jean	  a variety of MIPS cores.
3209267a30dSMarc St-Jean
3215e83d430SRalf Baechleconfig PMC_YOSEMITE
3223fa986faSMartin Michlmayr	bool "PMC-Sierra Yosemite eval board"
32342f77542SRalf Baechle	select CEVT_R4K
324940f6b48SRalf Baechle	select CSRC_R4K
3255e83d430SRalf Baechle	select DMA_COHERENT
3265e83d430SRalf Baechle	select HW_HAS_PCI
3275e83d430SRalf Baechle	select IRQ_CPU
3285e83d430SRalf Baechle	select IRQ_CPU_RM7K
3295e83d430SRalf Baechle	select IRQ_CPU_RM9K
3305e83d430SRalf Baechle	select SWAP_IO_SPACE
3317cf8053bSRalf Baechle	select SYS_HAS_CPU_RM9000
33236a88530SRalf Baechle	select SYS_HAS_EARLY_PRINTK
3335e83d430SRalf Baechle	select SYS_SUPPORTS_32BIT_KERNEL
3345e83d430SRalf Baechle	select SYS_SUPPORTS_64BIT_KERNEL
3355e83d430SRalf Baechle	select SYS_SUPPORTS_BIG_ENDIAN
3365e83d430SRalf Baechle	select SYS_SUPPORTS_HIGHMEM
337e73ea273SRalf Baechle	select SYS_SUPPORTS_SMP
3385e83d430SRalf Baechle	help
3395e83d430SRalf Baechle	  Yosemite is an evaluation board for the RM9000x2 processor
3405e83d430SRalf Baechle	  manufactured by PMC-Sierra.
3411da177e4SLinus Torvalds
342a3a0f8c8SDavid VomLehnconfig POWERTV
343a3a0f8c8SDavid VomLehn	bool "Cisco PowerTV"
344a3a0f8c8SDavid VomLehn	select BOOT_ELF32
345a3a0f8c8SDavid VomLehn	select CEVT_R4K
346a3a0f8c8SDavid VomLehn	select CPU_MIPSR2_IRQ_VI
347a3a0f8c8SDavid VomLehn	select CPU_MIPSR2_IRQ_EI
348a3a0f8c8SDavid VomLehn	select CSRC_POWERTV
349a3a0f8c8SDavid VomLehn	select DMA_NONCOHERENT
350a3a0f8c8SDavid VomLehn	select HW_HAS_PCI
351a3a0f8c8SDavid VomLehn	select SYS_HAS_EARLY_PRINTK
352a3a0f8c8SDavid VomLehn	select SYS_HAS_CPU_MIPS32_R2
353a3a0f8c8SDavid VomLehn	select SYS_SUPPORTS_32BIT_KERNEL
354a3a0f8c8SDavid VomLehn	select SYS_SUPPORTS_BIG_ENDIAN
355a3a0f8c8SDavid VomLehn	select SYS_SUPPORTS_HIGHMEM
356a3a0f8c8SDavid VomLehn	select USB_OHCI_LITTLE_ENDIAN
357a3a0f8c8SDavid VomLehn	help
358a3a0f8c8SDavid VomLehn	  This enables support for the Cisco PowerTV Platform.
359a3a0f8c8SDavid VomLehn
3601da177e4SLinus Torvaldsconfig SGI_IP22
3613fa986faSMartin Michlmayr	bool "SGI IP22 (Indy/Indigo2)"
3621da177e4SLinus Torvalds	select ARC
3631da177e4SLinus Torvalds	select ARC32
3641da177e4SLinus Torvalds	select BOOT_ELF32
36542f77542SRalf Baechle	select CEVT_R4K
366940f6b48SRalf Baechle	select CSRC_R4K
367e2defae5SThomas Bogendoerfer	select DEFAULT_SGI_PARTITION
3681da177e4SLinus Torvalds	select DMA_NONCOHERENT
3695e83d430SRalf Baechle	select HW_HAS_EISA
370d865bea4SRalf Baechle	select I8253
37168de4803SThomas Bogendoerfer	select I8259
3721da177e4SLinus Torvalds	select IP22_CPU_SCACHE
3731da177e4SLinus Torvalds	select IRQ_CPU
374aa414dffSRalf Baechle	select GENERIC_ISA_DMA_SUPPORT_BROKEN
375e2defae5SThomas Bogendoerfer	select SGI_HAS_I8042
376e2defae5SThomas Bogendoerfer	select SGI_HAS_INDYDOG
37736e5c21dSThomas Bogendoerfer	select SGI_HAS_HAL2
378e2defae5SThomas Bogendoerfer	select SGI_HAS_SEEQ
379e2defae5SThomas Bogendoerfer	select SGI_HAS_WD93
380e2defae5SThomas Bogendoerfer	select SGI_HAS_ZILOG
3811da177e4SLinus Torvalds	select SWAP_IO_SPACE
3827cf8053bSRalf Baechle	select SYS_HAS_CPU_R4X00
3837cf8053bSRalf Baechle	select SYS_HAS_CPU_R5000
3842b5e63f6SMartin Michlmayr	#
3852b5e63f6SMartin Michlmayr	# Disable EARLY_PRINTK for now since it leads to overwritten prom
3862b5e63f6SMartin Michlmayr	# memory during early boot on some machines.
3872b5e63f6SMartin Michlmayr	#
3882b5e63f6SMartin Michlmayr	# See http://www.linux-mips.org/cgi-bin/mesg.cgi?a=linux-mips&i=20091119164009.GA15038%40deprecation.cyrius.com
3892b5e63f6SMartin Michlmayr	# for a more details discussion
3902b5e63f6SMartin Michlmayr	#
3912b5e63f6SMartin Michlmayr	# select SYS_HAS_EARLY_PRINTK
392ed5ba2fbSYoichi Yuasa	select SYS_SUPPORTS_32BIT_KERNEL
393ed5ba2fbSYoichi Yuasa	select SYS_SUPPORTS_64BIT_KERNEL
3945e83d430SRalf Baechle	select SYS_SUPPORTS_BIG_ENDIAN
3951da177e4SLinus Torvalds	help
3961da177e4SLinus Torvalds	  This are the SGI Indy, Challenge S and Indigo2, as well as certain
3971da177e4SLinus Torvalds	  OEM variants like the Tandem CMN B006S. To compile a Linux kernel
3981da177e4SLinus Torvalds	  that runs on these, say Y here.
3991da177e4SLinus Torvalds
4001da177e4SLinus Torvaldsconfig SGI_IP27
4013fa986faSMartin Michlmayr	bool "SGI IP27 (Origin200/2000)"
4021da177e4SLinus Torvalds	select ARC
4031da177e4SLinus Torvalds	select ARC64
4045e83d430SRalf Baechle	select BOOT_ELF64
405e2defae5SThomas Bogendoerfer	select DEFAULT_SGI_PARTITION
406634286f1SRalf Baechle	select DMA_COHERENT
40736a88530SRalf Baechle	select SYS_HAS_EARLY_PRINTK
4081da177e4SLinus Torvalds	select HW_HAS_PCI
409130e2fb7SRalf Baechle	select NR_CPUS_DEFAULT_64
4107cf8053bSRalf Baechle	select SYS_HAS_CPU_R10000
411ed5ba2fbSYoichi Yuasa	select SYS_SUPPORTS_64BIT_KERNEL
4125e83d430SRalf Baechle	select SYS_SUPPORTS_BIG_ENDIAN
413d8cb4e11SRalf Baechle	select SYS_SUPPORTS_NUMA
4141a5c5de1SRalf Baechle	select SYS_SUPPORTS_SMP
4151da177e4SLinus Torvalds	help
4161da177e4SLinus Torvalds	  This are the SGI Origin 200, Origin 2000 and Onyx 2 Graphics
4171da177e4SLinus Torvalds	  workstations.  To compile a Linux kernel that runs on these, say Y
4181da177e4SLinus Torvalds	  here.
4191da177e4SLinus Torvalds
420e2defae5SThomas Bogendoerferconfig SGI_IP28
421e2defae5SThomas Bogendoerfer	bool "SGI IP28 (Indigo2 R10k) (EXPERIMENTAL)"
422e2defae5SThomas Bogendoerfer	depends on EXPERIMENTAL
423e2defae5SThomas Bogendoerfer	select ARC
424e2defae5SThomas Bogendoerfer	select ARC64
425e2defae5SThomas Bogendoerfer	select BOOT_ELF64
426e2defae5SThomas Bogendoerfer	select CEVT_R4K
427e2defae5SThomas Bogendoerfer	select CSRC_R4K
428e2defae5SThomas Bogendoerfer	select DEFAULT_SGI_PARTITION
429e2defae5SThomas Bogendoerfer	select DMA_NONCOHERENT
430e2defae5SThomas Bogendoerfer	select GENERIC_ISA_DMA_SUPPORT_BROKEN
431e2defae5SThomas Bogendoerfer	select IRQ_CPU
432e2defae5SThomas Bogendoerfer	select HW_HAS_EISA
433e2defae5SThomas Bogendoerfer	select I8253
434e2defae5SThomas Bogendoerfer	select I8259
435e2defae5SThomas Bogendoerfer	select SGI_HAS_I8042
436e2defae5SThomas Bogendoerfer	select SGI_HAS_INDYDOG
4375b438c44SThomas Bogendoerfer	select SGI_HAS_HAL2
438e2defae5SThomas Bogendoerfer	select SGI_HAS_SEEQ
439e2defae5SThomas Bogendoerfer	select SGI_HAS_WD93
440e2defae5SThomas Bogendoerfer	select SGI_HAS_ZILOG
441e2defae5SThomas Bogendoerfer	select SWAP_IO_SPACE
442e2defae5SThomas Bogendoerfer	select SYS_HAS_CPU_R10000
4432b5e63f6SMartin Michlmayr	#
4442b5e63f6SMartin Michlmayr	# Disable EARLY_PRINTK for now since it leads to overwritten prom
4452b5e63f6SMartin Michlmayr	# memory during early boot on some machines.
4462b5e63f6SMartin Michlmayr	#
4472b5e63f6SMartin Michlmayr	# See http://www.linux-mips.org/cgi-bin/mesg.cgi?a=linux-mips&i=20091119164009.GA15038%40deprecation.cyrius.com
4482b5e63f6SMartin Michlmayr	# for a more details discussion
4492b5e63f6SMartin Michlmayr	#
4502b5e63f6SMartin Michlmayr	# select SYS_HAS_EARLY_PRINTK
451e2defae5SThomas Bogendoerfer	select SYS_SUPPORTS_64BIT_KERNEL
452e2defae5SThomas Bogendoerfer	select SYS_SUPPORTS_BIG_ENDIAN
453e2defae5SThomas Bogendoerfer      help
454e2defae5SThomas Bogendoerfer        This is the SGI Indigo2 with R10000 processor.  To compile a Linux
455e2defae5SThomas Bogendoerfer        kernel that runs on these, say Y here.
456e2defae5SThomas Bogendoerfer
4571da177e4SLinus Torvaldsconfig SGI_IP32
458cfd2afc0SRalf Baechle	bool "SGI IP32 (O2)"
4591da177e4SLinus Torvalds	select ARC
4601da177e4SLinus Torvalds	select ARC32
4611da177e4SLinus Torvalds	select BOOT_ELF32
46242f77542SRalf Baechle	select CEVT_R4K
463940f6b48SRalf Baechle	select CSRC_R4K
4641da177e4SLinus Torvalds	select DMA_NONCOHERENT
4651da177e4SLinus Torvalds	select HW_HAS_PCI
466dd67b155SRalf Baechle	select IRQ_CPU
4671da177e4SLinus Torvalds	select R5000_CPU_SCACHE
4681da177e4SLinus Torvalds	select RM7000_CPU_SCACHE
4697cf8053bSRalf Baechle	select SYS_HAS_CPU_R5000
4707cf8053bSRalf Baechle	select SYS_HAS_CPU_R10000 if BROKEN
4717cf8053bSRalf Baechle	select SYS_HAS_CPU_RM7000
472dd2f18feSRalf Baechle	select SYS_HAS_CPU_NEVADA
473ed5ba2fbSYoichi Yuasa	select SYS_SUPPORTS_64BIT_KERNEL
4745e83d430SRalf Baechle	select SYS_SUPPORTS_BIG_ENDIAN
4751da177e4SLinus Torvalds	help
4761da177e4SLinus Torvalds	  If you want this kernel to run on SGI O2 workstation, say Y here.
4771da177e4SLinus Torvalds
478ade299d8SYoichi Yuasaconfig SIBYTE_CRHINE
479ade299d8SYoichi Yuasa	bool "Sibyte BCM91120C-CRhine"
4805e83d430SRalf Baechle	depends on EXPERIMENTAL
4815e83d430SRalf Baechle	select BOOT_ELF32
4825e83d430SRalf Baechle	select DMA_COHERENT
4835e83d430SRalf Baechle	select SIBYTE_BCM1120
4845e83d430SRalf Baechle	select SWAP_IO_SPACE
4857cf8053bSRalf Baechle	select SYS_HAS_CPU_SB1
4865e83d430SRalf Baechle	select SYS_SUPPORTS_BIG_ENDIAN
4875e83d430SRalf Baechle	select SYS_SUPPORTS_LITTLE_ENDIAN
4885e83d430SRalf Baechle
489ade299d8SYoichi Yuasaconfig SIBYTE_CARMEL
490ade299d8SYoichi Yuasa	bool "Sibyte BCM91120x-Carmel"
4915e83d430SRalf Baechle	depends on EXPERIMENTAL
4925e83d430SRalf Baechle	select BOOT_ELF32
4935e83d430SRalf Baechle	select DMA_COHERENT
4945e83d430SRalf Baechle	select SIBYTE_BCM1120
4955e83d430SRalf Baechle	select SWAP_IO_SPACE
4967cf8053bSRalf Baechle	select SYS_HAS_CPU_SB1
4975e83d430SRalf Baechle	select SYS_SUPPORTS_BIG_ENDIAN
4985e83d430SRalf Baechle	select SYS_SUPPORTS_LITTLE_ENDIAN
4995e83d430SRalf Baechle
5005e83d430SRalf Baechleconfig SIBYTE_CRHONE
5013fa986faSMartin Michlmayr	bool "Sibyte BCM91125C-CRhone"
5025e83d430SRalf Baechle	depends on EXPERIMENTAL
5035e83d430SRalf Baechle	select BOOT_ELF32
5045e83d430SRalf Baechle	select DMA_COHERENT
5055e83d430SRalf Baechle	select SIBYTE_BCM1125
5065e83d430SRalf Baechle	select SWAP_IO_SPACE
5077cf8053bSRalf Baechle	select SYS_HAS_CPU_SB1
5085e83d430SRalf Baechle	select SYS_SUPPORTS_BIG_ENDIAN
5095e83d430SRalf Baechle	select SYS_SUPPORTS_HIGHMEM
5105e83d430SRalf Baechle	select SYS_SUPPORTS_LITTLE_ENDIAN
5115e83d430SRalf Baechle
512ade299d8SYoichi Yuasaconfig SIBYTE_RHONE
513ade299d8SYoichi Yuasa	bool "Sibyte BCM91125E-Rhone"
514ade299d8SYoichi Yuasa	depends on EXPERIMENTAL
515ade299d8SYoichi Yuasa	select BOOT_ELF32
516ade299d8SYoichi Yuasa	select DMA_COHERENT
517ade299d8SYoichi Yuasa	select SIBYTE_BCM1125H
518ade299d8SYoichi Yuasa	select SWAP_IO_SPACE
519ade299d8SYoichi Yuasa	select SYS_HAS_CPU_SB1
520ade299d8SYoichi Yuasa	select SYS_SUPPORTS_BIG_ENDIAN
521ade299d8SYoichi Yuasa	select SYS_SUPPORTS_LITTLE_ENDIAN
522ade299d8SYoichi Yuasa
523ade299d8SYoichi Yuasaconfig SIBYTE_SWARM
524ade299d8SYoichi Yuasa	bool "Sibyte BCM91250A-SWARM"
525ade299d8SYoichi Yuasa	select BOOT_ELF32
526ade299d8SYoichi Yuasa	select DMA_COHERENT
527ade299d8SYoichi Yuasa	select NR_CPUS_DEFAULT_2
528ade299d8SYoichi Yuasa	select SIBYTE_SB1250
529ade299d8SYoichi Yuasa	select SWAP_IO_SPACE
530ade299d8SYoichi Yuasa	select SYS_HAS_CPU_SB1
531ade299d8SYoichi Yuasa	select SYS_SUPPORTS_BIG_ENDIAN
532ade299d8SYoichi Yuasa	select SYS_SUPPORTS_HIGHMEM
533ade299d8SYoichi Yuasa	select SYS_SUPPORTS_LITTLE_ENDIAN
534cce335aeSRalf Baechle	select ZONE_DMA32 if 64BIT
535ade299d8SYoichi Yuasa
536ade299d8SYoichi Yuasaconfig SIBYTE_LITTLESUR
537ade299d8SYoichi Yuasa	bool "Sibyte BCM91250C2-LittleSur"
538ade299d8SYoichi Yuasa	depends on EXPERIMENTAL
539ade299d8SYoichi Yuasa	select BOOT_ELF32
540ade299d8SYoichi Yuasa	select DMA_COHERENT
541ade299d8SYoichi Yuasa	select NR_CPUS_DEFAULT_2
542ade299d8SYoichi Yuasa	select SIBYTE_SB1250
543ade299d8SYoichi Yuasa	select SWAP_IO_SPACE
544ade299d8SYoichi Yuasa	select SYS_HAS_CPU_SB1
545ade299d8SYoichi Yuasa	select SYS_SUPPORTS_BIG_ENDIAN
546ade299d8SYoichi Yuasa	select SYS_SUPPORTS_HIGHMEM
547ade299d8SYoichi Yuasa	select SYS_SUPPORTS_LITTLE_ENDIAN
548ade299d8SYoichi Yuasa
549ade299d8SYoichi Yuasaconfig SIBYTE_SENTOSA
550ade299d8SYoichi Yuasa	bool "Sibyte BCM91250E-Sentosa"
551ade299d8SYoichi Yuasa	depends on EXPERIMENTAL
552ade299d8SYoichi Yuasa	select BOOT_ELF32
553ade299d8SYoichi Yuasa	select DMA_COHERENT
554ade299d8SYoichi Yuasa	select NR_CPUS_DEFAULT_2
555ade299d8SYoichi Yuasa	select SIBYTE_SB1250
556ade299d8SYoichi Yuasa	select SWAP_IO_SPACE
557ade299d8SYoichi Yuasa	select SYS_HAS_CPU_SB1
558ade299d8SYoichi Yuasa	select SYS_SUPPORTS_BIG_ENDIAN
559ade299d8SYoichi Yuasa	select SYS_SUPPORTS_LITTLE_ENDIAN
560ade299d8SYoichi Yuasa
561ade299d8SYoichi Yuasaconfig SIBYTE_BIGSUR
562ade299d8SYoichi Yuasa	bool "Sibyte BCM91480B-BigSur"
563ade299d8SYoichi Yuasa	select BOOT_ELF32
564ade299d8SYoichi Yuasa	select DMA_COHERENT
565ade299d8SYoichi Yuasa	select NR_CPUS_DEFAULT_4
566ade299d8SYoichi Yuasa	select SIBYTE_BCM1x80
567ade299d8SYoichi Yuasa	select SWAP_IO_SPACE
568ade299d8SYoichi Yuasa	select SYS_HAS_CPU_SB1
569ade299d8SYoichi Yuasa	select SYS_SUPPORTS_BIG_ENDIAN
570651194f8SRalf Baechle	select SYS_SUPPORTS_HIGHMEM
571ade299d8SYoichi Yuasa	select SYS_SUPPORTS_LITTLE_ENDIAN
572cce335aeSRalf Baechle	select ZONE_DMA32 if 64BIT
573ade299d8SYoichi Yuasa
57414b36af4SThomas Bogendoerferconfig SNI_RM
57514b36af4SThomas Bogendoerfer	bool "SNI RM200/300/400"
5764a0312fcSThomas Bogendoerfer	select ARC if CPU_LITTLE_ENDIAN
5774a0312fcSThomas Bogendoerfer	select ARC32 if CPU_LITTLE_ENDIAN
578231a35d3SThomas Bogendoerfer	select SNIPROM if CPU_BIG_ENDIAN
5795e83d430SRalf Baechle	select ARCH_MAY_HAVE_PC_FDC
5805e83d430SRalf Baechle	select BOOT_ELF32
58142f77542SRalf Baechle	select CEVT_R4K
582940f6b48SRalf Baechle	select CSRC_R4K
583e2defae5SThomas Bogendoerfer	select DEFAULT_SGI_PARTITION if CPU_BIG_ENDIAN
5845e83d430SRalf Baechle	select DMA_NONCOHERENT
5855e83d430SRalf Baechle	select GENERIC_ISA_DMA
5865e83d430SRalf Baechle	select HW_HAS_EISA
5875e83d430SRalf Baechle	select HW_HAS_PCI
588c066a32aSThomas Bogendoerfer	select IRQ_CPU
589d865bea4SRalf Baechle	select I8253
5905e83d430SRalf Baechle	select I8259
5915e83d430SRalf Baechle	select ISA
5924a0312fcSThomas Bogendoerfer	select SWAP_IO_SPACE if CPU_BIG_ENDIAN
5937cf8053bSRalf Baechle	select SYS_HAS_CPU_R4X00
5944a0312fcSThomas Bogendoerfer	select SYS_HAS_CPU_R5000
595c066a32aSThomas Bogendoerfer	select SYS_HAS_CPU_R10000
5964a0312fcSThomas Bogendoerfer	select R5000_CPU_SCACHE
59736a88530SRalf Baechle	select SYS_HAS_EARLY_PRINTK
598ed5ba2fbSYoichi Yuasa	select SYS_SUPPORTS_32BIT_KERNEL
5995e83d430SRalf Baechle	select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
6004a0312fcSThomas Bogendoerfer	select SYS_SUPPORTS_BIG_ENDIAN
6015e83d430SRalf Baechle	select SYS_SUPPORTS_HIGHMEM
6025e83d430SRalf Baechle	select SYS_SUPPORTS_LITTLE_ENDIAN
6031da177e4SLinus Torvalds	help
60414b36af4SThomas Bogendoerfer	  The SNI RM200/300/400 are MIPS-based machines manufactured by
60514b36af4SThomas Bogendoerfer	  Siemens Nixdorf Informationssysteme (SNI), parent company of Pyramid
6065e83d430SRalf Baechle	  Technology and now in turn merged with Fujitsu.  Say Y here to
6075e83d430SRalf Baechle	  support this machine type.
6081da177e4SLinus Torvalds
609edcaf1a6SAtsushi Nemotoconfig MACH_TX39XX
610edcaf1a6SAtsushi Nemoto	bool "Toshiba TX39 series based machines"
6115e83d430SRalf Baechle
612edcaf1a6SAtsushi Nemotoconfig MACH_TX49XX
613edcaf1a6SAtsushi Nemoto	bool "Toshiba TX49 series based machines"
61423fbee9dSRalf Baechle
61573b4390fSRalf Baechleconfig MIKROTIK_RB532
61673b4390fSRalf Baechle	bool "Mikrotik RB532 boards"
61773b4390fSRalf Baechle	select CEVT_R4K
61873b4390fSRalf Baechle	select CSRC_R4K
61973b4390fSRalf Baechle	select DMA_NONCOHERENT
62073b4390fSRalf Baechle	select HW_HAS_PCI
62173b4390fSRalf Baechle	select IRQ_CPU
62273b4390fSRalf Baechle	select SYS_HAS_CPU_MIPS32_R1
62373b4390fSRalf Baechle	select SYS_SUPPORTS_32BIT_KERNEL
62473b4390fSRalf Baechle	select SYS_SUPPORTS_LITTLE_ENDIAN
62573b4390fSRalf Baechle	select SWAP_IO_SPACE
62673b4390fSRalf Baechle	select BOOT_RAW
627d888e25bSFlorian Fainelli	select ARCH_REQUIRE_GPIOLIB
62873b4390fSRalf Baechle	help
62973b4390fSRalf Baechle	  Support the Mikrotik(tm) RouterBoard 532 series,
63073b4390fSRalf Baechle	  based on the IDT RC32434 SoC.
63173b4390fSRalf Baechle
632ade299d8SYoichi Yuasaconfig WR_PPMC
633ade299d8SYoichi Yuasa	bool "Wind River PPMC board"
63442f77542SRalf Baechle	select CEVT_R4K
635940f6b48SRalf Baechle	select CSRC_R4K
636ade299d8SYoichi Yuasa	select IRQ_CPU
637ade299d8SYoichi Yuasa	select BOOT_ELF32
638ade299d8SYoichi Yuasa	select DMA_NONCOHERENT
639ade299d8SYoichi Yuasa	select HW_HAS_PCI
640ade299d8SYoichi Yuasa	select PCI_GT64XXX_PCI0
641ade299d8SYoichi Yuasa	select SWAP_IO_SPACE
642ade299d8SYoichi Yuasa	select SYS_HAS_CPU_MIPS32_R1
643ade299d8SYoichi Yuasa	select SYS_HAS_CPU_MIPS32_R2
644ade299d8SYoichi Yuasa	select SYS_HAS_CPU_MIPS64_R1
645ade299d8SYoichi Yuasa	select SYS_HAS_CPU_NEVADA
646ade299d8SYoichi Yuasa	select SYS_HAS_CPU_RM7000
647ade299d8SYoichi Yuasa	select SYS_SUPPORTS_32BIT_KERNEL
648ade299d8SYoichi Yuasa	select SYS_SUPPORTS_64BIT_KERNEL
649ade299d8SYoichi Yuasa	select SYS_SUPPORTS_BIG_ENDIAN
650ade299d8SYoichi Yuasa	select SYS_SUPPORTS_LITTLE_ENDIAN
651ade299d8SYoichi Yuasa	help
652ade299d8SYoichi Yuasa	  This enables support for the Wind River MIPS32 4KC PPMC evaluation
653ade299d8SYoichi Yuasa	  board, which is based on GT64120 bridge chip.
654ade299d8SYoichi Yuasa
655a86c7f72SDavid Daneyconfig CAVIUM_OCTEON_SIMULATOR
656c9d89d97SYoichi Yuasa	bool "Cavium Networks Octeon Simulator"
657a86c7f72SDavid Daney	select CEVT_R4K
658a86c7f72SDavid Daney	select 64BIT_PHYS_ADDR
659a86c7f72SDavid Daney	select DMA_COHERENT
660a86c7f72SDavid Daney	select SYS_SUPPORTS_64BIT_KERNEL
661a86c7f72SDavid Daney	select SYS_SUPPORTS_BIG_ENDIAN
662a86c7f72SDavid Daney	select SYS_SUPPORTS_HIGHMEM
663773cb77dSRalf Baechle	select SYS_SUPPORTS_HOTPLUG_CPU
6645e683389SDavid Daney	select SYS_HAS_CPU_CAVIUM_OCTEON
665a86c7f72SDavid Daney	help
666a86c7f72SDavid Daney	  The Octeon simulator is software performance model of the Cavium
667a86c7f72SDavid Daney	  Octeon Processor. It supports simulating Octeon processors on x86
668a86c7f72SDavid Daney	  hardware.
669a86c7f72SDavid Daney
670a86c7f72SDavid Daneyconfig CAVIUM_OCTEON_REFERENCE_BOARD
671c9d89d97SYoichi Yuasa	bool "Cavium Networks Octeon reference board"
672a86c7f72SDavid Daney	select CEVT_R4K
673a86c7f72SDavid Daney	select 64BIT_PHYS_ADDR
674a86c7f72SDavid Daney	select DMA_COHERENT
675a86c7f72SDavid Daney	select SYS_SUPPORTS_64BIT_KERNEL
676a86c7f72SDavid Daney	select SYS_SUPPORTS_BIG_ENDIAN
677a86c7f72SDavid Daney	select SYS_SUPPORTS_HIGHMEM
678773cb77dSRalf Baechle	select SYS_SUPPORTS_HOTPLUG_CPU
679a86c7f72SDavid Daney	select SYS_HAS_EARLY_PRINTK
6805e683389SDavid Daney	select SYS_HAS_CPU_CAVIUM_OCTEON
681a86c7f72SDavid Daney	select SWAP_IO_SPACE
682e8635b48SDavid Daney	select HW_HAS_PCI
683e8635b48SDavid Daney	select ARCH_SUPPORTS_MSI
684a86c7f72SDavid Daney	help
685a86c7f72SDavid Daney	  This option supports all of the Octeon reference boards from Cavium
686a86c7f72SDavid Daney	  Networks. It builds a kernel that dynamically determines the Octeon
687a86c7f72SDavid Daney	  CPU type and supports all known board reference implementations.
688a86c7f72SDavid Daney	  Some of the supported boards are:
689a86c7f72SDavid Daney		EBT3000
690a86c7f72SDavid Daney		EBH3000
691a86c7f72SDavid Daney		EBH3100
692a86c7f72SDavid Daney		Thunder
693a86c7f72SDavid Daney		Kodama
694a86c7f72SDavid Daney		Hikari
695a86c7f72SDavid Daney	  Say Y here for most Octeon reference boards.
696a86c7f72SDavid Daney
6971da177e4SLinus Torvaldsendchoice
6981da177e4SLinus Torvalds
699e8c7c482SRalf Baechlesource "arch/mips/alchemy/Kconfig"
7009c746edbSYoichi Yuasasource "arch/mips/basler/excite/Kconfig"
701e7300d04SMaxime Bizonsource "arch/mips/bcm63xx/Kconfig"
7025e83d430SRalf Baechlesource "arch/mips/jazz/Kconfig"
7031f21d2bdSBrian Murphysource "arch/mips/lasat/Kconfig"
7045e83d430SRalf Baechlesource "arch/mips/pmc-sierra/Kconfig"
705a3a0f8c8SDavid VomLehnsource "arch/mips/powertv/Kconfig"
70629c48699SRalf Baechlesource "arch/mips/sgi-ip27/Kconfig"
70738b18f72SRalf Baechlesource "arch/mips/sibyte/Kconfig"
70822b1d707SAtsushi Nemotosource "arch/mips/txx9/Kconfig"
7095e83d430SRalf Baechlesource "arch/mips/vr41xx/Kconfig"
710a86c7f72SDavid Daneysource "arch/mips/cavium-octeon/Kconfig"
71185749d24SWu Zhangjinsource "arch/mips/loongson/Kconfig"
71238b18f72SRalf Baechle
7135e83d430SRalf Baechleendmenu
7145e83d430SRalf Baechle
7151da177e4SLinus Torvaldsconfig RWSEM_GENERIC_SPINLOCK
7161da177e4SLinus Torvalds	bool
7171da177e4SLinus Torvalds	default y
7181da177e4SLinus Torvalds
7191da177e4SLinus Torvaldsconfig RWSEM_XCHGADD_ALGORITHM
7201da177e4SLinus Torvalds	bool
7211da177e4SLinus Torvalds
722f0d1b0b3SDavid Howellsconfig ARCH_HAS_ILOG2_U32
723f0d1b0b3SDavid Howells	bool
724f0d1b0b3SDavid Howells	default n
725f0d1b0b3SDavid Howells
726f0d1b0b3SDavid Howellsconfig ARCH_HAS_ILOG2_U64
727f0d1b0b3SDavid Howells	bool
728f0d1b0b3SDavid Howells	default n
729f0d1b0b3SDavid Howells
73000a58253SRalf Baechleconfig ARCH_SUPPORTS_OPROFILE
73100a58253SRalf Baechle	bool
73200a58253SRalf Baechle	default y if !MIPS_MT_SMTC
73300a58253SRalf Baechle
7343c9ee7efSAkinobu Mitaconfig GENERIC_FIND_NEXT_BIT
7353c9ee7efSAkinobu Mita	bool
7363c9ee7efSAkinobu Mita	default y
7373c9ee7efSAkinobu Mita
7383c9ee7efSAkinobu Mitaconfig GENERIC_HWEIGHT
7393c9ee7efSAkinobu Mita	bool
7403c9ee7efSAkinobu Mita	default y
7413c9ee7efSAkinobu Mita
7421da177e4SLinus Torvaldsconfig GENERIC_CALIBRATE_DELAY
7431da177e4SLinus Torvalds	bool
7441da177e4SLinus Torvalds	default y
7451da177e4SLinus Torvalds
7467bcf7717SRalf Baechleconfig GENERIC_CLOCKEVENTS
7477bcf7717SRalf Baechle	bool
7487bcf7717SRalf Baechle	default y
7497bcf7717SRalf Baechle
7508db02010SRalf Baechleconfig GENERIC_TIME
7518db02010SRalf Baechle	bool
7528db02010SRalf Baechle	default y
7538db02010SRalf Baechle
754f5ff0a28SRalf Baechleconfig GENERIC_CMOS_UPDATE
755f5ff0a28SRalf Baechle	bool
756f5ff0a28SRalf Baechle	default y
757f5ff0a28SRalf Baechle
758ae1e9130SIngo Molnarconfig SCHED_OMIT_FRAME_POINTER
7591cc89038SAtsushi Nemoto	bool
7601cc89038SAtsushi Nemoto	default y
7611cc89038SAtsushi Nemoto
762e77c232cSFranck Bui-Huuconfig GENERIC_HARDIRQS_NO__DO_IRQ
763c87e0909SRalf Baechle	def_bool y
764e77c232cSFranck Bui-Huu
7651da177e4SLinus Torvalds#
7661da177e4SLinus Torvalds# Select some configuration options automatically based on user selections.
7671da177e4SLinus Torvalds#
7681da177e4SLinus Torvaldsconfig ARC
7691da177e4SLinus Torvalds	bool
7701da177e4SLinus Torvalds
77161ed242dSRalf Baechleconfig ARCH_MAY_HAVE_PC_FDC
77261ed242dSRalf Baechle	bool
77361ed242dSRalf Baechle
7749267a30dSMarc St-Jeanconfig BOOT_RAW
7759267a30dSMarc St-Jean	bool
7769267a30dSMarc St-Jean
777217dd11eSRalf Baechleconfig CEVT_BCM1480
778217dd11eSRalf Baechle	bool
779217dd11eSRalf Baechle
7806457d9fcSYoichi Yuasaconfig CEVT_DS1287
7816457d9fcSYoichi Yuasa	bool
7826457d9fcSYoichi Yuasa
7831097c6acSYoichi Yuasaconfig CEVT_GT641XX
7841097c6acSYoichi Yuasa	bool
7851097c6acSYoichi Yuasa
786779e7d41SManuel Laussconfig CEVT_R4K_LIB
787779e7d41SManuel Lauss	bool
788779e7d41SManuel Lauss
78942f77542SRalf Baechleconfig CEVT_R4K
790779e7d41SManuel Lauss	select CEVT_R4K_LIB
79142f77542SRalf Baechle	bool
79242f77542SRalf Baechle
793217dd11eSRalf Baechleconfig CEVT_SB1250
794217dd11eSRalf Baechle	bool
795217dd11eSRalf Baechle
796229f773eSAtsushi Nemotoconfig CEVT_TXX9
797229f773eSAtsushi Nemoto	bool
798229f773eSAtsushi Nemoto
799217dd11eSRalf Baechleconfig CSRC_BCM1480
800217dd11eSRalf Baechle	bool
801217dd11eSRalf Baechle
8024247417dSYoichi Yuasaconfig CSRC_IOASIC
8034247417dSYoichi Yuasa	bool
8044247417dSYoichi Yuasa
805a3a0f8c8SDavid VomLehnconfig CSRC_POWERTV
806a3a0f8c8SDavid VomLehn	bool
807a3a0f8c8SDavid VomLehn
808779e7d41SManuel Laussconfig CSRC_R4K_LIB
809779e7d41SManuel Lauss	bool
810779e7d41SManuel Lauss
811940f6b48SRalf Baechleconfig CSRC_R4K
812779e7d41SManuel Lauss	select CSRC_R4K_LIB
813940f6b48SRalf Baechle	bool
814940f6b48SRalf Baechle
815217dd11eSRalf Baechleconfig CSRC_SB1250
816217dd11eSRalf Baechle	bool
817217dd11eSRalf Baechle
818a9aec7feSAtsushi Nemotoconfig GPIO_TXX9
819a9aec7feSAtsushi Nemoto	select GENERIC_GPIO
8207444a72eSMichael Buesch	select ARCH_REQUIRE_GPIOLIB
821a9aec7feSAtsushi Nemoto	bool
822a9aec7feSAtsushi Nemoto
823df78b5c8SAurelien Jarnoconfig CFE
824df78b5c8SAurelien Jarno	bool
825df78b5c8SAurelien Jarno
8261da177e4SLinus Torvaldsconfig DMA_COHERENT
8271da177e4SLinus Torvalds	bool
8281da177e4SLinus Torvalds
8291da177e4SLinus Torvaldsconfig DMA_NONCOHERENT
8301da177e4SLinus Torvalds	bool
8314ce588cdSRalf Baechle	select DMA_NEED_PCI_MAP_STATE
8324ce588cdSRalf Baechle
8334ce588cdSRalf Baechleconfig DMA_NEED_PCI_MAP_STATE
8344ce588cdSRalf Baechle	bool
8351da177e4SLinus Torvalds
8361da177e4SLinus Torvaldsconfig EARLY_PRINTK
83736a88530SRalf Baechle	bool "Early printk" if EMBEDDED && DEBUG_KERNEL
83836a88530SRalf Baechle	depends on SYS_HAS_EARLY_PRINTK
83936a88530SRalf Baechle	default y
84036a88530SRalf Baechle	help
84136a88530SRalf Baechle	  This option enables special console drivers which allow the kernel
84236a88530SRalf Baechle	  to print messages very early in the bootup process.
84336a88530SRalf Baechle
84436a88530SRalf Baechle	  This is useful for kernel debugging when your machine crashes very
845490dcc4dSRobert P. J. Day	  early before the console code is initialized. For normal operation,
846490dcc4dSRobert P. J. Day	  it is not recommended because it looks ugly on some machines and
847490dcc4dSRobert P. J. Day	  doesn't cooperate with an X server. You should normally say N here,
84836a88530SRalf Baechle	  unless you want to debug such a crash.
84936a88530SRalf Baechle
85036a88530SRalf Baechleconfig SYS_HAS_EARLY_PRINTK
8511da177e4SLinus Torvalds	bool
8521da177e4SLinus Torvalds
853dbb74540SRalf Baechleconfig HOTPLUG_CPU
8541b2bc75cSRalf Baechle	bool "Support for hot-pluggable CPUs"
8551b2bc75cSRalf Baechle	depends on SMP && HOTPLUG && SYS_SUPPORTS_HOTPLUG_CPU
8561b2bc75cSRalf Baechle	help
8571b2bc75cSRalf Baechle	  Say Y here to allow turning CPUs off and on. CPUs can be
8581b2bc75cSRalf Baechle	  controlled through /sys/devices/system/cpu.
8591b2bc75cSRalf Baechle	  (Note: power management support will enable this option
8601b2bc75cSRalf Baechle	    automatically on SMP systems. )
8611b2bc75cSRalf Baechle	  Say N if you want to disable CPU hotplug.
8621b2bc75cSRalf Baechle
8631b2bc75cSRalf Baechleconfig SYS_SUPPORTS_HOTPLUG_CPU
864dbb74540SRalf Baechle	bool
865dbb74540SRalf Baechle
8661da177e4SLinus Torvaldsconfig I8259
8671da177e4SLinus Torvalds	bool
8681da177e4SLinus Torvalds
8691da177e4SLinus Torvaldsconfig MIPS_BONITO64
8701da177e4SLinus Torvalds	bool
8711da177e4SLinus Torvalds
8721da177e4SLinus Torvaldsconfig MIPS_MSC
8731da177e4SLinus Torvalds	bool
8741da177e4SLinus Torvalds
8751f21d2bdSBrian Murphyconfig MIPS_NILE4
8761f21d2bdSBrian Murphy	bool
8771f21d2bdSBrian Murphy
8781da177e4SLinus Torvaldsconfig MIPS_DISABLE_OBSOLETE_IDE
8791da177e4SLinus Torvalds	bool
8801da177e4SLinus Torvalds
88139b8d525SRalf Baechleconfig SYNC_R4K
88239b8d525SRalf Baechle	bool
88339b8d525SRalf Baechle
884d388d685SMaciej W. Rozyckiconfig NO_IOPORT
885d388d685SMaciej W. Rozycki	def_bool n
886d388d685SMaciej W. Rozycki
8878313da30SRalf Baechleconfig GENERIC_ISA_DMA
8888313da30SRalf Baechle	bool
8898313da30SRalf Baechle	select ZONE_DMA if GENERIC_ISA_DMA_SUPPORT_BROKEN=n
8908313da30SRalf Baechle
891aa414dffSRalf Baechleconfig GENERIC_ISA_DMA_SUPPORT_BROKEN
892aa414dffSRalf Baechle	bool
8938313da30SRalf Baechle	select GENERIC_ISA_DMA
894aa414dffSRalf Baechle
89509663335SYoichi Yuasaconfig GENERIC_GPIO
89609663335SYoichi Yuasa	bool
89709663335SYoichi Yuasa
8985e83d430SRalf Baechle#
8993cb2fcccSMatt LaPlante# Endianess selection.  Sufficiently obscure so many users don't know what to
9005e83d430SRalf Baechle# answer,so we try hard to limit the available choices.  Also the use of a
9015e83d430SRalf Baechle# choice statement should be more obvious to the user.
9025e83d430SRalf Baechle#
9035e83d430SRalf Baechlechoice
9045e83d430SRalf Baechle	prompt "Endianess selection"
9051da177e4SLinus Torvalds	help
9061da177e4SLinus Torvalds	  Some MIPS machines can be configured for either little or big endian
9075e83d430SRalf Baechle	  byte order. These modes require different kernels and a different
9083cb2fcccSMatt LaPlante	  Linux distribution.  In general there is one preferred byteorder for a
9095e83d430SRalf Baechle	  particular system but some systems are just as commonly used in the
9103dde6ad8SDavid Sterba	  one or the other endianness.
9115e83d430SRalf Baechle
9125e83d430SRalf Baechleconfig CPU_BIG_ENDIAN
9135e83d430SRalf Baechle	bool "Big endian"
9145e83d430SRalf Baechle	depends on SYS_SUPPORTS_BIG_ENDIAN
9155e83d430SRalf Baechle
9165e83d430SRalf Baechleconfig CPU_LITTLE_ENDIAN
9175e83d430SRalf Baechle	bool "Little endian"
9185e83d430SRalf Baechle	depends on SYS_SUPPORTS_LITTLE_ENDIAN
9195e83d430SRalf Baechle	help
9205e83d430SRalf Baechle
9215e83d430SRalf Baechleendchoice
9225e83d430SRalf Baechle
9232116245eSRalf Baechleconfig SYS_SUPPORTS_APM_EMULATION
9242116245eSRalf Baechle	bool
9252116245eSRalf Baechle
9265e83d430SRalf Baechleconfig SYS_SUPPORTS_BIG_ENDIAN
9275e83d430SRalf Baechle	bool
9285e83d430SRalf Baechle
9295e83d430SRalf Baechleconfig SYS_SUPPORTS_LITTLE_ENDIAN
9305e83d430SRalf Baechle	bool
9311da177e4SLinus Torvalds
9329cffd154SDavid Daneyconfig SYS_SUPPORTS_HUGETLBFS
9339cffd154SDavid Daney	bool
9349cffd154SDavid Daney	depends on CPU_SUPPORTS_HUGEPAGES && 64BIT
9359cffd154SDavid Daney	default y
9369cffd154SDavid Daney
9371da177e4SLinus Torvaldsconfig IRQ_CPU
9381da177e4SLinus Torvalds	bool
9391da177e4SLinus Torvalds
9401da177e4SLinus Torvaldsconfig IRQ_CPU_RM7K
9411da177e4SLinus Torvalds	bool
9421da177e4SLinus Torvalds
9435e83d430SRalf Baechleconfig IRQ_CPU_RM9K
9445e83d430SRalf Baechle	bool
9455e83d430SRalf Baechle
9469267a30dSMarc St-Jeanconfig IRQ_MSP_SLP
9479267a30dSMarc St-Jean	bool
9489267a30dSMarc St-Jean
9499267a30dSMarc St-Jeanconfig IRQ_MSP_CIC
9509267a30dSMarc St-Jean	bool
9519267a30dSMarc St-Jean
9528420fd00SAtsushi Nemotoconfig IRQ_TXX9
9538420fd00SAtsushi Nemoto	bool
9548420fd00SAtsushi Nemoto
955d5ab1a69SYoichi Yuasaconfig IRQ_GT641XX
956d5ab1a69SYoichi Yuasa	bool
957d5ab1a69SYoichi Yuasa
95839b8d525SRalf Baechleconfig IRQ_GIC
95939b8d525SRalf Baechle	bool
96039b8d525SRalf Baechle
961a86c7f72SDavid Daneyconfig IRQ_CPU_OCTEON
962a86c7f72SDavid Daney	bool
963a86c7f72SDavid Daney
9641da177e4SLinus Torvaldsconfig MIPS_BOARDS_GEN
9651da177e4SLinus Torvalds	bool
9661da177e4SLinus Torvalds
967252161ecSYoichi Yuasaconfig PCI_GT64XXX_PCI0
9681da177e4SLinus Torvalds	bool
9691da177e4SLinus Torvalds
9709267a30dSMarc St-Jeanconfig NO_EXCEPT_FILL
9719267a30dSMarc St-Jean	bool
9729267a30dSMarc St-Jean
973663c3d90Sthomas@koeller.dyndns.orgconfig MIPS_RM9122
974663c3d90Sthomas@koeller.dyndns.org	bool
975663c3d90Sthomas@koeller.dyndns.org	select SERIAL_RM9000
976663c3d90Sthomas@koeller.dyndns.org
977a83860c2SRalf Baechleconfig SOC_EMMA2RH
978a83860c2SRalf Baechle	bool
979a83860c2SRalf Baechle	select CEVT_R4K
980a83860c2SRalf Baechle	select CSRC_R4K
981a83860c2SRalf Baechle	select DMA_NONCOHERENT
982a83860c2SRalf Baechle	select IRQ_CPU
983a83860c2SRalf Baechle	select SWAP_IO_SPACE
984a83860c2SRalf Baechle	select SYS_HAS_CPU_R5500
985a83860c2SRalf Baechle	select SYS_SUPPORTS_32BIT_KERNEL
986a83860c2SRalf Baechle	select SYS_SUPPORTS_64BIT_KERNEL
987a83860c2SRalf Baechle	select SYS_SUPPORTS_BIG_ENDIAN
988a83860c2SRalf Baechle
989edb6310aSDaniel Lairdconfig SOC_PNX833X
990edb6310aSDaniel Laird	bool
991edb6310aSDaniel Laird	select CEVT_R4K
992edb6310aSDaniel Laird	select CSRC_R4K
993edb6310aSDaniel Laird	select IRQ_CPU
994edb6310aSDaniel Laird	select DMA_NONCOHERENT
995edb6310aSDaniel Laird	select SYS_HAS_CPU_MIPS32_R2
996edb6310aSDaniel Laird	select SYS_SUPPORTS_32BIT_KERNEL
997edb6310aSDaniel Laird	select SYS_SUPPORTS_LITTLE_ENDIAN
998edb6310aSDaniel Laird	select SYS_SUPPORTS_BIG_ENDIAN
999edb6310aSDaniel Laird	select GENERIC_GPIO
1000edb6310aSDaniel Laird	select CPU_MIPSR2_IRQ_VI
1001edb6310aSDaniel Laird
1002edb6310aSDaniel Lairdconfig SOC_PNX8335
1003edb6310aSDaniel Laird	bool
1004edb6310aSDaniel Laird	select SOC_PNX833X
1005edb6310aSDaniel Laird
1006bdf21b18SPete Popovconfig PNX8550
1007bdf21b18SPete Popov	bool
1008bdf21b18SPete Popov	select SOC_PNX8550
1009bdf21b18SPete Popov
1010bdf21b18SPete Popovconfig SOC_PNX8550
1011bdf21b18SPete Popov	bool
1012bdf21b18SPete Popov	select DMA_NONCOHERENT
1013bdf21b18SPete Popov	select HW_HAS_PCI
1014b8c2a77cSRalf Baechle	select SYS_HAS_CPU_MIPS32_R1
101536a88530SRalf Baechle	select SYS_HAS_EARLY_PRINTK
10167cf8053bSRalf Baechle	select SYS_SUPPORTS_32BIT_KERNEL
10174ead1681SFlorian Fainelli	select GENERIC_GPIO
1018bdf21b18SPete Popov
10191da177e4SLinus Torvaldsconfig SWAP_IO_SPACE
10201da177e4SLinus Torvalds	bool
10211da177e4SLinus Torvalds
1022663c3d90Sthomas@koeller.dyndns.orgconfig SERIAL_RM9000
1023663c3d90Sthomas@koeller.dyndns.org	bool
1024663c3d90Sthomas@koeller.dyndns.org
1025e2defae5SThomas Bogendoerferconfig SGI_HAS_INDYDOG
1026e2defae5SThomas Bogendoerfer	bool
1027e2defae5SThomas Bogendoerfer
10285b438c44SThomas Bogendoerferconfig SGI_HAS_HAL2
10295b438c44SThomas Bogendoerfer	bool
10305b438c44SThomas Bogendoerfer
1031e2defae5SThomas Bogendoerferconfig SGI_HAS_SEEQ
1032e2defae5SThomas Bogendoerfer	bool
1033e2defae5SThomas Bogendoerfer
1034e2defae5SThomas Bogendoerferconfig SGI_HAS_WD93
1035e2defae5SThomas Bogendoerfer	bool
1036e2defae5SThomas Bogendoerfer
1037e2defae5SThomas Bogendoerferconfig SGI_HAS_ZILOG
1038e2defae5SThomas Bogendoerfer	bool
1039e2defae5SThomas Bogendoerfer
1040e2defae5SThomas Bogendoerferconfig SGI_HAS_I8042
1041e2defae5SThomas Bogendoerfer	bool
1042e2defae5SThomas Bogendoerfer
1043e2defae5SThomas Bogendoerferconfig DEFAULT_SGI_PARTITION
1044e2defae5SThomas Bogendoerfer	bool
1045e2defae5SThomas Bogendoerfer
10465e83d430SRalf Baechleconfig ARC32
10475e83d430SRalf Baechle	bool
10485e83d430SRalf Baechle
1049231a35d3SThomas Bogendoerferconfig SNIPROM
1050231a35d3SThomas Bogendoerfer	bool
1051231a35d3SThomas Bogendoerfer
10521da177e4SLinus Torvaldsconfig BOOT_ELF32
10531da177e4SLinus Torvalds	bool
10541da177e4SLinus Torvalds
10551da177e4SLinus Torvaldsconfig MIPS_L1_CACHE_SHIFT
10561da177e4SLinus Torvalds	int
1057c7088755SRalf Baechle	default "4" if MACH_DECSTATION || MIKROTIK_RB532 || PMC_MSP4200_EVAL
10580db2b74eSRalf Baechle	default "6" if MIPS_CPU_SCACHE
1059a86c7f72SDavid Daney	default "7" if SGI_IP22 || SGI_IP27 || SGI_IP28 || SNI_RM || CPU_CAVIUM_OCTEON
10601da177e4SLinus Torvalds	default "5"
10611da177e4SLinus Torvalds
10621da177e4SLinus Torvaldsconfig HAVE_STD_PC_SERIAL_PORT
10631da177e4SLinus Torvalds	bool
10641da177e4SLinus Torvalds
10651da177e4SLinus Torvaldsconfig ARC_CONSOLE
10661da177e4SLinus Torvalds	bool "ARC console support"
1067e2defae5SThomas Bogendoerfer	depends on SGI_IP22 || SGI_IP28 || (SNI_RM && CPU_LITTLE_ENDIAN)
10681da177e4SLinus Torvalds
10691da177e4SLinus Torvaldsconfig ARC_MEMORY
10701da177e4SLinus Torvalds	bool
107114b36af4SThomas Bogendoerfer	depends on MACH_JAZZ || SNI_RM || SGI_IP32
10721da177e4SLinus Torvalds	default y
10731da177e4SLinus Torvalds
10741da177e4SLinus Torvaldsconfig ARC_PROMLIB
10751da177e4SLinus Torvalds	bool
1076e2defae5SThomas Bogendoerfer	depends on MACH_JAZZ || SNI_RM || SGI_IP22 || SGI_IP28 || SGI_IP32
10771da177e4SLinus Torvalds	default y
10781da177e4SLinus Torvalds
10791da177e4SLinus Torvaldsconfig ARC64
10801da177e4SLinus Torvalds	bool
10811da177e4SLinus Torvalds
10821da177e4SLinus Torvaldsconfig BOOT_ELF64
10831da177e4SLinus Torvalds	bool
10841da177e4SLinus Torvalds
10851da177e4SLinus Torvaldsmenu "CPU selection"
10861da177e4SLinus Torvalds
10871da177e4SLinus Torvaldschoice
10881da177e4SLinus Torvalds	prompt "CPU type"
10891da177e4SLinus Torvalds	default CPU_R4X00
10901da177e4SLinus Torvalds
10913702bba5SWu Zhangjinconfig CPU_LOONGSON2E
10923702bba5SWu Zhangjin	bool "Loongson 2E"
10933702bba5SWu Zhangjin	depends on SYS_HAS_CPU_LOONGSON2E
10943702bba5SWu Zhangjin	select CPU_LOONGSON2
10952a21c730SFuxin Zhang	help
10962a21c730SFuxin Zhang	  The Loongson 2E processor implements the MIPS III instruction set
10972a21c730SFuxin Zhang	  with many extensions.
10982a21c730SFuxin Zhang
10996f7a251aSWu Zhangjin	  It has an internal FPGA northbridge, which is compatiable to
11006f7a251aSWu Zhangjin	  bonito64.
11016f7a251aSWu Zhangjin
11026f7a251aSWu Zhangjinconfig CPU_LOONGSON2F
11036f7a251aSWu Zhangjin	bool "Loongson 2F"
11046f7a251aSWu Zhangjin	depends on SYS_HAS_CPU_LOONGSON2F
11056f7a251aSWu Zhangjin	select CPU_LOONGSON2
11066f7a251aSWu Zhangjin	help
11076f7a251aSWu Zhangjin	  The Loongson 2F processor implements the MIPS III instruction set
11086f7a251aSWu Zhangjin	  with many extensions.
11096f7a251aSWu Zhangjin
11106f7a251aSWu Zhangjin	  Loongson2F have built-in DDR2 and PCIX controller. The PCIX controller
11116f7a251aSWu Zhangjin	  have a similar programming interface with FPGA northbridge used in
11126f7a251aSWu Zhangjin	  Loongson2E.
11136f7a251aSWu Zhangjin
11146e760c8dSRalf Baechleconfig CPU_MIPS32_R1
11156e760c8dSRalf Baechle	bool "MIPS32 Release 1"
11167cf8053bSRalf Baechle	depends on SYS_HAS_CPU_MIPS32_R1
11176e760c8dSRalf Baechle	select CPU_HAS_PREFETCH
1118797798c1SRalf Baechle	select CPU_SUPPORTS_32BIT_KERNEL
1119ec28f306SRalf Baechle	select CPU_SUPPORTS_HIGHMEM
11206e760c8dSRalf Baechle	help
11215e83d430SRalf Baechle	  Choose this option to build a kernel for release 1 or later of the
11221e5f1caaSRalf Baechle	  MIPS32 architecture.  Most modern embedded systems with a 32-bit
11231e5f1caaSRalf Baechle	  MIPS processor are based on a MIPS32 processor.  If you know the
11241e5f1caaSRalf Baechle	  specific type of processor in your system, choose those that one
11251e5f1caaSRalf Baechle	  otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
11261e5f1caaSRalf Baechle	  Release 2 of the MIPS32 architecture is available since several
11271e5f1caaSRalf Baechle	  years so chances are you even have a MIPS32 Release 2 processor
11281e5f1caaSRalf Baechle	  in which case you should choose CPU_MIPS32_R2 instead for better
11291e5f1caaSRalf Baechle	  performance.
11301e5f1caaSRalf Baechle
11311e5f1caaSRalf Baechleconfig CPU_MIPS32_R2
11321e5f1caaSRalf Baechle	bool "MIPS32 Release 2"
11337cf8053bSRalf Baechle	depends on SYS_HAS_CPU_MIPS32_R2
11341e5f1caaSRalf Baechle	select CPU_HAS_PREFETCH
1135797798c1SRalf Baechle	select CPU_SUPPORTS_32BIT_KERNEL
1136ec28f306SRalf Baechle	select CPU_SUPPORTS_HIGHMEM
11371e5f1caaSRalf Baechle	help
11385e83d430SRalf Baechle	  Choose this option to build a kernel for release 2 or later of the
11396e760c8dSRalf Baechle	  MIPS32 architecture.  Most modern embedded systems with a 32-bit
11406e760c8dSRalf Baechle	  MIPS processor are based on a MIPS32 processor.  If you know the
11416e760c8dSRalf Baechle	  specific type of processor in your system, choose those that one
11426e760c8dSRalf Baechle	  otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
11431da177e4SLinus Torvalds
11446e760c8dSRalf Baechleconfig CPU_MIPS64_R1
11456e760c8dSRalf Baechle	bool "MIPS64 Release 1"
11467cf8053bSRalf Baechle	depends on SYS_HAS_CPU_MIPS64_R1
1147797798c1SRalf Baechle	select CPU_HAS_PREFETCH
1148ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1149ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
1150ec28f306SRalf Baechle	select CPU_SUPPORTS_HIGHMEM
11519cffd154SDavid Daney	select CPU_SUPPORTS_HUGEPAGES
11526e760c8dSRalf Baechle	help
11536e760c8dSRalf Baechle	  Choose this option to build a kernel for release 1 or later of the
11546e760c8dSRalf Baechle	  MIPS64 architecture.  Many modern embedded systems with a 64-bit
11556e760c8dSRalf Baechle	  MIPS processor are based on a MIPS64 processor.  If you know the
11566e760c8dSRalf Baechle	  specific type of processor in your system, choose those that one
11576e760c8dSRalf Baechle	  otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
11581e5f1caaSRalf Baechle	  Release 2 of the MIPS64 architecture is available since several
11591e5f1caaSRalf Baechle	  years so chances are you even have a MIPS64 Release 2 processor
11601e5f1caaSRalf Baechle	  in which case you should choose CPU_MIPS64_R2 instead for better
11611e5f1caaSRalf Baechle	  performance.
11621e5f1caaSRalf Baechle
11631e5f1caaSRalf Baechleconfig CPU_MIPS64_R2
11641e5f1caaSRalf Baechle	bool "MIPS64 Release 2"
11657cf8053bSRalf Baechle	depends on SYS_HAS_CPU_MIPS64_R2
1166797798c1SRalf Baechle	select CPU_HAS_PREFETCH
11671e5f1caaSRalf Baechle	select CPU_SUPPORTS_32BIT_KERNEL
11681e5f1caaSRalf Baechle	select CPU_SUPPORTS_64BIT_KERNEL
1169ec28f306SRalf Baechle	select CPU_SUPPORTS_HIGHMEM
11709cffd154SDavid Daney	select CPU_SUPPORTS_HUGEPAGES
11711e5f1caaSRalf Baechle	help
11721e5f1caaSRalf Baechle	  Choose this option to build a kernel for release 2 or later of the
11731e5f1caaSRalf Baechle	  MIPS64 architecture.  Many modern embedded systems with a 64-bit
11741e5f1caaSRalf Baechle	  MIPS processor are based on a MIPS64 processor.  If you know the
11751e5f1caaSRalf Baechle	  specific type of processor in your system, choose those that one
11761e5f1caaSRalf Baechle	  otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
11771da177e4SLinus Torvalds
11781da177e4SLinus Torvaldsconfig CPU_R3000
11791da177e4SLinus Torvalds	bool "R3000"
11807cf8053bSRalf Baechle	depends on SYS_HAS_CPU_R3000
1181f7062ddbSRalf Baechle	select CPU_HAS_WB
1182ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1183797798c1SRalf Baechle	select CPU_SUPPORTS_HIGHMEM
11841da177e4SLinus Torvalds	help
11851da177e4SLinus Torvalds	  Please make sure to pick the right CPU type. Linux/MIPS is not
11861da177e4SLinus Torvalds	  designed to be generic, i.e. Kernels compiled for R3000 CPUs will
11871da177e4SLinus Torvalds	  *not* work on R4000 machines and vice versa.  However, since most
11881da177e4SLinus Torvalds	  of the supported machines have an R4000 (or similar) CPU, R4x00
11891da177e4SLinus Torvalds	  might be a safe bet.  If the resulting kernel does not work,
11901da177e4SLinus Torvalds	  try to recompile with R3000.
11911da177e4SLinus Torvalds
11921da177e4SLinus Torvaldsconfig CPU_TX39XX
11931da177e4SLinus Torvalds	bool "R39XX"
11947cf8053bSRalf Baechle	depends on SYS_HAS_CPU_TX39XX
1195ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
11961da177e4SLinus Torvalds
11971da177e4SLinus Torvaldsconfig CPU_VR41XX
11981da177e4SLinus Torvalds	bool "R41xx"
11997cf8053bSRalf Baechle	depends on SYS_HAS_CPU_VR41XX
1200ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1201ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
12021da177e4SLinus Torvalds	help
12035e83d430SRalf Baechle	  The options selects support for the NEC VR4100 series of processors.
12041da177e4SLinus Torvalds	  Only choose this option if you have one of these processors as a
12051da177e4SLinus Torvalds	  kernel built with this option will not run on any other type of
12061da177e4SLinus Torvalds	  processor or vice versa.
12071da177e4SLinus Torvalds
12081da177e4SLinus Torvaldsconfig CPU_R4300
12091da177e4SLinus Torvalds	bool "R4300"
12107cf8053bSRalf Baechle	depends on SYS_HAS_CPU_R4300
1211ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1212ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
12131da177e4SLinus Torvalds	help
12141da177e4SLinus Torvalds	  MIPS Technologies R4300-series processors.
12151da177e4SLinus Torvalds
12161da177e4SLinus Torvaldsconfig CPU_R4X00
12171da177e4SLinus Torvalds	bool "R4x00"
12187cf8053bSRalf Baechle	depends on SYS_HAS_CPU_R4X00
1219ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1220ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
12211da177e4SLinus Torvalds	help
12221da177e4SLinus Torvalds	  MIPS Technologies R4000-series processors other than 4300, including
12231da177e4SLinus Torvalds	  the R4000, R4400, R4600, and 4700.
12241da177e4SLinus Torvalds
12251da177e4SLinus Torvaldsconfig CPU_TX49XX
12261da177e4SLinus Torvalds	bool "R49XX"
12277cf8053bSRalf Baechle	depends on SYS_HAS_CPU_TX49XX
1228de862b48SAtsushi Nemoto	select CPU_HAS_PREFETCH
1229ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1230ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
12311da177e4SLinus Torvalds
12321da177e4SLinus Torvaldsconfig CPU_R5000
12331da177e4SLinus Torvalds	bool "R5000"
12347cf8053bSRalf Baechle	depends on SYS_HAS_CPU_R5000
1235ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1236ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
12371da177e4SLinus Torvalds	help
12381da177e4SLinus Torvalds	  MIPS Technologies R5000-series processors other than the Nevada.
12391da177e4SLinus Torvalds
12401da177e4SLinus Torvaldsconfig CPU_R5432
12411da177e4SLinus Torvalds	bool "R5432"
12427cf8053bSRalf Baechle	depends on SYS_HAS_CPU_R5432
12435e83d430SRalf Baechle	select CPU_SUPPORTS_32BIT_KERNEL
12445e83d430SRalf Baechle	select CPU_SUPPORTS_64BIT_KERNEL
12451da177e4SLinus Torvalds
1246542c1020SShinya Kuribayashiconfig CPU_R5500
1247542c1020SShinya Kuribayashi	bool "R5500"
1248542c1020SShinya Kuribayashi	depends on SYS_HAS_CPU_R5500
1249542c1020SShinya Kuribayashi	select CPU_SUPPORTS_32BIT_KERNEL
1250542c1020SShinya Kuribayashi	select CPU_SUPPORTS_64BIT_KERNEL
12519cffd154SDavid Daney	select CPU_SUPPORTS_HUGEPAGES
1252542c1020SShinya Kuribayashi	help
1253542c1020SShinya Kuribayashi	  NEC VR5500 and VR5500A series processors implement 64-bit MIPS IV
1254542c1020SShinya Kuribayashi	  instruction set.
1255542c1020SShinya Kuribayashi
12561da177e4SLinus Torvaldsconfig CPU_R6000
12571da177e4SLinus Torvalds	bool "R6000"
1258ed5ba2fbSYoichi Yuasa	depends on EXPERIMENTAL
12597cf8053bSRalf Baechle	depends on SYS_HAS_CPU_R6000
1260ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
12611da177e4SLinus Torvalds	help
12621da177e4SLinus Torvalds	  MIPS Technologies R6000 and R6000A series processors.  Note these
1263c09b47d8SChris Dearman	  processors are extremely rare and the support for them is incomplete.
12641da177e4SLinus Torvalds
12651da177e4SLinus Torvaldsconfig CPU_NEVADA
12661da177e4SLinus Torvalds	bool "RM52xx"
12677cf8053bSRalf Baechle	depends on SYS_HAS_CPU_NEVADA
1268ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1269ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
12701da177e4SLinus Torvalds	help
12711da177e4SLinus Torvalds	  QED / PMC-Sierra RM52xx-series ("Nevada") processors.
12721da177e4SLinus Torvalds
12731da177e4SLinus Torvaldsconfig CPU_R8000
12741da177e4SLinus Torvalds	bool "R8000"
1275ed5ba2fbSYoichi Yuasa	depends on EXPERIMENTAL
12767cf8053bSRalf Baechle	depends on SYS_HAS_CPU_R8000
12775e83d430SRalf Baechle	select CPU_HAS_PREFETCH
1278ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
12791da177e4SLinus Torvalds	help
12801da177e4SLinus Torvalds	  MIPS Technologies R8000 processors.  Note these processors are
12811da177e4SLinus Torvalds	  uncommon and the support for them is incomplete.
12821da177e4SLinus Torvalds
12831da177e4SLinus Torvaldsconfig CPU_R10000
12841da177e4SLinus Torvalds	bool "R10000"
12857cf8053bSRalf Baechle	depends on SYS_HAS_CPU_R10000
12865e83d430SRalf Baechle	select CPU_HAS_PREFETCH
1287ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1288ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
1289797798c1SRalf Baechle	select CPU_SUPPORTS_HIGHMEM
12901da177e4SLinus Torvalds	help
12911da177e4SLinus Torvalds	  MIPS Technologies R10000-series processors.
12921da177e4SLinus Torvalds
12931da177e4SLinus Torvaldsconfig CPU_RM7000
12941da177e4SLinus Torvalds	bool "RM7000"
12957cf8053bSRalf Baechle	depends on SYS_HAS_CPU_RM7000
12965e83d430SRalf Baechle	select CPU_HAS_PREFETCH
1297ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1298ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
1299797798c1SRalf Baechle	select CPU_SUPPORTS_HIGHMEM
13001da177e4SLinus Torvalds
13011da177e4SLinus Torvaldsconfig CPU_RM9000
13021da177e4SLinus Torvalds	bool "RM9000"
13037cf8053bSRalf Baechle	depends on SYS_HAS_CPU_RM9000
13045e83d430SRalf Baechle	select CPU_HAS_PREFETCH
1305ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1306ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
1307797798c1SRalf Baechle	select CPU_SUPPORTS_HIGHMEM
13080004a9dfSRalf Baechle	select WEAK_ORDERING
13091da177e4SLinus Torvalds
13101da177e4SLinus Torvaldsconfig CPU_SB1
13111da177e4SLinus Torvalds	bool "SB1"
13127cf8053bSRalf Baechle	depends on SYS_HAS_CPU_SB1
1313ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_32BIT_KERNEL
1314ed5ba2fbSYoichi Yuasa	select CPU_SUPPORTS_64BIT_KERNEL
1315797798c1SRalf Baechle	select CPU_SUPPORTS_HIGHMEM
13160004a9dfSRalf Baechle	select WEAK_ORDERING
13171da177e4SLinus Torvalds
1318a86c7f72SDavid Daneyconfig CPU_CAVIUM_OCTEON
1319a86c7f72SDavid Daney	bool "Cavium Octeon processor"
13205e683389SDavid Daney	depends on SYS_HAS_CPU_CAVIUM_OCTEON
1321a86c7f72SDavid Daney	select IRQ_CPU
1322a86c7f72SDavid Daney	select IRQ_CPU_OCTEON
1323a86c7f72SDavid Daney	select CPU_HAS_PREFETCH
1324a86c7f72SDavid Daney	select CPU_SUPPORTS_64BIT_KERNEL
1325a86c7f72SDavid Daney	select SYS_SUPPORTS_SMP
1326a86c7f72SDavid Daney	select NR_CPUS_DEFAULT_16
1327a86c7f72SDavid Daney	select WEAK_ORDERING
1328a86c7f72SDavid Daney	select WEAK_REORDERING_BEYOND_LLSC
1329a86c7f72SDavid Daney	select CPU_SUPPORTS_HIGHMEM
13309cffd154SDavid Daney	select CPU_SUPPORTS_HUGEPAGES
1331a86c7f72SDavid Daney	help
1332a86c7f72SDavid Daney	  The Cavium Octeon processor is a highly integrated chip containing
1333a86c7f72SDavid Daney	  many ethernet hardware widgets for networking tasks. The processor
1334a86c7f72SDavid Daney	  can have up to 16 Mips64v2 cores and 8 integrated gigabit ethernets.
1335a86c7f72SDavid Daney	  Full details can be found at http://www.caviumnetworks.com.
1336a86c7f72SDavid Daney
13371da177e4SLinus Torvaldsendchoice
13381da177e4SLinus Torvalds
13391b93b3c3SWu Zhangjinconfig SYS_SUPPORTS_ZBOOT
13401b93b3c3SWu Zhangjin	bool
13411b93b3c3SWu Zhangjin	select HAVE_KERNEL_GZIP
13421b93b3c3SWu Zhangjin	select HAVE_KERNEL_BZIP2
13431b93b3c3SWu Zhangjin	select HAVE_KERNEL_LZMA
13441b93b3c3SWu Zhangjin
13451b93b3c3SWu Zhangjinconfig SYS_SUPPORTS_ZBOOT_UART16550
13461b93b3c3SWu Zhangjin	bool
13471b93b3c3SWu Zhangjin	select SYS_SUPPORTS_ZBOOT
13481b93b3c3SWu Zhangjin
13493702bba5SWu Zhangjinconfig CPU_LOONGSON2
13503702bba5SWu Zhangjin	bool
13513702bba5SWu Zhangjin	select CPU_SUPPORTS_32BIT_KERNEL
13523702bba5SWu Zhangjin	select CPU_SUPPORTS_64BIT_KERNEL
13533702bba5SWu Zhangjin	select CPU_SUPPORTS_HIGHMEM
13543702bba5SWu Zhangjin
13553702bba5SWu Zhangjinconfig SYS_HAS_CPU_LOONGSON2E
13562a21c730SFuxin Zhang	bool
13572a21c730SFuxin Zhang
13586f7a251aSWu Zhangjinconfig SYS_HAS_CPU_LOONGSON2F
13596f7a251aSWu Zhangjin	bool
136055045ff5SWu Zhangjin	select CPU_SUPPORTS_CPUFREQ
136155045ff5SWu Zhangjin	select CPU_SUPPORTS_ADDRWINCFG if 64BIT
136222f1fdfdSWu Zhangjin	select CPU_SUPPORTS_UNCACHED_ACCELERATED
13636f7a251aSWu Zhangjin
13647cf8053bSRalf Baechleconfig SYS_HAS_CPU_MIPS32_R1
13657cf8053bSRalf Baechle	bool
13667cf8053bSRalf Baechle
13677cf8053bSRalf Baechleconfig SYS_HAS_CPU_MIPS32_R2
13687cf8053bSRalf Baechle	bool
13697cf8053bSRalf Baechle
13707cf8053bSRalf Baechleconfig SYS_HAS_CPU_MIPS64_R1
13717cf8053bSRalf Baechle	bool
13727cf8053bSRalf Baechle
13737cf8053bSRalf Baechleconfig SYS_HAS_CPU_MIPS64_R2
13747cf8053bSRalf Baechle	bool
13757cf8053bSRalf Baechle
13767cf8053bSRalf Baechleconfig SYS_HAS_CPU_R3000
13777cf8053bSRalf Baechle	bool
13787cf8053bSRalf Baechle
13797cf8053bSRalf Baechleconfig SYS_HAS_CPU_TX39XX
13807cf8053bSRalf Baechle	bool
13817cf8053bSRalf Baechle
13827cf8053bSRalf Baechleconfig SYS_HAS_CPU_VR41XX
13837cf8053bSRalf Baechle	bool
13847cf8053bSRalf Baechle
13857cf8053bSRalf Baechleconfig SYS_HAS_CPU_R4300
13867cf8053bSRalf Baechle	bool
13877cf8053bSRalf Baechle
13887cf8053bSRalf Baechleconfig SYS_HAS_CPU_R4X00
13897cf8053bSRalf Baechle	bool
13907cf8053bSRalf Baechle
13917cf8053bSRalf Baechleconfig SYS_HAS_CPU_TX49XX
13927cf8053bSRalf Baechle	bool
13937cf8053bSRalf Baechle
13947cf8053bSRalf Baechleconfig SYS_HAS_CPU_R5000
13957cf8053bSRalf Baechle	bool
13967cf8053bSRalf Baechle
13977cf8053bSRalf Baechleconfig SYS_HAS_CPU_R5432
13987cf8053bSRalf Baechle	bool
13997cf8053bSRalf Baechle
1400542c1020SShinya Kuribayashiconfig SYS_HAS_CPU_R5500
1401542c1020SShinya Kuribayashi	bool
1402542c1020SShinya Kuribayashi
14037cf8053bSRalf Baechleconfig SYS_HAS_CPU_R6000
14047cf8053bSRalf Baechle	bool
14057cf8053bSRalf Baechle
14067cf8053bSRalf Baechleconfig SYS_HAS_CPU_NEVADA
14077cf8053bSRalf Baechle	bool
14087cf8053bSRalf Baechle
14097cf8053bSRalf Baechleconfig SYS_HAS_CPU_R8000
14107cf8053bSRalf Baechle	bool
14117cf8053bSRalf Baechle
14127cf8053bSRalf Baechleconfig SYS_HAS_CPU_R10000
14137cf8053bSRalf Baechle	bool
14147cf8053bSRalf Baechle
14157cf8053bSRalf Baechleconfig SYS_HAS_CPU_RM7000
14167cf8053bSRalf Baechle	bool
14177cf8053bSRalf Baechle
14187cf8053bSRalf Baechleconfig SYS_HAS_CPU_RM9000
14197cf8053bSRalf Baechle	bool
14207cf8053bSRalf Baechle
14217cf8053bSRalf Baechleconfig SYS_HAS_CPU_SB1
14227cf8053bSRalf Baechle	bool
14237cf8053bSRalf Baechle
14245e683389SDavid Daneyconfig SYS_HAS_CPU_CAVIUM_OCTEON
14255e683389SDavid Daney	bool
14265e683389SDavid Daney
142717099b11SRalf Baechle#
142817099b11SRalf Baechle# CPU may reorder R->R, R->W, W->R, W->W
142917099b11SRalf Baechle# Reordering beyond LL and SC is handled in WEAK_REORDERING_BEYOND_LLSC
143017099b11SRalf Baechle#
14310004a9dfSRalf Baechleconfig WEAK_ORDERING
14320004a9dfSRalf Baechle	bool
143317099b11SRalf Baechle
143417099b11SRalf Baechle#
143517099b11SRalf Baechle# CPU may reorder reads and writes beyond LL/SC
143617099b11SRalf Baechle# CPU may reorder R->LL, R->LL, W->LL, W->LL, R->SC, R->SC, W->SC, W->SC
143717099b11SRalf Baechle#
143817099b11SRalf Baechleconfig WEAK_REORDERING_BEYOND_LLSC
143917099b11SRalf Baechle	bool
14405e83d430SRalf Baechleendmenu
14415e83d430SRalf Baechle
14425e83d430SRalf Baechle#
14435e83d430SRalf Baechle# These two indicate any level of the MIPS32 and MIPS64 architecture
14445e83d430SRalf Baechle#
14455e83d430SRalf Baechleconfig CPU_MIPS32
14465e83d430SRalf Baechle	bool
14475e83d430SRalf Baechle	default y if CPU_MIPS32_R1 || CPU_MIPS32_R2
14485e83d430SRalf Baechle
14495e83d430SRalf Baechleconfig CPU_MIPS64
14505e83d430SRalf Baechle	bool
14515e83d430SRalf Baechle	default y if CPU_MIPS64_R1 || CPU_MIPS64_R2
14525e83d430SRalf Baechle
14535e83d430SRalf Baechle#
1454c09b47d8SChris Dearman# These two indicate the revision of the architecture, either Release 1 or Release 2
14555e83d430SRalf Baechle#
14565e83d430SRalf Baechleconfig CPU_MIPSR1
14575e83d430SRalf Baechle	bool
14585e83d430SRalf Baechle	default y if CPU_MIPS32_R1 || CPU_MIPS64_R1
14595e83d430SRalf Baechle
14605e83d430SRalf Baechleconfig CPU_MIPSR2
14615e83d430SRalf Baechle	bool
1462a86c7f72SDavid Daney	default y if CPU_MIPS32_R2 || CPU_MIPS64_R2 || CPU_CAVIUM_OCTEON
14635e83d430SRalf Baechle
14645e83d430SRalf Baechleconfig SYS_SUPPORTS_32BIT_KERNEL
14655e83d430SRalf Baechle	bool
14665e83d430SRalf Baechleconfig SYS_SUPPORTS_64BIT_KERNEL
14675e83d430SRalf Baechle	bool
14685e83d430SRalf Baechleconfig CPU_SUPPORTS_32BIT_KERNEL
14695e83d430SRalf Baechle	bool
14705e83d430SRalf Baechleconfig CPU_SUPPORTS_64BIT_KERNEL
14715e83d430SRalf Baechle	bool
147255045ff5SWu Zhangjinconfig CPU_SUPPORTS_CPUFREQ
147355045ff5SWu Zhangjin	bool
147455045ff5SWu Zhangjinconfig CPU_SUPPORTS_ADDRWINCFG
147555045ff5SWu Zhangjin	bool
14769cffd154SDavid Daneyconfig CPU_SUPPORTS_HUGEPAGES
14779cffd154SDavid Daney	bool
147822f1fdfdSWu Zhangjinconfig CPU_SUPPORTS_UNCACHED_ACCELERATED
147922f1fdfdSWu Zhangjin	bool
148082622284SDavid Daneyconfig MIPS_PGD_C0_CONTEXT
148182622284SDavid Daney	bool
148282622284SDavid Daney	default y if 64BIT && CPU_MIPSR2
14835e83d430SRalf Baechle
14848192c9eaSDavid Daney#
14858192c9eaSDavid Daney# Set to y for ptrace access to watch registers.
14868192c9eaSDavid Daney#
14878192c9eaSDavid Daneyconfig HARDWARE_WATCHPOINTS
14888192c9eaSDavid Daney       bool
1489f839490aSDavid Daney       default y if CPU_MIPSR1 || CPU_MIPSR2
14908192c9eaSDavid Daney
14915e83d430SRalf Baechlemenu "Kernel type"
14925e83d430SRalf Baechle
14935e83d430SRalf Baechlechoice
14945e83d430SRalf Baechle
14955e83d430SRalf Baechle	prompt "Kernel code model"
14965e83d430SRalf Baechle	help
14975e83d430SRalf Baechle	  You should only select this option if you have a workload that
14985e83d430SRalf Baechle	  actually benefits from 64-bit processing or if your machine has
14995e83d430SRalf Baechle	  large memory.  You will only be presented a single option in this
15005e83d430SRalf Baechle	  menu if your system does not support both 32-bit and 64-bit kernels.
15015e83d430SRalf Baechle
15025e83d430SRalf Baechleconfig 32BIT
15035e83d430SRalf Baechle	bool "32-bit kernel"
15045e83d430SRalf Baechle	depends on CPU_SUPPORTS_32BIT_KERNEL && SYS_SUPPORTS_32BIT_KERNEL
15055e83d430SRalf Baechle	select TRAD_SIGNALS
15065e83d430SRalf Baechle	help
15075e83d430SRalf Baechle	  Select this option if you want to build a 32-bit kernel.
15085e83d430SRalf Baechleconfig 64BIT
15095e83d430SRalf Baechle	bool "64-bit kernel"
15105e83d430SRalf Baechle	depends on CPU_SUPPORTS_64BIT_KERNEL && SYS_SUPPORTS_64BIT_KERNEL
1511dbda6ac0SRalf Baechle	select HAVE_SYSCALL_WRAPPERS
15125e83d430SRalf Baechle	help
15135e83d430SRalf Baechle	  Select this option if you want to build a 64-bit kernel.
15145e83d430SRalf Baechle
15155e83d430SRalf Baechleendchoice
15165e83d430SRalf Baechle
15171da177e4SLinus Torvaldschoice
15181da177e4SLinus Torvalds	prompt "Kernel page size"
15191da177e4SLinus Torvalds	default PAGE_SIZE_4KB
15201da177e4SLinus Torvalds
15211da177e4SLinus Torvaldsconfig PAGE_SIZE_4KB
15221da177e4SLinus Torvalds	bool "4kB"
1523315fe625SWu Zhangjin	depends on !CPU_LOONGSON2
15241da177e4SLinus Torvalds	help
15251da177e4SLinus Torvalds	 This option select the standard 4kB Linux page size.  On some
15261da177e4SLinus Torvalds	 R3000-family processors this is the only available page size.  Using
15271da177e4SLinus Torvalds	 4kB page size will minimize memory consumption and is therefore
15281da177e4SLinus Torvalds	 recommended for low memory systems.
15291da177e4SLinus Torvalds
15301da177e4SLinus Torvaldsconfig PAGE_SIZE_8KB
15311da177e4SLinus Torvalds	bool "8kB"
1532c52399beSRalf Baechle	depends on (EXPERIMENTAL && CPU_R8000) || CPU_CAVIUM_OCTEON
15331da177e4SLinus Torvalds	help
15341da177e4SLinus Torvalds	  Using 8kB page size will result in higher performance kernel at
15351da177e4SLinus Torvalds	  the price of higher memory consumption.  This option is available
1536c52399beSRalf Baechle	  only on R8000 and cnMIPS processors.  Note that you will need a
1537c52399beSRalf Baechle	  suitable Linux distribution to support this.
15381da177e4SLinus Torvalds
15391da177e4SLinus Torvaldsconfig PAGE_SIZE_16KB
15401da177e4SLinus Torvalds	bool "16kB"
1541714bfad6SRalf Baechle	depends on !CPU_R3000 && !CPU_TX39XX
15421da177e4SLinus Torvalds	help
15431da177e4SLinus Torvalds	  Using 16kB page size will result in higher performance kernel at
15441da177e4SLinus Torvalds	  the price of higher memory consumption.  This option is available on
1545714bfad6SRalf Baechle	  all non-R3000 family processors.  Note that you will need a suitable
1546714bfad6SRalf Baechle	  Linux distribution to support this.
15471da177e4SLinus Torvalds
1548c52399beSRalf Baechleconfig PAGE_SIZE_32KB
1549c52399beSRalf Baechle	bool "32kB"
1550c52399beSRalf Baechle	depends on CPU_CAVIUM_OCTEON
1551c52399beSRalf Baechle	help
1552c52399beSRalf Baechle	  Using 32kB page size will result in higher performance kernel at
1553c52399beSRalf Baechle	  the price of higher memory consumption.  This option is available
1554c52399beSRalf Baechle	  only on cnMIPS cores.  Note that you will need a suitable Linux
1555c52399beSRalf Baechle	  distribution to support this.
1556c52399beSRalf Baechle
15571da177e4SLinus Torvaldsconfig PAGE_SIZE_64KB
15581da177e4SLinus Torvalds	bool "64kB"
15591da177e4SLinus Torvalds	depends on EXPERIMENTAL && !CPU_R3000 && !CPU_TX39XX
15601da177e4SLinus Torvalds	help
15611da177e4SLinus Torvalds	  Using 64kB page size will result in higher performance kernel at
15621da177e4SLinus Torvalds	  the price of higher memory consumption.  This option is available on
15631da177e4SLinus Torvalds	  all non-R3000 family processor.  Not that at the time of this
1564714bfad6SRalf Baechle	  writing this option is still high experimental.
15651da177e4SLinus Torvalds
15661da177e4SLinus Torvaldsendchoice
15671da177e4SLinus Torvalds
15681da177e4SLinus Torvaldsconfig BOARD_SCACHE
15691da177e4SLinus Torvalds	bool
15701da177e4SLinus Torvalds
15711da177e4SLinus Torvaldsconfig IP22_CPU_SCACHE
15721da177e4SLinus Torvalds	bool
15731da177e4SLinus Torvalds	select BOARD_SCACHE
15741da177e4SLinus Torvalds
15759318c51aSChris Dearman#
15769318c51aSChris Dearman# Support for a MIPS32 / MIPS64 style S-caches
15779318c51aSChris Dearman#
15789318c51aSChris Dearmanconfig MIPS_CPU_SCACHE
15799318c51aSChris Dearman	bool
15809318c51aSChris Dearman	select BOARD_SCACHE
15819318c51aSChris Dearman
15821da177e4SLinus Torvaldsconfig R5000_CPU_SCACHE
15831da177e4SLinus Torvalds	bool
15841da177e4SLinus Torvalds	select BOARD_SCACHE
15851da177e4SLinus Torvalds
15861da177e4SLinus Torvaldsconfig RM7000_CPU_SCACHE
15871da177e4SLinus Torvalds	bool
15881da177e4SLinus Torvalds	select BOARD_SCACHE
15891da177e4SLinus Torvalds
15901da177e4SLinus Torvaldsconfig SIBYTE_DMA_PAGEOPS
15911da177e4SLinus Torvalds	bool "Use DMA to clear/copy pages"
15921da177e4SLinus Torvalds	depends on CPU_SB1
15931da177e4SLinus Torvalds	help
15941da177e4SLinus Torvalds	  Instead of using the CPU to zero and copy pages, use a Data Mover
15951da177e4SLinus Torvalds	  channel.  These DMA channels are otherwise unused by the standard
15961da177e4SLinus Torvalds	  SiByte Linux port.  Seems to give a small performance benefit.
15971da177e4SLinus Torvalds
15981da177e4SLinus Torvaldsconfig CPU_HAS_PREFETCH
1599c8094b53SRalf Baechle	bool
16001da177e4SLinus Torvalds
1601340ee4b9SRalf Baechlechoice
1602340ee4b9SRalf Baechle	prompt "MIPS MT options"
1603f41ae0b2SRalf Baechle
1604f41ae0b2SRalf Baechleconfig MIPS_MT_DISABLED
1605f41ae0b2SRalf Baechle	bool "Disable multithreading support."
1606f41ae0b2SRalf Baechle	help
1607f41ae0b2SRalf Baechle	  Use this option if your workload can't take advantage of
1608f41ae0b2SRalf Baechle	  MIPS hardware multithreading support.  On systems that don't have
1609f41ae0b2SRalf Baechle	  the option of an MT-enabled processor this option will be the only
1610f41ae0b2SRalf Baechle	  option in this menu.
1611340ee4b9SRalf Baechle
161259d6ab86SRalf Baechleconfig MIPS_MT_SMP
161359d6ab86SRalf Baechle	bool "Use 1 TC on each available VPE for SMP"
161459d6ab86SRalf Baechle	depends on SYS_SUPPORTS_MULTITHREADING
161559d6ab86SRalf Baechle	select CPU_MIPSR2_IRQ_VI
1616d725cf38SChris Dearman	select CPU_MIPSR2_IRQ_EI
161759d6ab86SRalf Baechle	select MIPS_MT
1618f510aa3bSRalf Baechle	select NR_CPUS_DEFAULT_2
161959d6ab86SRalf Baechle	select SMP
16200ab7aefcSRalf Baechle	select SYS_SUPPORTS_SCHED_SMT if SMP
162159d6ab86SRalf Baechle	select SYS_SUPPORTS_SMP
162287353d8aSRalf Baechle	select SMP_UP
162359d6ab86SRalf Baechle	help
162459d6ab86SRalf Baechle	  This is a kernel model which is also known a VSMP or lately
162559d6ab86SRalf Baechle	  has been marketesed into SMVP.
162659d6ab86SRalf Baechle
162741c594abSRalf Baechleconfig MIPS_MT_SMTC
162841c594abSRalf Baechle	bool "SMTC: Use all TCs on all VPEs for SMP"
1629f41ae0b2SRalf Baechle	depends on CPU_MIPS32_R2
1630f41ae0b2SRalf Baechle	#depends on CPU_MIPS64_R2		# once there is hardware ...
1631f41ae0b2SRalf Baechle	depends on SYS_SUPPORTS_MULTITHREADING
1632f7062ddbSRalf Baechle	select CPU_MIPSR2_IRQ_VI
1633d725cf38SChris Dearman	select CPU_MIPSR2_IRQ_EI
1634f41ae0b2SRalf Baechle	select MIPS_MT
1635130e2fb7SRalf Baechle	select NR_CPUS_DEFAULT_8
163641c594abSRalf Baechle	select SMP
163773b76c78SRalf Baechle	select SYS_SUPPORTS_SMP
163887353d8aSRalf Baechle	select SMP_UP
1639f41ae0b2SRalf Baechle	help
1640f41ae0b2SRalf Baechle	  This is a kernel model which is known a SMTC or lately has been
1641f41ae0b2SRalf Baechle	  marketesed into SMVP.
164241c594abSRalf Baechle
1643340ee4b9SRalf Baechleendchoice
1644340ee4b9SRalf Baechle
1645f41ae0b2SRalf Baechleconfig MIPS_MT
1646f41ae0b2SRalf Baechle	bool
1647f41ae0b2SRalf Baechle
16480ab7aefcSRalf Baechleconfig SCHED_SMT
16490ab7aefcSRalf Baechle	bool "SMT (multithreading) scheduler support"
16500ab7aefcSRalf Baechle	depends on SYS_SUPPORTS_SCHED_SMT
16510ab7aefcSRalf Baechle	default n
16520ab7aefcSRalf Baechle	help
16530ab7aefcSRalf Baechle	  SMT scheduler support improves the CPU scheduler's decision making
16540ab7aefcSRalf Baechle	  when dealing with MIPS MT enabled cores at a cost of slightly
16550ab7aefcSRalf Baechle	  increased overhead in some places. If unsure say N here.
16560ab7aefcSRalf Baechle
16570ab7aefcSRalf Baechleconfig SYS_SUPPORTS_SCHED_SMT
16580ab7aefcSRalf Baechle	bool
16590ab7aefcSRalf Baechle
16600ab7aefcSRalf Baechle
1661f41ae0b2SRalf Baechleconfig SYS_SUPPORTS_MULTITHREADING
1662f41ae0b2SRalf Baechle	bool
1663f41ae0b2SRalf Baechle
1664f088fc84SRalf Baechleconfig MIPS_MT_FPAFF
1665f088fc84SRalf Baechle	bool "Dynamic FPU affinity for FP-intensive threads"
1666f088fc84SRalf Baechle	default y
166707cc0c9eSRalf Baechle	depends on MIPS_MT_SMP || MIPS_MT_SMTC
166807cc0c9eSRalf Baechle
166907cc0c9eSRalf Baechleconfig MIPS_VPE_LOADER
167007cc0c9eSRalf Baechle	bool "VPE loader support."
167107cc0c9eSRalf Baechle	depends on SYS_SUPPORTS_MULTITHREADING
167207cc0c9eSRalf Baechle	select CPU_MIPSR2_IRQ_VI
167307cc0c9eSRalf Baechle	select CPU_MIPSR2_IRQ_EI
167407cc0c9eSRalf Baechle	select MIPS_MT
167507cc0c9eSRalf Baechle	help
167607cc0c9eSRalf Baechle	  Includes a loader for loading an elf relocatable object
167707cc0c9eSRalf Baechle	  onto another VPE and running it.
1678f088fc84SRalf Baechle
16790db34215SKevin D. Kissellconfig MIPS_MT_SMTC_IM_BACKSTOP
16800db34215SKevin D. Kissell	bool "Use per-TC register bits as backstop for inhibited IM bits"
16810db34215SKevin D. Kissell	depends on MIPS_MT_SMTC
16828531a35eSKevin D. Kissell	default n
16830db34215SKevin D. Kissell	help
16840db34215SKevin D. Kissell	  To support multiple TC microthreads acting as "CPUs" within
16850db34215SKevin D. Kissell	  a VPE, VPE-wide interrupt mask bits must be specially manipulated
16860db34215SKevin D. Kissell	  during interrupt handling. To support legacy drivers and interrupt
16870db34215SKevin D. Kissell	  controller management code, SMTC has a "backstop" to track and
16880db34215SKevin D. Kissell	  if necessary restore the interrupt mask. This has some performance
16898531a35eSKevin D. Kissell	  impact on interrupt service overhead.
16900db34215SKevin D. Kissell
1691f571eff0SKevin D. Kissellconfig MIPS_MT_SMTC_IRQAFF
1692f571eff0SKevin D. Kissell	bool "Support IRQ affinity API"
1693f571eff0SKevin D. Kissell	depends on MIPS_MT_SMTC
1694f571eff0SKevin D. Kissell	default n
1695f571eff0SKevin D. Kissell	help
1696f571eff0SKevin D. Kissell	  Enables SMP IRQ affinity API (/proc/irq/*/smp_affinity, etc.)
1697f571eff0SKevin D. Kissell	  for SMTC Linux kernel. Requires platform support, of which
1698f571eff0SKevin D. Kissell	  an example can be found in the MIPS kernel i8259 and Malta
16998531a35eSKevin D. Kissell	  platform code.  Adds some overhead to interrupt dispatch, and
17008531a35eSKevin D. Kissell	  should be used only if you know what you are doing.
1701f571eff0SKevin D. Kissell
1702e01402b1SRalf Baechleconfig MIPS_VPE_LOADER_TOM
1703e01402b1SRalf Baechle	bool "Load VPE program into memory hidden from linux"
1704e01402b1SRalf Baechle	depends on MIPS_VPE_LOADER
1705e01402b1SRalf Baechle	default y
1706e01402b1SRalf Baechle	help
1707e01402b1SRalf Baechle	  The loader can use memory that is present but has been hidden from
1708e01402b1SRalf Baechle	  Linux using the kernel command line option "mem=xxMB". It's up to
1709e01402b1SRalf Baechle	  you to ensure the amount you put in the option and the space your
1710e01402b1SRalf Baechle	  program requires is less or equal to the amount physically present.
1711e01402b1SRalf Baechle
1712e01402b1SRalf Baechle# this should possibly be in drivers/char, but it is rather cpu related. Hmmm
1713e01402b1SRalf Baechleconfig MIPS_VPE_APSP_API
1714e01402b1SRalf Baechle	bool "Enable support for AP/SP API (RTLX)"
1715e01402b1SRalf Baechle	depends on MIPS_VPE_LOADER
17165e83d430SRalf Baechle	help
1717e01402b1SRalf Baechle
17182600990eSRalf Baechleconfig MIPS_APSP_KSPD
17192600990eSRalf Baechle	bool "Enable KSPD"
17202600990eSRalf Baechle	depends on MIPS_VPE_APSP_API
17212600990eSRalf Baechle	default y
17222600990eSRalf Baechle	help
17232600990eSRalf Baechle	  KSPD is a kernel daemon that accepts syscall requests from the SP
17242600990eSRalf Baechle	  side, actions them and returns the results. It also handles the
17252600990eSRalf Baechle	  "exit" syscall notifying other kernel modules the SP program is
17262600990eSRalf Baechle	  exiting.  You probably want to say yes here.
17272600990eSRalf Baechle
17284a16ff4cSRalf Baechleconfig MIPS_CMP
17294a16ff4cSRalf Baechle	bool "MIPS CMP framework support"
17304a16ff4cSRalf Baechle	depends on SYS_SUPPORTS_MIPS_CMP
1731eb9b5141STim Anderson	select SYNC_R4K
17324a16ff4cSRalf Baechle	select SYS_SUPPORTS_SMP
17334a16ff4cSRalf Baechle	select SYS_SUPPORTS_SCHED_SMT if SMP
17344a16ff4cSRalf Baechle	select WEAK_ORDERING
17354a16ff4cSRalf Baechle	default n
17364a16ff4cSRalf Baechle	help
17374a16ff4cSRalf Baechle	  This is a placeholder option for the GCMP work. It will need to
17384a16ff4cSRalf Baechle	  be handled differently...
17394a16ff4cSRalf Baechle
17401da177e4SLinus Torvaldsconfig SB1_PASS_1_WORKAROUNDS
17411da177e4SLinus Torvalds	bool
17421da177e4SLinus Torvalds	depends on CPU_SB1_PASS_1
17431da177e4SLinus Torvalds	default y
17441da177e4SLinus Torvalds
17451da177e4SLinus Torvaldsconfig SB1_PASS_2_WORKAROUNDS
17461da177e4SLinus Torvalds	bool
17471da177e4SLinus Torvalds	depends on CPU_SB1 && (CPU_SB1_PASS_2_2 || CPU_SB1_PASS_2)
17481da177e4SLinus Torvalds	default y
17491da177e4SLinus Torvalds
17501da177e4SLinus Torvaldsconfig SB1_PASS_2_1_WORKAROUNDS
17511da177e4SLinus Torvalds	bool
17521da177e4SLinus Torvalds	depends on CPU_SB1 && CPU_SB1_PASS_2
17531da177e4SLinus Torvalds	default y
17541da177e4SLinus Torvalds
17551da177e4SLinus Torvaldsconfig 64BIT_PHYS_ADDR
1756d806cb2bSRalf Baechle	bool
17571da177e4SLinus Torvalds
17589693a853SFranck Bui-Huuconfig CPU_HAS_SMARTMIPS
17599693a853SFranck Bui-Huu	depends on SYS_SUPPORTS_SMARTMIPS
17609693a853SFranck Bui-Huu	bool "Support for the SmartMIPS ASE"
17619693a853SFranck Bui-Huu	help
17629693a853SFranck Bui-Huu	  SmartMIPS is a extension of the MIPS32 architecture aimed at
17639693a853SFranck Bui-Huu	  increased security at both hardware and software level for
17649693a853SFranck Bui-Huu	  smartcards.  Enabling this option will allow proper use of the
17659693a853SFranck Bui-Huu	  SmartMIPS instructions by Linux applications.  However a kernel with
17669693a853SFranck Bui-Huu	  this option will not work on a MIPS core without SmartMIPS core.  If
17679693a853SFranck Bui-Huu	  you don't know you probably don't have SmartMIPS and should say N
17689693a853SFranck Bui-Huu	  here.
17699693a853SFranck Bui-Huu
17701da177e4SLinus Torvaldsconfig CPU_HAS_WB
1771f7062ddbSRalf Baechle	bool
1772e01402b1SRalf Baechle
1773f41ae0b2SRalf Baechle#
1774f41ae0b2SRalf Baechle# Vectored interrupt mode is an R2 feature
1775f41ae0b2SRalf Baechle#
1776e01402b1SRalf Baechleconfig CPU_MIPSR2_IRQ_VI
1777f41ae0b2SRalf Baechle	bool
1778e01402b1SRalf Baechle
1779f41ae0b2SRalf Baechle#
1780f41ae0b2SRalf Baechle# Extended interrupt mode is an R2 feature
1781f41ae0b2SRalf Baechle#
1782e01402b1SRalf Baechleconfig CPU_MIPSR2_IRQ_EI
1783f41ae0b2SRalf Baechle	bool
1784e01402b1SRalf Baechle
17851da177e4SLinus Torvaldsconfig CPU_HAS_SYNC
17861da177e4SLinus Torvalds	bool
17871da177e4SLinus Torvalds	depends on !CPU_R3000
17881da177e4SLinus Torvalds	default y
17891da177e4SLinus Torvalds
1790ea580401SRalf Baechleconfig GENERIC_CLOCKEVENTS_BROADCAST
1791ea580401SRalf Baechle	bool
1792ea580401SRalf Baechle
17931da177e4SLinus Torvalds#
179420d60d99SMaciej W. Rozycki# CPU non-features
179520d60d99SMaciej W. Rozycki#
179620d60d99SMaciej W. Rozyckiconfig CPU_DADDI_WORKAROUNDS
179720d60d99SMaciej W. Rozycki	bool
179820d60d99SMaciej W. Rozycki
179920d60d99SMaciej W. Rozyckiconfig CPU_R4000_WORKAROUNDS
180020d60d99SMaciej W. Rozycki	bool
180120d60d99SMaciej W. Rozycki	select CPU_R4400_WORKAROUNDS
180220d60d99SMaciej W. Rozycki
180320d60d99SMaciej W. Rozyckiconfig CPU_R4400_WORKAROUNDS
180420d60d99SMaciej W. Rozycki	bool
180520d60d99SMaciej W. Rozycki
180620d60d99SMaciej W. Rozycki#
1807797798c1SRalf Baechle# Use the generic interrupt handling code in kernel/irq/:
1808797798c1SRalf Baechle#
1809797798c1SRalf Baechleconfig GENERIC_HARDIRQS
1810797798c1SRalf Baechle	bool
1811797798c1SRalf Baechle	default y
1812797798c1SRalf Baechle
1813797798c1SRalf Baechleconfig GENERIC_IRQ_PROBE
1814797798c1SRalf Baechle	bool
1815797798c1SRalf Baechle	default y
1816797798c1SRalf Baechle
18170d7012a9SIngo Molnarconfig IRQ_PER_CPU
18180d7012a9SIngo Molnar	bool
18190d7012a9SIngo Molnar
1820797798c1SRalf Baechle#
18211da177e4SLinus Torvalds# - Highmem only makes sense for the 32-bit kernel.
18221da177e4SLinus Torvalds# - The current highmem code will only work properly on physically indexed
18231da177e4SLinus Torvalds#   caches such as R3000, SB1, R7000 or those that look like they're virtually
18241da177e4SLinus Torvalds#   indexed such as R4000/R4400 SC and MC versions or R10000.  So for the
18251da177e4SLinus Torvalds#   moment we protect the user and offer the highmem option only on machines
18261da177e4SLinus Torvalds#   where it's known to be safe.  This will not offer highmem on a few systems
18271da177e4SLinus Torvalds#   such as MIPS32 and MIPS64 CPUs which may have virtual and physically
18281da177e4SLinus Torvalds#   indexed CPUs but we're playing safe.
1829797798c1SRalf Baechle# - We use SYS_SUPPORTS_HIGHMEM to offer highmem only for systems where we
1830797798c1SRalf Baechle#   know they might have memory configurations that could make use of highmem
1831797798c1SRalf Baechle#   support.
18321da177e4SLinus Torvalds#
18331da177e4SLinus Torvaldsconfig HIGHMEM
18341da177e4SLinus Torvalds	bool "High Memory Support"
1835797798c1SRalf Baechle	depends on 32BIT && CPU_SUPPORTS_HIGHMEM && SYS_SUPPORTS_HIGHMEM
1836797798c1SRalf Baechle
1837797798c1SRalf Baechleconfig CPU_SUPPORTS_HIGHMEM
1838797798c1SRalf Baechle	bool
1839797798c1SRalf Baechle
1840797798c1SRalf Baechleconfig SYS_SUPPORTS_HIGHMEM
1841797798c1SRalf Baechle	bool
18421da177e4SLinus Torvalds
18439693a853SFranck Bui-Huuconfig SYS_SUPPORTS_SMARTMIPS
18449693a853SFranck Bui-Huu	bool
18459693a853SFranck Bui-Huu
1846b4819b59SYoichi Yuasaconfig ARCH_FLATMEM_ENABLE
1847b4819b59SYoichi Yuasa	def_bool y
1848f133f22dSWu Zhangjin	depends on !NUMA && !CPU_LOONGSON2
1849b4819b59SYoichi Yuasa
1850d8cb4e11SRalf Baechleconfig ARCH_DISCONTIGMEM_ENABLE
1851d8cb4e11SRalf Baechle	bool
1852d8cb4e11SRalf Baechle	default y if SGI_IP27
1853d8cb4e11SRalf Baechle	help
18543dde6ad8SDavid Sterba	  Say Y to support efficient handling of discontiguous physical memory,
1855d8cb4e11SRalf Baechle	  for architectures which are either NUMA (Non-Uniform Memory Access)
1856d8cb4e11SRalf Baechle	  or have huge holes in the physical address space for other reasons.
1857d8cb4e11SRalf Baechle	  See <file:Documentation/vm/numa> for more.
1858d8cb4e11SRalf Baechle
1859cce335aeSRalf Baechleconfig ARCH_POPULATES_NODE_MAP
1860cce335aeSRalf Baechle	def_bool y
1861cce335aeSRalf Baechle
1862b1c6cd42SAtsushi Nemotoconfig ARCH_SPARSEMEM_ENABLE
1863b1c6cd42SAtsushi Nemoto	bool
18647de58fabSAtsushi Nemoto	select SPARSEMEM_STATIC
186531473747SAtsushi Nemoto
1866d8cb4e11SRalf Baechleconfig NUMA
1867d8cb4e11SRalf Baechle	bool "NUMA Support"
1868d8cb4e11SRalf Baechle	depends on SYS_SUPPORTS_NUMA
1869d8cb4e11SRalf Baechle	help
1870d8cb4e11SRalf Baechle	  Say Y to compile the kernel to support NUMA (Non-Uniform Memory
1871d8cb4e11SRalf Baechle	  Access).  This option improves performance on systems with more
1872d8cb4e11SRalf Baechle	  than two nodes; on two node systems it is generally better to
1873d8cb4e11SRalf Baechle	  leave it disabled; on single node systems disable this option
1874d8cb4e11SRalf Baechle	  disabled.
1875d8cb4e11SRalf Baechle
1876d8cb4e11SRalf Baechleconfig SYS_SUPPORTS_NUMA
1877d8cb4e11SRalf Baechle	bool
1878d8cb4e11SRalf Baechle
1879c80d79d7SYasunori Gotoconfig NODES_SHIFT
1880c80d79d7SYasunori Goto	int
1881c80d79d7SYasunori Goto	default "6"
1882c80d79d7SYasunori Goto	depends on NEED_MULTIPLE_NODES
1883c80d79d7SYasunori Goto
1884b4819b59SYoichi Yuasasource "mm/Kconfig"
1885b4819b59SYoichi Yuasa
18861da177e4SLinus Torvaldsconfig SMP
18871da177e4SLinus Torvalds	bool "Multi-Processing support"
1888e73ea273SRalf Baechle	depends on SYS_SUPPORTS_SMP
1889b4b30a5aSRalf Baechle	select IRQ_PER_CPU
18902f304c0aSJens Axboe	select USE_GENERIC_SMP_HELPERS
1891e73ea273SRalf Baechle	help
18921da177e4SLinus Torvalds	  This enables support for systems with more than one CPU. If you have
18931da177e4SLinus Torvalds	  a system with only one CPU, like most personal computers, say N. If
18941da177e4SLinus Torvalds	  you have a system with more than one CPU, say Y.
18951da177e4SLinus Torvalds
18961da177e4SLinus Torvalds	  If you say N here, the kernel will run on single and multiprocessor
18971da177e4SLinus Torvalds	  machines, but will use only one CPU of a multiprocessor machine. If
18981da177e4SLinus Torvalds	  you say Y here, the kernel will run on many, but not all,
18991da177e4SLinus Torvalds	  singleprocessor machines. On a singleprocessor machine, the kernel
19001da177e4SLinus Torvalds	  will run faster if you say N here.
19011da177e4SLinus Torvalds
19021da177e4SLinus Torvalds	  People using multiprocessor machines who say Y here should also say
19031da177e4SLinus Torvalds	  Y to "Enhanced Real Time Clock Support", below.
19041da177e4SLinus Torvalds
190503502faaSAdrian Bunk	  See also the SMP-HOWTO available at
190603502faaSAdrian Bunk	  <http://www.tldp.org/docs.html#howto>.
19071da177e4SLinus Torvalds
19081da177e4SLinus Torvalds	  If you don't know what to do here, say N.
19091da177e4SLinus Torvalds
191087353d8aSRalf Baechleconfig SMP_UP
191187353d8aSRalf Baechle	bool
191287353d8aSRalf Baechle
19134a16ff4cSRalf Baechleconfig SYS_SUPPORTS_MIPS_CMP
19144a16ff4cSRalf Baechle	bool
19154a16ff4cSRalf Baechle
1916e73ea273SRalf Baechleconfig SYS_SUPPORTS_SMP
1917e73ea273SRalf Baechle	bool
1918e73ea273SRalf Baechle
191972ede9b1SAtsushi Nemotoconfig NR_CPUS_DEFAULT_1
192072ede9b1SAtsushi Nemoto	bool
192172ede9b1SAtsushi Nemoto
1922130e2fb7SRalf Baechleconfig NR_CPUS_DEFAULT_2
1923130e2fb7SRalf Baechle	bool
1924130e2fb7SRalf Baechle
1925130e2fb7SRalf Baechleconfig NR_CPUS_DEFAULT_4
1926130e2fb7SRalf Baechle	bool
1927130e2fb7SRalf Baechle
1928130e2fb7SRalf Baechleconfig NR_CPUS_DEFAULT_8
1929130e2fb7SRalf Baechle	bool
1930130e2fb7SRalf Baechle
1931130e2fb7SRalf Baechleconfig NR_CPUS_DEFAULT_16
1932130e2fb7SRalf Baechle	bool
1933130e2fb7SRalf Baechle
1934130e2fb7SRalf Baechleconfig NR_CPUS_DEFAULT_32
1935130e2fb7SRalf Baechle	bool
1936130e2fb7SRalf Baechle
1937130e2fb7SRalf Baechleconfig NR_CPUS_DEFAULT_64
1938130e2fb7SRalf Baechle	bool
1939130e2fb7SRalf Baechle
19401da177e4SLinus Torvaldsconfig NR_CPUS
19411da177e4SLinus Torvalds	int "Maximum number of CPUs (2-64)"
194272ede9b1SAtsushi Nemoto	range 1 64 if NR_CPUS_DEFAULT_1
19431da177e4SLinus Torvalds	depends on SMP
194472ede9b1SAtsushi Nemoto	default "1" if NR_CPUS_DEFAULT_1
1945130e2fb7SRalf Baechle	default "2" if NR_CPUS_DEFAULT_2
1946130e2fb7SRalf Baechle	default "4" if NR_CPUS_DEFAULT_4
1947130e2fb7SRalf Baechle	default "8" if NR_CPUS_DEFAULT_8
1948130e2fb7SRalf Baechle	default "16" if NR_CPUS_DEFAULT_16
1949130e2fb7SRalf Baechle	default "32" if NR_CPUS_DEFAULT_32
1950130e2fb7SRalf Baechle	default "64" if NR_CPUS_DEFAULT_64
19511da177e4SLinus Torvalds	help
19521da177e4SLinus Torvalds	  This allows you to specify the maximum number of CPUs which this
19531da177e4SLinus Torvalds	  kernel will support.  The maximum supported value is 32 for 32-bit
19541da177e4SLinus Torvalds	  kernel and 64 for 64-bit kernels; the minimum value which makes
195572ede9b1SAtsushi Nemoto	  sense is 1 for Qemu (useful only for kernel debugging purposes)
195672ede9b1SAtsushi Nemoto	  and 2 for all others.
19571da177e4SLinus Torvalds
19581da177e4SLinus Torvalds	  This is purely to save memory - each supported CPU adds
195972ede9b1SAtsushi Nemoto	  approximately eight kilobytes to the kernel image.  For best
196072ede9b1SAtsushi Nemoto	  performance should round up your number of processors to the next
196172ede9b1SAtsushi Nemoto	  power of two.
19621da177e4SLinus Torvalds
1963c4eee283SAtsushi Nemotosource "kernel/time/Kconfig"
1964c4eee283SAtsushi Nemoto
19651723b4a3SAtsushi Nemoto#
19661723b4a3SAtsushi Nemoto# Timer Interrupt Frequency Configuration
19671723b4a3SAtsushi Nemoto#
19681723b4a3SAtsushi Nemoto
19691723b4a3SAtsushi Nemotochoice
19701723b4a3SAtsushi Nemoto	prompt "Timer frequency"
19711723b4a3SAtsushi Nemoto	default HZ_250
19721723b4a3SAtsushi Nemoto	help
19731723b4a3SAtsushi Nemoto	 Allows the configuration of the timer frequency.
19741723b4a3SAtsushi Nemoto
19751723b4a3SAtsushi Nemoto	config HZ_48
19760f873585SRalf Baechle		bool "48 HZ" if SYS_SUPPORTS_48HZ || SYS_SUPPORTS_ARBIT_HZ
19771723b4a3SAtsushi Nemoto
19781723b4a3SAtsushi Nemoto	config HZ_100
19791723b4a3SAtsushi Nemoto		bool "100 HZ" if SYS_SUPPORTS_100HZ || SYS_SUPPORTS_ARBIT_HZ
19801723b4a3SAtsushi Nemoto
19811723b4a3SAtsushi Nemoto	config HZ_128
19821723b4a3SAtsushi Nemoto		bool "128 HZ" if SYS_SUPPORTS_128HZ || SYS_SUPPORTS_ARBIT_HZ
19831723b4a3SAtsushi Nemoto
19841723b4a3SAtsushi Nemoto	config HZ_250
19851723b4a3SAtsushi Nemoto		bool "250 HZ" if SYS_SUPPORTS_250HZ || SYS_SUPPORTS_ARBIT_HZ
19861723b4a3SAtsushi Nemoto
19871723b4a3SAtsushi Nemoto	config HZ_256
19881723b4a3SAtsushi Nemoto		bool "256 HZ" if SYS_SUPPORTS_256HZ || SYS_SUPPORTS_ARBIT_HZ
19891723b4a3SAtsushi Nemoto
19901723b4a3SAtsushi Nemoto	config HZ_1000
19911723b4a3SAtsushi Nemoto		bool "1000 HZ" if SYS_SUPPORTS_1000HZ || SYS_SUPPORTS_ARBIT_HZ
19921723b4a3SAtsushi Nemoto
19931723b4a3SAtsushi Nemoto	config HZ_1024
19941723b4a3SAtsushi Nemoto		bool "1024 HZ" if SYS_SUPPORTS_1024HZ || SYS_SUPPORTS_ARBIT_HZ
19951723b4a3SAtsushi Nemoto
19961723b4a3SAtsushi Nemotoendchoice
19971723b4a3SAtsushi Nemoto
19981723b4a3SAtsushi Nemotoconfig SYS_SUPPORTS_48HZ
19991723b4a3SAtsushi Nemoto	bool
20001723b4a3SAtsushi Nemoto
20011723b4a3SAtsushi Nemotoconfig SYS_SUPPORTS_100HZ
20021723b4a3SAtsushi Nemoto	bool
20031723b4a3SAtsushi Nemoto
20041723b4a3SAtsushi Nemotoconfig SYS_SUPPORTS_128HZ
20051723b4a3SAtsushi Nemoto	bool
20061723b4a3SAtsushi Nemoto
20071723b4a3SAtsushi Nemotoconfig SYS_SUPPORTS_250HZ
20081723b4a3SAtsushi Nemoto	bool
20091723b4a3SAtsushi Nemoto
20101723b4a3SAtsushi Nemotoconfig SYS_SUPPORTS_256HZ
20111723b4a3SAtsushi Nemoto	bool
20121723b4a3SAtsushi Nemoto
20131723b4a3SAtsushi Nemotoconfig SYS_SUPPORTS_1000HZ
20141723b4a3SAtsushi Nemoto	bool
20151723b4a3SAtsushi Nemoto
20161723b4a3SAtsushi Nemotoconfig SYS_SUPPORTS_1024HZ
20171723b4a3SAtsushi Nemoto	bool
20181723b4a3SAtsushi Nemoto
20191723b4a3SAtsushi Nemotoconfig SYS_SUPPORTS_ARBIT_HZ
20201723b4a3SAtsushi Nemoto	bool
20211723b4a3SAtsushi Nemoto	default y if !SYS_SUPPORTS_48HZ && !SYS_SUPPORTS_100HZ && \
20221723b4a3SAtsushi Nemoto		     !SYS_SUPPORTS_128HZ && !SYS_SUPPORTS_250HZ && \
20231723b4a3SAtsushi Nemoto		     !SYS_SUPPORTS_256HZ && !SYS_SUPPORTS_1000HZ && \
20241723b4a3SAtsushi Nemoto		     !SYS_SUPPORTS_1024HZ
20251723b4a3SAtsushi Nemoto
20261723b4a3SAtsushi Nemotoconfig HZ
20271723b4a3SAtsushi Nemoto	int
20281723b4a3SAtsushi Nemoto	default 48 if HZ_48
20291723b4a3SAtsushi Nemoto	default 100 if HZ_100
20301723b4a3SAtsushi Nemoto	default 128 if HZ_128
20311723b4a3SAtsushi Nemoto	default 250 if HZ_250
20321723b4a3SAtsushi Nemoto	default 256 if HZ_256
20331723b4a3SAtsushi Nemoto	default 1000 if HZ_1000
20341723b4a3SAtsushi Nemoto	default 1024 if HZ_1024
20351723b4a3SAtsushi Nemoto
2036e80de850SRalf Baechlesource "kernel/Kconfig.preempt"
20371da177e4SLinus Torvalds
20381da177e4SLinus Torvaldsconfig MIPS_INSANE_LARGE
20391da177e4SLinus Torvalds	bool "Support for large 64-bit configurations"
2040875d43e7SRalf Baechle	depends on CPU_R10000 && 64BIT
20411da177e4SLinus Torvalds	help
20421da177e4SLinus Torvalds	  MIPS R10000 does support a 44 bit / 16TB address space as opposed to
20431da177e4SLinus Torvalds	  previous 64-bit processors which only supported 40 bit / 1TB. If you
20441da177e4SLinus Torvalds	  need processes of more than 1TB virtual address space, say Y here.
20451da177e4SLinus Torvalds	  This will result in additional memory usage, so it is not
20461da177e4SLinus Torvalds	  recommended for normal users.
20471da177e4SLinus Torvalds
2048ea6e942bSAtsushi Nemotoconfig KEXEC
2049ea6e942bSAtsushi Nemoto	bool "Kexec system call (EXPERIMENTAL)"
2050ea6e942bSAtsushi Nemoto	depends on EXPERIMENTAL
2051ea6e942bSAtsushi Nemoto	help
2052ea6e942bSAtsushi Nemoto	  kexec is a system call that implements the ability to shutdown your
2053ea6e942bSAtsushi Nemoto	  current kernel, and to start another kernel.  It is like a reboot
20543dde6ad8SDavid Sterba	  but it is independent of the system firmware.   And like a reboot
2055ea6e942bSAtsushi Nemoto	  you can start any kernel with it, not just Linux.
2056ea6e942bSAtsushi Nemoto
205701dd2fbfSMatt LaPlante	  The name comes from the similarity to the exec system call.
2058ea6e942bSAtsushi Nemoto
2059ea6e942bSAtsushi Nemoto	  It is an ongoing process to be certain the hardware in a machine
2060ea6e942bSAtsushi Nemoto	  is properly shutdown, so do not be surprised if this code does not
2061ea6e942bSAtsushi Nemoto	  initially work for you.  It may help to enable device hotplugging
2062ea6e942bSAtsushi Nemoto	  support.  As of this writing the exact hardware interface is
2063ea6e942bSAtsushi Nemoto	  strongly in flux, so no good recommendation can be made.
2064ea6e942bSAtsushi Nemoto
2065ea6e942bSAtsushi Nemotoconfig SECCOMP
2066ea6e942bSAtsushi Nemoto	bool "Enable seccomp to safely compute untrusted bytecode"
2067293c5bd1SRalf Baechle	depends on PROC_FS
2068ea6e942bSAtsushi Nemoto	default y
2069ea6e942bSAtsushi Nemoto	help
2070ea6e942bSAtsushi Nemoto	  This kernel feature is useful for number crunching applications
2071ea6e942bSAtsushi Nemoto	  that may need to compute untrusted bytecode during their
2072ea6e942bSAtsushi Nemoto	  execution. By using pipes or other transports made available to
2073ea6e942bSAtsushi Nemoto	  the process as file descriptors supporting the read/write
2074ea6e942bSAtsushi Nemoto	  syscalls, it's possible to isolate those applications in
2075ea6e942bSAtsushi Nemoto	  their own address space using seccomp. Once seccomp is
2076ea6e942bSAtsushi Nemoto	  enabled via /proc/<pid>/seccomp, it cannot be disabled
2077ea6e942bSAtsushi Nemoto	  and the task is only allowed to execute a few safe syscalls
2078ea6e942bSAtsushi Nemoto	  defined by each seccomp mode.
2079ea6e942bSAtsushi Nemoto
2080ea6e942bSAtsushi Nemoto	  If unsure, say Y. Only embedded should say N here.
2081ea6e942bSAtsushi Nemoto
20825e83d430SRalf Baechleendmenu
20835e83d430SRalf Baechle
20841df0f0ffSAtsushi Nemotoconfig LOCKDEP_SUPPORT
20851df0f0ffSAtsushi Nemoto	bool
20861df0f0ffSAtsushi Nemoto	default y
20871df0f0ffSAtsushi Nemoto
20881df0f0ffSAtsushi Nemotoconfig STACKTRACE_SUPPORT
20891df0f0ffSAtsushi Nemoto	bool
20901df0f0ffSAtsushi Nemoto	default y
20911df0f0ffSAtsushi Nemoto
2092b6c3539bSRalf Baechlesource "init/Kconfig"
2093b6c3539bSRalf Baechle
2094dc52ddc0SMatt Helsleysource "kernel/Kconfig.freezer"
2095dc52ddc0SMatt Helsley
20961da177e4SLinus Torvaldsmenu "Bus options (PCI, PCMCIA, EISA, ISA, TC)"
20971da177e4SLinus Torvalds
20985e83d430SRalf Baechleconfig HW_HAS_EISA
20995e83d430SRalf Baechle	bool
21001da177e4SLinus Torvaldsconfig HW_HAS_PCI
21011da177e4SLinus Torvalds	bool
21021da177e4SLinus Torvalds
21031da177e4SLinus Torvaldsconfig PCI
21041da177e4SLinus Torvalds	bool "Support for PCI controller"
21051da177e4SLinus Torvalds	depends on HW_HAS_PCI
2106abb4ae46SRalf Baechle	select PCI_DOMAINS
21071da177e4SLinus Torvalds	help
21081da177e4SLinus Torvalds	  Find out whether you have a PCI motherboard. PCI is the name of a
21091da177e4SLinus Torvalds	  bus system, i.e. the way the CPU talks to the other stuff inside
21101da177e4SLinus Torvalds	  your box. Other bus systems are ISA, EISA, or VESA. If you have PCI,
21111da177e4SLinus Torvalds	  say Y, otherwise N.
21121da177e4SLinus Torvalds
21131da177e4SLinus Torvaldsconfig PCI_DOMAINS
21141da177e4SLinus Torvalds	bool
21151da177e4SLinus Torvalds
21161da177e4SLinus Torvaldssource "drivers/pci/Kconfig"
21171da177e4SLinus Torvalds
21181da177e4SLinus Torvalds#
21191da177e4SLinus Torvalds# ISA support is now enabled via select.  Too many systems still have the one
21201da177e4SLinus Torvalds# or other ISA chip on the board that users don't know about so don't expect
21211da177e4SLinus Torvalds# users to choose the right thing ...
21221da177e4SLinus Torvalds#
21231da177e4SLinus Torvaldsconfig ISA
21241da177e4SLinus Torvalds	bool
21251da177e4SLinus Torvalds
21261da177e4SLinus Torvaldsconfig EISA
21271da177e4SLinus Torvalds	bool "EISA support"
21285e83d430SRalf Baechle	depends on HW_HAS_EISA
21291da177e4SLinus Torvalds	select ISA
2130aa414dffSRalf Baechle	select GENERIC_ISA_DMA
21311da177e4SLinus Torvalds	---help---
21321da177e4SLinus Torvalds	  The Extended Industry Standard Architecture (EISA) bus was
21331da177e4SLinus Torvalds	  developed as an open alternative to the IBM MicroChannel bus.
21341da177e4SLinus Torvalds
21351da177e4SLinus Torvalds	  The EISA bus provided some of the features of the IBM MicroChannel
21361da177e4SLinus Torvalds	  bus while maintaining backward compatibility with cards made for
21371da177e4SLinus Torvalds	  the older ISA bus.  The EISA bus saw limited use between 1988 and
21381da177e4SLinus Torvalds	  1995 when it was made obsolete by the PCI bus.
21391da177e4SLinus Torvalds
21401da177e4SLinus Torvalds	  Say Y here if you are building a kernel for an EISA-based machine.
21411da177e4SLinus Torvalds
21421da177e4SLinus Torvalds	  Otherwise, say N.
21431da177e4SLinus Torvalds
21441da177e4SLinus Torvaldssource "drivers/eisa/Kconfig"
21451da177e4SLinus Torvalds
21461da177e4SLinus Torvaldsconfig TC
21471da177e4SLinus Torvalds	bool "TURBOchannel support"
21481da177e4SLinus Torvalds	depends on MACH_DECSTATION
21491da177e4SLinus Torvalds	help
21501da177e4SLinus Torvalds	  TurboChannel is a DEC (now Compaq (now HP)) bus for Alpha and MIPS
21511da177e4SLinus Torvalds	  processors.  Documentation on writing device drivers for TurboChannel
21521da177e4SLinus Torvalds	  is available at:
21531da177e4SLinus Torvalds	  <http://www.cs.arizona.edu/computer.help/policy/DIGITAL_unix/AA-PS3HD-TET1_html/TITLE.html>.
21541da177e4SLinus Torvalds
21551da177e4SLinus Torvalds#config ACCESSBUS
21561da177e4SLinus Torvalds#	bool "Access.Bus support"
21571da177e4SLinus Torvalds#	depends on TC
21581da177e4SLinus Torvalds
21591da177e4SLinus Torvaldsconfig MMU
21601da177e4SLinus Torvalds	bool
21611da177e4SLinus Torvalds	default y
21621da177e4SLinus Torvalds
2163d865bea4SRalf Baechleconfig I8253
2164d865bea4SRalf Baechle	bool
21659726b43aSWu Zhangjin	select MIPS_EXTERNAL_TIMER
2166d865bea4SRalf Baechle
2167cce335aeSRalf Baechleconfig ZONE_DMA32
2168cce335aeSRalf Baechle	bool
2169cce335aeSRalf Baechle
21701da177e4SLinus Torvaldssource "drivers/pcmcia/Kconfig"
21711da177e4SLinus Torvalds
21721da177e4SLinus Torvaldssource "drivers/pci/hotplug/Kconfig"
21731da177e4SLinus Torvalds
21741da177e4SLinus Torvaldsendmenu
21751da177e4SLinus Torvalds
21761da177e4SLinus Torvaldsmenu "Executable file formats"
21771da177e4SLinus Torvalds
21781da177e4SLinus Torvaldssource "fs/Kconfig.binfmt"
21791da177e4SLinus Torvalds
21801da177e4SLinus Torvaldsconfig TRAD_SIGNALS
21811da177e4SLinus Torvalds	bool
21821da177e4SLinus Torvalds
21831da177e4SLinus Torvaldsconfig MIPS32_COMPAT
21841da177e4SLinus Torvalds	bool "Kernel support for Linux/MIPS 32-bit binary compatibility"
2185875d43e7SRalf Baechle	depends on 64BIT
21861da177e4SLinus Torvalds	help
21871da177e4SLinus Torvalds	  Select this option if you want Linux/MIPS 32-bit binary
21881da177e4SLinus Torvalds	  compatibility. Since all software available for Linux/MIPS is
21891da177e4SLinus Torvalds	  currently 32-bit you should say Y here.
21901da177e4SLinus Torvalds
21911da177e4SLinus Torvaldsconfig COMPAT
21921da177e4SLinus Torvalds	bool
21931da177e4SLinus Torvalds	depends on MIPS32_COMPAT
21941da177e4SLinus Torvalds	default y
21951da177e4SLinus Torvalds
219605e43966SAtsushi Nemotoconfig SYSVIPC_COMPAT
219705e43966SAtsushi Nemoto	bool
219805e43966SAtsushi Nemoto	depends on COMPAT && SYSVIPC
219905e43966SAtsushi Nemoto	default y
220005e43966SAtsushi Nemoto
22011da177e4SLinus Torvaldsconfig MIPS32_O32
22021da177e4SLinus Torvalds	bool "Kernel support for o32 binaries"
22031da177e4SLinus Torvalds	depends on MIPS32_COMPAT
22041da177e4SLinus Torvalds	help
22051da177e4SLinus Torvalds	  Select this option if you want to run o32 binaries.  These are pure
22061da177e4SLinus Torvalds	  32-bit binaries as used by the 32-bit Linux/MIPS port.  Most of
22071da177e4SLinus Torvalds	  existing binaries are in this format.
22081da177e4SLinus Torvalds
22091da177e4SLinus Torvalds	  If unsure, say Y.
22101da177e4SLinus Torvalds
22111da177e4SLinus Torvaldsconfig MIPS32_N32
22121da177e4SLinus Torvalds	bool "Kernel support for n32 binaries"
22131da177e4SLinus Torvalds	depends on MIPS32_COMPAT
22141da177e4SLinus Torvalds	help
22151da177e4SLinus Torvalds	  Select this option if you want to run n32 binaries.  These are
22161da177e4SLinus Torvalds	  64-bit binaries using 32-bit quantities for addressing and certain
22171da177e4SLinus Torvalds	  data that would normally be 64-bit.  They are used in special
22181da177e4SLinus Torvalds	  cases.
22191da177e4SLinus Torvalds
22201da177e4SLinus Torvalds	  If unsure, say N.
22211da177e4SLinus Torvalds
22221da177e4SLinus Torvaldsconfig BINFMT_ELF32
22231da177e4SLinus Torvalds	bool
22241da177e4SLinus Torvalds	default y if MIPS32_O32 || MIPS32_N32
22251da177e4SLinus Torvalds
22262116245eSRalf Baechleendmenu
22271da177e4SLinus Torvalds
22282116245eSRalf Baechlemenu "Power management options"
2229952fa954SRodolfo Giometti
2230363c55caSWu Zhangjinconfig ARCH_HIBERNATION_POSSIBLE
2231363c55caSWu Zhangjin	def_bool y
22323f5b3e17SRalf Baechle	depends on SYS_SUPPORTS_HOTPLUG_CPU || !SMP
2233363c55caSWu Zhangjin
2234f4cb5700SJohannes Bergconfig ARCH_SUSPEND_POSSIBLE
2235f4cb5700SJohannes Berg	def_bool y
22363f5b3e17SRalf Baechle	depends on SYS_SUPPORTS_HOTPLUG_CPU || !SMP
2237f4cb5700SJohannes Berg
22382116245eSRalf Baechlesource "kernel/power/Kconfig"
2239952fa954SRodolfo Giometti
22401da177e4SLinus Torvaldsendmenu
22411da177e4SLinus Torvalds
22429726b43aSWu Zhangjinsource "arch/mips/kernel/cpufreq/Kconfig"
22439726b43aSWu Zhangjin
2244d5950b43SSam Ravnborgsource "net/Kconfig"
2245d5950b43SSam Ravnborg
22461da177e4SLinus Torvaldssource "drivers/Kconfig"
22471da177e4SLinus Torvalds
22481da177e4SLinus Torvaldssource "fs/Kconfig"
22491da177e4SLinus Torvalds
22501da177e4SLinus Torvaldssource "arch/mips/Kconfig.debug"
22511da177e4SLinus Torvalds
22521da177e4SLinus Torvaldssource "security/Kconfig"
22531da177e4SLinus Torvalds
22541da177e4SLinus Torvaldssource "crypto/Kconfig"
22551da177e4SLinus Torvalds
22561da177e4SLinus Torvaldssource "lib/Kconfig"
2257