blob: 5c863bcd5614e4076d4417e294458e4bbd5cae8f [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001config MIPS
2 bool
3 default y
4 # Horrible source of confusion. Die, die, die ...
5 select EMBEDDED
6
Linus Torvalds1da177e2005-04-16 15:20:36 -07007mainmenu "Linux/MIPS Kernel Configuration"
8
Linus Torvalds1da177e2005-04-16 15:20:36 -07009menu "Machine selection"
10
Christoph Lameter5ac6da62007-02-10 01:43:14 -080011config ZONE_DMA
12 bool
Christoph Lameter5ac6da62007-02-10 01:43:14 -080013
Ralf Baechle5e83d432005-10-29 19:32:41 +010014choice
15 prompt "System type"
16 default SGI_IP22
Linus Torvalds1da177e2005-04-16 15:20:36 -070017
Songmao Tian42d226c2007-06-06 14:52:38 +080018config LEMOTE_FULONG
19 bool "Lemote Fulong mini-PC"
20 select ARCH_SPARSEMEM_ENABLE
21 select SYS_HAS_CPU_LOONGSON2
22 select DMA_NONCOHERENT
23 select BOOT_ELF32
24 select BOARD_SCACHE
25 select HAVE_STD_PC_SERIAL_PORT
26 select HW_HAS_PCI
27 select I8259
28 select ISA
29 select IRQ_CPU
30 select SYS_SUPPORTS_32BIT_KERNEL
31 select SYS_SUPPORTS_64BIT_KERNEL
32 select SYS_SUPPORTS_LITTLE_ENDIAN
33 select SYS_SUPPORTS_HIGHMEM
34 select SYS_HAS_EARLY_PRINTK
35 select GENERIC_HARDIRQS_NO__DO_IRQ
36 select CPU_HAS_WB
37 help
38 Lemote Fulong mini-PC board based on the Chinese Loongson-2E CPU and
39 an FPGA northbridge
40
Yoichi Yuasac3543e22007-05-11 20:44:30 +090041config MACH_ALCHEMY
42 bool "Alchemy processor based machines"
Linus Torvalds1da177e2005-04-16 15:20:36 -070043
Ralf Baechle35189fa2006-06-18 16:39:46 +010044config BASLER_EXCITE
Thomas Koellerbe915892007-02-23 01:40:34 +010045 bool "Basler eXcite smart camera"
Ralf Baechle35189fa2006-06-18 16:39:46 +010046 select DMA_COHERENT
47 select HW_HAS_PCI
48 select IRQ_CPU
49 select IRQ_CPU_RM7K
50 select IRQ_CPU_RM9K
thomas@koeller.dyndns.org663c3d92006-08-27 13:51:48 +020051 select MIPS_RM9122
Ralf Baechle35189fa2006-06-18 16:39:46 +010052 select SYS_HAS_CPU_RM9000
53 select SYS_SUPPORTS_32BIT_KERNEL
54 select SYS_SUPPORTS_64BIT_KERNEL
55 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechlecc801072007-02-17 02:58:39 +000056 select SYS_SUPPORTS_KGDB
Ralf Baechle35189fa2006-06-18 16:39:46 +010057 help
58 The eXcite is a smart camera platform manufactured by
Thomas Koellerbe915892007-02-23 01:40:34 +010059 Basler Vision Technologies AG.
Ralf Baechle35189fa2006-06-18 16:39:46 +010060
61config BASLER_EXCITE_PROTOTYPE
62 bool "Support for pre-release units"
63 depends on BASLER_EXCITE
64 default n
65 help
66 Pre-series (prototype) units are different from later ones in
67 some ways. Select this option if you have one of these. Please
68 note that a kernel built with this option selected will not be
69 able to run on normal units.
70
Linus Torvalds1da177e2005-04-16 15:20:36 -070071config MIPS_COBALT
Martin Michlmayr3fa986f2006-05-09 23:34:53 +020072 bool "Cobalt Server"
Linus Torvalds1da177e2005-04-16 15:20:36 -070073 select DMA_NONCOHERENT
74 select HW_HAS_PCI
75 select I8259
76 select IRQ_CPU
Yoichi Yuasa252161e2007-03-14 21:51:26 +090077 select PCI_GT64XXX_PCI0
Ralf Baechle7cf80532005-10-20 22:33:09 +010078 select SYS_HAS_CPU_NEVADA
Yoichi Yuasa0a22e0d2007-03-02 12:42:33 +090079 select SYS_HAS_EARLY_PRINTK
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -070080 select SYS_SUPPORTS_32BIT_KERNEL
81 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
Ralf Baechle5e83d432005-10-29 19:32:41 +010082 select SYS_SUPPORTS_LITTLE_ENDIAN
Atsushi Nemoto9fd32cf2006-12-08 01:55:07 +090083 select GENERIC_HARDIRQS_NO__DO_IRQ
Linus Torvalds1da177e2005-04-16 15:20:36 -070084
85config MACH_DECSTATION
Martin Michlmayr3fa986f2006-05-09 23:34:53 +020086 bool "DECstations"
Linus Torvalds1da177e2005-04-16 15:20:36 -070087 select BOOT_ELF32
88 select DMA_NONCOHERENT
Maciej W. Rozyckid388d682007-05-29 15:08:07 +010089 select NO_IOPORT
Linus Torvalds1da177e2005-04-16 15:20:36 -070090 select IRQ_CPU
Ralf Baechle7cf80532005-10-20 22:33:09 +010091 select SYS_HAS_CPU_R3000
92 select SYS_HAS_CPU_R4X00
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -070093 select SYS_SUPPORTS_32BIT_KERNEL
94 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
Ralf Baechle5e83d432005-10-29 19:32:41 +010095 select SYS_SUPPORTS_LITTLE_ENDIAN
Atsushi Nemoto1723b4a2006-06-20 00:19:13 +090096 select SYS_SUPPORTS_128HZ
97 select SYS_SUPPORTS_256HZ
98 select SYS_SUPPORTS_1024HZ
Ralf Baechle5e83d432005-10-29 19:32:41 +010099 help
Linus Torvalds1da177e2005-04-16 15:20:36 -0700100 This enables support for DEC's MIPS based workstations. For details
101 see the Linux/MIPS FAQ on <http://www.linux-mips.org/> and the
102 DECstation porting pages on <http://decstation.unix-ag.org/>.
103
104 If you have one of the following DECstation Models you definitely
105 want to choose R4xx0 for the CPU Type:
106
107 DECstation 5000/50
108 DECstation 5000/150
109 DECstation 5000/260
110 DECsystem 5900/260
111
112 otherwise choose R3000.
113
Ralf Baechle5e83d432005-10-29 19:32:41 +0100114config MACH_JAZZ
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200115 bool "Jazz family of machines"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100116 select ARC
117 select ARC32
118 select ARCH_MAY_HAVE_PC_FDC
119 select GENERIC_ISA_DMA
120 select I8259
121 select ISA
Ralf Baechlede61b542007-07-12 17:41:23 +0100122 select PCSPEAKER
Ralf Baechle7cf80532005-10-20 22:33:09 +0100123 select SYS_HAS_CPU_R4X00
Ralf Baechle5e83d432005-10-29 19:32:41 +0100124 select SYS_SUPPORTS_32BIT_KERNEL
125 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
Atsushi Nemoto1723b4a2006-06-20 00:19:13 +0900126 select SYS_SUPPORTS_100HZ
Atsushi Nemoto9fd32cf2006-12-08 01:55:07 +0900127 select GENERIC_HARDIRQS_NO__DO_IRQ
Linus Torvalds1da177e2005-04-16 15:20:36 -0700128 help
Ralf Baechle5e83d432005-10-29 19:32:41 +0100129 This a family of machines based on the MIPS R4030 chipset which was
130 used by several vendors to build RISC/os and Windows NT workstations.
131 Members include the Acer PICA, MIPS Magnum 4000, MIPS Millenium and
132 Olivetti M700-10 workstations.
133
Linus Torvalds1da177e2005-04-16 15:20:36 -0700134config MIPS_ATLAS
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200135 bool "MIPS Atlas board"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700136 select BOOT_ELF32
137 select DMA_NONCOHERENT
Ralf Baechle36a88532007-03-01 11:56:43 +0000138 select SYS_HAS_EARLY_PRINTK
Ralf Baechle5e83d432005-10-29 19:32:41 +0100139 select IRQ_CPU
Linus Torvalds1da177e2005-04-16 15:20:36 -0700140 select HW_HAS_PCI
Ralf Baechle5e83d432005-10-29 19:32:41 +0100141 select MIPS_BOARDS_GEN
142 select MIPS_BONITO64
Yoichi Yuasa252161e2007-03-14 21:51:26 +0900143 select PCI_GT64XXX_PCI0
Ralf Baechle5e83d432005-10-29 19:32:41 +0100144 select MIPS_MSC
Maciej W. Rozyckif4b7cdb2005-02-12 04:31:49 +0000145 select RM7000_CPU_SCACHE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700146 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100147 select SYS_HAS_CPU_MIPS32_R1
148 select SYS_HAS_CPU_MIPS32_R2
149 select SYS_HAS_CPU_MIPS64_R1
150 select SYS_HAS_CPU_NEVADA
151 select SYS_HAS_CPU_RM7000
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700152 select SYS_SUPPORTS_32BIT_KERNEL
153 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100154 select SYS_SUPPORTS_BIG_ENDIAN
155 select SYS_SUPPORTS_LITTLE_ENDIAN
Ralf Baechlef41ae0b2006-06-05 17:24:46 +0100156 select SYS_SUPPORTS_MULTITHREADING if EXPERIMENTAL
Franck Bui-Huu9693a852007-02-02 17:41:47 +0100157 select SYS_SUPPORTS_SMARTMIPS
Franck Bui-Huue77c2322006-12-01 18:22:27 +0100158 select GENERIC_HARDIRQS_NO__DO_IRQ
Linus Torvalds1da177e2005-04-16 15:20:36 -0700159 help
Maciej W. Rozyckif638d192005-02-02 22:23:46 +0000160 This enables support for the MIPS Technologies Atlas evaluation
Linus Torvalds1da177e2005-04-16 15:20:36 -0700161 board.
162
163config MIPS_MALTA
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200164 bool "MIPS Malta board"
Ralf Baechle61ed2422005-09-15 08:52:34 +0000165 select ARCH_MAY_HAVE_PC_FDC
Linus Torvalds1da177e2005-04-16 15:20:36 -0700166 select BOOT_ELF32
Linus Torvalds1da177e2005-04-16 15:20:36 -0700167 select DMA_NONCOHERENT
168 select GENERIC_ISA_DMA
Ralf Baechleaa414df2006-11-30 01:14:51 +0000169 select IRQ_CPU
Linus Torvalds1da177e2005-04-16 15:20:36 -0700170 select HW_HAS_PCI
171 select I8259
Ralf Baechle5e83d432005-10-29 19:32:41 +0100172 select MIPS_BOARDS_GEN
173 select MIPS_BONITO64
Chris Dearman9318c512006-06-20 17:15:20 +0100174 select MIPS_CPU_SCACHE
Yoichi Yuasa252161e2007-03-14 21:51:26 +0900175 select PCI_GT64XXX_PCI0
Ralf Baechle5e83d432005-10-29 19:32:41 +0100176 select MIPS_MSC
Linus Torvalds1da177e2005-04-16 15:20:36 -0700177 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100178 select SYS_HAS_CPU_MIPS32_R1
179 select SYS_HAS_CPU_MIPS32_R2
180 select SYS_HAS_CPU_MIPS64_R1
181 select SYS_HAS_CPU_NEVADA
182 select SYS_HAS_CPU_RM7000
Ralf Baechle36a88532007-03-01 11:56:43 +0000183 select SYS_HAS_EARLY_PRINTK
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700184 select SYS_SUPPORTS_32BIT_KERNEL
185 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100186 select SYS_SUPPORTS_BIG_ENDIAN
187 select SYS_SUPPORTS_LITTLE_ENDIAN
Ralf Baechlef41ae0b2006-06-05 17:24:46 +0100188 select SYS_SUPPORTS_MULTITHREADING
Franck Bui-Huu9693a852007-02-02 17:41:47 +0100189 select SYS_SUPPORTS_SMARTMIPS
Linus Torvalds1da177e2005-04-16 15:20:36 -0700190 help
Maciej W. Rozyckif638d192005-02-02 22:23:46 +0000191 This enables support for the MIPS Technologies Malta evaluation
Linus Torvalds1da177e2005-04-16 15:20:36 -0700192 board.
193
194config MIPS_SEAD
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200195 bool "MIPS SEAD board (EXPERIMENTAL)"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700196 depends on EXPERIMENTAL
197 select IRQ_CPU
198 select DMA_NONCOHERENT
Ralf Baechle36a88532007-03-01 11:56:43 +0000199 select SYS_HAS_EARLY_PRINTK
Ralf Baechle5e83d432005-10-29 19:32:41 +0100200 select MIPS_BOARDS_GEN
Ralf Baechle7cf80532005-10-20 22:33:09 +0100201 select SYS_HAS_CPU_MIPS32_R1
202 select SYS_HAS_CPU_MIPS32_R2
203 select SYS_HAS_CPU_MIPS64_R1
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700204 select SYS_SUPPORTS_32BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100205 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
206 select SYS_SUPPORTS_BIG_ENDIAN
207 select SYS_SUPPORTS_LITTLE_ENDIAN
Franck Bui-Huu9693a852007-02-02 17:41:47 +0100208 select SYS_SUPPORTS_SMARTMIPS
Maciej W. Rozyckif638d192005-02-02 22:23:46 +0000209 help
210 This enables support for the MIPS Technologies SEAD evaluation
211 board.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700212
Mark.Zhana240a462006-05-06 17:04:20 +0800213config WR_PPMC
Mark.Zhan92478572006-06-20 18:15:02 +0800214 bool "Wind River PPMC board"
Mark.Zhana240a462006-05-06 17:04:20 +0800215 select IRQ_CPU
216 select BOOT_ELF32
217 select DMA_NONCOHERENT
218 select HW_HAS_PCI
Yoichi Yuasa252161e2007-03-14 21:51:26 +0900219 select PCI_GT64XXX_PCI0
Mark.Zhana240a462006-05-06 17:04:20 +0800220 select SWAP_IO_SPACE
221 select SYS_HAS_CPU_MIPS32_R1
222 select SYS_HAS_CPU_MIPS32_R2
223 select SYS_HAS_CPU_MIPS64_R1
224 select SYS_HAS_CPU_NEVADA
225 select SYS_HAS_CPU_RM7000
226 select SYS_SUPPORTS_32BIT_KERNEL
227 select SYS_SUPPORTS_64BIT_KERNEL
228 select SYS_SUPPORTS_BIG_ENDIAN
229 select SYS_SUPPORTS_LITTLE_ENDIAN
230 help
231 This enables support for the Wind River MIPS32 4KC PPMC evaluation
232 board, which is based on GT64120 bridge chip.
233
Ralf Baechlec78cbf42005-09-30 13:59:37 +0100234config MIPS_SIM
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200235 bool 'MIPS simulator (MIPSsim)'
Ralf Baechlec78cbf42005-09-30 13:59:37 +0100236 select DMA_NONCOHERENT
Ralf Baechle36a88532007-03-01 11:56:43 +0000237 select SYS_HAS_EARLY_PRINTK
Ralf Baechlec78cbf42005-09-30 13:59:37 +0100238 select IRQ_CPU
Marc St-Jean9267a302007-06-14 15:55:31 -0600239 select BOOT_RAW
Ralf Baechle7cf80532005-10-20 22:33:09 +0100240 select SYS_HAS_CPU_MIPS32_R1
241 select SYS_HAS_CPU_MIPS32_R2
Ralf Baechle36a88532007-03-01 11:56:43 +0000242 select SYS_HAS_EARLY_PRINTK
Ralf Baechlec78cbf42005-09-30 13:59:37 +0100243 select SYS_SUPPORTS_32BIT_KERNEL
244 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechlef6e23732007-07-10 17:32:56 +0100245 select SYS_SUPPORTS_MULTITHREADING
Ralf Baechlec78cbf42005-09-30 13:59:37 +0100246 select SYS_SUPPORTS_LITTLE_ENDIAN
247 help
248 This option enables support for MIPS Technologies MIPSsim software
249 emulator.
250
Ralf Baechle5e83d432005-10-29 19:32:41 +0100251config MOMENCO_OCELOT
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200252 bool "Momentum Ocelot board"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100253 select DMA_NONCOHERENT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700254 select HW_HAS_PCI
255 select IRQ_CPU
256 select IRQ_CPU_RM7K
Yoichi Yuasa252161e2007-03-14 21:51:26 +0900257 select PCI_GT64XXX_PCI0
Ralf Baechle5e83d432005-10-29 19:32:41 +0100258 select RM7000_CPU_SCACHE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700259 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100260 select SYS_HAS_CPU_RM7000
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700261 select SYS_SUPPORTS_32BIT_KERNEL
262 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100263 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechlecc801072007-02-17 02:58:39 +0000264 select SYS_SUPPORTS_KGDB
Linus Torvalds1da177e2005-04-16 15:20:36 -0700265 help
Ralf Baechle5e83d432005-10-29 19:32:41 +0100266 The Ocelot is a MIPS-based Single Board Computer (SBC) made by
267 Momentum Computer <http://www.momenco.com/>.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700268
Pete Popovbdf21b12005-07-14 17:47:57 +0000269config PNX8550_JBS
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200270 bool "Philips PNX8550 based JBS board"
Pete Popovbdf21b12005-07-14 17:47:57 +0000271 select PNX8550
272 select SYS_SUPPORTS_LITTLE_ENDIAN
273
Vitaly Woolf0647a52006-12-08 11:40:35 +0300274config PNX8550_STB810
Yoichi Yuasae460b732007-05-28 22:54:28 +0900275 bool "Philips PNX8550 based STB810 board"
Vitaly Woolf0647a52006-12-08 11:40:35 +0300276 select PNX8550
277 select SYS_SUPPORTS_LITTLE_ENDIAN
278
Linus Torvalds1da177e2005-04-16 15:20:36 -0700279config DDB5477
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200280 bool "NEC DDB Vrc-5477"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100281 select DDB5XXX_COMMON
Linus Torvalds1da177e2005-04-16 15:20:36 -0700282 select DMA_NONCOHERENT
283 select HW_HAS_PCI
284 select I8259
285 select IRQ_CPU
Ralf Baechle7cf80532005-10-20 22:33:09 +0100286 select SYS_HAS_CPU_R5432
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700287 select SYS_SUPPORTS_32BIT_KERNEL
288 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
Ralf Baechlecc801072007-02-17 02:58:39 +0000289 select SYS_SUPPORTS_KGDB
290 select SYS_SUPPORTS_KGDB
Ralf Baechle5e83d432005-10-29 19:32:41 +0100291 select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700292 help
293 This enables support for the R5432-based NEC DDB Vrc-5477,
294 or Rockhopper/SolutionGear boards with R5432/R5500 CPUs.
295
296 Features : kernel debugging, serial terminal, NFS root fs, on-board
297 ether port USB, AC97, PCI, etc.
298
Ralf Baechle5e83d432005-10-29 19:32:41 +0100299config MACH_VR41XX
Yoichi Yuasa74142d62007-04-26 19:45:09 +0900300 bool "NEC VR4100 series based machines"
Ralf Baechle7cf80532005-10-20 22:33:09 +0100301 select SYS_HAS_CPU_VR41XX
Atsushi Nemoto9fd32cf2006-12-08 01:55:07 +0900302 select GENERIC_HARDIRQS_NO__DO_IRQ
Ralf Baechle5e83d432005-10-29 19:32:41 +0100303
Marc St-Jean9267a302007-06-14 15:55:31 -0600304config PMC_MSP
305 bool "PMC-Sierra MSP chipsets"
306 depends on EXPERIMENTAL
307 select DMA_NONCOHERENT
308 select SWAP_IO_SPACE
309 select NO_EXCEPT_FILL
310 select BOOT_RAW
311 select SYS_HAS_CPU_MIPS32_R1
312 select SYS_HAS_CPU_MIPS32_R2
313 select SYS_SUPPORTS_32BIT_KERNEL
314 select SYS_SUPPORTS_BIG_ENDIAN
315 select SYS_SUPPORTS_KGDB
316 select IRQ_CPU
317 select SERIAL_8250
318 select SERIAL_8250_CONSOLE
319 help
320 This adds support for the PMC-Sierra family of Multi-Service
321 Processor System-On-A-Chips. These parts include a number
322 of integrated peripherals, interfaces and DSPs in addition to
323 a variety of MIPS cores.
324
Ralf Baechle5e83d432005-10-29 19:32:41 +0100325config PMC_YOSEMITE
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200326 bool "PMC-Sierra Yosemite eval board"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100327 select DMA_COHERENT
328 select HW_HAS_PCI
329 select IRQ_CPU
330 select IRQ_CPU_RM7K
331 select IRQ_CPU_RM9K
332 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100333 select SYS_HAS_CPU_RM9000
Ralf Baechle36a88532007-03-01 11:56:43 +0000334 select SYS_HAS_EARLY_PRINTK
Ralf Baechle5e83d432005-10-29 19:32:41 +0100335 select SYS_SUPPORTS_32BIT_KERNEL
336 select SYS_SUPPORTS_64BIT_KERNEL
337 select SYS_SUPPORTS_BIG_ENDIAN
338 select SYS_SUPPORTS_HIGHMEM
Ralf Baechlecc801072007-02-17 02:58:39 +0000339 select SYS_SUPPORTS_KGDB
Ralf Baechlee73ea272006-06-04 11:51:46 +0100340 select SYS_SUPPORTS_SMP
Ralf Baechle5e83d432005-10-29 19:32:41 +0100341 help
342 Yosemite is an evaluation board for the RM9000x2 processor
343 manufactured by PMC-Sierra.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700344
Ralf Baechle07119622005-09-03 15:56:11 -0700345config QEMU
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200346 bool "Qemu"
Ralf Baechle07119622005-09-03 15:56:11 -0700347 select DMA_COHERENT
348 select GENERIC_ISA_DMA
349 select HAVE_STD_PC_SERIAL_PORT
350 select I8259
351 select ISA
Ralf Baechlede61b542007-07-12 17:41:23 +0100352 select PCSPEAKER
Ralf Baechle07119622005-09-03 15:56:11 -0700353 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100354 select SYS_HAS_CPU_MIPS32_R1
Ralf Baechle07119622005-09-03 15:56:11 -0700355 select SYS_SUPPORTS_32BIT_KERNEL
356 select SYS_SUPPORTS_BIG_ENDIAN
Aurelien Jarnoc8cc9612006-09-27 23:07:25 +0200357 select SYS_SUPPORTS_LITTLE_ENDIAN
Atsushi Nemotob1c6cd42006-07-03 00:09:47 +0900358 select ARCH_SPARSEMEM_ENABLE
Atsushi Nemoto9fd32cf2006-12-08 01:55:07 +0900359 select GENERIC_HARDIRQS_NO__DO_IRQ
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +0900360 select NR_CPUS_DEFAULT_1
361 select SYS_SUPPORTS_SMP
Ralf Baechle07119622005-09-03 15:56:11 -0700362 help
Ralf Baechle5e83d432005-10-29 19:32:41 +0100363 Qemu is a software emulator which among other architectures also
364 can simulate a MIPS32 4Kc system. This patch adds support for the
365 system architecture that currently is being simulated by Qemu. It
366 will eventually be removed again when Qemu has the capability to
367 simulate actual MIPS hardware platforms. More information on Qemu
368 can be found at http://www.linux-mips.org/wiki/Qemu.
Ralf Baechle07119622005-09-03 15:56:11 -0700369
dmitry pervushin355c4712006-05-21 14:53:06 +0400370config MARKEINS
Yoichi Yuasae460b732007-05-28 22:54:28 +0900371 bool "NEC EMMA2RH Mark-eins"
dmitry pervushin355c4712006-05-21 14:53:06 +0400372 select DMA_NONCOHERENT
373 select HW_HAS_PCI
374 select IRQ_CPU
375 select SWAP_IO_SPACE
376 select SYS_SUPPORTS_32BIT_KERNEL
377 select SYS_SUPPORTS_BIG_ENDIAN
378 select SYS_SUPPORTS_LITTLE_ENDIAN
379 select SYS_HAS_CPU_R5000
380 help
381 This enables support for the R5432-based NEC Mark-eins
382 boards with R5500 CPU.
383
Linus Torvalds1da177e2005-04-16 15:20:36 -0700384config SGI_IP22
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200385 bool "SGI IP22 (Indy/Indigo2)"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700386 select ARC
387 select ARC32
388 select BOOT_ELF32
389 select DMA_NONCOHERENT
Ralf Baechle5e83d432005-10-29 19:32:41 +0100390 select HW_HAS_EISA
Linus Torvalds1da177e2005-04-16 15:20:36 -0700391 select IP22_CPU_SCACHE
392 select IRQ_CPU
Ralf Baechleaa414df2006-11-30 01:14:51 +0000393 select GENERIC_ISA_DMA_SUPPORT_BROKEN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700394 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100395 select SYS_HAS_CPU_R4X00
396 select SYS_HAS_CPU_R5000
Ralf Baechle36a88532007-03-01 11:56:43 +0000397 select SYS_HAS_EARLY_PRINTK
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700398 select SYS_SUPPORTS_32BIT_KERNEL
399 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100400 select SYS_SUPPORTS_BIG_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700401 help
402 This are the SGI Indy, Challenge S and Indigo2, as well as certain
403 OEM variants like the Tandem CMN B006S. To compile a Linux kernel
404 that runs on these, say Y here.
405
406config SGI_IP27
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200407 bool "SGI IP27 (Origin200/2000)"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700408 select ARC
409 select ARC64
Ralf Baechle5e83d432005-10-29 19:32:41 +0100410 select BOOT_ELF64
Linus Torvalds1da177e2005-04-16 15:20:36 -0700411 select DMA_IP27
Ralf Baechle36a88532007-03-01 11:56:43 +0000412 select SYS_HAS_EARLY_PRINTK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700413 select HW_HAS_PCI
Ralf Baechle130e2fb2007-02-06 16:53:15 +0000414 select NR_CPUS_DEFAULT_64
Linus Torvalds1da177e2005-04-16 15:20:36 -0700415 select PCI_DOMAINS
Ralf Baechle7cf80532005-10-20 22:33:09 +0100416 select SYS_HAS_CPU_R10000
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700417 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100418 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechlecc801072007-02-17 02:58:39 +0000419 select SYS_SUPPORTS_KGDB
Ralf Baechled8cb4e12006-06-11 23:03:08 +0100420 select SYS_SUPPORTS_NUMA
Ralf Baechle1a5c5de2006-11-02 17:23:33 +0000421 select SYS_SUPPORTS_SMP
Franck Bui-Huue77c2322006-12-01 18:22:27 +0100422 select GENERIC_HARDIRQS_NO__DO_IRQ
Linus Torvalds1da177e2005-04-16 15:20:36 -0700423 help
424 This are the SGI Origin 200, Origin 2000 and Onyx 2 Graphics
425 workstations. To compile a Linux kernel that runs on these, say Y
426 here.
427
Linus Torvalds1da177e2005-04-16 15:20:36 -0700428config SGI_IP32
Ralf Baechlecfd2afc2007-07-10 17:33:00 +0100429 bool "SGI IP32 (O2)"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700430 select ARC
431 select ARC32
432 select BOOT_ELF32
Linus Torvalds1da177e2005-04-16 15:20:36 -0700433 select DMA_NONCOHERENT
434 select HW_HAS_PCI
435 select R5000_CPU_SCACHE
436 select RM7000_CPU_SCACHE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100437 select SYS_HAS_CPU_R5000
438 select SYS_HAS_CPU_R10000 if BROKEN
439 select SYS_HAS_CPU_RM7000
Ralf Baechledd2f18f2006-01-19 14:55:42 +0000440 select SYS_HAS_CPU_NEVADA
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700441 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100442 select SYS_SUPPORTS_BIG_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700443 help
444 If you want this kernel to run on SGI O2 workstation, say Y here.
445
Andrew Isaacson9a6dcea2005-10-19 23:57:11 -0700446config SIBYTE_BIGSUR
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200447 bool "Sibyte BCM91480B-BigSur"
Andrew Isaacson9a6dcea2005-10-19 23:57:11 -0700448 select BOOT_ELF32
449 select DMA_COHERENT
Ralf Baechle130e2fb2007-02-06 16:53:15 +0000450 select NR_CPUS_DEFAULT_4
Ralf Baechle7cf80532005-10-20 22:33:09 +0100451 select PCI_DOMAINS
Andrew Isaacson9a6dcea2005-10-19 23:57:11 -0700452 select SIBYTE_BCM1x80
453 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100454 select SYS_HAS_CPU_SB1
Andrew Isaacson9a6dcea2005-10-19 23:57:11 -0700455 select SYS_SUPPORTS_BIG_ENDIAN
456 select SYS_SUPPORTS_LITTLE_ENDIAN
457
Ralf Baechle5e83d432005-10-29 19:32:41 +0100458config SIBYTE_SWARM
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200459 bool "Sibyte BCM91250A-SWARM"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100460 select BOOT_ELF32
461 select DMA_COHERENT
Ralf Baechle130e2fb2007-02-06 16:53:15 +0000462 select NR_CPUS_DEFAULT_2
Ralf Baechle5e83d432005-10-29 19:32:41 +0100463 select SIBYTE_SB1250
464 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100465 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100466 select SYS_SUPPORTS_BIG_ENDIAN
467 select SYS_SUPPORTS_HIGHMEM
Ralf Baechlecc801072007-02-17 02:58:39 +0000468 select SYS_SUPPORTS_KGDB
Ralf Baechle5e83d432005-10-29 19:32:41 +0100469 select SYS_SUPPORTS_LITTLE_ENDIAN
Pete Popove3ad1c22005-03-01 06:33:16 +0000470
Ralf Baechle5e83d432005-10-29 19:32:41 +0100471config SIBYTE_SENTOSA
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200472 bool "Sibyte BCM91250E-Sentosa"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100473 depends on EXPERIMENTAL
474 select BOOT_ELF32
475 select DMA_COHERENT
Ralf Baechle130e2fb2007-02-06 16:53:15 +0000476 select NR_CPUS_DEFAULT_2
Ralf Baechle5e83d432005-10-29 19:32:41 +0100477 select SIBYTE_SB1250
478 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100479 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100480 select SYS_SUPPORTS_BIG_ENDIAN
481 select SYS_SUPPORTS_LITTLE_ENDIAN
482
483config SIBYTE_RHONE
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200484 bool "Sibyte BCM91125E-Rhone"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100485 depends on EXPERIMENTAL
486 select BOOT_ELF32
487 select DMA_COHERENT
488 select SIBYTE_BCM1125H
489 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100490 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100491 select SYS_SUPPORTS_BIG_ENDIAN
492 select SYS_SUPPORTS_LITTLE_ENDIAN
493
494config SIBYTE_CARMEL
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200495 bool "Sibyte BCM91120x-Carmel"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100496 depends on EXPERIMENTAL
497 select BOOT_ELF32
498 select DMA_COHERENT
499 select SIBYTE_BCM1120
500 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100501 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100502 select SYS_SUPPORTS_BIG_ENDIAN
503 select SYS_SUPPORTS_LITTLE_ENDIAN
504
505config SIBYTE_PTSWARM
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200506 bool "Sibyte BCM91250PT-PTSWARM"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100507 depends on EXPERIMENTAL
508 select BOOT_ELF32
509 select DMA_COHERENT
Ralf Baechle130e2fb2007-02-06 16:53:15 +0000510 select NR_CPUS_DEFAULT_2
Ralf Baechle5e83d432005-10-29 19:32:41 +0100511 select SIBYTE_SB1250
512 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100513 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100514 select SYS_SUPPORTS_BIG_ENDIAN
515 select SYS_SUPPORTS_HIGHMEM
516 select SYS_SUPPORTS_LITTLE_ENDIAN
517
518config SIBYTE_LITTLESUR
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200519 bool "Sibyte BCM91250C2-LittleSur"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100520 depends on EXPERIMENTAL
521 select BOOT_ELF32
522 select DMA_COHERENT
Ralf Baechle130e2fb2007-02-06 16:53:15 +0000523 select NR_CPUS_DEFAULT_2
Ralf Baechle5e83d432005-10-29 19:32:41 +0100524 select SIBYTE_SB1250
525 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100526 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100527 select SYS_SUPPORTS_BIG_ENDIAN
528 select SYS_SUPPORTS_HIGHMEM
529 select SYS_SUPPORTS_LITTLE_ENDIAN
530
531config SIBYTE_CRHINE
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200532 bool "Sibyte BCM91120C-CRhine"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100533 depends on EXPERIMENTAL
534 select BOOT_ELF32
535 select DMA_COHERENT
536 select SIBYTE_BCM1120
537 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100538 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100539 select SYS_SUPPORTS_BIG_ENDIAN
540 select SYS_SUPPORTS_LITTLE_ENDIAN
541
542config SIBYTE_CRHONE
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200543 bool "Sibyte BCM91125C-CRhone"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100544 depends on EXPERIMENTAL
545 select BOOT_ELF32
546 select DMA_COHERENT
547 select SIBYTE_BCM1125
548 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100549 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100550 select SYS_SUPPORTS_BIG_ENDIAN
551 select SYS_SUPPORTS_HIGHMEM
552 select SYS_SUPPORTS_LITTLE_ENDIAN
553
Thomas Bogendoerfer14b36af2006-12-05 17:05:44 +0100554config SNI_RM
555 bool "SNI RM200/300/400"
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200556 select ARC if CPU_LITTLE_ENDIAN
557 select ARC32 if CPU_LITTLE_ENDIAN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100558 select ARCH_MAY_HAVE_PC_FDC
559 select BOOT_ELF32
560 select DMA_NONCOHERENT
561 select GENERIC_ISA_DMA
Ralf Baechle5e83d432005-10-29 19:32:41 +0100562 select HW_HAS_EISA
563 select HW_HAS_PCI
Thomas Bogendoerferc066a322006-12-28 18:22:32 +0100564 select IRQ_CPU
Ralf Baechle5e83d432005-10-29 19:32:41 +0100565 select I8259
566 select ISA
Ralf Baechlede61b542007-07-12 17:41:23 +0100567 select PCSPEAKER
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200568 select SWAP_IO_SPACE if CPU_BIG_ENDIAN
Ralf Baechle7cf80532005-10-20 22:33:09 +0100569 select SYS_HAS_CPU_R4X00
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200570 select SYS_HAS_CPU_R5000
Thomas Bogendoerferc066a322006-12-28 18:22:32 +0100571 select SYS_HAS_CPU_R10000
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200572 select R5000_CPU_SCACHE
Ralf Baechle36a88532007-03-01 11:56:43 +0000573 select SYS_HAS_EARLY_PRINTK
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700574 select SYS_SUPPORTS_32BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100575 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200576 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100577 select SYS_SUPPORTS_HIGHMEM
578 select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700579 help
Thomas Bogendoerfer14b36af2006-12-05 17:05:44 +0100580 The SNI RM200/300/400 are MIPS-based machines manufactured by
581 Siemens Nixdorf Informationssysteme (SNI), parent company of Pyramid
Ralf Baechle5e83d432005-10-29 19:32:41 +0100582 Technology and now in turn merged with Fujitsu. Say Y here to
583 support this machine type.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700584
Ralf Baechle5e83d432005-10-29 19:32:41 +0100585config TOSHIBA_JMR3927
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200586 bool "Toshiba JMR-TX3927 board"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100587 select DMA_NONCOHERENT
588 select HW_HAS_PCI
589 select MIPS_TX3927
590 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100591 select SYS_HAS_CPU_TX39XX
Ralf Baechle5e83d432005-10-29 19:32:41 +0100592 select SYS_SUPPORTS_32BIT_KERNEL
Sergei Shtylyov6a2603a2007-02-07 20:39:05 +0300593 select SYS_SUPPORTS_LITTLE_ENDIAN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100594 select SYS_SUPPORTS_BIG_ENDIAN
Atsushi Nemoto21274352007-03-15 00:58:28 +0900595 select GENERIC_HARDIRQS_NO__DO_IRQ
Ralf Baechle5e83d432005-10-29 19:32:41 +0100596
597config TOSHIBA_RBTX4927
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200598 bool "Toshiba TBTX49[23]7 board"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100599 select DMA_NONCOHERENT
600 select HAS_TXX9_SERIAL
601 select HW_HAS_PCI
602 select I8259
Ralf Baechle5e83d432005-10-29 19:32:41 +0100603 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100604 select SYS_HAS_CPU_TX49XX
Ralf Baechle5e83d432005-10-29 19:32:41 +0100605 select SYS_SUPPORTS_32BIT_KERNEL
606 select SYS_SUPPORTS_64BIT_KERNEL
Sergei Shtylyov6a2603a2007-02-07 20:39:05 +0300607 select SYS_SUPPORTS_LITTLE_ENDIAN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100608 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechlecc801072007-02-17 02:58:39 +0000609 select SYS_SUPPORTS_KGDB
Atsushi Nemoto9fd32cf2006-12-08 01:55:07 +0900610 select GENERIC_HARDIRQS_NO__DO_IRQ
Ralf Baechle5e83d432005-10-29 19:32:41 +0100611 help
612 This Toshiba board is based on the TX4927 processor. Say Y here to
613 support this machine type
Linus Torvalds1da177e2005-04-16 15:20:36 -0700614
Ralf Baechle23fbee92005-07-25 22:45:45 +0000615config TOSHIBA_RBTX4938
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200616 bool "Toshiba RBTX4938 board"
Ralf Baechle23fbee92005-07-25 22:45:45 +0000617 select HAVE_STD_PC_SERIAL_PORT
618 select DMA_NONCOHERENT
619 select GENERIC_ISA_DMA
620 select HAS_TXX9_SERIAL
621 select HW_HAS_PCI
622 select I8259
Ralf Baechle23fbee92005-07-25 22:45:45 +0000623 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100624 select SYS_HAS_CPU_TX49XX
Ralf Baechle23fbee92005-07-25 22:45:45 +0000625 select SYS_SUPPORTS_32BIT_KERNEL
626 select SYS_SUPPORTS_LITTLE_ENDIAN
627 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechlecc801072007-02-17 02:58:39 +0000628 select SYS_SUPPORTS_KGDB
Atsushi Nemoto9fd32cf2006-12-08 01:55:07 +0900629 select GENERIC_HARDIRQS_NO__DO_IRQ
Atsushi Nemoto3896b052007-06-22 23:21:55 +0900630 select GENERIC_GPIO
Ralf Baechle23fbee92005-07-25 22:45:45 +0000631 help
632 This Toshiba board is based on the TX4938 processor. Say Y here to
633 support this machine type
634
Linus Torvalds1da177e2005-04-16 15:20:36 -0700635endchoice
636
Yoichi Yuasac3543e22007-05-11 20:44:30 +0900637source "arch/mips/au1000/Kconfig"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100638source "arch/mips/ddb5xxx/Kconfig"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100639source "arch/mips/jazz/Kconfig"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100640source "arch/mips/pmc-sierra/Kconfig"
Ralf Baechle29c48692005-02-07 01:27:14 +0000641source "arch/mips/sgi-ip27/Kconfig"
Ralf Baechle38b18f722005-02-03 14:28:23 +0000642source "arch/mips/sibyte/Kconfig"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100643source "arch/mips/tx4927/Kconfig"
Ralf Baechle23fbee92005-07-25 22:45:45 +0000644source "arch/mips/tx4938/Kconfig"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100645source "arch/mips/vr41xx/Kconfig"
Pete Popovbdf21b12005-07-14 17:47:57 +0000646source "arch/mips/philips/pnx8550/common/Kconfig"
Ralf Baechle38b18f722005-02-03 14:28:23 +0000647
Ralf Baechle5e83d432005-10-29 19:32:41 +0100648endmenu
649
Linus Torvalds1da177e2005-04-16 15:20:36 -0700650config RWSEM_GENERIC_SPINLOCK
651 bool
652 default y
653
654config RWSEM_XCHGADD_ALGORITHM
655 bool
656
David Howellsf0d1b0b2006-12-08 02:37:49 -0800657config ARCH_HAS_ILOG2_U32
658 bool
659 default n
660
661config ARCH_HAS_ILOG2_U64
662 bool
663 default n
664
Akinobu Mita3c9ee7e2006-03-26 01:39:30 -0800665config GENERIC_FIND_NEXT_BIT
666 bool
667 default y
668
669config GENERIC_HWEIGHT
670 bool
671 default y
672
Linus Torvalds1da177e2005-04-16 15:20:36 -0700673config GENERIC_CALIBRATE_DELAY
674 bool
675 default y
676
Ralf Baechle8db02012006-10-02 16:54:48 +0100677config GENERIC_TIME
678 bool
679 default y
680
Atsushi Nemoto1cc89032006-04-04 13:11:45 +0900681config SCHED_NO_NO_OMIT_FRAME_POINTER
682 bool
683 default y
684
Franck Bui-Huue77c2322006-12-01 18:22:27 +0100685config GENERIC_HARDIRQS_NO__DO_IRQ
686 bool
687 default n
688
Linus Torvalds1da177e2005-04-16 15:20:36 -0700689#
690# Select some configuration options automatically based on user selections.
691#
692config ARC
693 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700694
Ralf Baechle61ed2422005-09-15 08:52:34 +0000695config ARCH_MAY_HAVE_PC_FDC
696 bool
697
Marc St-Jean9267a302007-06-14 15:55:31 -0600698config BOOT_RAW
699 bool
700
Ralf Baechle4ce588c2005-09-03 15:56:19 -0700701config DMA_COHERENT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700702 bool
703
Ralf Baechle4ce588c2005-09-03 15:56:19 -0700704config DMA_IP27
Linus Torvalds1da177e2005-04-16 15:20:36 -0700705 bool
706
Ralf Baechle4ce588c2005-09-03 15:56:19 -0700707config DMA_IP32
708 bool
709 select DMA_NEED_PCI_MAP_STATE
710
711config DMA_NONCOHERENT
712 bool
713 select DMA_NEED_PCI_MAP_STATE
714
715config DMA_NEED_PCI_MAP_STATE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700716 bool
717
718config EARLY_PRINTK
Ralf Baechle36a88532007-03-01 11:56:43 +0000719 bool "Early printk" if EMBEDDED && DEBUG_KERNEL
720 depends on SYS_HAS_EARLY_PRINTK
721 default y
722 help
723 This option enables special console drivers which allow the kernel
724 to print messages very early in the bootup process.
725
726 This is useful for kernel debugging when your machine crashes very
Robert P. J. Day490dcc42007-05-20 12:11:07 -0400727 early before the console code is initialized. For normal operation,
728 it is not recommended because it looks ugly on some machines and
729 doesn't cooperate with an X server. You should normally say N here,
Ralf Baechle36a88532007-03-01 11:56:43 +0000730 unless you want to debug such a crash.
731
732config SYS_HAS_EARLY_PRINTK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700733 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700734
735config GENERIC_ISA_DMA
736 bool
Atsushi Nemoto05502332007-03-21 00:36:02 +0900737 select ZONE_DMA
Linus Torvalds1da177e2005-04-16 15:20:36 -0700738
739config I8259
740 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700741
Linus Torvalds1da177e2005-04-16 15:20:36 -0700742config MIPS_BONITO64
743 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700744
745config MIPS_MSC
746 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700747
Linus Torvalds1da177e2005-04-16 15:20:36 -0700748config MIPS_DISABLE_OBSOLETE_IDE
749 bool
750
Maciej W. Rozyckid388d682007-05-29 15:08:07 +0100751config NO_IOPORT
752 def_bool n
753
Ralf Baechleaa414df2006-11-30 01:14:51 +0000754config GENERIC_ISA_DMA_SUPPORT_BROKEN
755 bool
Atsushi Nemoto05502332007-03-21 00:36:02 +0900756 select ZONE_DMA
Ralf Baechleaa414df2006-11-30 01:14:51 +0000757
Yoichi Yuasa09663332007-05-22 00:05:58 +0900758config GENERIC_GPIO
759 bool
760
Ralf Baechle5e83d432005-10-29 19:32:41 +0100761#
Matt LaPlante3cb2fcc2006-11-30 05:22:59 +0100762# Endianess selection. Sufficiently obscure so many users don't know what to
Ralf Baechle5e83d432005-10-29 19:32:41 +0100763# answer,so we try hard to limit the available choices. Also the use of a
764# choice statement should be more obvious to the user.
765#
766choice
767 prompt "Endianess selection"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700768 help
769 Some MIPS machines can be configured for either little or big endian
Ralf Baechle5e83d432005-10-29 19:32:41 +0100770 byte order. These modes require different kernels and a different
Matt LaPlante3cb2fcc2006-11-30 05:22:59 +0100771 Linux distribution. In general there is one preferred byteorder for a
Ralf Baechle5e83d432005-10-29 19:32:41 +0100772 particular system but some systems are just as commonly used in the
David Sterba3dde6ad2007-05-09 07:12:20 +0200773 one or the other endianness.
Ralf Baechle5e83d432005-10-29 19:32:41 +0100774
775config CPU_BIG_ENDIAN
776 bool "Big endian"
777 depends on SYS_SUPPORTS_BIG_ENDIAN
778
779config CPU_LITTLE_ENDIAN
780 bool "Little endian"
781 depends on SYS_SUPPORTS_LITTLE_ENDIAN
782 help
783
784endchoice
785
Ralf Baechle21162452007-02-09 17:08:58 +0000786config SYS_SUPPORTS_APM_EMULATION
787 bool
788
Ralf Baechle5e83d432005-10-29 19:32:41 +0100789config SYS_SUPPORTS_BIG_ENDIAN
790 bool
791
792config SYS_SUPPORTS_LITTLE_ENDIAN
793 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700794
795config IRQ_CPU
796 bool
797
798config IRQ_CPU_RM7K
799 bool
800
Ralf Baechle5e83d432005-10-29 19:32:41 +0100801config IRQ_CPU_RM9K
802 bool
803
Marc St-Jean9267a302007-06-14 15:55:31 -0600804config IRQ_MSP_SLP
805 bool
806
807config IRQ_MSP_CIC
808 bool
809
Linus Torvalds1da177e2005-04-16 15:20:36 -0700810config DDB5XXX_COMMON
811 bool
Ralf Baechlecc801072007-02-17 02:58:39 +0000812 select SYS_SUPPORTS_KGDB
Linus Torvalds1da177e2005-04-16 15:20:36 -0700813
814config MIPS_BOARDS_GEN
815 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700816
Yoichi Yuasa252161e2007-03-14 21:51:26 +0900817config PCI_GT64XXX_PCI0
Linus Torvalds1da177e2005-04-16 15:20:36 -0700818 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700819
Marc St-Jean9267a302007-06-14 15:55:31 -0600820config NO_EXCEPT_FILL
821 bool
822
Linus Torvalds1da177e2005-04-16 15:20:36 -0700823config MIPS_TX3927
824 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700825 select HAS_TXX9_SERIAL
Linus Torvalds1da177e2005-04-16 15:20:36 -0700826
thomas@koeller.dyndns.org663c3d92006-08-27 13:51:48 +0200827config MIPS_RM9122
828 bool
829 select SERIAL_RM9000
thomas@koeller.dyndns.org663c3d92006-08-27 13:51:48 +0200830
Pete Popovbdf21b12005-07-14 17:47:57 +0000831config PNX8550
832 bool
833 select SOC_PNX8550
834
835config SOC_PNX8550
836 bool
Pete Popovbdf21b12005-07-14 17:47:57 +0000837 select DMA_NONCOHERENT
838 select HW_HAS_PCI
Ralf Baechleb8c2a772005-10-31 13:08:37 +0000839 select SYS_HAS_CPU_MIPS32_R1
Ralf Baechle36a88532007-03-01 11:56:43 +0000840 select SYS_HAS_EARLY_PRINTK
Ralf Baechle7cf80532005-10-20 22:33:09 +0100841 select SYS_SUPPORTS_32BIT_KERNEL
Franck Bui-Huue77c2322006-12-01 18:22:27 +0100842 select GENERIC_HARDIRQS_NO__DO_IRQ
Ralf Baechlecc801072007-02-17 02:58:39 +0000843 select SYS_SUPPORTS_KGDB
Florian Fainelli4ead1682007-05-22 21:44:42 +0200844 select GENERIC_GPIO
Pete Popovbdf21b12005-07-14 17:47:57 +0000845
Linus Torvalds1da177e2005-04-16 15:20:36 -0700846config SWAP_IO_SPACE
847 bool
848
dmitry pervushin355c4712006-05-21 14:53:06 +0400849config EMMA2RH
850 bool
851 depends on MARKEINS
852 default y
853
thomas@koeller.dyndns.org663c3d92006-08-27 13:51:48 +0200854config SERIAL_RM9000
855 bool
856
Linus Torvalds1da177e2005-04-16 15:20:36 -0700857#
858# Unfortunately not all GT64120 systems run the chip at the same clock.
859# As the user for the clock rate and try to minimize the available options.
860#
861choice
862 prompt "Galileo Chip Clock"
Yoichi Yuasa6b5bf502007-06-21 15:06:21 +0900863 depends on MOMENCO_OCELOT
Franck Bui-Huu1e54f772007-05-07 18:01:51 +0200864 default SYSCLK_100 if MOMENCO_OCELOT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700865
Linus Torvalds1da177e2005-04-16 15:20:36 -0700866config SYSCLK_100
Yoichi Yuasa6b5bf502007-06-21 15:06:21 +0900867 bool "100" if MOMENCO_OCELOT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700868
869endchoice
870
Ralf Baechle5e83d432005-10-29 19:32:41 +0100871config ARC32
872 bool
873
Linus Torvalds1da177e2005-04-16 15:20:36 -0700874config BOOT_ELF32
875 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700876
877config MIPS_L1_CACHE_SHIFT
878 int
Thomas Bogendoerfer06cf5582007-06-20 23:36:47 +0200879 default "4" if MACH_DECSTATION
880 default "7" if SGI_IP27 || SNI_RM
Marc St-Jean9267a302007-06-14 15:55:31 -0600881 default "4" if PMC_MSP4200_EVAL
Linus Torvalds1da177e2005-04-16 15:20:36 -0700882 default "5"
883
Linus Torvalds1da177e2005-04-16 15:20:36 -0700884config HAVE_STD_PC_SERIAL_PORT
885 bool
886
Linus Torvalds1da177e2005-04-16 15:20:36 -0700887config ARC_CONSOLE
888 bool "ARC console support"
Ralf Baechle36a88532007-03-01 11:56:43 +0000889 depends on SGI_IP22 || (SNI_RM && CPU_LITTLE_ENDIAN)
Linus Torvalds1da177e2005-04-16 15:20:36 -0700890
891config ARC_MEMORY
892 bool
Thomas Bogendoerfer14b36af2006-12-05 17:05:44 +0100893 depends on MACH_JAZZ || SNI_RM || SGI_IP32
Linus Torvalds1da177e2005-04-16 15:20:36 -0700894 default y
895
896config ARC_PROMLIB
897 bool
Thomas Bogendoerfer14b36af2006-12-05 17:05:44 +0100898 depends on MACH_JAZZ || SNI_RM || SGI_IP22 || SGI_IP32
Linus Torvalds1da177e2005-04-16 15:20:36 -0700899 default y
900
901config ARC64
902 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700903
904config BOOT_ELF64
905 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700906
Linus Torvalds1da177e2005-04-16 15:20:36 -0700907menu "CPU selection"
908
909choice
910 prompt "CPU type"
911 default CPU_R4X00
912
Fuxin Zhang2a21c732007-06-06 14:52:43 +0800913config CPU_LOONGSON2
914 bool "Loongson 2"
915 depends on SYS_HAS_CPU_LOONGSON2
916 select CPU_SUPPORTS_32BIT_KERNEL
917 select CPU_SUPPORTS_64BIT_KERNEL
918 select CPU_SUPPORTS_HIGHMEM
919 help
920 The Loongson 2E processor implements the MIPS III instruction set
921 with many extensions.
922
Ralf Baechle6e760c82005-07-06 12:08:11 +0000923config CPU_MIPS32_R1
924 bool "MIPS32 Release 1"
Ralf Baechle7cf80532005-10-20 22:33:09 +0100925 depends on SYS_HAS_CPU_MIPS32_R1
Ralf Baechlef7062dd2006-04-24 14:58:53 +0100926 select CPU_HAS_LLSC
Ralf Baechle6e760c82005-07-06 12:08:11 +0000927 select CPU_HAS_PREFETCH
Ralf Baechle797798c2005-08-10 15:17:11 +0000928 select CPU_SUPPORTS_32BIT_KERNEL
Ralf Baechleec28f302006-03-05 00:45:33 +0000929 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle6e760c82005-07-06 12:08:11 +0000930 help
Ralf Baechle5e83d432005-10-29 19:32:41 +0100931 Choose this option to build a kernel for release 1 or later of the
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +0000932 MIPS32 architecture. Most modern embedded systems with a 32-bit
933 MIPS processor are based on a MIPS32 processor. If you know the
934 specific type of processor in your system, choose those that one
935 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
936 Release 2 of the MIPS32 architecture is available since several
937 years so chances are you even have a MIPS32 Release 2 processor
938 in which case you should choose CPU_MIPS32_R2 instead for better
939 performance.
940
941config CPU_MIPS32_R2
942 bool "MIPS32 Release 2"
Ralf Baechle7cf80532005-10-20 22:33:09 +0100943 depends on SYS_HAS_CPU_MIPS32_R2
Ralf Baechlef7062dd2006-04-24 14:58:53 +0100944 select CPU_HAS_LLSC
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +0000945 select CPU_HAS_PREFETCH
Ralf Baechle797798c2005-08-10 15:17:11 +0000946 select CPU_SUPPORTS_32BIT_KERNEL
Ralf Baechleec28f302006-03-05 00:45:33 +0000947 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +0000948 help
Ralf Baechle5e83d432005-10-29 19:32:41 +0100949 Choose this option to build a kernel for release 2 or later of the
Ralf Baechle6e760c82005-07-06 12:08:11 +0000950 MIPS32 architecture. Most modern embedded systems with a 32-bit
951 MIPS processor are based on a MIPS32 processor. If you know the
952 specific type of processor in your system, choose those that one
953 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700954
Ralf Baechle6e760c82005-07-06 12:08:11 +0000955config CPU_MIPS64_R1
956 bool "MIPS64 Release 1"
Ralf Baechle7cf80532005-10-20 22:33:09 +0100957 depends on SYS_HAS_CPU_MIPS64_R1
Ralf Baechlef7062dd2006-04-24 14:58:53 +0100958 select CPU_HAS_LLSC
Ralf Baechle797798c2005-08-10 15:17:11 +0000959 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700960 select CPU_SUPPORTS_32BIT_KERNEL
961 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechleec28f302006-03-05 00:45:33 +0000962 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle6e760c82005-07-06 12:08:11 +0000963 help
964 Choose this option to build a kernel for release 1 or later of the
965 MIPS64 architecture. Many modern embedded systems with a 64-bit
966 MIPS processor are based on a MIPS64 processor. If you know the
967 specific type of processor in your system, choose those that one
968 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +0000969 Release 2 of the MIPS64 architecture is available since several
970 years so chances are you even have a MIPS64 Release 2 processor
971 in which case you should choose CPU_MIPS64_R2 instead for better
972 performance.
973
974config CPU_MIPS64_R2
975 bool "MIPS64 Release 2"
Ralf Baechle7cf80532005-10-20 22:33:09 +0100976 depends on SYS_HAS_CPU_MIPS64_R2
Ralf Baechlef7062dd2006-04-24 14:58:53 +0100977 select CPU_HAS_LLSC
Ralf Baechle797798c2005-08-10 15:17:11 +0000978 select CPU_HAS_PREFETCH
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +0000979 select CPU_SUPPORTS_32BIT_KERNEL
980 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechleec28f302006-03-05 00:45:33 +0000981 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +0000982 help
983 Choose this option to build a kernel for release 2 or later of the
984 MIPS64 architecture. Many modern embedded systems with a 64-bit
985 MIPS processor are based on a MIPS64 processor. If you know the
986 specific type of processor in your system, choose those that one
987 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700988
989config CPU_R3000
990 bool "R3000"
Ralf Baechle7cf80532005-10-20 22:33:09 +0100991 depends on SYS_HAS_CPU_R3000
Ralf Baechlef7062dd2006-04-24 14:58:53 +0100992 select CPU_HAS_WB
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700993 select CPU_SUPPORTS_32BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +0000994 select CPU_SUPPORTS_HIGHMEM
Linus Torvalds1da177e2005-04-16 15:20:36 -0700995 help
996 Please make sure to pick the right CPU type. Linux/MIPS is not
997 designed to be generic, i.e. Kernels compiled for R3000 CPUs will
998 *not* work on R4000 machines and vice versa. However, since most
999 of the supported machines have an R4000 (or similar) CPU, R4x00
1000 might be a safe bet. If the resulting kernel does not work,
1001 try to recompile with R3000.
1002
1003config CPU_TX39XX
1004 bool "R39XX"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001005 depends on SYS_HAS_CPU_TX39XX
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001006 select CPU_SUPPORTS_32BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001007
1008config CPU_VR41XX
1009 bool "R41xx"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001010 depends on SYS_HAS_CPU_VR41XX
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001011 select CPU_SUPPORTS_32BIT_KERNEL
1012 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001013 help
Ralf Baechle5e83d432005-10-29 19:32:41 +01001014 The options selects support for the NEC VR4100 series of processors.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001015 Only choose this option if you have one of these processors as a
1016 kernel built with this option will not run on any other type of
1017 processor or vice versa.
1018
1019config CPU_R4300
1020 bool "R4300"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001021 depends on SYS_HAS_CPU_R4300
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001022 select CPU_HAS_LLSC
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001023 select CPU_SUPPORTS_32BIT_KERNEL
1024 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001025 help
1026 MIPS Technologies R4300-series processors.
1027
1028config CPU_R4X00
1029 bool "R4x00"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001030 depends on SYS_HAS_CPU_R4X00
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001031 select CPU_HAS_LLSC
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001032 select CPU_SUPPORTS_32BIT_KERNEL
1033 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001034 help
1035 MIPS Technologies R4000-series processors other than 4300, including
1036 the R4000, R4400, R4600, and 4700.
1037
1038config CPU_TX49XX
1039 bool "R49XX"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001040 depends on SYS_HAS_CPU_TX49XX
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001041 select CPU_HAS_LLSC
Atsushi Nemotode862b42006-03-17 12:59:22 +09001042 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001043 select CPU_SUPPORTS_32BIT_KERNEL
1044 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001045
1046config CPU_R5000
1047 bool "R5000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001048 depends on SYS_HAS_CPU_R5000
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001049 select CPU_HAS_LLSC
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001050 select CPU_SUPPORTS_32BIT_KERNEL
1051 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001052 help
1053 MIPS Technologies R5000-series processors other than the Nevada.
1054
1055config CPU_R5432
1056 bool "R5432"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001057 depends on SYS_HAS_CPU_R5432
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001058 select CPU_HAS_LLSC
Ralf Baechle5e83d432005-10-29 19:32:41 +01001059 select CPU_SUPPORTS_32BIT_KERNEL
1060 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001061
1062config CPU_R6000
1063 bool "R6000"
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001064 depends on EXPERIMENTAL
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001065 select CPU_HAS_LLSC
Ralf Baechle7cf80532005-10-20 22:33:09 +01001066 depends on SYS_HAS_CPU_R6000
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001067 select CPU_SUPPORTS_32BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001068 help
1069 MIPS Technologies R6000 and R6000A series processors. Note these
Chris Dearmanc09b47d2006-06-20 17:15:20 +01001070 processors are extremely rare and the support for them is incomplete.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001071
1072config CPU_NEVADA
1073 bool "RM52xx"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001074 depends on SYS_HAS_CPU_NEVADA
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001075 select CPU_HAS_LLSC
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001076 select CPU_SUPPORTS_32BIT_KERNEL
1077 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001078 help
1079 QED / PMC-Sierra RM52xx-series ("Nevada") processors.
1080
1081config CPU_R8000
1082 bool "R8000"
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001083 depends on EXPERIMENTAL
Ralf Baechle7cf80532005-10-20 22:33:09 +01001084 depends on SYS_HAS_CPU_R8000
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001085 select CPU_HAS_LLSC
Ralf Baechle5e83d432005-10-29 19:32:41 +01001086 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001087 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001088 help
1089 MIPS Technologies R8000 processors. Note these processors are
1090 uncommon and the support for them is incomplete.
1091
1092config CPU_R10000
1093 bool "R10000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001094 depends on SYS_HAS_CPU_R10000
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001095 select CPU_HAS_LLSC
Ralf Baechle5e83d432005-10-29 19:32:41 +01001096 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001097 select CPU_SUPPORTS_32BIT_KERNEL
1098 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +00001099 select CPU_SUPPORTS_HIGHMEM
Linus Torvalds1da177e2005-04-16 15:20:36 -07001100 help
1101 MIPS Technologies R10000-series processors.
1102
1103config CPU_RM7000
1104 bool "RM7000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001105 depends on SYS_HAS_CPU_RM7000
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001106 select CPU_HAS_LLSC
Ralf Baechle5e83d432005-10-29 19:32:41 +01001107 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001108 select CPU_SUPPORTS_32BIT_KERNEL
1109 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +00001110 select CPU_SUPPORTS_HIGHMEM
Linus Torvalds1da177e2005-04-16 15:20:36 -07001111
1112config CPU_RM9000
1113 bool "RM9000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001114 depends on SYS_HAS_CPU_RM9000
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001115 select CPU_HAS_LLSC
Ralf Baechle5e83d432005-10-29 19:32:41 +01001116 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001117 select CPU_SUPPORTS_32BIT_KERNEL
1118 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +00001119 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle0004a9d2006-10-31 03:45:07 +00001120 select WEAK_ORDERING
Linus Torvalds1da177e2005-04-16 15:20:36 -07001121
1122config CPU_SB1
1123 bool "SB1"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001124 depends on SYS_HAS_CPU_SB1
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001125 select CPU_HAS_LLSC
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001126 select CPU_SUPPORTS_32BIT_KERNEL
1127 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +00001128 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle0004a9d2006-10-31 03:45:07 +00001129 select WEAK_ORDERING
Linus Torvalds1da177e2005-04-16 15:20:36 -07001130
1131endchoice
1132
Fuxin Zhang2a21c732007-06-06 14:52:43 +08001133config SYS_HAS_CPU_LOONGSON2
1134 bool
1135
Ralf Baechle7cf80532005-10-20 22:33:09 +01001136config SYS_HAS_CPU_MIPS32_R1
1137 bool
1138
1139config SYS_HAS_CPU_MIPS32_R2
1140 bool
1141
1142config SYS_HAS_CPU_MIPS64_R1
1143 bool
1144
1145config SYS_HAS_CPU_MIPS64_R2
1146 bool
1147
1148config SYS_HAS_CPU_R3000
1149 bool
1150
1151config SYS_HAS_CPU_TX39XX
1152 bool
1153
1154config SYS_HAS_CPU_VR41XX
1155 bool
1156
1157config SYS_HAS_CPU_R4300
1158 bool
1159
1160config SYS_HAS_CPU_R4X00
1161 bool
1162
1163config SYS_HAS_CPU_TX49XX
1164 bool
1165
1166config SYS_HAS_CPU_R5000
1167 bool
1168
1169config SYS_HAS_CPU_R5432
1170 bool
1171
1172config SYS_HAS_CPU_R6000
1173 bool
1174
1175config SYS_HAS_CPU_NEVADA
1176 bool
1177
1178config SYS_HAS_CPU_R8000
1179 bool
1180
1181config SYS_HAS_CPU_R10000
1182 bool
1183
1184config SYS_HAS_CPU_RM7000
1185 bool
1186
1187config SYS_HAS_CPU_RM9000
1188 bool
1189
1190config SYS_HAS_CPU_SB1
1191 bool
1192
Ralf Baechle0004a9d2006-10-31 03:45:07 +00001193config WEAK_ORDERING
1194 bool
Ralf Baechle5e83d432005-10-29 19:32:41 +01001195endmenu
1196
1197#
Chris Dearmanc09b47d2006-06-20 17:15:20 +01001198# These two indicate any level of the MIPS32 and MIPS64 architecture
Ralf Baechle5e83d432005-10-29 19:32:41 +01001199#
1200config CPU_MIPS32
1201 bool
1202 default y if CPU_MIPS32_R1 || CPU_MIPS32_R2
1203
1204config CPU_MIPS64
1205 bool
1206 default y if CPU_MIPS64_R1 || CPU_MIPS64_R2
1207
1208#
Chris Dearmanc09b47d2006-06-20 17:15:20 +01001209# These two indicate the revision of the architecture, either Release 1 or Release 2
Ralf Baechle5e83d432005-10-29 19:32:41 +01001210#
1211config CPU_MIPSR1
1212 bool
1213 default y if CPU_MIPS32_R1 || CPU_MIPS64_R1
1214
1215config CPU_MIPSR2
1216 bool
1217 default y if CPU_MIPS32_R2 || CPU_MIPS64_R2
1218
1219config SYS_SUPPORTS_32BIT_KERNEL
1220 bool
1221config SYS_SUPPORTS_64BIT_KERNEL
1222 bool
1223config CPU_SUPPORTS_32BIT_KERNEL
1224 bool
1225config CPU_SUPPORTS_64BIT_KERNEL
1226 bool
1227
1228menu "Kernel type"
1229
1230choice
1231
1232 prompt "Kernel code model"
1233 help
1234 You should only select this option if you have a workload that
1235 actually benefits from 64-bit processing or if your machine has
1236 large memory. You will only be presented a single option in this
1237 menu if your system does not support both 32-bit and 64-bit kernels.
1238
1239config 32BIT
1240 bool "32-bit kernel"
1241 depends on CPU_SUPPORTS_32BIT_KERNEL && SYS_SUPPORTS_32BIT_KERNEL
1242 select TRAD_SIGNALS
1243 help
1244 Select this option if you want to build a 32-bit kernel.
1245config 64BIT
1246 bool "64-bit kernel"
1247 depends on CPU_SUPPORTS_64BIT_KERNEL && SYS_SUPPORTS_64BIT_KERNEL
1248 help
1249 Select this option if you want to build a 64-bit kernel.
1250
1251endchoice
1252
Linus Torvalds1da177e2005-04-16 15:20:36 -07001253choice
1254 prompt "Kernel page size"
1255 default PAGE_SIZE_4KB
1256
1257config PAGE_SIZE_4KB
1258 bool "4kB"
1259 help
1260 This option select the standard 4kB Linux page size. On some
1261 R3000-family processors this is the only available page size. Using
1262 4kB page size will minimize memory consumption and is therefore
1263 recommended for low memory systems.
1264
1265config PAGE_SIZE_8KB
1266 bool "8kB"
1267 depends on EXPERIMENTAL && CPU_R8000
1268 help
1269 Using 8kB page size will result in higher performance kernel at
1270 the price of higher memory consumption. This option is available
1271 only on the R8000 processor. Not that at the time of this writing
1272 this option is still high experimental; there are also issues with
1273 compatibility of user applications.
1274
1275config PAGE_SIZE_16KB
1276 bool "16kB"
Ralf Baechle714bfad2006-05-17 14:04:30 +01001277 depends on !CPU_R3000 && !CPU_TX39XX
Linus Torvalds1da177e2005-04-16 15:20:36 -07001278 help
1279 Using 16kB page size will result in higher performance kernel at
1280 the price of higher memory consumption. This option is available on
Ralf Baechle714bfad2006-05-17 14:04:30 +01001281 all non-R3000 family processors. Note that you will need a suitable
1282 Linux distribution to support this.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001283
1284config PAGE_SIZE_64KB
1285 bool "64kB"
1286 depends on EXPERIMENTAL && !CPU_R3000 && !CPU_TX39XX
1287 help
1288 Using 64kB page size will result in higher performance kernel at
1289 the price of higher memory consumption. This option is available on
1290 all non-R3000 family processor. Not that at the time of this
Ralf Baechle714bfad2006-05-17 14:04:30 +01001291 writing this option is still high experimental.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001292
1293endchoice
1294
1295config BOARD_SCACHE
1296 bool
1297
1298config IP22_CPU_SCACHE
1299 bool
1300 select BOARD_SCACHE
1301
Chris Dearman9318c512006-06-20 17:15:20 +01001302#
1303# Support for a MIPS32 / MIPS64 style S-caches
1304#
1305config MIPS_CPU_SCACHE
1306 bool
1307 select BOARD_SCACHE
1308
Linus Torvalds1da177e2005-04-16 15:20:36 -07001309config R5000_CPU_SCACHE
1310 bool
1311 select BOARD_SCACHE
1312
1313config RM7000_CPU_SCACHE
1314 bool
1315 select BOARD_SCACHE
1316
1317config SIBYTE_DMA_PAGEOPS
1318 bool "Use DMA to clear/copy pages"
1319 depends on CPU_SB1
1320 help
1321 Instead of using the CPU to zero and copy pages, use a Data Mover
1322 channel. These DMA channels are otherwise unused by the standard
1323 SiByte Linux port. Seems to give a small performance benefit.
1324
1325config CPU_HAS_PREFETCH
Ralf Baechlec8094b52005-08-05 14:28:54 +00001326 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001327
Ralf Baechle340ee4b2005-08-17 17:44:08 +00001328choice
1329 prompt "MIPS MT options"
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001330
1331config MIPS_MT_DISABLED
1332 bool "Disable multithreading support."
1333 help
1334 Use this option if your workload can't take advantage of
1335 MIPS hardware multithreading support. On systems that don't have
1336 the option of an MT-enabled processor this option will be the only
1337 option in this menu.
Ralf Baechle340ee4b2005-08-17 17:44:08 +00001338
Ralf Baechle59d6ab82006-10-06 17:36:20 +01001339config MIPS_MT_SMP
1340 bool "Use 1 TC on each available VPE for SMP"
1341 depends on SYS_SUPPORTS_MULTITHREADING
1342 select CPU_MIPSR2_IRQ_VI
Chris Dearmand725cf32007-05-08 14:05:39 +01001343 select CPU_MIPSR2_IRQ_EI
Ralf Baechle59d6ab82006-10-06 17:36:20 +01001344 select CPU_MIPSR2_SRS
1345 select MIPS_MT
Ralf Baechlef510aa32007-03-16 21:58:37 +00001346 select NR_CPUS_DEFAULT_2
Ralf Baechle59d6ab82006-10-06 17:36:20 +01001347 select SMP
1348 select SYS_SUPPORTS_SMP
1349 help
1350 This is a kernel model which is also known a VSMP or lately
1351 has been marketesed into SMVP.
1352
Ralf Baechle41c594a2006-04-05 09:45:45 +01001353config MIPS_MT_SMTC
1354 bool "SMTC: Use all TCs on all VPEs for SMP"
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001355 depends on CPU_MIPS32_R2
1356 #depends on CPU_MIPS64_R2 # once there is hardware ...
1357 depends on SYS_SUPPORTS_MULTITHREADING
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001358 select CPU_MIPSR2_IRQ_VI
Chris Dearmand725cf32007-05-08 14:05:39 +01001359 select CPU_MIPSR2_IRQ_EI
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001360 select CPU_MIPSR2_SRS
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001361 select MIPS_MT
Ralf Baechle130e2fb2007-02-06 16:53:15 +00001362 select NR_CPUS_DEFAULT_8
Ralf Baechle41c594a2006-04-05 09:45:45 +01001363 select SMP
Ralf Baechle73b76c72006-08-15 19:36:40 +01001364 select SYS_SUPPORTS_SMP
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001365 help
1366 This is a kernel model which is known a SMTC or lately has been
1367 marketesed into SMVP.
Ralf Baechle41c594a2006-04-05 09:45:45 +01001368
Ralf Baechlee01402b2005-07-14 15:57:16 +00001369config MIPS_VPE_LOADER
1370 bool "VPE loader support."
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001371 depends on SYS_SUPPORTS_MULTITHREADING
Chris Dearmand725cf32007-05-08 14:05:39 +01001372 select CPU_MIPSR2_IRQ_VI
1373 select CPU_MIPSR2_IRQ_EI
Ralf Baechleb0c10b9f2007-06-01 15:47:46 +01001374 select CPU_MIPSR2_SRS
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001375 select MIPS_MT
Ralf Baechlee01402b2005-07-14 15:57:16 +00001376 help
1377 Includes a loader for loading an elf relocatable object
1378 onto another VPE and running it.
1379
Ralf Baechle340ee4b2005-08-17 17:44:08 +00001380endchoice
1381
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001382config MIPS_MT
1383 bool
1384
1385config SYS_SUPPORTS_MULTITHREADING
1386 bool
1387
Ralf Baechlef088fc82006-04-05 09:45:47 +01001388config MIPS_MT_FPAFF
1389 bool "Dynamic FPU affinity for FP-intensive threads"
1390 depends on MIPS_MT
1391 default y
1392
Ralf Baechleac8be952007-01-20 00:18:01 +00001393config MIPS_MT_SMTC_INSTANT_REPLAY
1394 bool "Low-latency Dispatch of Deferred SMTC IPIs"
Ralf Baechle619af722007-03-26 15:13:57 +01001395 depends on MIPS_MT_SMTC && !PREEMPT
Ralf Baechleac8be952007-01-20 00:18:01 +00001396 default y
1397 help
1398 SMTC pseudo-interrupts between TCs are deferred and queued
1399 if the target TC is interrupt-inhibited (IXMT). In the first
1400 SMTC prototypes, these queued IPIs were serviced on return
1401 to user mode, or on entry into the kernel idle loop. The
1402 INSTANT_REPLAY option dispatches them as part of local_irq_restore()
1403 processing, which adds runtime overhead (hence the option to turn
1404 it off), but ensures that IPIs are handled promptly even under
1405 heavy I/O interrupt load.
1406
Kevin D. Kissell0db34212007-07-12 16:21:08 +01001407config MIPS_MT_SMTC_IM_BACKSTOP
1408 bool "Use per-TC register bits as backstop for inhibited IM bits"
1409 depends on MIPS_MT_SMTC
1410 default y
1411 help
1412 To support multiple TC microthreads acting as "CPUs" within
1413 a VPE, VPE-wide interrupt mask bits must be specially manipulated
1414 during interrupt handling. To support legacy drivers and interrupt
1415 controller management code, SMTC has a "backstop" to track and
1416 if necessary restore the interrupt mask. This has some performance
1417 impact on interrupt service overhead. Disable it only if you know
1418 what you are doing.
1419
Ralf Baechlee01402b2005-07-14 15:57:16 +00001420config MIPS_VPE_LOADER_TOM
1421 bool "Load VPE program into memory hidden from linux"
1422 depends on MIPS_VPE_LOADER
1423 default y
1424 help
1425 The loader can use memory that is present but has been hidden from
1426 Linux using the kernel command line option "mem=xxMB". It's up to
1427 you to ensure the amount you put in the option and the space your
1428 program requires is less or equal to the amount physically present.
1429
1430# this should possibly be in drivers/char, but it is rather cpu related. Hmmm
1431config MIPS_VPE_APSP_API
Ralf Baechle5e83d432005-10-29 19:32:41 +01001432 bool "Enable support for AP/SP API (RTLX)"
1433 depends on MIPS_VPE_LOADER
1434 help
Ralf Baechlee01402b2005-07-14 15:57:16 +00001435
Ralf Baechle26009902006-04-05 09:45:45 +01001436config MIPS_APSP_KSPD
1437 bool "Enable KSPD"
1438 depends on MIPS_VPE_APSP_API
1439 default y
1440 help
1441 KSPD is a kernel daemon that accepts syscall requests from the SP
1442 side, actions them and returns the results. It also handles the
1443 "exit" syscall notifying other kernel modules the SP program is
1444 exiting. You probably want to say yes here.
1445
Linus Torvalds1da177e2005-04-16 15:20:36 -07001446config SB1_PASS_1_WORKAROUNDS
1447 bool
1448 depends on CPU_SB1_PASS_1
1449 default y
1450
1451config SB1_PASS_2_WORKAROUNDS
1452 bool
1453 depends on CPU_SB1 && (CPU_SB1_PASS_2_2 || CPU_SB1_PASS_2)
1454 default y
1455
1456config SB1_PASS_2_1_WORKAROUNDS
1457 bool
1458 depends on CPU_SB1 && CPU_SB1_PASS_2
1459 default y
1460
1461config 64BIT_PHYS_ADDR
1462 bool "Support for 64-bit physical address space"
Ralf Baechle948928a2005-12-23 02:16:44 +01001463 depends on (CPU_R4X00 || CPU_R5000 || CPU_RM7000 || CPU_RM9000 || CPU_R10000 || CPU_SB1 || CPU_MIPS32 || CPU_MIPS64) && 32BIT
Linus Torvalds1da177e2005-04-16 15:20:36 -07001464
Linus Torvalds1da177e2005-04-16 15:20:36 -07001465config CPU_HAS_LLSC
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001466 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001467
Franck Bui-Huu9693a852007-02-02 17:41:47 +01001468config CPU_HAS_SMARTMIPS
1469 depends on SYS_SUPPORTS_SMARTMIPS
1470 bool "Support for the SmartMIPS ASE"
1471 help
1472 SmartMIPS is a extension of the MIPS32 architecture aimed at
1473 increased security at both hardware and software level for
1474 smartcards. Enabling this option will allow proper use of the
1475 SmartMIPS instructions by Linux applications. However a kernel with
1476 this option will not work on a MIPS core without SmartMIPS core. If
1477 you don't know you probably don't have SmartMIPS and should say N
1478 here.
1479
Linus Torvalds1da177e2005-04-16 15:20:36 -07001480config CPU_HAS_WB
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001481 bool
Ralf Baechlee01402b2005-07-14 15:57:16 +00001482
Fuxin Zhang2a21c732007-06-06 14:52:43 +08001483config 64BIT_CONTEXT
1484 bool "Save 64bit integer registers"
1485 depends on 32BIT && CPU_LOONGSON2
1486 help
1487 Loongson2 CPU is 64bit , when used in 32BIT mode, its integer
1488 registers can still be accessed as 64bit, mainly for multimedia
1489 instructions. We must have all 64bit save/restored to make sure
1490 those instructions to get correct result.
1491
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001492#
1493# Vectored interrupt mode is an R2 feature
1494#
Ralf Baechlee01402b2005-07-14 15:57:16 +00001495config CPU_MIPSR2_IRQ_VI
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001496 bool
Ralf Baechlee01402b2005-07-14 15:57:16 +00001497
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001498#
1499# Extended interrupt mode is an R2 feature
1500#
Ralf Baechlee01402b2005-07-14 15:57:16 +00001501config CPU_MIPSR2_IRQ_EI
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001502 bool
Ralf Baechlee01402b2005-07-14 15:57:16 +00001503
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001504#
1505# Shadow registers are an R2 feature
1506#
Ralf Baechlee01402b2005-07-14 15:57:16 +00001507config CPU_MIPSR2_SRS
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001508 bool
Ralf Baechlee01402b2005-07-14 15:57:16 +00001509
Linus Torvalds1da177e2005-04-16 15:20:36 -07001510config CPU_HAS_SYNC
1511 bool
1512 depends on !CPU_R3000
1513 default y
1514
1515#
Ralf Baechle797798c2005-08-10 15:17:11 +00001516# Use the generic interrupt handling code in kernel/irq/:
1517#
1518config GENERIC_HARDIRQS
1519 bool
1520 default y
1521
1522config GENERIC_IRQ_PROBE
1523 bool
1524 default y
1525
Ingo Molnar0d7012a2006-06-29 02:24:43 -07001526config IRQ_PER_CPU
Ingo Molnar0d7012a2006-06-29 02:24:43 -07001527 bool
Ingo Molnar0d7012a2006-06-29 02:24:43 -07001528
Ralf Baechle797798c2005-08-10 15:17:11 +00001529#
Linus Torvalds1da177e2005-04-16 15:20:36 -07001530# - Highmem only makes sense for the 32-bit kernel.
1531# - The current highmem code will only work properly on physically indexed
1532# caches such as R3000, SB1, R7000 or those that look like they're virtually
1533# indexed such as R4000/R4400 SC and MC versions or R10000. So for the
1534# moment we protect the user and offer the highmem option only on machines
1535# where it's known to be safe. This will not offer highmem on a few systems
1536# such as MIPS32 and MIPS64 CPUs which may have virtual and physically
1537# indexed CPUs but we're playing safe.
Ralf Baechle797798c2005-08-10 15:17:11 +00001538# - We use SYS_SUPPORTS_HIGHMEM to offer highmem only for systems where we
1539# know they might have memory configurations that could make use of highmem
1540# support.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001541#
1542config HIGHMEM
1543 bool "High Memory Support"
Ralf Baechle797798c2005-08-10 15:17:11 +00001544 depends on 32BIT && CPU_SUPPORTS_HIGHMEM && SYS_SUPPORTS_HIGHMEM
1545
1546config CPU_SUPPORTS_HIGHMEM
1547 bool
1548
1549config SYS_SUPPORTS_HIGHMEM
1550 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001551
Franck Bui-Huu9693a852007-02-02 17:41:47 +01001552config SYS_SUPPORTS_SMARTMIPS
1553 bool
1554
Yoichi Yuasab4819b52005-06-25 14:54:31 -07001555config ARCH_FLATMEM_ENABLE
1556 def_bool y
1557 depends on !NUMA
1558
Ralf Baechled8cb4e12006-06-11 23:03:08 +01001559config ARCH_DISCONTIGMEM_ENABLE
1560 bool
1561 default y if SGI_IP27
1562 help
David Sterba3dde6ad2007-05-09 07:12:20 +02001563 Say Y to support efficient handling of discontiguous physical memory,
Ralf Baechled8cb4e12006-06-11 23:03:08 +01001564 for architectures which are either NUMA (Non-Uniform Memory Access)
1565 or have huge holes in the physical address space for other reasons.
1566 See <file:Documentation/vm/numa> for more.
1567
Atsushi Nemotob1c6cd42006-07-03 00:09:47 +09001568config ARCH_SPARSEMEM_ENABLE
1569 bool
Atsushi Nemoto7de58fa2006-07-05 01:22:44 +09001570 select SPARSEMEM_STATIC
Atsushi Nemoto31473742006-07-03 00:09:47 +09001571
Ralf Baechled8cb4e12006-06-11 23:03:08 +01001572config NUMA
1573 bool "NUMA Support"
1574 depends on SYS_SUPPORTS_NUMA
1575 help
1576 Say Y to compile the kernel to support NUMA (Non-Uniform Memory
1577 Access). This option improves performance on systems with more
1578 than two nodes; on two node systems it is generally better to
1579 leave it disabled; on single node systems disable this option
1580 disabled.
1581
1582config SYS_SUPPORTS_NUMA
1583 bool
1584
Yasunori Gotoc80d79d2006-04-10 22:53:53 -07001585config NODES_SHIFT
1586 int
1587 default "6"
1588 depends on NEED_MULTIPLE_NODES
1589
Yoichi Yuasab4819b52005-06-25 14:54:31 -07001590source "mm/Kconfig"
1591
Linus Torvalds1da177e2005-04-16 15:20:36 -07001592config SMP
1593 bool "Multi-Processing support"
Ralf Baechlee73ea272006-06-04 11:51:46 +01001594 depends on SYS_SUPPORTS_SMP
Ralf Baechleb4b30a52006-08-03 17:34:24 +01001595 select IRQ_PER_CPU
Ralf Baechlee73ea272006-06-04 11:51:46 +01001596 help
Linus Torvalds1da177e2005-04-16 15:20:36 -07001597 This enables support for systems with more than one CPU. If you have
1598 a system with only one CPU, like most personal computers, say N. If
1599 you have a system with more than one CPU, say Y.
1600
1601 If you say N here, the kernel will run on single and multiprocessor
1602 machines, but will use only one CPU of a multiprocessor machine. If
1603 you say Y here, the kernel will run on many, but not all,
1604 singleprocessor machines. On a singleprocessor machine, the kernel
1605 will run faster if you say N here.
1606
1607 People using multiprocessor machines who say Y here should also say
1608 Y to "Enhanced Real Time Clock Support", below.
1609
1610 See also the <file:Documentation/smp.txt> and the SMP-HOWTO
1611 available at <http://www.tldp.org/docs.html#howto>.
1612
1613 If you don't know what to do here, say N.
1614
Ralf Baechlee73ea272006-06-04 11:51:46 +01001615config SYS_SUPPORTS_SMP
1616 bool
1617
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09001618config NR_CPUS_DEFAULT_1
1619 bool
1620
Ralf Baechle130e2fb2007-02-06 16:53:15 +00001621config NR_CPUS_DEFAULT_2
1622 bool
1623
1624config NR_CPUS_DEFAULT_4
1625 bool
1626
1627config NR_CPUS_DEFAULT_8
1628 bool
1629
1630config NR_CPUS_DEFAULT_16
1631 bool
1632
1633config NR_CPUS_DEFAULT_32
1634 bool
1635
1636config NR_CPUS_DEFAULT_64
1637 bool
1638
Linus Torvalds1da177e2005-04-16 15:20:36 -07001639config NR_CPUS
1640 int "Maximum number of CPUs (2-64)"
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09001641 range 1 64 if NR_CPUS_DEFAULT_1
Linus Torvalds1da177e2005-04-16 15:20:36 -07001642 depends on SMP
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09001643 default "1" if NR_CPUS_DEFAULT_1
Ralf Baechle130e2fb2007-02-06 16:53:15 +00001644 default "2" if NR_CPUS_DEFAULT_2
1645 default "4" if NR_CPUS_DEFAULT_4
1646 default "8" if NR_CPUS_DEFAULT_8
1647 default "16" if NR_CPUS_DEFAULT_16
1648 default "32" if NR_CPUS_DEFAULT_32
1649 default "64" if NR_CPUS_DEFAULT_64
Linus Torvalds1da177e2005-04-16 15:20:36 -07001650 help
1651 This allows you to specify the maximum number of CPUs which this
1652 kernel will support. The maximum supported value is 32 for 32-bit
1653 kernel and 64 for 64-bit kernels; the minimum value which makes
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09001654 sense is 1 for Qemu (useful only for kernel debugging purposes)
1655 and 2 for all others.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001656
1657 This is purely to save memory - each supported CPU adds
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09001658 approximately eight kilobytes to the kernel image. For best
1659 performance should round up your number of processors to the next
1660 power of two.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001661
Atsushi Nemoto1723b4a2006-06-20 00:19:13 +09001662#
1663# Timer Interrupt Frequency Configuration
1664#
1665
1666choice
1667 prompt "Timer frequency"
1668 default HZ_250
1669 help
1670 Allows the configuration of the timer frequency.
1671
1672 config HZ_48
1673 bool "48 HZ" if SYS_SUPPORTS_48HZ
1674
1675 config HZ_100
1676 bool "100 HZ" if SYS_SUPPORTS_100HZ || SYS_SUPPORTS_ARBIT_HZ
1677
1678 config HZ_128
1679 bool "128 HZ" if SYS_SUPPORTS_128HZ || SYS_SUPPORTS_ARBIT_HZ
1680
1681 config HZ_250
1682 bool "250 HZ" if SYS_SUPPORTS_250HZ || SYS_SUPPORTS_ARBIT_HZ
1683
1684 config HZ_256
1685 bool "256 HZ" if SYS_SUPPORTS_256HZ || SYS_SUPPORTS_ARBIT_HZ
1686
1687 config HZ_1000
1688 bool "1000 HZ" if SYS_SUPPORTS_1000HZ || SYS_SUPPORTS_ARBIT_HZ
1689
1690 config HZ_1024
1691 bool "1024 HZ" if SYS_SUPPORTS_1024HZ || SYS_SUPPORTS_ARBIT_HZ
1692
1693endchoice
1694
1695config SYS_SUPPORTS_48HZ
1696 bool
1697
1698config SYS_SUPPORTS_100HZ
1699 bool
1700
1701config SYS_SUPPORTS_128HZ
1702 bool
1703
1704config SYS_SUPPORTS_250HZ
1705 bool
1706
1707config SYS_SUPPORTS_256HZ
1708 bool
1709
1710config SYS_SUPPORTS_1000HZ
1711 bool
1712
1713config SYS_SUPPORTS_1024HZ
1714 bool
1715
1716config SYS_SUPPORTS_ARBIT_HZ
1717 bool
1718 default y if !SYS_SUPPORTS_48HZ && !SYS_SUPPORTS_100HZ && \
1719 !SYS_SUPPORTS_128HZ && !SYS_SUPPORTS_250HZ && \
1720 !SYS_SUPPORTS_256HZ && !SYS_SUPPORTS_1000HZ && \
1721 !SYS_SUPPORTS_1024HZ
1722
1723config HZ
1724 int
1725 default 48 if HZ_48
1726 default 100 if HZ_100
1727 default 128 if HZ_128
1728 default 250 if HZ_250
1729 default 256 if HZ_256
1730 default 1000 if HZ_1000
1731 default 1024 if HZ_1024
1732
Ralf Baechlee80de852005-07-11 20:45:51 +00001733source "kernel/Kconfig.preempt"
Linus Torvalds1da177e2005-04-16 15:20:36 -07001734
Linus Torvalds1da177e2005-04-16 15:20:36 -07001735config MIPS_INSANE_LARGE
1736 bool "Support for large 64-bit configurations"
Ralf Baechle875d43e2005-09-03 15:56:16 -07001737 depends on CPU_R10000 && 64BIT
Linus Torvalds1da177e2005-04-16 15:20:36 -07001738 help
1739 MIPS R10000 does support a 44 bit / 16TB address space as opposed to
1740 previous 64-bit processors which only supported 40 bit / 1TB. If you
1741 need processes of more than 1TB virtual address space, say Y here.
1742 This will result in additional memory usage, so it is not
1743 recommended for normal users.
1744
Atsushi Nemotoea6e9422007-01-16 23:29:11 +09001745config KEXEC
1746 bool "Kexec system call (EXPERIMENTAL)"
1747 depends on EXPERIMENTAL
1748 help
1749 kexec is a system call that implements the ability to shutdown your
1750 current kernel, and to start another kernel. It is like a reboot
David Sterba3dde6ad2007-05-09 07:12:20 +02001751 but it is independent of the system firmware. And like a reboot
Atsushi Nemotoea6e9422007-01-16 23:29:11 +09001752 you can start any kernel with it, not just Linux.
1753
1754 The name comes from the similiarity to the exec system call.
1755
1756 It is an ongoing process to be certain the hardware in a machine
1757 is properly shutdown, so do not be surprised if this code does not
1758 initially work for you. It may help to enable device hotplugging
1759 support. As of this writing the exact hardware interface is
1760 strongly in flux, so no good recommendation can be made.
1761
1762config SECCOMP
1763 bool "Enable seccomp to safely compute untrusted bytecode"
1764 depends on PROC_FS && BROKEN
1765 default y
1766 help
1767 This kernel feature is useful for number crunching applications
1768 that may need to compute untrusted bytecode during their
1769 execution. By using pipes or other transports made available to
1770 the process as file descriptors supporting the read/write
1771 syscalls, it's possible to isolate those applications in
1772 their own address space using seccomp. Once seccomp is
1773 enabled via /proc/<pid>/seccomp, it cannot be disabled
1774 and the task is only allowed to execute a few safe syscalls
1775 defined by each seccomp mode.
1776
1777 If unsure, say Y. Only embedded should say N here.
1778
Ralf Baechle5e83d432005-10-29 19:32:41 +01001779endmenu
1780
Linus Torvalds1da177e2005-04-16 15:20:36 -07001781config RWSEM_GENERIC_SPINLOCK
1782 bool
1783 default y
1784
Atsushi Nemoto1df0f0f2006-09-26 23:44:01 +09001785config LOCKDEP_SUPPORT
1786 bool
1787 default y
1788
1789config STACKTRACE_SUPPORT
1790 bool
1791 default y
1792
Ralf Baechleb6c35392005-11-25 11:35:40 +00001793source "init/Kconfig"
1794
Linus Torvalds1da177e2005-04-16 15:20:36 -07001795menu "Bus options (PCI, PCMCIA, EISA, ISA, TC)"
1796
Ralf Baechle5e83d432005-10-29 19:32:41 +01001797config HW_HAS_EISA
1798 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001799config HW_HAS_PCI
1800 bool
1801
1802config PCI
1803 bool "Support for PCI controller"
1804 depends on HW_HAS_PCI
1805 help
1806 Find out whether you have a PCI motherboard. PCI is the name of a
1807 bus system, i.e. the way the CPU talks to the other stuff inside
1808 your box. Other bus systems are ISA, EISA, or VESA. If you have PCI,
1809 say Y, otherwise N.
1810
1811 The PCI-HOWTO, available from
1812 <http://www.tldp.org/docs.html#howto>, contains valuable
1813 information about which PCI hardware does work under Linux and which
1814 doesn't.
1815
1816config PCI_DOMAINS
1817 bool
1818 depends on PCI
1819
1820source "drivers/pci/Kconfig"
1821
1822#
1823# ISA support is now enabled via select. Too many systems still have the one
1824# or other ISA chip on the board that users don't know about so don't expect
1825# users to choose the right thing ...
1826#
1827config ISA
1828 bool
1829
1830config EISA
1831 bool "EISA support"
Ralf Baechle5e83d432005-10-29 19:32:41 +01001832 depends on HW_HAS_EISA
Linus Torvalds1da177e2005-04-16 15:20:36 -07001833 select ISA
Ralf Baechleaa414df2006-11-30 01:14:51 +00001834 select GENERIC_ISA_DMA
Linus Torvalds1da177e2005-04-16 15:20:36 -07001835 ---help---
1836 The Extended Industry Standard Architecture (EISA) bus was
1837 developed as an open alternative to the IBM MicroChannel bus.
1838
1839 The EISA bus provided some of the features of the IBM MicroChannel
1840 bus while maintaining backward compatibility with cards made for
1841 the older ISA bus. The EISA bus saw limited use between 1988 and
1842 1995 when it was made obsolete by the PCI bus.
1843
1844 Say Y here if you are building a kernel for an EISA-based machine.
1845
1846 Otherwise, say N.
1847
1848source "drivers/eisa/Kconfig"
1849
1850config TC
1851 bool "TURBOchannel support"
1852 depends on MACH_DECSTATION
1853 help
1854 TurboChannel is a DEC (now Compaq (now HP)) bus for Alpha and MIPS
1855 processors. Documentation on writing device drivers for TurboChannel
1856 is available at:
1857 <http://www.cs.arizona.edu/computer.help/policy/DIGITAL_unix/AA-PS3HD-TET1_html/TITLE.html>.
1858
1859#config ACCESSBUS
1860# bool "Access.Bus support"
1861# depends on TC
1862
1863config MMU
1864 bool
1865 default y
1866
Ralf Baechlede61b542007-07-12 17:41:23 +01001867config PCSPEAKER
Michael Neulinge5c6c8e2006-03-14 00:11:50 -05001868 bool
1869
Linus Torvalds1da177e2005-04-16 15:20:36 -07001870source "drivers/pcmcia/Kconfig"
1871
1872source "drivers/pci/hotplug/Kconfig"
1873
1874endmenu
1875
1876menu "Executable file formats"
1877
1878source "fs/Kconfig.binfmt"
1879
1880config TRAD_SIGNALS
1881 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001882
1883config BUILD_ELF64
1884 bool "Use 64-bit ELF format for building"
Ralf Baechle875d43e2005-09-03 15:56:16 -07001885 depends on 64BIT
Linus Torvalds1da177e2005-04-16 15:20:36 -07001886 help
1887 A 64-bit kernel is usually built using the 64-bit ELF binary object
1888 format as it's one that allows arbitrary 64-bit constructs. For
1889 kernels that are loaded within the KSEG compatibility segments the
1890 32-bit ELF format can optionally be used resulting in a somewhat
1891 smaller binary, but this option is not explicitly supported by the
1892 toolchain and since binutils 2.14 it does not even work at all.
1893
1894 Say Y to use the 64-bit format or N to use the 32-bit one.
1895
1896 If unsure say Y.
1897
1898config BINFMT_IRIX
1899 bool "Include IRIX binary compatibility"
Ralf Baechle5e83d432005-10-29 19:32:41 +01001900 depends on CPU_BIG_ENDIAN && 32BIT && BROKEN
Linus Torvalds1da177e2005-04-16 15:20:36 -07001901
1902config MIPS32_COMPAT
1903 bool "Kernel support for Linux/MIPS 32-bit binary compatibility"
Ralf Baechle875d43e2005-09-03 15:56:16 -07001904 depends on 64BIT
Linus Torvalds1da177e2005-04-16 15:20:36 -07001905 help
1906 Select this option if you want Linux/MIPS 32-bit binary
1907 compatibility. Since all software available for Linux/MIPS is
1908 currently 32-bit you should say Y here.
1909
1910config COMPAT
1911 bool
1912 depends on MIPS32_COMPAT
1913 default y
1914
Atsushi Nemoto05e43962006-11-07 18:02:44 +09001915config SYSVIPC_COMPAT
1916 bool
1917 depends on COMPAT && SYSVIPC
1918 default y
1919
Linus Torvalds1da177e2005-04-16 15:20:36 -07001920config MIPS32_O32
1921 bool "Kernel support for o32 binaries"
1922 depends on MIPS32_COMPAT
1923 help
1924 Select this option if you want to run o32 binaries. These are pure
1925 32-bit binaries as used by the 32-bit Linux/MIPS port. Most of
1926 existing binaries are in this format.
1927
1928 If unsure, say Y.
1929
1930config MIPS32_N32
1931 bool "Kernel support for n32 binaries"
1932 depends on MIPS32_COMPAT
1933 help
1934 Select this option if you want to run n32 binaries. These are
1935 64-bit binaries using 32-bit quantities for addressing and certain
1936 data that would normally be 64-bit. They are used in special
1937 cases.
1938
1939 If unsure, say N.
1940
1941config BINFMT_ELF32
1942 bool
1943 default y if MIPS32_O32 || MIPS32_N32
1944
Ralf Baechle21162452007-02-09 17:08:58 +00001945endmenu
Linus Torvalds1da177e2005-04-16 15:20:36 -07001946
Ralf Baechle21162452007-02-09 17:08:58 +00001947menu "Power management options"
Rodolfo Giometti952fa952006-06-05 17:43:10 +02001948
Ralf Baechle21162452007-02-09 17:08:58 +00001949source "kernel/power/Kconfig"
Rodolfo Giometti952fa952006-06-05 17:43:10 +02001950
Linus Torvalds1da177e2005-04-16 15:20:36 -07001951endmenu
1952
Sam Ravnborgd5950b42005-07-11 21:03:49 -07001953source "net/Kconfig"
1954
Linus Torvalds1da177e2005-04-16 15:20:36 -07001955source "drivers/Kconfig"
1956
1957source "fs/Kconfig"
1958
Ralf Baechle5e83d432005-10-29 19:32:41 +01001959source "arch/mips/oprofile/Kconfig"
1960
Linus Torvalds1da177e2005-04-16 15:20:36 -07001961source "arch/mips/Kconfig.debug"
1962
1963source "security/Kconfig"
1964
1965source "crypto/Kconfig"
1966
1967source "lib/Kconfig"