blob: 7159495ee0b57d832b8c7f9f2bb7bf6a5532e29c [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001config MIPS
2 bool
3 default y
Sam Ravnborgec7748b2008-02-09 10:46:40 +01004 select HAVE_IDE
Mathieu Desnoyers42d4b832008-02-02 15:10:34 -05005 select HAVE_OPROFILE
Jason Wessel88547002008-07-29 15:58:53 -05006 select HAVE_ARCH_KGDB
Linus Torvalds1da177e2005-04-16 15:20:36 -07007 # Horrible source of confusion. Die, die, die ...
8 select EMBEDDED
Wu Zhangjin8e497112009-07-02 23:26:08 +08009 select RTC_LIB if !LEMOTE_FULOONG2E
Linus Torvalds1da177e2005-04-16 15:20:36 -070010
Linus Torvalds1da177e2005-04-16 15:20:36 -070011mainmenu "Linux/MIPS Kernel Configuration"
12
Linus Torvalds1da177e2005-04-16 15:20:36 -070013menu "Machine selection"
14
Christoph Lameter5ac6da62007-02-10 01:43:14 -080015config ZONE_DMA
16 bool
Christoph Lameter5ac6da62007-02-10 01:43:14 -080017
Ralf Baechle5e83d432005-10-29 19:32:41 +010018choice
19 prompt "System type"
20 default SGI_IP22
Linus Torvalds1da177e2005-04-16 15:20:36 -070021
Yoichi Yuasac3543e22007-05-11 20:44:30 +090022config MACH_ALCHEMY
23 bool "Alchemy processor based machines"
Linus Torvalds1da177e2005-04-16 15:20:36 -070024
Florian Fainelli7ca5dc12009-06-24 11:12:57 +020025config AR7
26 bool "Texas Instruments AR7"
27 select BOOT_ELF32
28 select DMA_NONCOHERENT
29 select CEVT_R4K
30 select CSRC_R4K
31 select IRQ_CPU
32 select NO_EXCEPT_FILL
33 select SWAP_IO_SPACE
34 select SYS_HAS_CPU_MIPS32_R1
35 select SYS_HAS_EARLY_PRINTK
36 select SYS_SUPPORTS_32BIT_KERNEL
37 select SYS_SUPPORTS_LITTLE_ENDIAN
38 select GENERIC_GPIO
39 select GCD
40 select VLYNQ
41 help
42 Support for the Texas Instruments AR7 System-on-a-Chip
43 family: TNETD7100, 7200 and 7300.
44
Ralf Baechle35189fa2006-06-18 16:39:46 +010045config BASLER_EXCITE
Thomas Koellerbe915892007-02-23 01:40:34 +010046 bool "Basler eXcite smart camera"
Ralf Baechle42f77542007-10-18 17:48:11 +010047 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +000048 select CSRC_R4K
Ralf Baechle35189fa2006-06-18 16:39:46 +010049 select DMA_COHERENT
50 select HW_HAS_PCI
51 select IRQ_CPU
52 select IRQ_CPU_RM7K
53 select IRQ_CPU_RM9K
thomas@koeller.dyndns.org663c3d92006-08-27 13:51:48 +020054 select MIPS_RM9122
Ralf Baechle35189fa2006-06-18 16:39:46 +010055 select SYS_HAS_CPU_RM9000
56 select SYS_SUPPORTS_32BIT_KERNEL
Ralf Baechle35189fa2006-06-18 16:39:46 +010057 select SYS_SUPPORTS_BIG_ENDIAN
58 help
59 The eXcite is a smart camera platform manufactured by
Thomas Koellerbe915892007-02-23 01:40:34 +010060 Basler Vision Technologies AG.
Ralf Baechle35189fa2006-06-18 16:39:46 +010061
Aurelien Jarno1c0c13e2007-09-25 15:40:12 +020062config BCM47XX
63 bool "BCM47XX based boards"
Ralf Baechle42f77542007-10-18 17:48:11 +010064 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +000065 select CSRC_R4K
Aurelien Jarno1c0c13e2007-09-25 15:40:12 +020066 select DMA_NONCOHERENT
67 select HW_HAS_PCI
68 select IRQ_CPU
69 select SYS_HAS_CPU_MIPS32_R1
70 select SYS_SUPPORTS_32BIT_KERNEL
71 select SYS_SUPPORTS_LITTLE_ENDIAN
72 select SSB
73 select SSB_DRIVER_MIPS
Aurelien Jarno2f02c152007-12-11 11:30:34 +010074 select SSB_DRIVER_EXTIF
Aurelien Jarnob06f3e12008-10-14 11:44:26 +020075 select SSB_EMBEDDED
Aurelien Jarno2f02c152007-12-11 11:30:34 +010076 select SSB_PCICORE_HOSTMODE if PCI
Aurelien Jarno1c0c13e2007-09-25 15:40:12 +020077 select GENERIC_GPIO
Aurelien Jarno25e5fb92007-09-25 15:41:24 +020078 select SYS_HAS_EARLY_PRINTK
79 select CFE
Aurelien Jarno1c0c13e2007-09-25 15:40:12 +020080 help
81 Support for BCM47XX based boards
82
Maxime Bizone7300d02009-08-18 13:23:37 +010083config BCM63XX
84 bool "Broadcom BCM63XX based boards"
85 select CEVT_R4K
86 select CSRC_R4K
87 select DMA_NONCOHERENT
88 select IRQ_CPU
89 select SYS_HAS_CPU_MIPS32_R1
90 select SYS_SUPPORTS_32BIT_KERNEL
91 select SYS_SUPPORTS_BIG_ENDIAN
92 select SYS_HAS_EARLY_PRINTK
93 select SWAP_IO_SPACE
94 select ARCH_REQUIRE_GPIOLIB
95 help
96 Support for BCM63XX based boards
97
Linus Torvalds1da177e2005-04-16 15:20:36 -070098config MIPS_COBALT
Martin Michlmayr3fa986f2006-05-09 23:34:53 +020099 bool "Cobalt Server"
Ralf Baechle42f77542007-10-18 17:48:11 +0100100 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000101 select CSRC_R4K
Yoichi Yuasa1097c6a2007-10-22 19:43:15 +0900102 select CEVT_GT641XX
Linus Torvalds1da177e2005-04-16 15:20:36 -0700103 select DMA_NONCOHERENT
104 select HW_HAS_PCI
Ralf Baechled865bea2007-10-11 23:46:10 +0100105 select I8253
Linus Torvalds1da177e2005-04-16 15:20:36 -0700106 select I8259
107 select IRQ_CPU
Yoichi Yuasad5ab1a62007-09-13 23:51:26 +0900108 select IRQ_GT641XX
Yoichi Yuasa252161e2007-03-14 21:51:26 +0900109 select PCI_GT64XXX_PCI0
Yoichi Yuasae25bfc92009-06-02 23:17:07 +0900110 select PCI
Ralf Baechle7cf80532005-10-20 22:33:09 +0100111 select SYS_HAS_CPU_NEVADA
Yoichi Yuasa0a22e0d2007-03-02 12:42:33 +0900112 select SYS_HAS_EARLY_PRINTK
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700113 select SYS_SUPPORTS_32BIT_KERNEL
Florian Fainelli0e8774b2008-01-15 19:42:57 +0100114 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100115 select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700116
117config MACH_DECSTATION
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200118 bool "DECstations"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700119 select BOOT_ELF32
Yoichi Yuasa6457d9f2008-04-25 12:11:44 +0900120 select CEVT_DS1287
Ralf Baechle42f77542007-10-18 17:48:11 +0100121 select CEVT_R4K
Yoichi Yuasa42474172008-04-24 09:48:40 +0900122 select CSRC_IOASIC
Ralf Baechle940f6b42007-11-24 22:33:28 +0000123 select CSRC_R4K
Maciej W. Rozycki20d60d92007-10-23 12:43:11 +0100124 select CPU_DADDI_WORKAROUNDS if 64BIT
125 select CPU_R4000_WORKAROUNDS if 64BIT
126 select CPU_R4400_WORKAROUNDS if 64BIT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700127 select DMA_NONCOHERENT
Maciej W. Rozyckid388d682007-05-29 15:08:07 +0100128 select NO_IOPORT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700129 select IRQ_CPU
Ralf Baechle7cf80532005-10-20 22:33:09 +0100130 select SYS_HAS_CPU_R3000
131 select SYS_HAS_CPU_R4X00
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700132 select SYS_SUPPORTS_32BIT_KERNEL
133 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100134 select SYS_SUPPORTS_LITTLE_ENDIAN
Atsushi Nemoto1723b4a2006-06-20 00:19:13 +0900135 select SYS_SUPPORTS_128HZ
136 select SYS_SUPPORTS_256HZ
137 select SYS_SUPPORTS_1024HZ
Ralf Baechle5e83d432005-10-29 19:32:41 +0100138 help
Linus Torvalds1da177e2005-04-16 15:20:36 -0700139 This enables support for DEC's MIPS based workstations. For details
140 see the Linux/MIPS FAQ on <http://www.linux-mips.org/> and the
141 DECstation porting pages on <http://decstation.unix-ag.org/>.
142
143 If you have one of the following DECstation Models you definitely
144 want to choose R4xx0 for the CPU Type:
145
Ralf Baechle93088162007-08-29 14:21:45 +0100146 DECstation 5000/50
147 DECstation 5000/150
148 DECstation 5000/260
149 DECsystem 5900/260
Linus Torvalds1da177e2005-04-16 15:20:36 -0700150
151 otherwise choose R3000.
152
Ralf Baechle5e83d432005-10-29 19:32:41 +0100153config MACH_JAZZ
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200154 bool "Jazz family of machines"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100155 select ARC
156 select ARC32
157 select ARCH_MAY_HAVE_PC_FDC
Ralf Baechle42f77542007-10-18 17:48:11 +0100158 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000159 select CSRC_R4K
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +0100160 select DEFAULT_SGI_PARTITION if CPU_BIG_ENDIAN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100161 select GENERIC_ISA_DMA
Thomas Bogendoerferea202c62007-08-25 11:01:50 +0200162 select IRQ_CPU
Ralf Baechled865bea2007-10-11 23:46:10 +0100163 select I8253
Ralf Baechle5e83d432005-10-29 19:32:41 +0100164 select I8259
165 select ISA
Ralf Baechle7cf80532005-10-20 22:33:09 +0100166 select SYS_HAS_CPU_R4X00
Ralf Baechle5e83d432005-10-29 19:32:41 +0100167 select SYS_SUPPORTS_32BIT_KERNEL
168 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
Atsushi Nemoto1723b4a2006-06-20 00:19:13 +0900169 select SYS_SUPPORTS_100HZ
Linus Torvalds1da177e2005-04-16 15:20:36 -0700170 help
Ralf Baechle5e83d432005-10-29 19:32:41 +0100171 This a family of machines based on the MIPS R4030 chipset which was
172 used by several vendors to build RISC/os and Windows NT workstations.
Matt LaPlante692105b2009-01-26 11:12:25 +0100173 Members include the Acer PICA, MIPS Magnum 4000, MIPS Millennium and
Ralf Baechle5e83d432005-10-29 19:32:41 +0100174 Olivetti M700-10 workstations.
175
Brian Murphy1f21d2b2007-08-21 22:34:16 +0200176config LASAT
177 bool "LASAT Networks platforms"
Ralf Baechle42f77542007-10-18 17:48:11 +0100178 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000179 select CSRC_R4K
Brian Murphy1f21d2b2007-08-21 22:34:16 +0200180 select DMA_NONCOHERENT
181 select SYS_HAS_EARLY_PRINTK
182 select HW_HAS_PCI
Ralf Baechlea5ccfe52007-10-14 23:49:33 +0100183 select IRQ_CPU
Brian Murphy1f21d2b2007-08-21 22:34:16 +0200184 select PCI_GT64XXX_PCI0
185 select MIPS_NILE4
186 select R5000_CPU_SCACHE
187 select SYS_HAS_CPU_R5000
188 select SYS_SUPPORTS_32BIT_KERNEL
189 select SYS_SUPPORTS_64BIT_KERNEL if BROKEN
190 select SYS_SUPPORTS_LITTLE_ENDIAN
Brian Murphy1f21d2b2007-08-21 22:34:16 +0200191
Wu Zhangjin85749d22009-07-02 23:26:45 +0800192config MACH_LOONGSON
193 bool "Loongson family of machines"
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900194 help
Wu Zhangjin85749d22009-07-02 23:26:45 +0800195 This enables the support of Loongson family of machines.
196
197 Loongson is a family of general-purpose MIPS-compatible CPUs.
198 developed at Institute of Computing Technology (ICT),
199 Chinese Academy of Sciences (CAS) in the People's Republic
200 of China. The chief architect is Professor Weiwu Hu.
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900201
Linus Torvalds1da177e2005-04-16 15:20:36 -0700202config MIPS_MALTA
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200203 bool "MIPS Malta board"
Ralf Baechle61ed2422005-09-15 08:52:34 +0000204 select ARCH_MAY_HAVE_PC_FDC
Linus Torvalds1da177e2005-04-16 15:20:36 -0700205 select BOOT_ELF32
Ralf Baechlefa71c962008-01-29 10:15:00 +0000206 select BOOT_RAW
Ralf Baechle42f77542007-10-18 17:48:11 +0100207 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000208 select CSRC_R4K
Linus Torvalds1da177e2005-04-16 15:20:36 -0700209 select DMA_NONCOHERENT
210 select GENERIC_ISA_DMA
Ralf Baechleaa414df2006-11-30 01:14:51 +0000211 select IRQ_CPU
Ralf Baechle39b8d522008-04-28 17:14:26 +0100212 select IRQ_GIC
Linus Torvalds1da177e2005-04-16 15:20:36 -0700213 select HW_HAS_PCI
Ralf Baechled865bea2007-10-11 23:46:10 +0100214 select I8253
Linus Torvalds1da177e2005-04-16 15:20:36 -0700215 select I8259
Ralf Baechle5e83d432005-10-29 19:32:41 +0100216 select MIPS_BOARDS_GEN
217 select MIPS_BONITO64
Chris Dearman9318c512006-06-20 17:15:20 +0100218 select MIPS_CPU_SCACHE
Yoichi Yuasa252161e2007-03-14 21:51:26 +0900219 select PCI_GT64XXX_PCI0
Ralf Baechle5e83d432005-10-29 19:32:41 +0100220 select MIPS_MSC
Linus Torvalds1da177e2005-04-16 15:20:36 -0700221 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100222 select SYS_HAS_CPU_MIPS32_R1
223 select SYS_HAS_CPU_MIPS32_R2
224 select SYS_HAS_CPU_MIPS64_R1
225 select SYS_HAS_CPU_NEVADA
226 select SYS_HAS_CPU_RM7000
Ralf Baechle36a88532007-03-01 11:56:43 +0000227 select SYS_HAS_EARLY_PRINTK
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700228 select SYS_SUPPORTS_32BIT_KERNEL
229 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100230 select SYS_SUPPORTS_BIG_ENDIAN
231 select SYS_SUPPORTS_LITTLE_ENDIAN
Tim Anderson03650702009-06-17 16:22:53 -0700232 select SYS_SUPPORTS_MIPS_CMP
Ralf Baechlef41ae0b2006-06-05 17:24:46 +0100233 select SYS_SUPPORTS_MULTITHREADING
Franck Bui-Huu9693a852007-02-02 17:41:47 +0100234 select SYS_SUPPORTS_SMARTMIPS
Linus Torvalds1da177e2005-04-16 15:20:36 -0700235 help
Maciej W. Rozyckif638d192005-02-02 22:23:46 +0000236 This enables support for the MIPS Technologies Malta evaluation
Linus Torvalds1da177e2005-04-16 15:20:36 -0700237 board.
238
Ralf Baechlec78cbf42005-09-30 13:59:37 +0100239config MIPS_SIM
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200240 bool 'MIPS simulator (MIPSsim)'
Ralf Baechle42f77542007-10-18 17:48:11 +0100241 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000242 select CSRC_R4K
Ralf Baechlec78cbf42005-09-30 13:59:37 +0100243 select DMA_NONCOHERENT
Ralf Baechle36a88532007-03-01 11:56:43 +0000244 select SYS_HAS_EARLY_PRINTK
Ralf Baechlec78cbf42005-09-30 13:59:37 +0100245 select IRQ_CPU
Marc St-Jean9267a302007-06-14 15:55:31 -0600246 select BOOT_RAW
Ralf Baechle7cf80532005-10-20 22:33:09 +0100247 select SYS_HAS_CPU_MIPS32_R1
248 select SYS_HAS_CPU_MIPS32_R2
Ralf Baechle36a88532007-03-01 11:56:43 +0000249 select SYS_HAS_EARLY_PRINTK
Ralf Baechlec78cbf42005-09-30 13:59:37 +0100250 select SYS_SUPPORTS_32BIT_KERNEL
251 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechlef6e23732007-07-10 17:32:56 +0100252 select SYS_SUPPORTS_MULTITHREADING
Ralf Baechlec78cbf42005-09-30 13:59:37 +0100253 select SYS_SUPPORTS_LITTLE_ENDIAN
254 help
255 This option enables support for MIPS Technologies MIPSsim software
256 emulator.
257
Ralf Baechlea83860c2009-03-13 21:17:57 +0100258config NEC_MARKEINS
259 bool "NEC EMMA2RH Mark-eins board"
260 select SOC_EMMA2RH
261 select HW_HAS_PCI
262 help
263 This enables support for the NEC Electronics Mark-eins boards.
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900264
Ralf Baechle5e83d432005-10-29 19:32:41 +0100265config MACH_VR41XX
Yoichi Yuasa74142d62007-04-26 19:45:09 +0900266 bool "NEC VR4100 series based machines"
Ralf Baechle42f77542007-10-18 17:48:11 +0100267 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000268 select CSRC_R4K
Ralf Baechle7cf80532005-10-20 22:33:09 +0100269 select SYS_HAS_CPU_VR41XX
Yoichi Yuasa27fdd322009-06-29 11:11:05 +0900270 select ARCH_REQUIRE_GPIOLIB
Ralf Baechle5e83d432005-10-29 19:32:41 +0100271
Daniel Lairdedb63102008-06-16 15:49:21 +0100272config NXP_STB220
273 bool "NXP STB220 board"
274 select SOC_PNX833X
275 help
276 Support for NXP Semiconductors STB220 Development Board.
277
278config NXP_STB225
279 bool "NXP 225 board"
280 select SOC_PNX833X
281 select SOC_PNX8335
282 help
283 Support for NXP Semiconductors STB225 Development Board.
284
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900285config PNX8550_JBS
Daniel Lairda92b0582008-03-06 09:07:18 +0000286 bool "NXP PNX8550 based JBS board"
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900287 select PNX8550
288 select SYS_SUPPORTS_LITTLE_ENDIAN
289
290config PNX8550_STB810
Daniel Lairda92b0582008-03-06 09:07:18 +0000291 bool "NXP PNX8550 based STB810 board"
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900292 select PNX8550
293 select SYS_SUPPORTS_LITTLE_ENDIAN
294
Marc St-Jean9267a302007-06-14 15:55:31 -0600295config PMC_MSP
296 bool "PMC-Sierra MSP chipsets"
297 depends on EXPERIMENTAL
298 select DMA_NONCOHERENT
299 select SWAP_IO_SPACE
300 select NO_EXCEPT_FILL
301 select BOOT_RAW
302 select SYS_HAS_CPU_MIPS32_R1
303 select SYS_HAS_CPU_MIPS32_R2
304 select SYS_SUPPORTS_32BIT_KERNEL
305 select SYS_SUPPORTS_BIG_ENDIAN
Marc St-Jean9267a302007-06-14 15:55:31 -0600306 select IRQ_CPU
307 select SERIAL_8250
308 select SERIAL_8250_CONSOLE
309 help
310 This adds support for the PMC-Sierra family of Multi-Service
311 Processor System-On-A-Chips. These parts include a number
312 of integrated peripherals, interfaces and DSPs in addition to
313 a variety of MIPS cores.
314
Ralf Baechle5e83d432005-10-29 19:32:41 +0100315config PMC_YOSEMITE
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200316 bool "PMC-Sierra Yosemite eval board"
Ralf Baechle42f77542007-10-18 17:48:11 +0100317 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000318 select CSRC_R4K
Ralf Baechle5e83d432005-10-29 19:32:41 +0100319 select DMA_COHERENT
320 select HW_HAS_PCI
321 select IRQ_CPU
322 select IRQ_CPU_RM7K
323 select IRQ_CPU_RM9K
324 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100325 select SYS_HAS_CPU_RM9000
Ralf Baechle36a88532007-03-01 11:56:43 +0000326 select SYS_HAS_EARLY_PRINTK
Ralf Baechle5e83d432005-10-29 19:32:41 +0100327 select SYS_SUPPORTS_32BIT_KERNEL
328 select SYS_SUPPORTS_64BIT_KERNEL
329 select SYS_SUPPORTS_BIG_ENDIAN
330 select SYS_SUPPORTS_HIGHMEM
Ralf Baechlee73ea272006-06-04 11:51:46 +0100331 select SYS_SUPPORTS_SMP
Ralf Baechle5e83d432005-10-29 19:32:41 +0100332 help
333 Yosemite is an evaluation board for the RM9000x2 processor
334 manufactured by PMC-Sierra.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700335
Linus Torvalds1da177e2005-04-16 15:20:36 -0700336config SGI_IP22
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200337 bool "SGI IP22 (Indy/Indigo2)"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700338 select ARC
339 select ARC32
340 select BOOT_ELF32
Ralf Baechle42f77542007-10-18 17:48:11 +0100341 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000342 select CSRC_R4K
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +0100343 select DEFAULT_SGI_PARTITION
Linus Torvalds1da177e2005-04-16 15:20:36 -0700344 select DMA_NONCOHERENT
Ralf Baechle5e83d432005-10-29 19:32:41 +0100345 select HW_HAS_EISA
Ralf Baechled865bea2007-10-11 23:46:10 +0100346 select I8253
Thomas Bogendoerfer68de4802007-11-23 20:34:16 +0100347 select I8259
Linus Torvalds1da177e2005-04-16 15:20:36 -0700348 select IP22_CPU_SCACHE
349 select IRQ_CPU
Ralf Baechleaa414df2006-11-30 01:14:51 +0000350 select GENERIC_ISA_DMA_SUPPORT_BROKEN
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +0100351 select SGI_HAS_I8042
352 select SGI_HAS_INDYDOG
Thomas Bogendoerfer36e5c212008-07-16 14:06:15 +0200353 select SGI_HAS_HAL2
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +0100354 select SGI_HAS_SEEQ
355 select SGI_HAS_WD93
356 select SGI_HAS_ZILOG
Linus Torvalds1da177e2005-04-16 15:20:36 -0700357 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100358 select SYS_HAS_CPU_R4X00
359 select SYS_HAS_CPU_R5000
Ralf Baechle36a88532007-03-01 11:56:43 +0000360 select SYS_HAS_EARLY_PRINTK
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700361 select SYS_SUPPORTS_32BIT_KERNEL
362 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100363 select SYS_SUPPORTS_BIG_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700364 help
365 This are the SGI Indy, Challenge S and Indigo2, as well as certain
366 OEM variants like the Tandem CMN B006S. To compile a Linux kernel
367 that runs on these, say Y here.
368
369config SGI_IP27
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200370 bool "SGI IP27 (Origin200/2000)"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700371 select ARC
372 select ARC64
Ralf Baechle5e83d432005-10-29 19:32:41 +0100373 select BOOT_ELF64
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +0100374 select DEFAULT_SGI_PARTITION
Ralf Baechle634286f2009-01-28 17:48:40 +0000375 select DMA_COHERENT
Ralf Baechle36a88532007-03-01 11:56:43 +0000376 select SYS_HAS_EARLY_PRINTK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700377 select HW_HAS_PCI
Ralf Baechle130e2fb2007-02-06 16:53:15 +0000378 select NR_CPUS_DEFAULT_64
Ralf Baechle7cf80532005-10-20 22:33:09 +0100379 select SYS_HAS_CPU_R10000
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700380 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100381 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechled8cb4e12006-06-11 23:03:08 +0100382 select SYS_SUPPORTS_NUMA
Ralf Baechle1a5c5de2006-11-02 17:23:33 +0000383 select SYS_SUPPORTS_SMP
Linus Torvalds1da177e2005-04-16 15:20:36 -0700384 help
385 This are the SGI Origin 200, Origin 2000 and Onyx 2 Graphics
386 workstations. To compile a Linux kernel that runs on these, say Y
387 here.
388
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +0100389config SGI_IP28
390 bool "SGI IP28 (Indigo2 R10k) (EXPERIMENTAL)"
391 depends on EXPERIMENTAL
392 select ARC
393 select ARC64
394 select BOOT_ELF64
395 select CEVT_R4K
396 select CSRC_R4K
397 select DEFAULT_SGI_PARTITION
398 select DMA_NONCOHERENT
399 select GENERIC_ISA_DMA_SUPPORT_BROKEN
400 select IRQ_CPU
401 select HW_HAS_EISA
402 select I8253
403 select I8259
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +0100404 select SGI_HAS_I8042
405 select SGI_HAS_INDYDOG
Thomas Bogendoerfer5b438c42008-07-10 20:29:55 +0200406 select SGI_HAS_HAL2
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +0100407 select SGI_HAS_SEEQ
408 select SGI_HAS_WD93
409 select SGI_HAS_ZILOG
410 select SWAP_IO_SPACE
411 select SYS_HAS_CPU_R10000
412 select SYS_HAS_EARLY_PRINTK
413 select SYS_SUPPORTS_64BIT_KERNEL
414 select SYS_SUPPORTS_BIG_ENDIAN
415 help
416 This is the SGI Indigo2 with R10000 processor. To compile a Linux
417 kernel that runs on these, say Y here.
418
Linus Torvalds1da177e2005-04-16 15:20:36 -0700419config SGI_IP32
Ralf Baechlecfd2afc2007-07-10 17:33:00 +0100420 bool "SGI IP32 (O2)"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700421 select ARC
422 select ARC32
423 select BOOT_ELF32
Ralf Baechle42f77542007-10-18 17:48:11 +0100424 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000425 select CSRC_R4K
Linus Torvalds1da177e2005-04-16 15:20:36 -0700426 select DMA_NONCOHERENT
427 select HW_HAS_PCI
Ralf Baechledd67b152007-10-14 14:02:26 +0100428 select IRQ_CPU
Linus Torvalds1da177e2005-04-16 15:20:36 -0700429 select R5000_CPU_SCACHE
430 select RM7000_CPU_SCACHE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100431 select SYS_HAS_CPU_R5000
432 select SYS_HAS_CPU_R10000 if BROKEN
433 select SYS_HAS_CPU_RM7000
Ralf Baechledd2f18f2006-01-19 14:55:42 +0000434 select SYS_HAS_CPU_NEVADA
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700435 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100436 select SYS_SUPPORTS_BIG_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700437 help
438 If you want this kernel to run on SGI O2 workstation, say Y here.
439
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900440config SIBYTE_CRHINE
441 bool "Sibyte BCM91120C-CRhine"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100442 depends on EXPERIMENTAL
443 select BOOT_ELF32
444 select DMA_COHERENT
445 select SIBYTE_BCM1120
446 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100447 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100448 select SYS_SUPPORTS_BIG_ENDIAN
449 select SYS_SUPPORTS_LITTLE_ENDIAN
450
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900451config SIBYTE_CARMEL
452 bool "Sibyte BCM91120x-Carmel"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100453 depends on EXPERIMENTAL
454 select BOOT_ELF32
455 select DMA_COHERENT
456 select SIBYTE_BCM1120
457 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100458 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100459 select SYS_SUPPORTS_BIG_ENDIAN
460 select SYS_SUPPORTS_LITTLE_ENDIAN
461
462config SIBYTE_CRHONE
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200463 bool "Sibyte BCM91125C-CRhone"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100464 depends on EXPERIMENTAL
465 select BOOT_ELF32
466 select DMA_COHERENT
467 select SIBYTE_BCM1125
468 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100469 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100470 select SYS_SUPPORTS_BIG_ENDIAN
471 select SYS_SUPPORTS_HIGHMEM
472 select SYS_SUPPORTS_LITTLE_ENDIAN
473
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900474config SIBYTE_RHONE
475 bool "Sibyte BCM91125E-Rhone"
476 depends on EXPERIMENTAL
477 select BOOT_ELF32
478 select DMA_COHERENT
479 select SIBYTE_BCM1125H
480 select SWAP_IO_SPACE
481 select SYS_HAS_CPU_SB1
482 select SYS_SUPPORTS_BIG_ENDIAN
483 select SYS_SUPPORTS_LITTLE_ENDIAN
484
485config SIBYTE_SWARM
486 bool "Sibyte BCM91250A-SWARM"
487 select BOOT_ELF32
488 select DMA_COHERENT
489 select NR_CPUS_DEFAULT_2
490 select SIBYTE_SB1250
491 select SWAP_IO_SPACE
492 select SYS_HAS_CPU_SB1
493 select SYS_SUPPORTS_BIG_ENDIAN
494 select SYS_SUPPORTS_HIGHMEM
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900495 select SYS_SUPPORTS_LITTLE_ENDIAN
Ralf Baechlecce335ae2007-11-03 02:05:43 +0000496 select ZONE_DMA32 if 64BIT
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900497
498config SIBYTE_LITTLESUR
499 bool "Sibyte BCM91250C2-LittleSur"
500 depends on EXPERIMENTAL
501 select BOOT_ELF32
502 select DMA_COHERENT
503 select NR_CPUS_DEFAULT_2
504 select SIBYTE_SB1250
505 select SWAP_IO_SPACE
506 select SYS_HAS_CPU_SB1
507 select SYS_SUPPORTS_BIG_ENDIAN
508 select SYS_SUPPORTS_HIGHMEM
509 select SYS_SUPPORTS_LITTLE_ENDIAN
510
511config SIBYTE_SENTOSA
512 bool "Sibyte BCM91250E-Sentosa"
513 depends on EXPERIMENTAL
514 select BOOT_ELF32
515 select DMA_COHERENT
516 select NR_CPUS_DEFAULT_2
517 select SIBYTE_SB1250
518 select SWAP_IO_SPACE
519 select SYS_HAS_CPU_SB1
520 select SYS_SUPPORTS_BIG_ENDIAN
521 select SYS_SUPPORTS_LITTLE_ENDIAN
522
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900523config SIBYTE_BIGSUR
524 bool "Sibyte BCM91480B-BigSur"
525 select BOOT_ELF32
526 select DMA_COHERENT
527 select NR_CPUS_DEFAULT_4
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900528 select SIBYTE_BCM1x80
529 select SWAP_IO_SPACE
530 select SYS_HAS_CPU_SB1
531 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechle651194f2007-11-01 21:55:39 +0000532 select SYS_SUPPORTS_HIGHMEM
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900533 select SYS_SUPPORTS_LITTLE_ENDIAN
Ralf Baechlecce335ae2007-11-03 02:05:43 +0000534 select ZONE_DMA32 if 64BIT
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900535
Thomas Bogendoerfer14b36af2006-12-05 17:05:44 +0100536config SNI_RM
537 bool "SNI RM200/300/400"
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200538 select ARC if CPU_LITTLE_ENDIAN
539 select ARC32 if CPU_LITTLE_ENDIAN
Thomas Bogendoerfer231a35d2008-01-04 23:31:07 +0100540 select SNIPROM if CPU_BIG_ENDIAN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100541 select ARCH_MAY_HAVE_PC_FDC
542 select BOOT_ELF32
Ralf Baechle42f77542007-10-18 17:48:11 +0100543 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000544 select CSRC_R4K
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +0100545 select DEFAULT_SGI_PARTITION if CPU_BIG_ENDIAN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100546 select DMA_NONCOHERENT
547 select GENERIC_ISA_DMA
Ralf Baechle5e83d432005-10-29 19:32:41 +0100548 select HW_HAS_EISA
549 select HW_HAS_PCI
Thomas Bogendoerferc066a322006-12-28 18:22:32 +0100550 select IRQ_CPU
Ralf Baechled865bea2007-10-11 23:46:10 +0100551 select I8253
Ralf Baechle5e83d432005-10-29 19:32:41 +0100552 select I8259
553 select ISA
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200554 select SWAP_IO_SPACE if CPU_BIG_ENDIAN
Ralf Baechle7cf80532005-10-20 22:33:09 +0100555 select SYS_HAS_CPU_R4X00
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200556 select SYS_HAS_CPU_R5000
Thomas Bogendoerferc066a322006-12-28 18:22:32 +0100557 select SYS_HAS_CPU_R10000
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200558 select R5000_CPU_SCACHE
Ralf Baechle36a88532007-03-01 11:56:43 +0000559 select SYS_HAS_EARLY_PRINTK
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700560 select SYS_SUPPORTS_32BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100561 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200562 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100563 select SYS_SUPPORTS_HIGHMEM
564 select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700565 help
Thomas Bogendoerfer14b36af2006-12-05 17:05:44 +0100566 The SNI RM200/300/400 are MIPS-based machines manufactured by
567 Siemens Nixdorf Informationssysteme (SNI), parent company of Pyramid
Ralf Baechle5e83d432005-10-29 19:32:41 +0100568 Technology and now in turn merged with Fujitsu. Say Y here to
569 support this machine type.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700570
Atsushi Nemotoedcaf1a2008-07-11 23:27:54 +0900571config MACH_TX39XX
572 bool "Toshiba TX39 series based machines"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100573
Atsushi Nemotoedcaf1a2008-07-11 23:27:54 +0900574config MACH_TX49XX
575 bool "Toshiba TX49 series based machines"
Ralf Baechle23fbee92005-07-25 22:45:45 +0000576
Ralf Baechle73b43902008-07-16 16:12:25 +0100577config MIKROTIK_RB532
578 bool "Mikrotik RB532 boards"
579 select CEVT_R4K
580 select CSRC_R4K
581 select DMA_NONCOHERENT
Ralf Baechle73b43902008-07-16 16:12:25 +0100582 select HW_HAS_PCI
583 select IRQ_CPU
584 select SYS_HAS_CPU_MIPS32_R1
585 select SYS_SUPPORTS_32BIT_KERNEL
586 select SYS_SUPPORTS_LITTLE_ENDIAN
587 select SWAP_IO_SPACE
588 select BOOT_RAW
Florian Fainellid888e252008-08-23 18:54:34 +0200589 select ARCH_REQUIRE_GPIOLIB
Ralf Baechle73b43902008-07-16 16:12:25 +0100590 help
591 Support the Mikrotik(tm) RouterBoard 532 series,
592 based on the IDT RC32434 SoC.
593
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900594config WR_PPMC
595 bool "Wind River PPMC board"
Ralf Baechle42f77542007-10-18 17:48:11 +0100596 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000597 select CSRC_R4K
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900598 select IRQ_CPU
599 select BOOT_ELF32
600 select DMA_NONCOHERENT
601 select HW_HAS_PCI
602 select PCI_GT64XXX_PCI0
603 select SWAP_IO_SPACE
604 select SYS_HAS_CPU_MIPS32_R1
605 select SYS_HAS_CPU_MIPS32_R2
606 select SYS_HAS_CPU_MIPS64_R1
607 select SYS_HAS_CPU_NEVADA
608 select SYS_HAS_CPU_RM7000
609 select SYS_SUPPORTS_32BIT_KERNEL
610 select SYS_SUPPORTS_64BIT_KERNEL
611 select SYS_SUPPORTS_BIG_ENDIAN
612 select SYS_SUPPORTS_LITTLE_ENDIAN
613 help
614 This enables support for the Wind River MIPS32 4KC PPMC evaluation
615 board, which is based on GT64120 bridge chip.
616
David Daneya86c7f72008-12-11 15:33:38 -0800617config CAVIUM_OCTEON_SIMULATOR
Yoichi Yuasac9d89d92009-06-02 23:15:10 +0900618 bool "Cavium Networks Octeon Simulator"
David Daneya86c7f72008-12-11 15:33:38 -0800619 select CEVT_R4K
620 select 64BIT_PHYS_ADDR
621 select DMA_COHERENT
622 select SYS_SUPPORTS_64BIT_KERNEL
623 select SYS_SUPPORTS_BIG_ENDIAN
624 select SYS_SUPPORTS_HIGHMEM
Ralf Baechle773cb772009-06-23 10:36:38 +0100625 select SYS_SUPPORTS_HOTPLUG_CPU
David Daney5e683382009-02-02 11:30:59 -0800626 select SYS_HAS_CPU_CAVIUM_OCTEON
David Daneya86c7f72008-12-11 15:33:38 -0800627 help
628 The Octeon simulator is software performance model of the Cavium
629 Octeon Processor. It supports simulating Octeon processors on x86
630 hardware.
631
632config CAVIUM_OCTEON_REFERENCE_BOARD
Yoichi Yuasac9d89d92009-06-02 23:15:10 +0900633 bool "Cavium Networks Octeon reference board"
David Daneya86c7f72008-12-11 15:33:38 -0800634 select CEVT_R4K
635 select 64BIT_PHYS_ADDR
636 select DMA_COHERENT
637 select SYS_SUPPORTS_64BIT_KERNEL
638 select SYS_SUPPORTS_BIG_ENDIAN
639 select SYS_SUPPORTS_HIGHMEM
Ralf Baechle773cb772009-06-23 10:36:38 +0100640 select SYS_SUPPORTS_HOTPLUG_CPU
David Daneya86c7f72008-12-11 15:33:38 -0800641 select SYS_HAS_EARLY_PRINTK
David Daney5e683382009-02-02 11:30:59 -0800642 select SYS_HAS_CPU_CAVIUM_OCTEON
David Daneya86c7f72008-12-11 15:33:38 -0800643 select SWAP_IO_SPACE
David Daneye8635b42009-04-23 17:44:38 -0700644 select HW_HAS_PCI
645 select ARCH_SUPPORTS_MSI
David Daneya86c7f72008-12-11 15:33:38 -0800646 help
647 This option supports all of the Octeon reference boards from Cavium
648 Networks. It builds a kernel that dynamically determines the Octeon
649 CPU type and supports all known board reference implementations.
650 Some of the supported boards are:
651 EBT3000
652 EBH3000
653 EBH3100
654 Thunder
655 Kodama
656 Hikari
657 Say Y here for most Octeon reference boards.
658
Linus Torvalds1da177e2005-04-16 15:20:36 -0700659endchoice
660
Ralf Baechlee8c7c482008-09-16 19:12:16 +0200661source "arch/mips/alchemy/Kconfig"
Yoichi Yuasa9c746ed2007-12-12 22:39:54 +0900662source "arch/mips/basler/excite/Kconfig"
Maxime Bizone7300d02009-08-18 13:23:37 +0100663source "arch/mips/bcm63xx/Kconfig"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100664source "arch/mips/jazz/Kconfig"
Brian Murphy1f21d2b2007-08-21 22:34:16 +0200665source "arch/mips/lasat/Kconfig"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100666source "arch/mips/pmc-sierra/Kconfig"
Ralf Baechle29c48692005-02-07 01:27:14 +0000667source "arch/mips/sgi-ip27/Kconfig"
Ralf Baechle38b18f722005-02-03 14:28:23 +0000668source "arch/mips/sibyte/Kconfig"
Atsushi Nemoto22b1d702008-07-11 00:31:36 +0900669source "arch/mips/txx9/Kconfig"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100670source "arch/mips/vr41xx/Kconfig"
David Daneya86c7f72008-12-11 15:33:38 -0800671source "arch/mips/cavium-octeon/Kconfig"
Wu Zhangjin85749d22009-07-02 23:26:45 +0800672source "arch/mips/loongson/Kconfig"
Ralf Baechle38b18f722005-02-03 14:28:23 +0000673
Ralf Baechle5e83d432005-10-29 19:32:41 +0100674endmenu
675
Linus Torvalds1da177e2005-04-16 15:20:36 -0700676config RWSEM_GENERIC_SPINLOCK
677 bool
678 default y
679
680config RWSEM_XCHGADD_ALGORITHM
681 bool
682
David Howellsf0d1b0b2006-12-08 02:37:49 -0800683config ARCH_HAS_ILOG2_U32
684 bool
685 default n
686
687config ARCH_HAS_ILOG2_U64
688 bool
689 default n
690
Ralf Baechle00a58252007-12-06 16:53:19 +0000691config ARCH_SUPPORTS_OPROFILE
692 bool
693 default y if !MIPS_MT_SMTC
694
Akinobu Mita3c9ee7e2006-03-26 01:39:30 -0800695config GENERIC_FIND_NEXT_BIT
696 bool
697 default y
698
699config GENERIC_HWEIGHT
700 bool
701 default y
702
Linus Torvalds1da177e2005-04-16 15:20:36 -0700703config GENERIC_CALIBRATE_DELAY
704 bool
705 default y
706
Ralf Baechle7bcf7712007-10-11 23:46:09 +0100707config GENERIC_CLOCKEVENTS
708 bool
709 default y
710
Ralf Baechle8db02012006-10-02 16:54:48 +0100711config GENERIC_TIME
712 bool
713 default y
714
Ralf Baechlef5ff0a22007-08-13 15:26:12 +0100715config GENERIC_CMOS_UPDATE
716 bool
717 default y
718
Ingo Molnarae1e9132008-11-11 09:05:16 +0100719config SCHED_OMIT_FRAME_POINTER
Atsushi Nemoto1cc89032006-04-04 13:11:45 +0900720 bool
721 default y
722
Franck Bui-Huue77c2322006-12-01 18:22:27 +0100723config GENERIC_HARDIRQS_NO__DO_IRQ
Ralf Baechlec87e0902009-03-30 14:49:44 +0200724 def_bool y
Franck Bui-Huue77c2322006-12-01 18:22:27 +0100725
Linus Torvalds1da177e2005-04-16 15:20:36 -0700726#
727# Select some configuration options automatically based on user selections.
728#
729config ARC
730 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700731
Ralf Baechle61ed2422005-09-15 08:52:34 +0000732config ARCH_MAY_HAVE_PC_FDC
733 bool
734
Marc St-Jean9267a302007-06-14 15:55:31 -0600735config BOOT_RAW
736 bool
737
Ralf Baechle217dd112007-11-01 01:57:55 +0000738config CEVT_BCM1480
739 bool
740
Yoichi Yuasa6457d9f2008-04-25 12:11:44 +0900741config CEVT_DS1287
742 bool
743
Yoichi Yuasa1097c6a2007-10-22 19:43:15 +0900744config CEVT_GT641XX
745 bool
746
Manuel Lauss779e7d42008-12-21 09:26:22 +0100747config CEVT_R4K_LIB
748 bool
749
Ralf Baechle42f77542007-10-18 17:48:11 +0100750config CEVT_R4K
Manuel Lauss779e7d42008-12-21 09:26:22 +0100751 select CEVT_R4K_LIB
Ralf Baechle42f77542007-10-18 17:48:11 +0100752 bool
753
Ralf Baechle217dd112007-11-01 01:57:55 +0000754config CEVT_SB1250
755 bool
756
Atsushi Nemoto229f7732007-10-25 01:34:09 +0900757config CEVT_TXX9
758 bool
759
Ralf Baechle217dd112007-11-01 01:57:55 +0000760config CSRC_BCM1480
761 bool
762
Yoichi Yuasa42474172008-04-24 09:48:40 +0900763config CSRC_IOASIC
764 bool
765
Manuel Lauss779e7d42008-12-21 09:26:22 +0100766config CSRC_R4K_LIB
767 bool
768
Ralf Baechle940f6b42007-11-24 22:33:28 +0000769config CSRC_R4K
Manuel Lauss779e7d42008-12-21 09:26:22 +0100770 select CSRC_R4K_LIB
Ralf Baechle940f6b42007-11-24 22:33:28 +0000771 bool
772
Ralf Baechle217dd112007-11-01 01:57:55 +0000773config CSRC_SB1250
774 bool
775
Atsushi Nemotoa9aec7f2008-04-05 00:55:41 +0900776config GPIO_TXX9
777 select GENERIC_GPIO
Michael Buesch7444a722008-07-25 01:46:11 -0700778 select ARCH_REQUIRE_GPIOLIB
Atsushi Nemotoa9aec7f2008-04-05 00:55:41 +0900779 bool
780
Aurelien Jarnodf78b5c2007-09-05 08:58:26 +0200781config CFE
782 bool
783
Ralf Baechle4ce588c2005-09-03 15:56:19 -0700784config DMA_COHERENT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700785 bool
786
Ralf Baechle4ce588c2005-09-03 15:56:19 -0700787config DMA_NONCOHERENT
788 bool
789 select DMA_NEED_PCI_MAP_STATE
790
791config DMA_NEED_PCI_MAP_STATE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700792 bool
793
794config EARLY_PRINTK
Ralf Baechle36a88532007-03-01 11:56:43 +0000795 bool "Early printk" if EMBEDDED && DEBUG_KERNEL
796 depends on SYS_HAS_EARLY_PRINTK
797 default y
798 help
799 This option enables special console drivers which allow the kernel
800 to print messages very early in the bootup process.
801
802 This is useful for kernel debugging when your machine crashes very
Robert P. J. Day490dcc42007-05-20 12:11:07 -0400803 early before the console code is initialized. For normal operation,
804 it is not recommended because it looks ugly on some machines and
805 doesn't cooperate with an X server. You should normally say N here,
Ralf Baechle36a88532007-03-01 11:56:43 +0000806 unless you want to debug such a crash.
807
808config SYS_HAS_EARLY_PRINTK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700809 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700810
Ralf Baechledbb74542007-08-07 14:52:17 +0100811config HOTPLUG_CPU
Ralf Baechle1b2bc752009-06-23 10:00:31 +0100812 bool "Support for hot-pluggable CPUs"
813 depends on SMP && HOTPLUG && SYS_SUPPORTS_HOTPLUG_CPU
814 help
815 Say Y here to allow turning CPUs off and on. CPUs can be
816 controlled through /sys/devices/system/cpu.
817 (Note: power management support will enable this option
818 automatically on SMP systems. )
819 Say N if you want to disable CPU hotplug.
820
821config SYS_SUPPORTS_HOTPLUG_CPU
Ralf Baechledbb74542007-08-07 14:52:17 +0100822 bool
Ralf Baechledbb74542007-08-07 14:52:17 +0100823
Linus Torvalds1da177e2005-04-16 15:20:36 -0700824config I8259
825 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700826
Linus Torvalds1da177e2005-04-16 15:20:36 -0700827config MIPS_BONITO64
828 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700829
830config MIPS_MSC
831 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700832
Brian Murphy1f21d2b2007-08-21 22:34:16 +0200833config MIPS_NILE4
834 bool
835
Linus Torvalds1da177e2005-04-16 15:20:36 -0700836config MIPS_DISABLE_OBSOLETE_IDE
837 bool
838
Ralf Baechle39b8d522008-04-28 17:14:26 +0100839config SYNC_R4K
840 bool
841
Maciej W. Rozyckid388d682007-05-29 15:08:07 +0100842config NO_IOPORT
843 def_bool n
844
Ralf Baechle8313da32007-08-24 16:48:30 +0100845config GENERIC_ISA_DMA
846 bool
847 select ZONE_DMA if GENERIC_ISA_DMA_SUPPORT_BROKEN=n
848
Ralf Baechleaa414df2006-11-30 01:14:51 +0000849config GENERIC_ISA_DMA_SUPPORT_BROKEN
850 bool
Ralf Baechle8313da32007-08-24 16:48:30 +0100851 select GENERIC_ISA_DMA
Ralf Baechleaa414df2006-11-30 01:14:51 +0000852
Yoichi Yuasa09663332007-05-22 00:05:58 +0900853config GENERIC_GPIO
854 bool
855
Ralf Baechle5e83d432005-10-29 19:32:41 +0100856#
Matt LaPlante3cb2fcc2006-11-30 05:22:59 +0100857# Endianess selection. Sufficiently obscure so many users don't know what to
Ralf Baechle5e83d432005-10-29 19:32:41 +0100858# answer,so we try hard to limit the available choices. Also the use of a
859# choice statement should be more obvious to the user.
860#
861choice
862 prompt "Endianess selection"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700863 help
864 Some MIPS machines can be configured for either little or big endian
Ralf Baechle5e83d432005-10-29 19:32:41 +0100865 byte order. These modes require different kernels and a different
Matt LaPlante3cb2fcc2006-11-30 05:22:59 +0100866 Linux distribution. In general there is one preferred byteorder for a
Ralf Baechle5e83d432005-10-29 19:32:41 +0100867 particular system but some systems are just as commonly used in the
David Sterba3dde6ad2007-05-09 07:12:20 +0200868 one or the other endianness.
Ralf Baechle5e83d432005-10-29 19:32:41 +0100869
870config CPU_BIG_ENDIAN
871 bool "Big endian"
872 depends on SYS_SUPPORTS_BIG_ENDIAN
873
874config CPU_LITTLE_ENDIAN
875 bool "Little endian"
876 depends on SYS_SUPPORTS_LITTLE_ENDIAN
877 help
878
879endchoice
880
Ralf Baechle21162452007-02-09 17:08:58 +0000881config SYS_SUPPORTS_APM_EMULATION
882 bool
883
Ralf Baechle5e83d432005-10-29 19:32:41 +0100884config SYS_SUPPORTS_BIG_ENDIAN
885 bool
886
887config SYS_SUPPORTS_LITTLE_ENDIAN
888 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700889
David Daney9cffd152009-05-27 17:47:46 -0700890config SYS_SUPPORTS_HUGETLBFS
891 bool
892 depends on CPU_SUPPORTS_HUGEPAGES && 64BIT
893 default y
894
Linus Torvalds1da177e2005-04-16 15:20:36 -0700895config IRQ_CPU
896 bool
897
898config IRQ_CPU_RM7K
899 bool
900
Ralf Baechle5e83d432005-10-29 19:32:41 +0100901config IRQ_CPU_RM9K
902 bool
903
Marc St-Jean9267a302007-06-14 15:55:31 -0600904config IRQ_MSP_SLP
905 bool
906
907config IRQ_MSP_CIC
908 bool
909
Atsushi Nemoto8420fd02007-08-02 23:35:53 +0900910config IRQ_TXX9
911 bool
912
Yoichi Yuasad5ab1a62007-09-13 23:51:26 +0900913config IRQ_GT641XX
914 bool
915
Ralf Baechle39b8d522008-04-28 17:14:26 +0100916config IRQ_GIC
917 bool
918
David Daneya86c7f72008-12-11 15:33:38 -0800919config IRQ_CPU_OCTEON
920 bool
921
Linus Torvalds1da177e2005-04-16 15:20:36 -0700922config MIPS_BOARDS_GEN
923 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700924
Yoichi Yuasa252161e2007-03-14 21:51:26 +0900925config PCI_GT64XXX_PCI0
Linus Torvalds1da177e2005-04-16 15:20:36 -0700926 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700927
Marc St-Jean9267a302007-06-14 15:55:31 -0600928config NO_EXCEPT_FILL
929 bool
930
thomas@koeller.dyndns.org663c3d92006-08-27 13:51:48 +0200931config MIPS_RM9122
932 bool
933 select SERIAL_RM9000
thomas@koeller.dyndns.org663c3d92006-08-27 13:51:48 +0200934
Ralf Baechlea83860c2009-03-13 21:17:57 +0100935config SOC_EMMA2RH
936 bool
937 select CEVT_R4K
938 select CSRC_R4K
939 select DMA_NONCOHERENT
940 select IRQ_CPU
941 select SWAP_IO_SPACE
942 select SYS_HAS_CPU_R5500
943 select SYS_SUPPORTS_32BIT_KERNEL
944 select SYS_SUPPORTS_64BIT_KERNEL
945 select SYS_SUPPORTS_BIG_ENDIAN
946
Daniel Lairdedb63102008-06-16 15:49:21 +0100947config SOC_PNX833X
948 bool
949 select CEVT_R4K
950 select CSRC_R4K
951 select IRQ_CPU
952 select DMA_NONCOHERENT
953 select SYS_HAS_CPU_MIPS32_R2
954 select SYS_SUPPORTS_32BIT_KERNEL
955 select SYS_SUPPORTS_LITTLE_ENDIAN
956 select SYS_SUPPORTS_BIG_ENDIAN
Daniel Lairdedb63102008-06-16 15:49:21 +0100957 select GENERIC_GPIO
958 select CPU_MIPSR2_IRQ_VI
959
960config SOC_PNX8335
961 bool
962 select SOC_PNX833X
963
Pete Popovbdf21b12005-07-14 17:47:57 +0000964config PNX8550
965 bool
966 select SOC_PNX8550
967
968config SOC_PNX8550
969 bool
Pete Popovbdf21b12005-07-14 17:47:57 +0000970 select DMA_NONCOHERENT
971 select HW_HAS_PCI
Ralf Baechleb8c2a772005-10-31 13:08:37 +0000972 select SYS_HAS_CPU_MIPS32_R1
Ralf Baechle36a88532007-03-01 11:56:43 +0000973 select SYS_HAS_EARLY_PRINTK
Ralf Baechle7cf80532005-10-20 22:33:09 +0100974 select SYS_SUPPORTS_32BIT_KERNEL
Florian Fainelli4ead1682007-05-22 21:44:42 +0200975 select GENERIC_GPIO
Pete Popovbdf21b12005-07-14 17:47:57 +0000976
Linus Torvalds1da177e2005-04-16 15:20:36 -0700977config SWAP_IO_SPACE
978 bool
979
thomas@koeller.dyndns.org663c3d92006-08-27 13:51:48 +0200980config SERIAL_RM9000
981 bool
982
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +0100983config SGI_HAS_INDYDOG
984 bool
985
Thomas Bogendoerfer5b438c42008-07-10 20:29:55 +0200986config SGI_HAS_HAL2
987 bool
988
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +0100989config SGI_HAS_SEEQ
990 bool
991
992config SGI_HAS_WD93
993 bool
994
995config SGI_HAS_ZILOG
996 bool
997
998config SGI_HAS_I8042
999 bool
1000
1001config DEFAULT_SGI_PARTITION
1002 bool
1003
Ralf Baechle5e83d432005-10-29 19:32:41 +01001004config ARC32
1005 bool
1006
Thomas Bogendoerfer231a35d2008-01-04 23:31:07 +01001007config SNIPROM
1008 bool
1009
Linus Torvalds1da177e2005-04-16 15:20:36 -07001010config BOOT_ELF32
1011 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001012
1013config MIPS_L1_CACHE_SHIFT
1014 int
Ralf Baechlec7088752009-10-12 22:30:06 +02001015 default "4" if MACH_DECSTATION || MIKROTIK_RB532 || PMC_MSP4200_EVAL
David Daneya86c7f72008-12-11 15:33:38 -08001016 default "7" if SGI_IP22 || SGI_IP27 || SGI_IP28 || SNI_RM || CPU_CAVIUM_OCTEON
Linus Torvalds1da177e2005-04-16 15:20:36 -07001017 default "5"
1018
Linus Torvalds1da177e2005-04-16 15:20:36 -07001019config HAVE_STD_PC_SERIAL_PORT
1020 bool
1021
Linus Torvalds1da177e2005-04-16 15:20:36 -07001022config ARC_CONSOLE
1023 bool "ARC console support"
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +01001024 depends on SGI_IP22 || SGI_IP28 || (SNI_RM && CPU_LITTLE_ENDIAN)
Linus Torvalds1da177e2005-04-16 15:20:36 -07001025
1026config ARC_MEMORY
1027 bool
Thomas Bogendoerfer14b36af2006-12-05 17:05:44 +01001028 depends on MACH_JAZZ || SNI_RM || SGI_IP32
Linus Torvalds1da177e2005-04-16 15:20:36 -07001029 default y
1030
1031config ARC_PROMLIB
1032 bool
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +01001033 depends on MACH_JAZZ || SNI_RM || SGI_IP22 || SGI_IP28 || SGI_IP32
Linus Torvalds1da177e2005-04-16 15:20:36 -07001034 default y
1035
1036config ARC64
1037 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001038
1039config BOOT_ELF64
1040 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001041
Linus Torvalds1da177e2005-04-16 15:20:36 -07001042menu "CPU selection"
1043
1044choice
1045 prompt "CPU type"
1046 default CPU_R4X00
1047
Wu Zhangjin3702bba2009-07-02 23:27:41 +08001048config CPU_LOONGSON2E
1049 bool "Loongson 2E"
1050 depends on SYS_HAS_CPU_LOONGSON2E
1051 select CPU_LOONGSON2
Fuxin Zhang2a21c732007-06-06 14:52:43 +08001052 help
1053 The Loongson 2E processor implements the MIPS III instruction set
1054 with many extensions.
1055
Ralf Baechle6e760c82005-07-06 12:08:11 +00001056config CPU_MIPS32_R1
1057 bool "MIPS32 Release 1"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001058 depends on SYS_HAS_CPU_MIPS32_R1
Ralf Baechle6e760c82005-07-06 12:08:11 +00001059 select CPU_HAS_PREFETCH
Ralf Baechle797798c2005-08-10 15:17:11 +00001060 select CPU_SUPPORTS_32BIT_KERNEL
Ralf Baechleec28f302006-03-05 00:45:33 +00001061 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle6e760c82005-07-06 12:08:11 +00001062 help
Ralf Baechle5e83d432005-10-29 19:32:41 +01001063 Choose this option to build a kernel for release 1 or later of the
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +00001064 MIPS32 architecture. Most modern embedded systems with a 32-bit
1065 MIPS processor are based on a MIPS32 processor. If you know the
1066 specific type of processor in your system, choose those that one
1067 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
1068 Release 2 of the MIPS32 architecture is available since several
1069 years so chances are you even have a MIPS32 Release 2 processor
1070 in which case you should choose CPU_MIPS32_R2 instead for better
1071 performance.
1072
1073config CPU_MIPS32_R2
1074 bool "MIPS32 Release 2"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001075 depends on SYS_HAS_CPU_MIPS32_R2
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +00001076 select CPU_HAS_PREFETCH
Ralf Baechle797798c2005-08-10 15:17:11 +00001077 select CPU_SUPPORTS_32BIT_KERNEL
Ralf Baechleec28f302006-03-05 00:45:33 +00001078 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +00001079 help
Ralf Baechle5e83d432005-10-29 19:32:41 +01001080 Choose this option to build a kernel for release 2 or later of the
Ralf Baechle6e760c82005-07-06 12:08:11 +00001081 MIPS32 architecture. Most modern embedded systems with a 32-bit
1082 MIPS processor are based on a MIPS32 processor. If you know the
1083 specific type of processor in your system, choose those that one
1084 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001085
Ralf Baechle6e760c82005-07-06 12:08:11 +00001086config CPU_MIPS64_R1
1087 bool "MIPS64 Release 1"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001088 depends on SYS_HAS_CPU_MIPS64_R1
Ralf Baechle797798c2005-08-10 15:17:11 +00001089 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001090 select CPU_SUPPORTS_32BIT_KERNEL
1091 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechleec28f302006-03-05 00:45:33 +00001092 select CPU_SUPPORTS_HIGHMEM
David Daney9cffd152009-05-27 17:47:46 -07001093 select CPU_SUPPORTS_HUGEPAGES
Ralf Baechle6e760c82005-07-06 12:08:11 +00001094 help
1095 Choose this option to build a kernel for release 1 or later of the
1096 MIPS64 architecture. Many modern embedded systems with a 64-bit
1097 MIPS processor are based on a MIPS64 processor. If you know the
1098 specific type of processor in your system, choose those that one
1099 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +00001100 Release 2 of the MIPS64 architecture is available since several
1101 years so chances are you even have a MIPS64 Release 2 processor
1102 in which case you should choose CPU_MIPS64_R2 instead for better
1103 performance.
1104
1105config CPU_MIPS64_R2
1106 bool "MIPS64 Release 2"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001107 depends on SYS_HAS_CPU_MIPS64_R2
Ralf Baechle797798c2005-08-10 15:17:11 +00001108 select CPU_HAS_PREFETCH
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +00001109 select CPU_SUPPORTS_32BIT_KERNEL
1110 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechleec28f302006-03-05 00:45:33 +00001111 select CPU_SUPPORTS_HIGHMEM
David Daney9cffd152009-05-27 17:47:46 -07001112 select CPU_SUPPORTS_HUGEPAGES
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +00001113 help
1114 Choose this option to build a kernel for release 2 or later of the
1115 MIPS64 architecture. Many modern embedded systems with a 64-bit
1116 MIPS processor are based on a MIPS64 processor. If you know the
1117 specific type of processor in your system, choose those that one
1118 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001119
1120config CPU_R3000
1121 bool "R3000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001122 depends on SYS_HAS_CPU_R3000
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001123 select CPU_HAS_WB
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001124 select CPU_SUPPORTS_32BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +00001125 select CPU_SUPPORTS_HIGHMEM
Linus Torvalds1da177e2005-04-16 15:20:36 -07001126 help
1127 Please make sure to pick the right CPU type. Linux/MIPS is not
1128 designed to be generic, i.e. Kernels compiled for R3000 CPUs will
1129 *not* work on R4000 machines and vice versa. However, since most
1130 of the supported machines have an R4000 (or similar) CPU, R4x00
1131 might be a safe bet. If the resulting kernel does not work,
1132 try to recompile with R3000.
1133
1134config CPU_TX39XX
1135 bool "R39XX"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001136 depends on SYS_HAS_CPU_TX39XX
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001137 select CPU_SUPPORTS_32BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001138
1139config CPU_VR41XX
1140 bool "R41xx"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001141 depends on SYS_HAS_CPU_VR41XX
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001142 select CPU_SUPPORTS_32BIT_KERNEL
1143 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001144 help
Ralf Baechle5e83d432005-10-29 19:32:41 +01001145 The options selects support for the NEC VR4100 series of processors.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001146 Only choose this option if you have one of these processors as a
1147 kernel built with this option will not run on any other type of
1148 processor or vice versa.
1149
1150config CPU_R4300
1151 bool "R4300"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001152 depends on SYS_HAS_CPU_R4300
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001153 select CPU_SUPPORTS_32BIT_KERNEL
1154 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001155 help
1156 MIPS Technologies R4300-series processors.
1157
1158config CPU_R4X00
1159 bool "R4x00"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001160 depends on SYS_HAS_CPU_R4X00
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001161 select CPU_SUPPORTS_32BIT_KERNEL
1162 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001163 help
1164 MIPS Technologies R4000-series processors other than 4300, including
1165 the R4000, R4400, R4600, and 4700.
1166
1167config CPU_TX49XX
1168 bool "R49XX"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001169 depends on SYS_HAS_CPU_TX49XX
Atsushi Nemotode862b42006-03-17 12:59:22 +09001170 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001171 select CPU_SUPPORTS_32BIT_KERNEL
1172 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001173
1174config CPU_R5000
1175 bool "R5000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001176 depends on SYS_HAS_CPU_R5000
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001177 select CPU_SUPPORTS_32BIT_KERNEL
1178 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001179 help
1180 MIPS Technologies R5000-series processors other than the Nevada.
1181
1182config CPU_R5432
1183 bool "R5432"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001184 depends on SYS_HAS_CPU_R5432
Ralf Baechle5e83d432005-10-29 19:32:41 +01001185 select CPU_SUPPORTS_32BIT_KERNEL
1186 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001187
Shinya Kuribayashi542c1022008-10-24 01:27:57 +09001188config CPU_R5500
1189 bool "R5500"
1190 depends on SYS_HAS_CPU_R5500
Shinya Kuribayashi542c1022008-10-24 01:27:57 +09001191 select CPU_SUPPORTS_32BIT_KERNEL
1192 select CPU_SUPPORTS_64BIT_KERNEL
David Daney9cffd152009-05-27 17:47:46 -07001193 select CPU_SUPPORTS_HUGEPAGES
Shinya Kuribayashi542c1022008-10-24 01:27:57 +09001194 help
1195 NEC VR5500 and VR5500A series processors implement 64-bit MIPS IV
1196 instruction set.
1197
Linus Torvalds1da177e2005-04-16 15:20:36 -07001198config CPU_R6000
1199 bool "R6000"
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001200 depends on EXPERIMENTAL
Ralf Baechle7cf80532005-10-20 22:33:09 +01001201 depends on SYS_HAS_CPU_R6000
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001202 select CPU_SUPPORTS_32BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001203 help
1204 MIPS Technologies R6000 and R6000A series processors. Note these
Chris Dearmanc09b47d2006-06-20 17:15:20 +01001205 processors are extremely rare and the support for them is incomplete.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001206
1207config CPU_NEVADA
1208 bool "RM52xx"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001209 depends on SYS_HAS_CPU_NEVADA
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001210 select CPU_SUPPORTS_32BIT_KERNEL
1211 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001212 help
1213 QED / PMC-Sierra RM52xx-series ("Nevada") processors.
1214
1215config CPU_R8000
1216 bool "R8000"
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001217 depends on EXPERIMENTAL
Ralf Baechle7cf80532005-10-20 22:33:09 +01001218 depends on SYS_HAS_CPU_R8000
Ralf Baechle5e83d432005-10-29 19:32:41 +01001219 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001220 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001221 help
1222 MIPS Technologies R8000 processors. Note these processors are
1223 uncommon and the support for them is incomplete.
1224
1225config CPU_R10000
1226 bool "R10000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001227 depends on SYS_HAS_CPU_R10000
Ralf Baechle5e83d432005-10-29 19:32:41 +01001228 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001229 select CPU_SUPPORTS_32BIT_KERNEL
1230 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +00001231 select CPU_SUPPORTS_HIGHMEM
Linus Torvalds1da177e2005-04-16 15:20:36 -07001232 help
1233 MIPS Technologies R10000-series processors.
1234
1235config CPU_RM7000
1236 bool "RM7000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001237 depends on SYS_HAS_CPU_RM7000
Ralf Baechle5e83d432005-10-29 19:32:41 +01001238 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001239 select CPU_SUPPORTS_32BIT_KERNEL
1240 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +00001241 select CPU_SUPPORTS_HIGHMEM
Linus Torvalds1da177e2005-04-16 15:20:36 -07001242
1243config CPU_RM9000
1244 bool "RM9000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001245 depends on SYS_HAS_CPU_RM9000
Ralf Baechle5e83d432005-10-29 19:32:41 +01001246 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001247 select CPU_SUPPORTS_32BIT_KERNEL
1248 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +00001249 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle0004a9d2006-10-31 03:45:07 +00001250 select WEAK_ORDERING
Linus Torvalds1da177e2005-04-16 15:20:36 -07001251
1252config CPU_SB1
1253 bool "SB1"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001254 depends on SYS_HAS_CPU_SB1
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001255 select CPU_SUPPORTS_32BIT_KERNEL
1256 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +00001257 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle0004a9d2006-10-31 03:45:07 +00001258 select WEAK_ORDERING
Linus Torvalds1da177e2005-04-16 15:20:36 -07001259
David Daneya86c7f72008-12-11 15:33:38 -08001260config CPU_CAVIUM_OCTEON
1261 bool "Cavium Octeon processor"
David Daney5e683382009-02-02 11:30:59 -08001262 depends on SYS_HAS_CPU_CAVIUM_OCTEON
David Daneya86c7f72008-12-11 15:33:38 -08001263 select IRQ_CPU
1264 select IRQ_CPU_OCTEON
1265 select CPU_HAS_PREFETCH
1266 select CPU_SUPPORTS_64BIT_KERNEL
1267 select SYS_SUPPORTS_SMP
1268 select NR_CPUS_DEFAULT_16
1269 select WEAK_ORDERING
1270 select WEAK_REORDERING_BEYOND_LLSC
1271 select CPU_SUPPORTS_HIGHMEM
David Daney9cffd152009-05-27 17:47:46 -07001272 select CPU_SUPPORTS_HUGEPAGES
David Daneya86c7f72008-12-11 15:33:38 -08001273 help
1274 The Cavium Octeon processor is a highly integrated chip containing
1275 many ethernet hardware widgets for networking tasks. The processor
1276 can have up to 16 Mips64v2 cores and 8 integrated gigabit ethernets.
1277 Full details can be found at http://www.caviumnetworks.com.
1278
Linus Torvalds1da177e2005-04-16 15:20:36 -07001279endchoice
1280
Wu Zhangjin3702bba2009-07-02 23:27:41 +08001281config CPU_LOONGSON2
1282 bool
1283 select CPU_SUPPORTS_32BIT_KERNEL
1284 select CPU_SUPPORTS_64BIT_KERNEL
1285 select CPU_SUPPORTS_HIGHMEM
1286
1287config SYS_HAS_CPU_LOONGSON2E
Fuxin Zhang2a21c732007-06-06 14:52:43 +08001288 bool
1289
Ralf Baechle7cf80532005-10-20 22:33:09 +01001290config SYS_HAS_CPU_MIPS32_R1
1291 bool
1292
1293config SYS_HAS_CPU_MIPS32_R2
1294 bool
1295
1296config SYS_HAS_CPU_MIPS64_R1
1297 bool
1298
1299config SYS_HAS_CPU_MIPS64_R2
1300 bool
1301
1302config SYS_HAS_CPU_R3000
1303 bool
1304
1305config SYS_HAS_CPU_TX39XX
1306 bool
1307
1308config SYS_HAS_CPU_VR41XX
1309 bool
1310
1311config SYS_HAS_CPU_R4300
1312 bool
1313
1314config SYS_HAS_CPU_R4X00
1315 bool
1316
1317config SYS_HAS_CPU_TX49XX
1318 bool
1319
1320config SYS_HAS_CPU_R5000
1321 bool
1322
1323config SYS_HAS_CPU_R5432
1324 bool
1325
Shinya Kuribayashi542c1022008-10-24 01:27:57 +09001326config SYS_HAS_CPU_R5500
1327 bool
1328
Ralf Baechle7cf80532005-10-20 22:33:09 +01001329config SYS_HAS_CPU_R6000
1330 bool
1331
1332config SYS_HAS_CPU_NEVADA
1333 bool
1334
1335config SYS_HAS_CPU_R8000
1336 bool
1337
1338config SYS_HAS_CPU_R10000
1339 bool
1340
1341config SYS_HAS_CPU_RM7000
1342 bool
1343
1344config SYS_HAS_CPU_RM9000
1345 bool
1346
1347config SYS_HAS_CPU_SB1
1348 bool
1349
David Daney5e683382009-02-02 11:30:59 -08001350config SYS_HAS_CPU_CAVIUM_OCTEON
1351 bool
1352
Ralf Baechle17099b12007-07-14 13:24:05 +01001353#
1354# CPU may reorder R->R, R->W, W->R, W->W
1355# Reordering beyond LL and SC is handled in WEAK_REORDERING_BEYOND_LLSC
1356#
Ralf Baechle0004a9d2006-10-31 03:45:07 +00001357config WEAK_ORDERING
1358 bool
Ralf Baechle17099b12007-07-14 13:24:05 +01001359
1360#
1361# CPU may reorder reads and writes beyond LL/SC
1362# CPU may reorder R->LL, R->LL, W->LL, W->LL, R->SC, R->SC, W->SC, W->SC
1363#
1364config WEAK_REORDERING_BEYOND_LLSC
1365 bool
Ralf Baechle5e83d432005-10-29 19:32:41 +01001366endmenu
1367
1368#
Chris Dearmanc09b47d2006-06-20 17:15:20 +01001369# These two indicate any level of the MIPS32 and MIPS64 architecture
Ralf Baechle5e83d432005-10-29 19:32:41 +01001370#
1371config CPU_MIPS32
1372 bool
1373 default y if CPU_MIPS32_R1 || CPU_MIPS32_R2
1374
1375config CPU_MIPS64
1376 bool
1377 default y if CPU_MIPS64_R1 || CPU_MIPS64_R2
1378
1379#
Chris Dearmanc09b47d2006-06-20 17:15:20 +01001380# These two indicate the revision of the architecture, either Release 1 or Release 2
Ralf Baechle5e83d432005-10-29 19:32:41 +01001381#
1382config CPU_MIPSR1
1383 bool
1384 default y if CPU_MIPS32_R1 || CPU_MIPS64_R1
1385
1386config CPU_MIPSR2
1387 bool
David Daneya86c7f72008-12-11 15:33:38 -08001388 default y if CPU_MIPS32_R2 || CPU_MIPS64_R2 || CPU_CAVIUM_OCTEON
Ralf Baechle5e83d432005-10-29 19:32:41 +01001389
1390config SYS_SUPPORTS_32BIT_KERNEL
1391 bool
1392config SYS_SUPPORTS_64BIT_KERNEL
1393 bool
1394config CPU_SUPPORTS_32BIT_KERNEL
1395 bool
1396config CPU_SUPPORTS_64BIT_KERNEL
1397 bool
David Daney9cffd152009-05-27 17:47:46 -07001398config CPU_SUPPORTS_HUGEPAGES
1399 bool
Ralf Baechle5e83d432005-10-29 19:32:41 +01001400
David Daney8192c9e2008-09-23 00:04:26 -07001401#
1402# Set to y for ptrace access to watch registers.
1403#
1404config HARDWARE_WATCHPOINTS
1405 bool
David Daneyf8394902009-01-05 15:29:14 -08001406 default y if CPU_MIPSR1 || CPU_MIPSR2
David Daney8192c9e2008-09-23 00:04:26 -07001407
Ralf Baechle5e83d432005-10-29 19:32:41 +01001408menu "Kernel type"
1409
1410choice
1411
1412 prompt "Kernel code model"
1413 help
1414 You should only select this option if you have a workload that
1415 actually benefits from 64-bit processing or if your machine has
1416 large memory. You will only be presented a single option in this
1417 menu if your system does not support both 32-bit and 64-bit kernels.
1418
1419config 32BIT
1420 bool "32-bit kernel"
1421 depends on CPU_SUPPORTS_32BIT_KERNEL && SYS_SUPPORTS_32BIT_KERNEL
1422 select TRAD_SIGNALS
1423 help
1424 Select this option if you want to build a 32-bit kernel.
1425config 64BIT
1426 bool "64-bit kernel"
1427 depends on CPU_SUPPORTS_64BIT_KERNEL && SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechledbda6ac2009-02-08 16:00:26 +00001428 select HAVE_SYSCALL_WRAPPERS
Ralf Baechle5e83d432005-10-29 19:32:41 +01001429 help
1430 Select this option if you want to build a 64-bit kernel.
1431
1432endchoice
1433
Linus Torvalds1da177e2005-04-16 15:20:36 -07001434choice
1435 prompt "Kernel page size"
1436 default PAGE_SIZE_4KB
1437
1438config PAGE_SIZE_4KB
1439 bool "4kB"
1440 help
1441 This option select the standard 4kB Linux page size. On some
1442 R3000-family processors this is the only available page size. Using
1443 4kB page size will minimize memory consumption and is therefore
1444 recommended for low memory systems.
1445
1446config PAGE_SIZE_8KB
1447 bool "8kB"
Ralf Baechlec52399b2009-04-02 14:07:10 +02001448 depends on (EXPERIMENTAL && CPU_R8000) || CPU_CAVIUM_OCTEON
Linus Torvalds1da177e2005-04-16 15:20:36 -07001449 help
1450 Using 8kB page size will result in higher performance kernel at
1451 the price of higher memory consumption. This option is available
Ralf Baechlec52399b2009-04-02 14:07:10 +02001452 only on R8000 and cnMIPS processors. Note that you will need a
1453 suitable Linux distribution to support this.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001454
1455config PAGE_SIZE_16KB
1456 bool "16kB"
Ralf Baechle714bfad2006-05-17 14:04:30 +01001457 depends on !CPU_R3000 && !CPU_TX39XX
Linus Torvalds1da177e2005-04-16 15:20:36 -07001458 help
1459 Using 16kB page size will result in higher performance kernel at
1460 the price of higher memory consumption. This option is available on
Ralf Baechle714bfad2006-05-17 14:04:30 +01001461 all non-R3000 family processors. Note that you will need a suitable
1462 Linux distribution to support this.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001463
Ralf Baechlec52399b2009-04-02 14:07:10 +02001464config PAGE_SIZE_32KB
1465 bool "32kB"
1466 depends on CPU_CAVIUM_OCTEON
1467 help
1468 Using 32kB page size will result in higher performance kernel at
1469 the price of higher memory consumption. This option is available
1470 only on cnMIPS cores. Note that you will need a suitable Linux
1471 distribution to support this.
1472
Linus Torvalds1da177e2005-04-16 15:20:36 -07001473config PAGE_SIZE_64KB
1474 bool "64kB"
1475 depends on EXPERIMENTAL && !CPU_R3000 && !CPU_TX39XX
1476 help
1477 Using 64kB page size will result in higher performance kernel at
1478 the price of higher memory consumption. This option is available on
1479 all non-R3000 family processor. Not that at the time of this
Ralf Baechle714bfad2006-05-17 14:04:30 +01001480 writing this option is still high experimental.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001481
1482endchoice
1483
1484config BOARD_SCACHE
1485 bool
1486
1487config IP22_CPU_SCACHE
1488 bool
1489 select BOARD_SCACHE
1490
Chris Dearman9318c512006-06-20 17:15:20 +01001491#
1492# Support for a MIPS32 / MIPS64 style S-caches
1493#
1494config MIPS_CPU_SCACHE
1495 bool
1496 select BOARD_SCACHE
1497
Linus Torvalds1da177e2005-04-16 15:20:36 -07001498config R5000_CPU_SCACHE
1499 bool
1500 select BOARD_SCACHE
1501
1502config RM7000_CPU_SCACHE
1503 bool
1504 select BOARD_SCACHE
1505
1506config SIBYTE_DMA_PAGEOPS
1507 bool "Use DMA to clear/copy pages"
1508 depends on CPU_SB1
1509 help
1510 Instead of using the CPU to zero and copy pages, use a Data Mover
1511 channel. These DMA channels are otherwise unused by the standard
1512 SiByte Linux port. Seems to give a small performance benefit.
1513
1514config CPU_HAS_PREFETCH
Ralf Baechlec8094b52005-08-05 14:28:54 +00001515 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001516
Ralf Baechle340ee4b2005-08-17 17:44:08 +00001517choice
1518 prompt "MIPS MT options"
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001519
1520config MIPS_MT_DISABLED
1521 bool "Disable multithreading support."
1522 help
1523 Use this option if your workload can't take advantage of
1524 MIPS hardware multithreading support. On systems that don't have
1525 the option of an MT-enabled processor this option will be the only
1526 option in this menu.
Ralf Baechle340ee4b2005-08-17 17:44:08 +00001527
Ralf Baechle59d6ab82006-10-06 17:36:20 +01001528config MIPS_MT_SMP
1529 bool "Use 1 TC on each available VPE for SMP"
1530 depends on SYS_SUPPORTS_MULTITHREADING
1531 select CPU_MIPSR2_IRQ_VI
Chris Dearmand725cf32007-05-08 14:05:39 +01001532 select CPU_MIPSR2_IRQ_EI
Ralf Baechle59d6ab82006-10-06 17:36:20 +01001533 select MIPS_MT
Ralf Baechlef510aa32007-03-16 21:58:37 +00001534 select NR_CPUS_DEFAULT_2
Ralf Baechle59d6ab82006-10-06 17:36:20 +01001535 select SMP
Ralf Baechle0ab7aef2007-03-02 20:42:04 +00001536 select SYS_SUPPORTS_SCHED_SMT if SMP
Ralf Baechle59d6ab82006-10-06 17:36:20 +01001537 select SYS_SUPPORTS_SMP
Ralf Baechle87353d82007-11-19 12:23:51 +00001538 select SMP_UP
Ralf Baechle59d6ab82006-10-06 17:36:20 +01001539 help
1540 This is a kernel model which is also known a VSMP or lately
1541 has been marketesed into SMVP.
1542
Ralf Baechle41c594a2006-04-05 09:45:45 +01001543config MIPS_MT_SMTC
1544 bool "SMTC: Use all TCs on all VPEs for SMP"
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001545 depends on CPU_MIPS32_R2
1546 #depends on CPU_MIPS64_R2 # once there is hardware ...
1547 depends on SYS_SUPPORTS_MULTITHREADING
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001548 select CPU_MIPSR2_IRQ_VI
Chris Dearmand725cf32007-05-08 14:05:39 +01001549 select CPU_MIPSR2_IRQ_EI
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001550 select MIPS_MT
Ralf Baechle130e2fb2007-02-06 16:53:15 +00001551 select NR_CPUS_DEFAULT_8
Ralf Baechle41c594a2006-04-05 09:45:45 +01001552 select SMP
Ralf Baechle73b76c72006-08-15 19:36:40 +01001553 select SYS_SUPPORTS_SMP
Ralf Baechle87353d82007-11-19 12:23:51 +00001554 select SMP_UP
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001555 help
1556 This is a kernel model which is known a SMTC or lately has been
1557 marketesed into SMVP.
Ralf Baechle41c594a2006-04-05 09:45:45 +01001558
Ralf Baechle340ee4b2005-08-17 17:44:08 +00001559endchoice
1560
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001561config MIPS_MT
1562 bool
1563
Ralf Baechle0ab7aef2007-03-02 20:42:04 +00001564config SCHED_SMT
1565 bool "SMT (multithreading) scheduler support"
1566 depends on SYS_SUPPORTS_SCHED_SMT
1567 default n
1568 help
1569 SMT scheduler support improves the CPU scheduler's decision making
1570 when dealing with MIPS MT enabled cores at a cost of slightly
1571 increased overhead in some places. If unsure say N here.
1572
1573config SYS_SUPPORTS_SCHED_SMT
1574 bool
1575
1576
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001577config SYS_SUPPORTS_MULTITHREADING
1578 bool
1579
Ralf Baechlef088fc82006-04-05 09:45:47 +01001580config MIPS_MT_FPAFF
1581 bool "Dynamic FPU affinity for FP-intensive threads"
Ralf Baechlef088fc82006-04-05 09:45:47 +01001582 default y
Ralf Baechle07cc0c92007-07-27 19:31:10 +01001583 depends on MIPS_MT_SMP || MIPS_MT_SMTC
1584
1585config MIPS_VPE_LOADER
1586 bool "VPE loader support."
1587 depends on SYS_SUPPORTS_MULTITHREADING
1588 select CPU_MIPSR2_IRQ_VI
1589 select CPU_MIPSR2_IRQ_EI
Ralf Baechle07cc0c92007-07-27 19:31:10 +01001590 select MIPS_MT
1591 help
1592 Includes a loader for loading an elf relocatable object
1593 onto another VPE and running it.
Ralf Baechlef088fc82006-04-05 09:45:47 +01001594
Kevin D. Kissell0db34212007-07-12 16:21:08 +01001595config MIPS_MT_SMTC_IM_BACKSTOP
1596 bool "Use per-TC register bits as backstop for inhibited IM bits"
1597 depends on MIPS_MT_SMTC
Kevin D. Kissell8531a352008-09-09 21:48:52 +02001598 default n
Kevin D. Kissell0db34212007-07-12 16:21:08 +01001599 help
1600 To support multiple TC microthreads acting as "CPUs" within
1601 a VPE, VPE-wide interrupt mask bits must be specially manipulated
1602 during interrupt handling. To support legacy drivers and interrupt
1603 controller management code, SMTC has a "backstop" to track and
1604 if necessary restore the interrupt mask. This has some performance
Kevin D. Kissell8531a352008-09-09 21:48:52 +02001605 impact on interrupt service overhead.
Kevin D. Kissell0db34212007-07-12 16:21:08 +01001606
Kevin D. Kissellf571eff2007-08-03 19:38:03 +02001607config MIPS_MT_SMTC_IRQAFF
1608 bool "Support IRQ affinity API"
1609 depends on MIPS_MT_SMTC
1610 default n
1611 help
1612 Enables SMP IRQ affinity API (/proc/irq/*/smp_affinity, etc.)
1613 for SMTC Linux kernel. Requires platform support, of which
1614 an example can be found in the MIPS kernel i8259 and Malta
Kevin D. Kissell8531a352008-09-09 21:48:52 +02001615 platform code. Adds some overhead to interrupt dispatch, and
1616 should be used only if you know what you are doing.
Kevin D. Kissellf571eff2007-08-03 19:38:03 +02001617
Ralf Baechlee01402b2005-07-14 15:57:16 +00001618config MIPS_VPE_LOADER_TOM
1619 bool "Load VPE program into memory hidden from linux"
1620 depends on MIPS_VPE_LOADER
1621 default y
1622 help
1623 The loader can use memory that is present but has been hidden from
1624 Linux using the kernel command line option "mem=xxMB". It's up to
1625 you to ensure the amount you put in the option and the space your
1626 program requires is less or equal to the amount physically present.
1627
1628# this should possibly be in drivers/char, but it is rather cpu related. Hmmm
1629config MIPS_VPE_APSP_API
Ralf Baechle5e83d432005-10-29 19:32:41 +01001630 bool "Enable support for AP/SP API (RTLX)"
1631 depends on MIPS_VPE_LOADER
1632 help
Ralf Baechlee01402b2005-07-14 15:57:16 +00001633
Ralf Baechle26009902006-04-05 09:45:45 +01001634config MIPS_APSP_KSPD
1635 bool "Enable KSPD"
1636 depends on MIPS_VPE_APSP_API
1637 default y
1638 help
1639 KSPD is a kernel daemon that accepts syscall requests from the SP
1640 side, actions them and returns the results. It also handles the
1641 "exit" syscall notifying other kernel modules the SP program is
1642 exiting. You probably want to say yes here.
1643
Ralf Baechle4a16ff42008-10-04 00:06:29 +01001644config MIPS_CMP
1645 bool "MIPS CMP framework support"
1646 depends on SYS_SUPPORTS_MIPS_CMP
Tim Andersoneb9b5142009-06-17 16:40:34 -07001647 select SYNC_R4K
Ralf Baechle4a16ff42008-10-04 00:06:29 +01001648 select SYS_SUPPORTS_SMP
1649 select SYS_SUPPORTS_SCHED_SMT if SMP
1650 select WEAK_ORDERING
1651 default n
1652 help
1653 This is a placeholder option for the GCMP work. It will need to
1654 be handled differently...
1655
Linus Torvalds1da177e2005-04-16 15:20:36 -07001656config SB1_PASS_1_WORKAROUNDS
1657 bool
1658 depends on CPU_SB1_PASS_1
1659 default y
1660
1661config SB1_PASS_2_WORKAROUNDS
1662 bool
1663 depends on CPU_SB1 && (CPU_SB1_PASS_2_2 || CPU_SB1_PASS_2)
1664 default y
1665
1666config SB1_PASS_2_1_WORKAROUNDS
1667 bool
1668 depends on CPU_SB1 && CPU_SB1_PASS_2
1669 default y
1670
1671config 64BIT_PHYS_ADDR
Ralf Baechled806cb22007-08-02 00:36:08 +01001672 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001673
Franck Bui-Huu9693a852007-02-02 17:41:47 +01001674config CPU_HAS_SMARTMIPS
1675 depends on SYS_SUPPORTS_SMARTMIPS
1676 bool "Support for the SmartMIPS ASE"
1677 help
1678 SmartMIPS is a extension of the MIPS32 architecture aimed at
1679 increased security at both hardware and software level for
1680 smartcards. Enabling this option will allow proper use of the
1681 SmartMIPS instructions by Linux applications. However a kernel with
1682 this option will not work on a MIPS core without SmartMIPS core. If
1683 you don't know you probably don't have SmartMIPS and should say N
1684 here.
1685
Linus Torvalds1da177e2005-04-16 15:20:36 -07001686config CPU_HAS_WB
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001687 bool
Ralf Baechlee01402b2005-07-14 15:57:16 +00001688
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001689#
1690# Vectored interrupt mode is an R2 feature
1691#
Ralf Baechlee01402b2005-07-14 15:57:16 +00001692config CPU_MIPSR2_IRQ_VI
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001693 bool
Ralf Baechlee01402b2005-07-14 15:57:16 +00001694
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001695#
1696# Extended interrupt mode is an R2 feature
1697#
Ralf Baechlee01402b2005-07-14 15:57:16 +00001698config CPU_MIPSR2_IRQ_EI
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001699 bool
Ralf Baechlee01402b2005-07-14 15:57:16 +00001700
Linus Torvalds1da177e2005-04-16 15:20:36 -07001701config CPU_HAS_SYNC
1702 bool
1703 depends on !CPU_R3000
1704 default y
1705
Ralf Baechleea580402007-10-11 23:46:09 +01001706config GENERIC_CLOCKEVENTS_BROADCAST
1707 bool
1708
Linus Torvalds1da177e2005-04-16 15:20:36 -07001709#
Maciej W. Rozycki20d60d92007-10-23 12:43:11 +01001710# CPU non-features
1711#
1712config CPU_DADDI_WORKAROUNDS
1713 bool
1714
1715config CPU_R4000_WORKAROUNDS
1716 bool
1717 select CPU_R4400_WORKAROUNDS
1718
1719config CPU_R4400_WORKAROUNDS
1720 bool
1721
1722#
Ralf Baechle797798c2005-08-10 15:17:11 +00001723# Use the generic interrupt handling code in kernel/irq/:
1724#
1725config GENERIC_HARDIRQS
1726 bool
1727 default y
1728
1729config GENERIC_IRQ_PROBE
1730 bool
1731 default y
1732
Ingo Molnar0d7012a2006-06-29 02:24:43 -07001733config IRQ_PER_CPU
Ingo Molnar0d7012a2006-06-29 02:24:43 -07001734 bool
Ingo Molnar0d7012a2006-06-29 02:24:43 -07001735
Ralf Baechle797798c2005-08-10 15:17:11 +00001736#
Linus Torvalds1da177e2005-04-16 15:20:36 -07001737# - Highmem only makes sense for the 32-bit kernel.
1738# - The current highmem code will only work properly on physically indexed
1739# caches such as R3000, SB1, R7000 or those that look like they're virtually
1740# indexed such as R4000/R4400 SC and MC versions or R10000. So for the
1741# moment we protect the user and offer the highmem option only on machines
1742# where it's known to be safe. This will not offer highmem on a few systems
1743# such as MIPS32 and MIPS64 CPUs which may have virtual and physically
1744# indexed CPUs but we're playing safe.
Ralf Baechle797798c2005-08-10 15:17:11 +00001745# - We use SYS_SUPPORTS_HIGHMEM to offer highmem only for systems where we
1746# know they might have memory configurations that could make use of highmem
1747# support.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001748#
1749config HIGHMEM
1750 bool "High Memory Support"
Ralf Baechle797798c2005-08-10 15:17:11 +00001751 depends on 32BIT && CPU_SUPPORTS_HIGHMEM && SYS_SUPPORTS_HIGHMEM
1752
1753config CPU_SUPPORTS_HIGHMEM
1754 bool
1755
1756config SYS_SUPPORTS_HIGHMEM
1757 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001758
Franck Bui-Huu9693a852007-02-02 17:41:47 +01001759config SYS_SUPPORTS_SMARTMIPS
1760 bool
1761
Yoichi Yuasab4819b52005-06-25 14:54:31 -07001762config ARCH_FLATMEM_ENABLE
1763 def_bool y
1764 depends on !NUMA
1765
Ralf Baechled8cb4e12006-06-11 23:03:08 +01001766config ARCH_DISCONTIGMEM_ENABLE
1767 bool
1768 default y if SGI_IP27
1769 help
David Sterba3dde6ad2007-05-09 07:12:20 +02001770 Say Y to support efficient handling of discontiguous physical memory,
Ralf Baechled8cb4e12006-06-11 23:03:08 +01001771 for architectures which are either NUMA (Non-Uniform Memory Access)
1772 or have huge holes in the physical address space for other reasons.
1773 See <file:Documentation/vm/numa> for more.
1774
Ralf Baechlecce335ae2007-11-03 02:05:43 +00001775config ARCH_POPULATES_NODE_MAP
1776 def_bool y
1777
Atsushi Nemotob1c6cd42006-07-03 00:09:47 +09001778config ARCH_SPARSEMEM_ENABLE
1779 bool
Atsushi Nemoto7de58fa2006-07-05 01:22:44 +09001780 select SPARSEMEM_STATIC
Atsushi Nemoto31473742006-07-03 00:09:47 +09001781
Ralf Baechled8cb4e12006-06-11 23:03:08 +01001782config NUMA
1783 bool "NUMA Support"
1784 depends on SYS_SUPPORTS_NUMA
1785 help
1786 Say Y to compile the kernel to support NUMA (Non-Uniform Memory
1787 Access). This option improves performance on systems with more
1788 than two nodes; on two node systems it is generally better to
1789 leave it disabled; on single node systems disable this option
1790 disabled.
1791
1792config SYS_SUPPORTS_NUMA
1793 bool
1794
Yasunori Gotoc80d79d2006-04-10 22:53:53 -07001795config NODES_SHIFT
1796 int
1797 default "6"
1798 depends on NEED_MULTIPLE_NODES
1799
Yoichi Yuasab4819b52005-06-25 14:54:31 -07001800source "mm/Kconfig"
1801
Linus Torvalds1da177e2005-04-16 15:20:36 -07001802config SMP
1803 bool "Multi-Processing support"
Ralf Baechlee73ea272006-06-04 11:51:46 +01001804 depends on SYS_SUPPORTS_SMP
Ralf Baechleb4b30a52006-08-03 17:34:24 +01001805 select IRQ_PER_CPU
Jens Axboe2f304c02008-06-17 10:45:23 +02001806 select USE_GENERIC_SMP_HELPERS
Ralf Baechlee73ea272006-06-04 11:51:46 +01001807 help
Linus Torvalds1da177e2005-04-16 15:20:36 -07001808 This enables support for systems with more than one CPU. If you have
1809 a system with only one CPU, like most personal computers, say N. If
1810 you have a system with more than one CPU, say Y.
1811
1812 If you say N here, the kernel will run on single and multiprocessor
1813 machines, but will use only one CPU of a multiprocessor machine. If
1814 you say Y here, the kernel will run on many, but not all,
1815 singleprocessor machines. On a singleprocessor machine, the kernel
1816 will run faster if you say N here.
1817
1818 People using multiprocessor machines who say Y here should also say
1819 Y to "Enhanced Real Time Clock Support", below.
1820
Adrian Bunk03502fa2008-02-03 15:50:21 +02001821 See also the SMP-HOWTO available at
1822 <http://www.tldp.org/docs.html#howto>.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001823
1824 If you don't know what to do here, say N.
1825
Ralf Baechle87353d82007-11-19 12:23:51 +00001826config SMP_UP
1827 bool
1828
Ralf Baechle4a16ff42008-10-04 00:06:29 +01001829config SYS_SUPPORTS_MIPS_CMP
1830 bool
1831
Ralf Baechlee73ea272006-06-04 11:51:46 +01001832config SYS_SUPPORTS_SMP
1833 bool
1834
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09001835config NR_CPUS_DEFAULT_1
1836 bool
1837
Ralf Baechle130e2fb2007-02-06 16:53:15 +00001838config NR_CPUS_DEFAULT_2
1839 bool
1840
1841config NR_CPUS_DEFAULT_4
1842 bool
1843
1844config NR_CPUS_DEFAULT_8
1845 bool
1846
1847config NR_CPUS_DEFAULT_16
1848 bool
1849
1850config NR_CPUS_DEFAULT_32
1851 bool
1852
1853config NR_CPUS_DEFAULT_64
1854 bool
1855
Linus Torvalds1da177e2005-04-16 15:20:36 -07001856config NR_CPUS
1857 int "Maximum number of CPUs (2-64)"
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09001858 range 1 64 if NR_CPUS_DEFAULT_1
Linus Torvalds1da177e2005-04-16 15:20:36 -07001859 depends on SMP
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09001860 default "1" if NR_CPUS_DEFAULT_1
Ralf Baechle130e2fb2007-02-06 16:53:15 +00001861 default "2" if NR_CPUS_DEFAULT_2
1862 default "4" if NR_CPUS_DEFAULT_4
1863 default "8" if NR_CPUS_DEFAULT_8
1864 default "16" if NR_CPUS_DEFAULT_16
1865 default "32" if NR_CPUS_DEFAULT_32
1866 default "64" if NR_CPUS_DEFAULT_64
Linus Torvalds1da177e2005-04-16 15:20:36 -07001867 help
1868 This allows you to specify the maximum number of CPUs which this
1869 kernel will support. The maximum supported value is 32 for 32-bit
1870 kernel and 64 for 64-bit kernels; the minimum value which makes
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09001871 sense is 1 for Qemu (useful only for kernel debugging purposes)
1872 and 2 for all others.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001873
1874 This is purely to save memory - each supported CPU adds
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09001875 approximately eight kilobytes to the kernel image. For best
1876 performance should round up your number of processors to the next
1877 power of two.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001878
Atsushi Nemotoc4eee282007-11-12 01:05:16 +09001879source "kernel/time/Kconfig"
1880
Atsushi Nemoto1723b4a2006-06-20 00:19:13 +09001881#
1882# Timer Interrupt Frequency Configuration
1883#
1884
1885choice
1886 prompt "Timer frequency"
1887 default HZ_250
1888 help
1889 Allows the configuration of the timer frequency.
1890
1891 config HZ_48
Ralf Baechle0f873582008-02-25 16:55:29 +00001892 bool "48 HZ" if SYS_SUPPORTS_48HZ || SYS_SUPPORTS_ARBIT_HZ
Atsushi Nemoto1723b4a2006-06-20 00:19:13 +09001893
1894 config HZ_100
1895 bool "100 HZ" if SYS_SUPPORTS_100HZ || SYS_SUPPORTS_ARBIT_HZ
1896
1897 config HZ_128
1898 bool "128 HZ" if SYS_SUPPORTS_128HZ || SYS_SUPPORTS_ARBIT_HZ
1899
1900 config HZ_250
1901 bool "250 HZ" if SYS_SUPPORTS_250HZ || SYS_SUPPORTS_ARBIT_HZ
1902
1903 config HZ_256
1904 bool "256 HZ" if SYS_SUPPORTS_256HZ || SYS_SUPPORTS_ARBIT_HZ
1905
1906 config HZ_1000
1907 bool "1000 HZ" if SYS_SUPPORTS_1000HZ || SYS_SUPPORTS_ARBIT_HZ
1908
1909 config HZ_1024
1910 bool "1024 HZ" if SYS_SUPPORTS_1024HZ || SYS_SUPPORTS_ARBIT_HZ
1911
1912endchoice
1913
1914config SYS_SUPPORTS_48HZ
1915 bool
1916
1917config SYS_SUPPORTS_100HZ
1918 bool
1919
1920config SYS_SUPPORTS_128HZ
1921 bool
1922
1923config SYS_SUPPORTS_250HZ
1924 bool
1925
1926config SYS_SUPPORTS_256HZ
1927 bool
1928
1929config SYS_SUPPORTS_1000HZ
1930 bool
1931
1932config SYS_SUPPORTS_1024HZ
1933 bool
1934
1935config SYS_SUPPORTS_ARBIT_HZ
1936 bool
1937 default y if !SYS_SUPPORTS_48HZ && !SYS_SUPPORTS_100HZ && \
1938 !SYS_SUPPORTS_128HZ && !SYS_SUPPORTS_250HZ && \
1939 !SYS_SUPPORTS_256HZ && !SYS_SUPPORTS_1000HZ && \
1940 !SYS_SUPPORTS_1024HZ
1941
1942config HZ
1943 int
1944 default 48 if HZ_48
1945 default 100 if HZ_100
1946 default 128 if HZ_128
1947 default 250 if HZ_250
1948 default 256 if HZ_256
1949 default 1000 if HZ_1000
1950 default 1024 if HZ_1024
1951
Ralf Baechlee80de852005-07-11 20:45:51 +00001952source "kernel/Kconfig.preempt"
Linus Torvalds1da177e2005-04-16 15:20:36 -07001953
Linus Torvalds1da177e2005-04-16 15:20:36 -07001954config MIPS_INSANE_LARGE
1955 bool "Support for large 64-bit configurations"
Ralf Baechle875d43e2005-09-03 15:56:16 -07001956 depends on CPU_R10000 && 64BIT
Linus Torvalds1da177e2005-04-16 15:20:36 -07001957 help
1958 MIPS R10000 does support a 44 bit / 16TB address space as opposed to
1959 previous 64-bit processors which only supported 40 bit / 1TB. If you
1960 need processes of more than 1TB virtual address space, say Y here.
1961 This will result in additional memory usage, so it is not
1962 recommended for normal users.
1963
Atsushi Nemotoea6e9422007-01-16 23:29:11 +09001964config KEXEC
1965 bool "Kexec system call (EXPERIMENTAL)"
1966 depends on EXPERIMENTAL
1967 help
1968 kexec is a system call that implements the ability to shutdown your
1969 current kernel, and to start another kernel. It is like a reboot
David Sterba3dde6ad2007-05-09 07:12:20 +02001970 but it is independent of the system firmware. And like a reboot
Atsushi Nemotoea6e9422007-01-16 23:29:11 +09001971 you can start any kernel with it, not just Linux.
1972
Matt LaPlante01dd2fb2007-10-20 01:34:40 +02001973 The name comes from the similarity to the exec system call.
Atsushi Nemotoea6e9422007-01-16 23:29:11 +09001974
1975 It is an ongoing process to be certain the hardware in a machine
1976 is properly shutdown, so do not be surprised if this code does not
1977 initially work for you. It may help to enable device hotplugging
1978 support. As of this writing the exact hardware interface is
1979 strongly in flux, so no good recommendation can be made.
1980
1981config SECCOMP
1982 bool "Enable seccomp to safely compute untrusted bytecode"
Ralf Baechle293c5bd2007-07-25 16:19:33 +01001983 depends on PROC_FS
Atsushi Nemotoea6e9422007-01-16 23:29:11 +09001984 default y
1985 help
1986 This kernel feature is useful for number crunching applications
1987 that may need to compute untrusted bytecode during their
1988 execution. By using pipes or other transports made available to
1989 the process as file descriptors supporting the read/write
1990 syscalls, it's possible to isolate those applications in
1991 their own address space using seccomp. Once seccomp is
1992 enabled via /proc/<pid>/seccomp, it cannot be disabled
1993 and the task is only allowed to execute a few safe syscalls
1994 defined by each seccomp mode.
1995
1996 If unsure, say Y. Only embedded should say N here.
1997
Ralf Baechle5e83d432005-10-29 19:32:41 +01001998endmenu
1999
Atsushi Nemoto1df0f0f2006-09-26 23:44:01 +09002000config LOCKDEP_SUPPORT
2001 bool
2002 default y
2003
2004config STACKTRACE_SUPPORT
2005 bool
2006 default y
2007
Ralf Baechleb6c35392005-11-25 11:35:40 +00002008source "init/Kconfig"
2009
Atsushi Nemoto00110362008-08-26 22:34:57 +09002010config PROBE_INITRD_HEADER
2011 bool "Probe initrd header created by addinitrd"
2012 depends on BLK_DEV_INITRD
2013 help
2014 Probe initrd header at the last page of kernel image.
2015 Say Y here if you are using arch/mips/boot/addinitrd.c to
2016 add initrd or initramfs image to the kernel image.
2017 Otherwise, say N.
2018
Matt Helsleydc52ddc2008-10-18 20:27:21 -07002019source "kernel/Kconfig.freezer"
2020
Linus Torvalds1da177e2005-04-16 15:20:36 -07002021menu "Bus options (PCI, PCMCIA, EISA, ISA, TC)"
2022
Ralf Baechle5e83d432005-10-29 19:32:41 +01002023config HW_HAS_EISA
2024 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07002025config HW_HAS_PCI
2026 bool
2027
2028config PCI
2029 bool "Support for PCI controller"
2030 depends on HW_HAS_PCI
Ralf Baechleabb4ae42007-10-11 23:46:03 +01002031 select PCI_DOMAINS
Linus Torvalds1da177e2005-04-16 15:20:36 -07002032 help
2033 Find out whether you have a PCI motherboard. PCI is the name of a
2034 bus system, i.e. the way the CPU talks to the other stuff inside
2035 your box. Other bus systems are ISA, EISA, or VESA. If you have PCI,
2036 say Y, otherwise N.
2037
Linus Torvalds1da177e2005-04-16 15:20:36 -07002038config PCI_DOMAINS
2039 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07002040
2041source "drivers/pci/Kconfig"
2042
2043#
2044# ISA support is now enabled via select. Too many systems still have the one
2045# or other ISA chip on the board that users don't know about so don't expect
2046# users to choose the right thing ...
2047#
2048config ISA
2049 bool
2050
2051config EISA
2052 bool "EISA support"
Ralf Baechle5e83d432005-10-29 19:32:41 +01002053 depends on HW_HAS_EISA
Linus Torvalds1da177e2005-04-16 15:20:36 -07002054 select ISA
Ralf Baechleaa414df2006-11-30 01:14:51 +00002055 select GENERIC_ISA_DMA
Linus Torvalds1da177e2005-04-16 15:20:36 -07002056 ---help---
2057 The Extended Industry Standard Architecture (EISA) bus was
2058 developed as an open alternative to the IBM MicroChannel bus.
2059
2060 The EISA bus provided some of the features of the IBM MicroChannel
2061 bus while maintaining backward compatibility with cards made for
2062 the older ISA bus. The EISA bus saw limited use between 1988 and
2063 1995 when it was made obsolete by the PCI bus.
2064
2065 Say Y here if you are building a kernel for an EISA-based machine.
2066
2067 Otherwise, say N.
2068
2069source "drivers/eisa/Kconfig"
2070
2071config TC
2072 bool "TURBOchannel support"
2073 depends on MACH_DECSTATION
2074 help
2075 TurboChannel is a DEC (now Compaq (now HP)) bus for Alpha and MIPS
2076 processors. Documentation on writing device drivers for TurboChannel
2077 is available at:
2078 <http://www.cs.arizona.edu/computer.help/policy/DIGITAL_unix/AA-PS3HD-TET1_html/TITLE.html>.
2079
2080#config ACCESSBUS
2081# bool "Access.Bus support"
2082# depends on TC
2083
2084config MMU
2085 bool
2086 default y
2087
Ralf Baechled865bea2007-10-11 23:46:10 +01002088config I8253
2089 bool
2090
Ralf Baechlecce335ae2007-11-03 02:05:43 +00002091config ZONE_DMA32
2092 bool
2093
Linus Torvalds1da177e2005-04-16 15:20:36 -07002094source "drivers/pcmcia/Kconfig"
2095
2096source "drivers/pci/hotplug/Kconfig"
2097
2098endmenu
2099
2100menu "Executable file formats"
2101
2102source "fs/Kconfig.binfmt"
2103
2104config TRAD_SIGNALS
2105 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07002106
Linus Torvalds1da177e2005-04-16 15:20:36 -07002107config MIPS32_COMPAT
2108 bool "Kernel support for Linux/MIPS 32-bit binary compatibility"
Ralf Baechle875d43e2005-09-03 15:56:16 -07002109 depends on 64BIT
Linus Torvalds1da177e2005-04-16 15:20:36 -07002110 help
2111 Select this option if you want Linux/MIPS 32-bit binary
2112 compatibility. Since all software available for Linux/MIPS is
2113 currently 32-bit you should say Y here.
2114
2115config COMPAT
2116 bool
2117 depends on MIPS32_COMPAT
2118 default y
2119
Atsushi Nemoto05e43962006-11-07 18:02:44 +09002120config SYSVIPC_COMPAT
2121 bool
2122 depends on COMPAT && SYSVIPC
2123 default y
2124
Linus Torvalds1da177e2005-04-16 15:20:36 -07002125config MIPS32_O32
2126 bool "Kernel support for o32 binaries"
2127 depends on MIPS32_COMPAT
2128 help
2129 Select this option if you want to run o32 binaries. These are pure
2130 32-bit binaries as used by the 32-bit Linux/MIPS port. Most of
2131 existing binaries are in this format.
2132
2133 If unsure, say Y.
2134
2135config MIPS32_N32
2136 bool "Kernel support for n32 binaries"
2137 depends on MIPS32_COMPAT
2138 help
2139 Select this option if you want to run n32 binaries. These are
2140 64-bit binaries using 32-bit quantities for addressing and certain
2141 data that would normally be 64-bit. They are used in special
2142 cases.
2143
2144 If unsure, say N.
2145
2146config BINFMT_ELF32
2147 bool
2148 default y if MIPS32_O32 || MIPS32_N32
2149
Ralf Baechle21162452007-02-09 17:08:58 +00002150endmenu
Linus Torvalds1da177e2005-04-16 15:20:36 -07002151
Ralf Baechle21162452007-02-09 17:08:58 +00002152menu "Power management options"
Rodolfo Giometti952fa952006-06-05 17:43:10 +02002153
Wu Zhangjin363c55c2009-06-04 20:27:10 +08002154config ARCH_HIBERNATION_POSSIBLE
2155 def_bool y
Ralf Baechle3f5b3e12009-07-02 11:48:07 +01002156 depends on SYS_SUPPORTS_HOTPLUG_CPU || !SMP
Wu Zhangjin363c55c2009-06-04 20:27:10 +08002157
Johannes Bergf4cb5702007-12-08 02:14:00 +01002158config ARCH_SUSPEND_POSSIBLE
2159 def_bool y
Ralf Baechle3f5b3e12009-07-02 11:48:07 +01002160 depends on SYS_SUPPORTS_HOTPLUG_CPU || !SMP
Johannes Bergf4cb5702007-12-08 02:14:00 +01002161
Ralf Baechle21162452007-02-09 17:08:58 +00002162source "kernel/power/Kconfig"
Rodolfo Giometti952fa952006-06-05 17:43:10 +02002163
Linus Torvalds1da177e2005-04-16 15:20:36 -07002164endmenu
2165
Sam Ravnborgd5950b42005-07-11 21:03:49 -07002166source "net/Kconfig"
2167
Linus Torvalds1da177e2005-04-16 15:20:36 -07002168source "drivers/Kconfig"
2169
2170source "fs/Kconfig"
2171
2172source "arch/mips/Kconfig.debug"
2173
2174source "security/Kconfig"
2175
2176source "crypto/Kconfig"
2177
2178source "lib/Kconfig"