blob: 24661d60bc8ff57699db97e74fec8c074cd2f05f [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
Michael Neulinge5c6c8e2006-03-14 00:11:50 -0500120 select I8253
Ralf Baechle5e83d432005-10-29 19:32:41 +0100121 select I8259
122 select ISA
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
134config LASAT
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200135 bool "LASAT Networks platforms"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100136 select DMA_NONCOHERENT
Ralf Baechle36a88532007-03-01 11:56:43 +0000137 select SYS_HAS_EARLY_PRINTK
Ralf Baechle5e83d432005-10-29 19:32:41 +0100138 select HW_HAS_PCI
Yoichi Yuasa252161e2007-03-14 21:51:26 +0900139 select PCI_GT64XXX_PCI0
Ralf Baechle5e83d432005-10-29 19:32:41 +0100140 select MIPS_NILE4
141 select R5000_CPU_SCACHE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100142 select SYS_HAS_CPU_R5000
Ralf Baechle5e83d432005-10-29 19:32:41 +0100143 select SYS_SUPPORTS_32BIT_KERNEL
Ralf Baechle080e9482007-03-13 08:59:54 +0000144 select SYS_SUPPORTS_64BIT_KERNEL if BROKEN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100145 select SYS_SUPPORTS_LITTLE_ENDIAN
Franck Bui-Huue77c2322006-12-01 18:22:27 +0100146 select GENERIC_HARDIRQS_NO__DO_IRQ
Linus Torvalds1da177e2005-04-16 15:20:36 -0700147
148config MIPS_ATLAS
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200149 bool "MIPS Atlas board"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700150 select BOOT_ELF32
151 select DMA_NONCOHERENT
Ralf Baechle36a88532007-03-01 11:56:43 +0000152 select SYS_HAS_EARLY_PRINTK
Ralf Baechle5e83d432005-10-29 19:32:41 +0100153 select IRQ_CPU
Linus Torvalds1da177e2005-04-16 15:20:36 -0700154 select HW_HAS_PCI
Ralf Baechle5e83d432005-10-29 19:32:41 +0100155 select MIPS_BOARDS_GEN
156 select MIPS_BONITO64
Yoichi Yuasa252161e2007-03-14 21:51:26 +0900157 select PCI_GT64XXX_PCI0
Ralf Baechle5e83d432005-10-29 19:32:41 +0100158 select MIPS_MSC
Maciej W. Rozyckif4b7cdb2005-02-12 04:31:49 +0000159 select RM7000_CPU_SCACHE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700160 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100161 select SYS_HAS_CPU_MIPS32_R1
162 select SYS_HAS_CPU_MIPS32_R2
163 select SYS_HAS_CPU_MIPS64_R1
164 select SYS_HAS_CPU_NEVADA
165 select SYS_HAS_CPU_RM7000
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700166 select SYS_SUPPORTS_32BIT_KERNEL
167 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100168 select SYS_SUPPORTS_BIG_ENDIAN
169 select SYS_SUPPORTS_LITTLE_ENDIAN
Ralf Baechlef41ae0b2006-06-05 17:24:46 +0100170 select SYS_SUPPORTS_MULTITHREADING if EXPERIMENTAL
Franck Bui-Huu9693a852007-02-02 17:41:47 +0100171 select SYS_SUPPORTS_SMARTMIPS
Franck Bui-Huue77c2322006-12-01 18:22:27 +0100172 select GENERIC_HARDIRQS_NO__DO_IRQ
Linus Torvalds1da177e2005-04-16 15:20:36 -0700173 help
Maciej W. Rozyckif638d192005-02-02 22:23:46 +0000174 This enables support for the MIPS Technologies Atlas evaluation
Linus Torvalds1da177e2005-04-16 15:20:36 -0700175 board.
176
177config MIPS_MALTA
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200178 bool "MIPS Malta board"
Ralf Baechle61ed2422005-09-15 08:52:34 +0000179 select ARCH_MAY_HAVE_PC_FDC
Linus Torvalds1da177e2005-04-16 15:20:36 -0700180 select BOOT_ELF32
Linus Torvalds1da177e2005-04-16 15:20:36 -0700181 select DMA_NONCOHERENT
182 select GENERIC_ISA_DMA
Ralf Baechleaa414df2006-11-30 01:14:51 +0000183 select IRQ_CPU
Linus Torvalds1da177e2005-04-16 15:20:36 -0700184 select HW_HAS_PCI
185 select I8259
Ralf Baechle5e83d432005-10-29 19:32:41 +0100186 select MIPS_BOARDS_GEN
187 select MIPS_BONITO64
Chris Dearman9318c512006-06-20 17:15:20 +0100188 select MIPS_CPU_SCACHE
Yoichi Yuasa252161e2007-03-14 21:51:26 +0900189 select PCI_GT64XXX_PCI0
Ralf Baechle5e83d432005-10-29 19:32:41 +0100190 select MIPS_MSC
Linus Torvalds1da177e2005-04-16 15:20:36 -0700191 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100192 select SYS_HAS_CPU_MIPS32_R1
193 select SYS_HAS_CPU_MIPS32_R2
194 select SYS_HAS_CPU_MIPS64_R1
195 select SYS_HAS_CPU_NEVADA
196 select SYS_HAS_CPU_RM7000
Ralf Baechle36a88532007-03-01 11:56:43 +0000197 select SYS_HAS_EARLY_PRINTK
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700198 select SYS_SUPPORTS_32BIT_KERNEL
199 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100200 select SYS_SUPPORTS_BIG_ENDIAN
201 select SYS_SUPPORTS_LITTLE_ENDIAN
Ralf Baechlef41ae0b2006-06-05 17:24:46 +0100202 select SYS_SUPPORTS_MULTITHREADING
Franck Bui-Huu9693a852007-02-02 17:41:47 +0100203 select SYS_SUPPORTS_SMARTMIPS
Linus Torvalds1da177e2005-04-16 15:20:36 -0700204 help
Maciej W. Rozyckif638d192005-02-02 22:23:46 +0000205 This enables support for the MIPS Technologies Malta evaluation
Linus Torvalds1da177e2005-04-16 15:20:36 -0700206 board.
207
208config MIPS_SEAD
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200209 bool "MIPS SEAD board (EXPERIMENTAL)"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700210 depends on EXPERIMENTAL
211 select IRQ_CPU
212 select DMA_NONCOHERENT
Ralf Baechle36a88532007-03-01 11:56:43 +0000213 select SYS_HAS_EARLY_PRINTK
Ralf Baechle5e83d432005-10-29 19:32:41 +0100214 select MIPS_BOARDS_GEN
Ralf Baechle7cf80532005-10-20 22:33:09 +0100215 select SYS_HAS_CPU_MIPS32_R1
216 select SYS_HAS_CPU_MIPS32_R2
217 select SYS_HAS_CPU_MIPS64_R1
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700218 select SYS_SUPPORTS_32BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100219 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
220 select SYS_SUPPORTS_BIG_ENDIAN
221 select SYS_SUPPORTS_LITTLE_ENDIAN
Franck Bui-Huu9693a852007-02-02 17:41:47 +0100222 select SYS_SUPPORTS_SMARTMIPS
Maciej W. Rozyckif638d192005-02-02 22:23:46 +0000223 help
224 This enables support for the MIPS Technologies SEAD evaluation
225 board.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700226
Mark.Zhana240a462006-05-06 17:04:20 +0800227config WR_PPMC
Mark.Zhan92478572006-06-20 18:15:02 +0800228 bool "Wind River PPMC board"
Mark.Zhana240a462006-05-06 17:04:20 +0800229 select IRQ_CPU
230 select BOOT_ELF32
231 select DMA_NONCOHERENT
232 select HW_HAS_PCI
Yoichi Yuasa252161e2007-03-14 21:51:26 +0900233 select PCI_GT64XXX_PCI0
Mark.Zhana240a462006-05-06 17:04:20 +0800234 select SWAP_IO_SPACE
235 select SYS_HAS_CPU_MIPS32_R1
236 select SYS_HAS_CPU_MIPS32_R2
237 select SYS_HAS_CPU_MIPS64_R1
238 select SYS_HAS_CPU_NEVADA
239 select SYS_HAS_CPU_RM7000
240 select SYS_SUPPORTS_32BIT_KERNEL
241 select SYS_SUPPORTS_64BIT_KERNEL
242 select SYS_SUPPORTS_BIG_ENDIAN
243 select SYS_SUPPORTS_LITTLE_ENDIAN
244 help
245 This enables support for the Wind River MIPS32 4KC PPMC evaluation
246 board, which is based on GT64120 bridge chip.
247
Ralf Baechlec78cbf42005-09-30 13:59:37 +0100248config MIPS_SIM
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200249 bool 'MIPS simulator (MIPSsim)'
Ralf Baechlec78cbf42005-09-30 13:59:37 +0100250 select DMA_NONCOHERENT
Ralf Baechle36a88532007-03-01 11:56:43 +0000251 select SYS_HAS_EARLY_PRINTK
Ralf Baechlec78cbf42005-09-30 13:59:37 +0100252 select IRQ_CPU
Marc St-Jean9267a302007-06-14 15:55:31 -0600253 select BOOT_RAW
Ralf Baechle7cf80532005-10-20 22:33:09 +0100254 select SYS_HAS_CPU_MIPS32_R1
255 select SYS_HAS_CPU_MIPS32_R2
Ralf Baechle36a88532007-03-01 11:56:43 +0000256 select SYS_HAS_EARLY_PRINTK
Ralf Baechlec78cbf42005-09-30 13:59:37 +0100257 select SYS_SUPPORTS_32BIT_KERNEL
258 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechlef6e23732007-07-10 17:32:56 +0100259 select SYS_SUPPORTS_MULTITHREADING
Ralf Baechlec78cbf42005-09-30 13:59:37 +0100260 select SYS_SUPPORTS_LITTLE_ENDIAN
261 help
262 This option enables support for MIPS Technologies MIPSsim software
263 emulator.
264
Ralf Baechle5e83d432005-10-29 19:32:41 +0100265config MOMENCO_OCELOT
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200266 bool "Momentum Ocelot board"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100267 select DMA_NONCOHERENT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700268 select HW_HAS_PCI
269 select IRQ_CPU
270 select IRQ_CPU_RM7K
Yoichi Yuasa252161e2007-03-14 21:51:26 +0900271 select PCI_GT64XXX_PCI0
Ralf Baechle5e83d432005-10-29 19:32:41 +0100272 select RM7000_CPU_SCACHE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700273 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100274 select SYS_HAS_CPU_RM7000
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700275 select SYS_SUPPORTS_32BIT_KERNEL
276 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100277 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechlecc801072007-02-17 02:58:39 +0000278 select SYS_SUPPORTS_KGDB
Linus Torvalds1da177e2005-04-16 15:20:36 -0700279 help
Ralf Baechle5e83d432005-10-29 19:32:41 +0100280 The Ocelot is a MIPS-based Single Board Computer (SBC) made by
281 Momentum Computer <http://www.momenco.com/>.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700282
Ralf Baechle5e83d432005-10-29 19:32:41 +0100283config MOMENCO_OCELOT_3
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200284 bool "Momentum Ocelot-3 board"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100285 select BOOT_ELF32
286 select DMA_NONCOHERENT
287 select HW_HAS_PCI
288 select IRQ_CPU
289 select IRQ_CPU_RM7K
290 select IRQ_MV64340
291 select PCI_MARVELL
292 select RM7000_CPU_SCACHE
293 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100294 select SYS_HAS_CPU_RM9000
Ralf Baechle5e83d432005-10-29 19:32:41 +0100295 select SYS_SUPPORTS_32BIT_KERNEL
296 select SYS_SUPPORTS_64BIT_KERNEL
297 select SYS_SUPPORTS_BIG_ENDIAN
298 help
299 The Ocelot-3 is based off Discovery III System Controller and
300 PMC-Sierra Rm79000 core.
301
Pete Popovbdf21b12005-07-14 17:47:57 +0000302config PNX8550_JBS
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200303 bool "Philips PNX8550 based JBS board"
Pete Popovbdf21b12005-07-14 17:47:57 +0000304 select PNX8550
305 select SYS_SUPPORTS_LITTLE_ENDIAN
306
Vitaly Woolf0647a52006-12-08 11:40:35 +0300307config PNX8550_STB810
Yoichi Yuasae460b732007-05-28 22:54:28 +0900308 bool "Philips PNX8550 based STB810 board"
Vitaly Woolf0647a52006-12-08 11:40:35 +0300309 select PNX8550
310 select SYS_SUPPORTS_LITTLE_ENDIAN
311
Linus Torvalds1da177e2005-04-16 15:20:36 -0700312config DDB5477
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200313 bool "NEC DDB Vrc-5477"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100314 select DDB5XXX_COMMON
Linus Torvalds1da177e2005-04-16 15:20:36 -0700315 select DMA_NONCOHERENT
316 select HW_HAS_PCI
317 select I8259
318 select IRQ_CPU
Ralf Baechle7cf80532005-10-20 22:33:09 +0100319 select SYS_HAS_CPU_R5432
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700320 select SYS_SUPPORTS_32BIT_KERNEL
321 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
Ralf Baechlecc801072007-02-17 02:58:39 +0000322 select SYS_SUPPORTS_KGDB
323 select SYS_SUPPORTS_KGDB
Ralf Baechle5e83d432005-10-29 19:32:41 +0100324 select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700325 help
326 This enables support for the R5432-based NEC DDB Vrc-5477,
327 or Rockhopper/SolutionGear boards with R5432/R5500 CPUs.
328
329 Features : kernel debugging, serial terminal, NFS root fs, on-board
330 ether port USB, AC97, PCI, etc.
331
Ralf Baechle5e83d432005-10-29 19:32:41 +0100332config MACH_VR41XX
Yoichi Yuasa74142d62007-04-26 19:45:09 +0900333 bool "NEC VR4100 series based machines"
Ralf Baechle7cf80532005-10-20 22:33:09 +0100334 select SYS_HAS_CPU_VR41XX
Atsushi Nemoto9fd32cf2006-12-08 01:55:07 +0900335 select GENERIC_HARDIRQS_NO__DO_IRQ
Ralf Baechle5e83d432005-10-29 19:32:41 +0100336
Marc St-Jean9267a302007-06-14 15:55:31 -0600337config PMC_MSP
338 bool "PMC-Sierra MSP chipsets"
339 depends on EXPERIMENTAL
340 select DMA_NONCOHERENT
341 select SWAP_IO_SPACE
342 select NO_EXCEPT_FILL
343 select BOOT_RAW
344 select SYS_HAS_CPU_MIPS32_R1
345 select SYS_HAS_CPU_MIPS32_R2
346 select SYS_SUPPORTS_32BIT_KERNEL
347 select SYS_SUPPORTS_BIG_ENDIAN
348 select SYS_SUPPORTS_KGDB
349 select IRQ_CPU
350 select SERIAL_8250
351 select SERIAL_8250_CONSOLE
352 help
353 This adds support for the PMC-Sierra family of Multi-Service
354 Processor System-On-A-Chips. These parts include a number
355 of integrated peripherals, interfaces and DSPs in addition to
356 a variety of MIPS cores.
357
Ralf Baechle5e83d432005-10-29 19:32:41 +0100358config PMC_YOSEMITE
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200359 bool "PMC-Sierra Yosemite eval board"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100360 select DMA_COHERENT
361 select HW_HAS_PCI
362 select IRQ_CPU
363 select IRQ_CPU_RM7K
364 select IRQ_CPU_RM9K
365 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100366 select SYS_HAS_CPU_RM9000
Ralf Baechle36a88532007-03-01 11:56:43 +0000367 select SYS_HAS_EARLY_PRINTK
Ralf Baechle5e83d432005-10-29 19:32:41 +0100368 select SYS_SUPPORTS_32BIT_KERNEL
369 select SYS_SUPPORTS_64BIT_KERNEL
370 select SYS_SUPPORTS_BIG_ENDIAN
371 select SYS_SUPPORTS_HIGHMEM
Ralf Baechlecc801072007-02-17 02:58:39 +0000372 select SYS_SUPPORTS_KGDB
Ralf Baechlee73ea272006-06-04 11:51:46 +0100373 select SYS_SUPPORTS_SMP
Ralf Baechle5e83d432005-10-29 19:32:41 +0100374 help
375 Yosemite is an evaluation board for the RM9000x2 processor
376 manufactured by PMC-Sierra.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700377
Ralf Baechle07119622005-09-03 15:56:11 -0700378config QEMU
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200379 bool "Qemu"
Ralf Baechle07119622005-09-03 15:56:11 -0700380 select DMA_COHERENT
381 select GENERIC_ISA_DMA
382 select HAVE_STD_PC_SERIAL_PORT
Michael Neulinge5c6c8e2006-03-14 00:11:50 -0500383 select I8253
Ralf Baechle07119622005-09-03 15:56:11 -0700384 select I8259
385 select ISA
386 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100387 select SYS_HAS_CPU_MIPS32_R1
Ralf Baechle07119622005-09-03 15:56:11 -0700388 select SYS_SUPPORTS_32BIT_KERNEL
389 select SYS_SUPPORTS_BIG_ENDIAN
Aurelien Jarnoc8cc9612006-09-27 23:07:25 +0200390 select SYS_SUPPORTS_LITTLE_ENDIAN
Atsushi Nemotob1c6cd42006-07-03 00:09:47 +0900391 select ARCH_SPARSEMEM_ENABLE
Atsushi Nemoto9fd32cf2006-12-08 01:55:07 +0900392 select GENERIC_HARDIRQS_NO__DO_IRQ
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +0900393 select NR_CPUS_DEFAULT_1
394 select SYS_SUPPORTS_SMP
Ralf Baechle07119622005-09-03 15:56:11 -0700395 help
Ralf Baechle5e83d432005-10-29 19:32:41 +0100396 Qemu is a software emulator which among other architectures also
397 can simulate a MIPS32 4Kc system. This patch adds support for the
398 system architecture that currently is being simulated by Qemu. It
399 will eventually be removed again when Qemu has the capability to
400 simulate actual MIPS hardware platforms. More information on Qemu
401 can be found at http://www.linux-mips.org/wiki/Qemu.
Ralf Baechle07119622005-09-03 15:56:11 -0700402
dmitry pervushin355c4712006-05-21 14:53:06 +0400403config MARKEINS
Yoichi Yuasae460b732007-05-28 22:54:28 +0900404 bool "NEC EMMA2RH Mark-eins"
dmitry pervushin355c4712006-05-21 14:53:06 +0400405 select DMA_NONCOHERENT
406 select HW_HAS_PCI
407 select IRQ_CPU
408 select SWAP_IO_SPACE
409 select SYS_SUPPORTS_32BIT_KERNEL
410 select SYS_SUPPORTS_BIG_ENDIAN
411 select SYS_SUPPORTS_LITTLE_ENDIAN
412 select SYS_HAS_CPU_R5000
413 help
414 This enables support for the R5432-based NEC Mark-eins
415 boards with R5500 CPU.
416
Linus Torvalds1da177e2005-04-16 15:20:36 -0700417config SGI_IP22
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200418 bool "SGI IP22 (Indy/Indigo2)"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700419 select ARC
420 select ARC32
421 select BOOT_ELF32
422 select DMA_NONCOHERENT
Ralf Baechle5e83d432005-10-29 19:32:41 +0100423 select HW_HAS_EISA
Linus Torvalds1da177e2005-04-16 15:20:36 -0700424 select IP22_CPU_SCACHE
425 select IRQ_CPU
Ralf Baechleaa414df2006-11-30 01:14:51 +0000426 select GENERIC_ISA_DMA_SUPPORT_BROKEN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700427 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100428 select SYS_HAS_CPU_R4X00
429 select SYS_HAS_CPU_R5000
Ralf Baechle36a88532007-03-01 11:56:43 +0000430 select SYS_HAS_EARLY_PRINTK
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700431 select SYS_SUPPORTS_32BIT_KERNEL
432 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100433 select SYS_SUPPORTS_BIG_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700434 help
435 This are the SGI Indy, Challenge S and Indigo2, as well as certain
436 OEM variants like the Tandem CMN B006S. To compile a Linux kernel
437 that runs on these, say Y here.
438
439config SGI_IP27
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200440 bool "SGI IP27 (Origin200/2000)"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700441 select ARC
442 select ARC64
Ralf Baechle5e83d432005-10-29 19:32:41 +0100443 select BOOT_ELF64
Linus Torvalds1da177e2005-04-16 15:20:36 -0700444 select DMA_IP27
Ralf Baechle36a88532007-03-01 11:56:43 +0000445 select SYS_HAS_EARLY_PRINTK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700446 select HW_HAS_PCI
Ralf Baechle130e2fb2007-02-06 16:53:15 +0000447 select NR_CPUS_DEFAULT_64
Linus Torvalds1da177e2005-04-16 15:20:36 -0700448 select PCI_DOMAINS
Ralf Baechle7cf80532005-10-20 22:33:09 +0100449 select SYS_HAS_CPU_R10000
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700450 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100451 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechlecc801072007-02-17 02:58:39 +0000452 select SYS_SUPPORTS_KGDB
Ralf Baechled8cb4e12006-06-11 23:03:08 +0100453 select SYS_SUPPORTS_NUMA
Ralf Baechle1a5c5de2006-11-02 17:23:33 +0000454 select SYS_SUPPORTS_SMP
Franck Bui-Huue77c2322006-12-01 18:22:27 +0100455 select GENERIC_HARDIRQS_NO__DO_IRQ
Linus Torvalds1da177e2005-04-16 15:20:36 -0700456 help
457 This are the SGI Origin 200, Origin 2000 and Onyx 2 Graphics
458 workstations. To compile a Linux kernel that runs on these, say Y
459 here.
460
Linus Torvalds1da177e2005-04-16 15:20:36 -0700461config SGI_IP32
Ralf Baechlecfd2afc2007-07-10 17:33:00 +0100462 bool "SGI IP32 (O2)"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700463 select ARC
464 select ARC32
465 select BOOT_ELF32
Linus Torvalds1da177e2005-04-16 15:20:36 -0700466 select DMA_NONCOHERENT
467 select HW_HAS_PCI
468 select R5000_CPU_SCACHE
469 select RM7000_CPU_SCACHE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100470 select SYS_HAS_CPU_R5000
471 select SYS_HAS_CPU_R10000 if BROKEN
472 select SYS_HAS_CPU_RM7000
Ralf Baechledd2f18f2006-01-19 14:55:42 +0000473 select SYS_HAS_CPU_NEVADA
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700474 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100475 select SYS_SUPPORTS_BIG_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700476 help
477 If you want this kernel to run on SGI O2 workstation, say Y here.
478
Andrew Isaacson9a6dcea2005-10-19 23:57:11 -0700479config SIBYTE_BIGSUR
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200480 bool "Sibyte BCM91480B-BigSur"
Andrew Isaacson9a6dcea2005-10-19 23:57:11 -0700481 select BOOT_ELF32
482 select DMA_COHERENT
Ralf Baechle130e2fb2007-02-06 16:53:15 +0000483 select NR_CPUS_DEFAULT_4
Ralf Baechle7cf80532005-10-20 22:33:09 +0100484 select PCI_DOMAINS
Andrew Isaacson9a6dcea2005-10-19 23:57:11 -0700485 select SIBYTE_BCM1x80
486 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100487 select SYS_HAS_CPU_SB1
Andrew Isaacson9a6dcea2005-10-19 23:57:11 -0700488 select SYS_SUPPORTS_BIG_ENDIAN
489 select SYS_SUPPORTS_LITTLE_ENDIAN
490
Ralf Baechle5e83d432005-10-29 19:32:41 +0100491config SIBYTE_SWARM
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200492 bool "Sibyte BCM91250A-SWARM"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100493 select BOOT_ELF32
494 select DMA_COHERENT
Ralf Baechle130e2fb2007-02-06 16:53:15 +0000495 select NR_CPUS_DEFAULT_2
Ralf Baechle5e83d432005-10-29 19:32:41 +0100496 select SIBYTE_SB1250
497 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100498 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100499 select SYS_SUPPORTS_BIG_ENDIAN
500 select SYS_SUPPORTS_HIGHMEM
Ralf Baechlecc801072007-02-17 02:58:39 +0000501 select SYS_SUPPORTS_KGDB
Ralf Baechle5e83d432005-10-29 19:32:41 +0100502 select SYS_SUPPORTS_LITTLE_ENDIAN
Pete Popove3ad1c22005-03-01 06:33:16 +0000503
Ralf Baechle5e83d432005-10-29 19:32:41 +0100504config SIBYTE_SENTOSA
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200505 bool "Sibyte BCM91250E-Sentosa"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100506 depends on EXPERIMENTAL
507 select BOOT_ELF32
508 select DMA_COHERENT
Ralf Baechle130e2fb2007-02-06 16:53:15 +0000509 select NR_CPUS_DEFAULT_2
Ralf Baechle5e83d432005-10-29 19:32:41 +0100510 select SIBYTE_SB1250
511 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100512 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100513 select SYS_SUPPORTS_BIG_ENDIAN
514 select SYS_SUPPORTS_LITTLE_ENDIAN
515
516config SIBYTE_RHONE
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200517 bool "Sibyte BCM91125E-Rhone"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100518 depends on EXPERIMENTAL
519 select BOOT_ELF32
520 select DMA_COHERENT
521 select SIBYTE_BCM1125H
522 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100523 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100524 select SYS_SUPPORTS_BIG_ENDIAN
525 select SYS_SUPPORTS_LITTLE_ENDIAN
526
527config SIBYTE_CARMEL
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200528 bool "Sibyte BCM91120x-Carmel"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100529 depends on EXPERIMENTAL
530 select BOOT_ELF32
531 select DMA_COHERENT
532 select SIBYTE_BCM1120
533 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100534 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100535 select SYS_SUPPORTS_BIG_ENDIAN
536 select SYS_SUPPORTS_LITTLE_ENDIAN
537
538config SIBYTE_PTSWARM
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200539 bool "Sibyte BCM91250PT-PTSWARM"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100540 depends on EXPERIMENTAL
541 select BOOT_ELF32
542 select DMA_COHERENT
Ralf Baechle130e2fb2007-02-06 16:53:15 +0000543 select NR_CPUS_DEFAULT_2
Ralf Baechle5e83d432005-10-29 19:32:41 +0100544 select SIBYTE_SB1250
545 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100546 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100547 select SYS_SUPPORTS_BIG_ENDIAN
548 select SYS_SUPPORTS_HIGHMEM
549 select SYS_SUPPORTS_LITTLE_ENDIAN
550
551config SIBYTE_LITTLESUR
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200552 bool "Sibyte BCM91250C2-LittleSur"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100553 depends on EXPERIMENTAL
554 select BOOT_ELF32
555 select DMA_COHERENT
Ralf Baechle130e2fb2007-02-06 16:53:15 +0000556 select NR_CPUS_DEFAULT_2
Ralf Baechle5e83d432005-10-29 19:32:41 +0100557 select SIBYTE_SB1250
558 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100559 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100560 select SYS_SUPPORTS_BIG_ENDIAN
561 select SYS_SUPPORTS_HIGHMEM
562 select SYS_SUPPORTS_LITTLE_ENDIAN
563
564config SIBYTE_CRHINE
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200565 bool "Sibyte BCM91120C-CRhine"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100566 depends on EXPERIMENTAL
567 select BOOT_ELF32
568 select DMA_COHERENT
569 select SIBYTE_BCM1120
570 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100571 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100572 select SYS_SUPPORTS_BIG_ENDIAN
573 select SYS_SUPPORTS_LITTLE_ENDIAN
574
575config SIBYTE_CRHONE
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200576 bool "Sibyte BCM91125C-CRhone"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100577 depends on EXPERIMENTAL
578 select BOOT_ELF32
579 select DMA_COHERENT
580 select SIBYTE_BCM1125
581 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100582 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100583 select SYS_SUPPORTS_BIG_ENDIAN
584 select SYS_SUPPORTS_HIGHMEM
585 select SYS_SUPPORTS_LITTLE_ENDIAN
586
Thomas Bogendoerfer14b36af2006-12-05 17:05:44 +0100587config SNI_RM
588 bool "SNI RM200/300/400"
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200589 select ARC if CPU_LITTLE_ENDIAN
590 select ARC32 if CPU_LITTLE_ENDIAN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100591 select ARCH_MAY_HAVE_PC_FDC
592 select BOOT_ELF32
593 select DMA_NONCOHERENT
594 select GENERIC_ISA_DMA
Ralf Baechle5e83d432005-10-29 19:32:41 +0100595 select HW_HAS_EISA
596 select HW_HAS_PCI
Thomas Bogendoerferc066a322006-12-28 18:22:32 +0100597 select IRQ_CPU
Michael Neulinge5c6c8e2006-03-14 00:11:50 -0500598 select I8253
Ralf Baechle5e83d432005-10-29 19:32:41 +0100599 select I8259
600 select ISA
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200601 select SWAP_IO_SPACE if CPU_BIG_ENDIAN
Ralf Baechle7cf80532005-10-20 22:33:09 +0100602 select SYS_HAS_CPU_R4X00
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200603 select SYS_HAS_CPU_R5000
Thomas Bogendoerferc066a322006-12-28 18:22:32 +0100604 select SYS_HAS_CPU_R10000
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200605 select R5000_CPU_SCACHE
Ralf Baechle36a88532007-03-01 11:56:43 +0000606 select SYS_HAS_EARLY_PRINTK
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700607 select SYS_SUPPORTS_32BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100608 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200609 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100610 select SYS_SUPPORTS_HIGHMEM
611 select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700612 help
Thomas Bogendoerfer14b36af2006-12-05 17:05:44 +0100613 The SNI RM200/300/400 are MIPS-based machines manufactured by
614 Siemens Nixdorf Informationssysteme (SNI), parent company of Pyramid
Ralf Baechle5e83d432005-10-29 19:32:41 +0100615 Technology and now in turn merged with Fujitsu. Say Y here to
616 support this machine type.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700617
Ralf Baechle5e83d432005-10-29 19:32:41 +0100618config TOSHIBA_JMR3927
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200619 bool "Toshiba JMR-TX3927 board"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100620 select DMA_NONCOHERENT
621 select HW_HAS_PCI
622 select MIPS_TX3927
623 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100624 select SYS_HAS_CPU_TX39XX
Ralf Baechle5e83d432005-10-29 19:32:41 +0100625 select SYS_SUPPORTS_32BIT_KERNEL
Sergei Shtylyov6a2603a2007-02-07 20:39:05 +0300626 select SYS_SUPPORTS_LITTLE_ENDIAN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100627 select SYS_SUPPORTS_BIG_ENDIAN
Atsushi Nemoto21274352007-03-15 00:58:28 +0900628 select GENERIC_HARDIRQS_NO__DO_IRQ
Ralf Baechle5e83d432005-10-29 19:32:41 +0100629
630config TOSHIBA_RBTX4927
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200631 bool "Toshiba TBTX49[23]7 board"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100632 select DMA_NONCOHERENT
633 select HAS_TXX9_SERIAL
634 select HW_HAS_PCI
635 select I8259
Ralf Baechle5e83d432005-10-29 19:32:41 +0100636 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100637 select SYS_HAS_CPU_TX49XX
Ralf Baechle5e83d432005-10-29 19:32:41 +0100638 select SYS_SUPPORTS_32BIT_KERNEL
639 select SYS_SUPPORTS_64BIT_KERNEL
Sergei Shtylyov6a2603a2007-02-07 20:39:05 +0300640 select SYS_SUPPORTS_LITTLE_ENDIAN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100641 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechlecc801072007-02-17 02:58:39 +0000642 select SYS_SUPPORTS_KGDB
Atsushi Nemoto9fd32cf2006-12-08 01:55:07 +0900643 select GENERIC_HARDIRQS_NO__DO_IRQ
Ralf Baechle5e83d432005-10-29 19:32:41 +0100644 help
645 This Toshiba board is based on the TX4927 processor. Say Y here to
646 support this machine type
Linus Torvalds1da177e2005-04-16 15:20:36 -0700647
Ralf Baechle23fbee92005-07-25 22:45:45 +0000648config TOSHIBA_RBTX4938
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200649 bool "Toshiba RBTX4938 board"
Ralf Baechle23fbee92005-07-25 22:45:45 +0000650 select HAVE_STD_PC_SERIAL_PORT
651 select DMA_NONCOHERENT
652 select GENERIC_ISA_DMA
653 select HAS_TXX9_SERIAL
654 select HW_HAS_PCI
655 select I8259
Ralf Baechle23fbee92005-07-25 22:45:45 +0000656 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100657 select SYS_HAS_CPU_TX49XX
Ralf Baechle23fbee92005-07-25 22:45:45 +0000658 select SYS_SUPPORTS_32BIT_KERNEL
659 select SYS_SUPPORTS_LITTLE_ENDIAN
660 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechlecc801072007-02-17 02:58:39 +0000661 select SYS_SUPPORTS_KGDB
Atsushi Nemoto9fd32cf2006-12-08 01:55:07 +0900662 select GENERIC_HARDIRQS_NO__DO_IRQ
Ralf Baechle23fbee92005-07-25 22:45:45 +0000663 help
664 This Toshiba board is based on the TX4938 processor. Say Y here to
665 support this machine type
666
Linus Torvalds1da177e2005-04-16 15:20:36 -0700667endchoice
668
Yoichi Yuasac3543e22007-05-11 20:44:30 +0900669source "arch/mips/au1000/Kconfig"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100670source "arch/mips/ddb5xxx/Kconfig"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100671source "arch/mips/jazz/Kconfig"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100672source "arch/mips/lasat/Kconfig"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100673source "arch/mips/pmc-sierra/Kconfig"
Ralf Baechle29c48692005-02-07 01:27:14 +0000674source "arch/mips/sgi-ip27/Kconfig"
Ralf Baechle38b18f722005-02-03 14:28:23 +0000675source "arch/mips/sibyte/Kconfig"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100676source "arch/mips/tx4927/Kconfig"
Ralf Baechle23fbee92005-07-25 22:45:45 +0000677source "arch/mips/tx4938/Kconfig"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100678source "arch/mips/vr41xx/Kconfig"
Pete Popovbdf21b12005-07-14 17:47:57 +0000679source "arch/mips/philips/pnx8550/common/Kconfig"
Ralf Baechle38b18f722005-02-03 14:28:23 +0000680
Ralf Baechle5e83d432005-10-29 19:32:41 +0100681endmenu
682
Linus Torvalds1da177e2005-04-16 15:20:36 -0700683config RWSEM_GENERIC_SPINLOCK
684 bool
685 default y
686
687config RWSEM_XCHGADD_ALGORITHM
688 bool
689
David Howellsf0d1b0b2006-12-08 02:37:49 -0800690config ARCH_HAS_ILOG2_U32
691 bool
692 default n
693
694config ARCH_HAS_ILOG2_U64
695 bool
696 default n
697
Akinobu Mita3c9ee7e2006-03-26 01:39:30 -0800698config GENERIC_FIND_NEXT_BIT
699 bool
700 default y
701
702config GENERIC_HWEIGHT
703 bool
704 default y
705
Linus Torvalds1da177e2005-04-16 15:20:36 -0700706config GENERIC_CALIBRATE_DELAY
707 bool
708 default y
709
Ralf Baechle8db02012006-10-02 16:54:48 +0100710config GENERIC_TIME
711 bool
712 default y
713
Atsushi Nemoto1cc89032006-04-04 13:11:45 +0900714config SCHED_NO_NO_OMIT_FRAME_POINTER
715 bool
716 default y
717
Franck Bui-Huue77c2322006-12-01 18:22:27 +0100718config GENERIC_HARDIRQS_NO__DO_IRQ
719 bool
720 default n
721
Linus Torvalds1da177e2005-04-16 15:20:36 -0700722#
723# Select some configuration options automatically based on user selections.
724#
725config ARC
726 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700727
Ralf Baechle61ed2422005-09-15 08:52:34 +0000728config ARCH_MAY_HAVE_PC_FDC
729 bool
730
Marc St-Jean9267a302007-06-14 15:55:31 -0600731config BOOT_RAW
732 bool
733
Ralf Baechle4ce588c2005-09-03 15:56:19 -0700734config DMA_COHERENT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700735 bool
736
Ralf Baechle4ce588c2005-09-03 15:56:19 -0700737config DMA_IP27
Linus Torvalds1da177e2005-04-16 15:20:36 -0700738 bool
739
Ralf Baechle4ce588c2005-09-03 15:56:19 -0700740config DMA_IP32
741 bool
742 select DMA_NEED_PCI_MAP_STATE
743
744config DMA_NONCOHERENT
745 bool
746 select DMA_NEED_PCI_MAP_STATE
747
748config DMA_NEED_PCI_MAP_STATE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700749 bool
750
751config EARLY_PRINTK
Ralf Baechle36a88532007-03-01 11:56:43 +0000752 bool "Early printk" if EMBEDDED && DEBUG_KERNEL
753 depends on SYS_HAS_EARLY_PRINTK
754 default y
755 help
756 This option enables special console drivers which allow the kernel
757 to print messages very early in the bootup process.
758
759 This is useful for kernel debugging when your machine crashes very
Robert P. J. Day490dcc42007-05-20 12:11:07 -0400760 early before the console code is initialized. For normal operation,
761 it is not recommended because it looks ugly on some machines and
762 doesn't cooperate with an X server. You should normally say N here,
Ralf Baechle36a88532007-03-01 11:56:43 +0000763 unless you want to debug such a crash.
764
765config SYS_HAS_EARLY_PRINTK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700766 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700767
768config GENERIC_ISA_DMA
769 bool
Atsushi Nemoto05502332007-03-21 00:36:02 +0900770 select ZONE_DMA
Linus Torvalds1da177e2005-04-16 15:20:36 -0700771
772config I8259
773 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700774
Linus Torvalds1da177e2005-04-16 15:20:36 -0700775config MIPS_BONITO64
776 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700777
778config MIPS_MSC
779 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700780
781config MIPS_NILE4
782 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700783
784config MIPS_DISABLE_OBSOLETE_IDE
785 bool
786
Maciej W. Rozyckid388d682007-05-29 15:08:07 +0100787config NO_IOPORT
788 def_bool n
789
Ralf Baechleaa414df2006-11-30 01:14:51 +0000790config GENERIC_ISA_DMA_SUPPORT_BROKEN
791 bool
Atsushi Nemoto05502332007-03-21 00:36:02 +0900792 select ZONE_DMA
Ralf Baechleaa414df2006-11-30 01:14:51 +0000793
Yoichi Yuasa09663332007-05-22 00:05:58 +0900794config GENERIC_GPIO
795 bool
796
Ralf Baechle5e83d432005-10-29 19:32:41 +0100797#
Matt LaPlante3cb2fcc2006-11-30 05:22:59 +0100798# Endianess selection. Sufficiently obscure so many users don't know what to
Ralf Baechle5e83d432005-10-29 19:32:41 +0100799# answer,so we try hard to limit the available choices. Also the use of a
800# choice statement should be more obvious to the user.
801#
802choice
803 prompt "Endianess selection"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700804 help
805 Some MIPS machines can be configured for either little or big endian
Ralf Baechle5e83d432005-10-29 19:32:41 +0100806 byte order. These modes require different kernels and a different
Matt LaPlante3cb2fcc2006-11-30 05:22:59 +0100807 Linux distribution. In general there is one preferred byteorder for a
Ralf Baechle5e83d432005-10-29 19:32:41 +0100808 particular system but some systems are just as commonly used in the
David Sterba3dde6ad2007-05-09 07:12:20 +0200809 one or the other endianness.
Ralf Baechle5e83d432005-10-29 19:32:41 +0100810
811config CPU_BIG_ENDIAN
812 bool "Big endian"
813 depends on SYS_SUPPORTS_BIG_ENDIAN
814
815config CPU_LITTLE_ENDIAN
816 bool "Little endian"
817 depends on SYS_SUPPORTS_LITTLE_ENDIAN
818 help
819
820endchoice
821
Ralf Baechle21162452007-02-09 17:08:58 +0000822config SYS_SUPPORTS_APM_EMULATION
823 bool
824
Ralf Baechle5e83d432005-10-29 19:32:41 +0100825config SYS_SUPPORTS_BIG_ENDIAN
826 bool
827
828config SYS_SUPPORTS_LITTLE_ENDIAN
829 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700830
831config IRQ_CPU
832 bool
833
834config IRQ_CPU_RM7K
835 bool
836
Ralf Baechle5e83d432005-10-29 19:32:41 +0100837config IRQ_CPU_RM9K
838 bool
839
Marc St-Jean9267a302007-06-14 15:55:31 -0600840config IRQ_MSP_SLP
841 bool
842
843config IRQ_MSP_CIC
844 bool
845
Linus Torvalds1da177e2005-04-16 15:20:36 -0700846config IRQ_MV64340
847 bool
848
849config DDB5XXX_COMMON
850 bool
Ralf Baechlecc801072007-02-17 02:58:39 +0000851 select SYS_SUPPORTS_KGDB
Linus Torvalds1da177e2005-04-16 15:20:36 -0700852
853config MIPS_BOARDS_GEN
854 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700855
Yoichi Yuasa252161e2007-03-14 21:51:26 +0900856config PCI_GT64XXX_PCI0
Linus Torvalds1da177e2005-04-16 15:20:36 -0700857 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700858
Marc St-Jean9267a302007-06-14 15:55:31 -0600859config NO_EXCEPT_FILL
860 bool
861
Linus Torvalds1da177e2005-04-16 15:20:36 -0700862config MIPS_TX3927
863 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700864 select HAS_TXX9_SERIAL
Linus Torvalds1da177e2005-04-16 15:20:36 -0700865
thomas@koeller.dyndns.org663c3d92006-08-27 13:51:48 +0200866config MIPS_RM9122
867 bool
868 select SERIAL_RM9000
thomas@koeller.dyndns.org663c3d92006-08-27 13:51:48 +0200869
Linus Torvalds1da177e2005-04-16 15:20:36 -0700870config PCI_MARVELL
871 bool
872
Pete Popovbdf21b12005-07-14 17:47:57 +0000873config PNX8550
874 bool
875 select SOC_PNX8550
876
877config SOC_PNX8550
878 bool
Pete Popovbdf21b12005-07-14 17:47:57 +0000879 select DMA_NONCOHERENT
880 select HW_HAS_PCI
Ralf Baechleb8c2a772005-10-31 13:08:37 +0000881 select SYS_HAS_CPU_MIPS32_R1
Ralf Baechle36a88532007-03-01 11:56:43 +0000882 select SYS_HAS_EARLY_PRINTK
Ralf Baechle7cf80532005-10-20 22:33:09 +0100883 select SYS_SUPPORTS_32BIT_KERNEL
Franck Bui-Huue77c2322006-12-01 18:22:27 +0100884 select GENERIC_HARDIRQS_NO__DO_IRQ
Ralf Baechlecc801072007-02-17 02:58:39 +0000885 select SYS_SUPPORTS_KGDB
Florian Fainelli4ead1682007-05-22 21:44:42 +0200886 select GENERIC_GPIO
Pete Popovbdf21b12005-07-14 17:47:57 +0000887
Linus Torvalds1da177e2005-04-16 15:20:36 -0700888config SWAP_IO_SPACE
889 bool
890
dmitry pervushin355c4712006-05-21 14:53:06 +0400891config EMMA2RH
892 bool
893 depends on MARKEINS
894 default y
895
thomas@koeller.dyndns.org663c3d92006-08-27 13:51:48 +0200896config SERIAL_RM9000
897 bool
898
Linus Torvalds1da177e2005-04-16 15:20:36 -0700899#
900# Unfortunately not all GT64120 systems run the chip at the same clock.
901# As the user for the clock rate and try to minimize the available options.
902#
903choice
904 prompt "Galileo Chip Clock"
Yoichi Yuasa6b5bf502007-06-21 15:06:21 +0900905 depends on MOMENCO_OCELOT
Franck Bui-Huu1e54f772007-05-07 18:01:51 +0200906 default SYSCLK_100 if MOMENCO_OCELOT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700907
Linus Torvalds1da177e2005-04-16 15:20:36 -0700908config SYSCLK_100
Yoichi Yuasa6b5bf502007-06-21 15:06:21 +0900909 bool "100" if MOMENCO_OCELOT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700910
911endchoice
912
Ralf Baechle5e83d432005-10-29 19:32:41 +0100913config ARC32
914 bool
915
Linus Torvalds1da177e2005-04-16 15:20:36 -0700916config BOOT_ELF32
917 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700918
919config MIPS_L1_CACHE_SHIFT
920 int
Thomas Bogendoerfer06cf5582007-06-20 23:36:47 +0200921 default "4" if MACH_DECSTATION
922 default "7" if SGI_IP27 || SNI_RM
Marc St-Jean9267a302007-06-14 15:55:31 -0600923 default "4" if PMC_MSP4200_EVAL
Linus Torvalds1da177e2005-04-16 15:20:36 -0700924 default "5"
925
Linus Torvalds1da177e2005-04-16 15:20:36 -0700926config HAVE_STD_PC_SERIAL_PORT
927 bool
928
Linus Torvalds1da177e2005-04-16 15:20:36 -0700929config ARC_CONSOLE
930 bool "ARC console support"
Ralf Baechle36a88532007-03-01 11:56:43 +0000931 depends on SGI_IP22 || (SNI_RM && CPU_LITTLE_ENDIAN)
Linus Torvalds1da177e2005-04-16 15:20:36 -0700932
933config ARC_MEMORY
934 bool
Thomas Bogendoerfer14b36af2006-12-05 17:05:44 +0100935 depends on MACH_JAZZ || SNI_RM || SGI_IP32
Linus Torvalds1da177e2005-04-16 15:20:36 -0700936 default y
937
938config ARC_PROMLIB
939 bool
Thomas Bogendoerfer14b36af2006-12-05 17:05:44 +0100940 depends on MACH_JAZZ || SNI_RM || SGI_IP22 || SGI_IP32
Linus Torvalds1da177e2005-04-16 15:20:36 -0700941 default y
942
943config ARC64
944 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700945
946config BOOT_ELF64
947 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700948
Linus Torvalds1da177e2005-04-16 15:20:36 -0700949menu "CPU selection"
950
951choice
952 prompt "CPU type"
953 default CPU_R4X00
954
Fuxin Zhang2a21c732007-06-06 14:52:43 +0800955config CPU_LOONGSON2
956 bool "Loongson 2"
957 depends on SYS_HAS_CPU_LOONGSON2
958 select CPU_SUPPORTS_32BIT_KERNEL
959 select CPU_SUPPORTS_64BIT_KERNEL
960 select CPU_SUPPORTS_HIGHMEM
961 help
962 The Loongson 2E processor implements the MIPS III instruction set
963 with many extensions.
964
Ralf Baechle6e760c82005-07-06 12:08:11 +0000965config CPU_MIPS32_R1
966 bool "MIPS32 Release 1"
Ralf Baechle7cf80532005-10-20 22:33:09 +0100967 depends on SYS_HAS_CPU_MIPS32_R1
Ralf Baechlef7062dd2006-04-24 14:58:53 +0100968 select CPU_HAS_LLSC
Ralf Baechle6e760c82005-07-06 12:08:11 +0000969 select CPU_HAS_PREFETCH
Ralf Baechle797798c2005-08-10 15:17:11 +0000970 select CPU_SUPPORTS_32BIT_KERNEL
Ralf Baechleec28f302006-03-05 00:45:33 +0000971 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle6e760c82005-07-06 12:08:11 +0000972 help
Ralf Baechle5e83d432005-10-29 19:32:41 +0100973 Choose this option to build a kernel for release 1 or later of the
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +0000974 MIPS32 architecture. Most modern embedded systems with a 32-bit
975 MIPS processor are based on a MIPS32 processor. If you know the
976 specific type of processor in your system, choose those that one
977 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
978 Release 2 of the MIPS32 architecture is available since several
979 years so chances are you even have a MIPS32 Release 2 processor
980 in which case you should choose CPU_MIPS32_R2 instead for better
981 performance.
982
983config CPU_MIPS32_R2
984 bool "MIPS32 Release 2"
Ralf Baechle7cf80532005-10-20 22:33:09 +0100985 depends on SYS_HAS_CPU_MIPS32_R2
Ralf Baechlef7062dd2006-04-24 14:58:53 +0100986 select CPU_HAS_LLSC
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +0000987 select CPU_HAS_PREFETCH
Ralf Baechle797798c2005-08-10 15:17:11 +0000988 select CPU_SUPPORTS_32BIT_KERNEL
Ralf Baechleec28f302006-03-05 00:45:33 +0000989 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +0000990 help
Ralf Baechle5e83d432005-10-29 19:32:41 +0100991 Choose this option to build a kernel for release 2 or later of the
Ralf Baechle6e760c82005-07-06 12:08:11 +0000992 MIPS32 architecture. Most modern embedded systems with a 32-bit
993 MIPS processor are based on a MIPS32 processor. If you know the
994 specific type of processor in your system, choose those that one
995 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700996
Ralf Baechle6e760c82005-07-06 12:08:11 +0000997config CPU_MIPS64_R1
998 bool "MIPS64 Release 1"
Ralf Baechle7cf80532005-10-20 22:33:09 +0100999 depends on SYS_HAS_CPU_MIPS64_R1
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001000 select CPU_HAS_LLSC
Ralf Baechle797798c2005-08-10 15:17:11 +00001001 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001002 select CPU_SUPPORTS_32BIT_KERNEL
1003 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechleec28f302006-03-05 00:45:33 +00001004 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle6e760c82005-07-06 12:08:11 +00001005 help
1006 Choose this option to build a kernel for release 1 or later of the
1007 MIPS64 architecture. Many modern embedded systems with a 64-bit
1008 MIPS processor are based on a MIPS64 processor. If you know the
1009 specific type of processor in your system, choose those that one
1010 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +00001011 Release 2 of the MIPS64 architecture is available since several
1012 years so chances are you even have a MIPS64 Release 2 processor
1013 in which case you should choose CPU_MIPS64_R2 instead for better
1014 performance.
1015
1016config CPU_MIPS64_R2
1017 bool "MIPS64 Release 2"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001018 depends on SYS_HAS_CPU_MIPS64_R2
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001019 select CPU_HAS_LLSC
Ralf Baechle797798c2005-08-10 15:17:11 +00001020 select CPU_HAS_PREFETCH
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +00001021 select CPU_SUPPORTS_32BIT_KERNEL
1022 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechleec28f302006-03-05 00:45:33 +00001023 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +00001024 help
1025 Choose this option to build a kernel for release 2 or later of the
1026 MIPS64 architecture. Many modern embedded systems with a 64-bit
1027 MIPS processor are based on a MIPS64 processor. If you know the
1028 specific type of processor in your system, choose those that one
1029 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001030
1031config CPU_R3000
1032 bool "R3000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001033 depends on SYS_HAS_CPU_R3000
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001034 select CPU_HAS_WB
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001035 select CPU_SUPPORTS_32BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +00001036 select CPU_SUPPORTS_HIGHMEM
Linus Torvalds1da177e2005-04-16 15:20:36 -07001037 help
1038 Please make sure to pick the right CPU type. Linux/MIPS is not
1039 designed to be generic, i.e. Kernels compiled for R3000 CPUs will
1040 *not* work on R4000 machines and vice versa. However, since most
1041 of the supported machines have an R4000 (or similar) CPU, R4x00
1042 might be a safe bet. If the resulting kernel does not work,
1043 try to recompile with R3000.
1044
1045config CPU_TX39XX
1046 bool "R39XX"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001047 depends on SYS_HAS_CPU_TX39XX
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001048 select CPU_SUPPORTS_32BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001049
1050config CPU_VR41XX
1051 bool "R41xx"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001052 depends on SYS_HAS_CPU_VR41XX
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001053 select CPU_SUPPORTS_32BIT_KERNEL
1054 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001055 help
Ralf Baechle5e83d432005-10-29 19:32:41 +01001056 The options selects support for the NEC VR4100 series of processors.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001057 Only choose this option if you have one of these processors as a
1058 kernel built with this option will not run on any other type of
1059 processor or vice versa.
1060
1061config CPU_R4300
1062 bool "R4300"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001063 depends on SYS_HAS_CPU_R4300
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001064 select CPU_HAS_LLSC
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001065 select CPU_SUPPORTS_32BIT_KERNEL
1066 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001067 help
1068 MIPS Technologies R4300-series processors.
1069
1070config CPU_R4X00
1071 bool "R4x00"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001072 depends on SYS_HAS_CPU_R4X00
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001073 select CPU_HAS_LLSC
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001074 select CPU_SUPPORTS_32BIT_KERNEL
1075 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001076 help
1077 MIPS Technologies R4000-series processors other than 4300, including
1078 the R4000, R4400, R4600, and 4700.
1079
1080config CPU_TX49XX
1081 bool "R49XX"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001082 depends on SYS_HAS_CPU_TX49XX
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001083 select CPU_HAS_LLSC
Atsushi Nemotode862b42006-03-17 12:59:22 +09001084 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001085 select CPU_SUPPORTS_32BIT_KERNEL
1086 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001087
1088config CPU_R5000
1089 bool "R5000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001090 depends on SYS_HAS_CPU_R5000
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001091 select CPU_HAS_LLSC
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001092 select CPU_SUPPORTS_32BIT_KERNEL
1093 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001094 help
1095 MIPS Technologies R5000-series processors other than the Nevada.
1096
1097config CPU_R5432
1098 bool "R5432"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001099 depends on SYS_HAS_CPU_R5432
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001100 select CPU_HAS_LLSC
Ralf Baechle5e83d432005-10-29 19:32:41 +01001101 select CPU_SUPPORTS_32BIT_KERNEL
1102 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001103
1104config CPU_R6000
1105 bool "R6000"
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001106 depends on EXPERIMENTAL
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001107 select CPU_HAS_LLSC
Ralf Baechle7cf80532005-10-20 22:33:09 +01001108 depends on SYS_HAS_CPU_R6000
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001109 select CPU_SUPPORTS_32BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001110 help
1111 MIPS Technologies R6000 and R6000A series processors. Note these
Chris Dearmanc09b47d2006-06-20 17:15:20 +01001112 processors are extremely rare and the support for them is incomplete.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001113
1114config CPU_NEVADA
1115 bool "RM52xx"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001116 depends on SYS_HAS_CPU_NEVADA
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001117 select CPU_HAS_LLSC
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001118 select CPU_SUPPORTS_32BIT_KERNEL
1119 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001120 help
1121 QED / PMC-Sierra RM52xx-series ("Nevada") processors.
1122
1123config CPU_R8000
1124 bool "R8000"
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001125 depends on EXPERIMENTAL
Ralf Baechle7cf80532005-10-20 22:33:09 +01001126 depends on SYS_HAS_CPU_R8000
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001127 select CPU_HAS_LLSC
Ralf Baechle5e83d432005-10-29 19:32:41 +01001128 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001129 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001130 help
1131 MIPS Technologies R8000 processors. Note these processors are
1132 uncommon and the support for them is incomplete.
1133
1134config CPU_R10000
1135 bool "R10000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001136 depends on SYS_HAS_CPU_R10000
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001137 select CPU_HAS_LLSC
Ralf Baechle5e83d432005-10-29 19:32:41 +01001138 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001139 select CPU_SUPPORTS_32BIT_KERNEL
1140 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +00001141 select CPU_SUPPORTS_HIGHMEM
Linus Torvalds1da177e2005-04-16 15:20:36 -07001142 help
1143 MIPS Technologies R10000-series processors.
1144
1145config CPU_RM7000
1146 bool "RM7000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001147 depends on SYS_HAS_CPU_RM7000
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001148 select CPU_HAS_LLSC
Ralf Baechle5e83d432005-10-29 19:32:41 +01001149 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001150 select CPU_SUPPORTS_32BIT_KERNEL
1151 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +00001152 select CPU_SUPPORTS_HIGHMEM
Linus Torvalds1da177e2005-04-16 15:20:36 -07001153
1154config CPU_RM9000
1155 bool "RM9000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001156 depends on SYS_HAS_CPU_RM9000
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001157 select CPU_HAS_LLSC
Ralf Baechle5e83d432005-10-29 19:32:41 +01001158 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001159 select CPU_SUPPORTS_32BIT_KERNEL
1160 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +00001161 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle0004a9d2006-10-31 03:45:07 +00001162 select WEAK_ORDERING
Linus Torvalds1da177e2005-04-16 15:20:36 -07001163
1164config CPU_SB1
1165 bool "SB1"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001166 depends on SYS_HAS_CPU_SB1
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001167 select CPU_HAS_LLSC
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001168 select CPU_SUPPORTS_32BIT_KERNEL
1169 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +00001170 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle0004a9d2006-10-31 03:45:07 +00001171 select WEAK_ORDERING
Linus Torvalds1da177e2005-04-16 15:20:36 -07001172
1173endchoice
1174
Fuxin Zhang2a21c732007-06-06 14:52:43 +08001175config SYS_HAS_CPU_LOONGSON2
1176 bool
1177
Ralf Baechle7cf80532005-10-20 22:33:09 +01001178config SYS_HAS_CPU_MIPS32_R1
1179 bool
1180
1181config SYS_HAS_CPU_MIPS32_R2
1182 bool
1183
1184config SYS_HAS_CPU_MIPS64_R1
1185 bool
1186
1187config SYS_HAS_CPU_MIPS64_R2
1188 bool
1189
1190config SYS_HAS_CPU_R3000
1191 bool
1192
1193config SYS_HAS_CPU_TX39XX
1194 bool
1195
1196config SYS_HAS_CPU_VR41XX
1197 bool
1198
1199config SYS_HAS_CPU_R4300
1200 bool
1201
1202config SYS_HAS_CPU_R4X00
1203 bool
1204
1205config SYS_HAS_CPU_TX49XX
1206 bool
1207
1208config SYS_HAS_CPU_R5000
1209 bool
1210
1211config SYS_HAS_CPU_R5432
1212 bool
1213
1214config SYS_HAS_CPU_R6000
1215 bool
1216
1217config SYS_HAS_CPU_NEVADA
1218 bool
1219
1220config SYS_HAS_CPU_R8000
1221 bool
1222
1223config SYS_HAS_CPU_R10000
1224 bool
1225
1226config SYS_HAS_CPU_RM7000
1227 bool
1228
1229config SYS_HAS_CPU_RM9000
1230 bool
1231
1232config SYS_HAS_CPU_SB1
1233 bool
1234
Ralf Baechle0004a9d2006-10-31 03:45:07 +00001235config WEAK_ORDERING
1236 bool
Ralf Baechle5e83d432005-10-29 19:32:41 +01001237endmenu
1238
1239#
Chris Dearmanc09b47d2006-06-20 17:15:20 +01001240# These two indicate any level of the MIPS32 and MIPS64 architecture
Ralf Baechle5e83d432005-10-29 19:32:41 +01001241#
1242config CPU_MIPS32
1243 bool
1244 default y if CPU_MIPS32_R1 || CPU_MIPS32_R2
1245
1246config CPU_MIPS64
1247 bool
1248 default y if CPU_MIPS64_R1 || CPU_MIPS64_R2
1249
1250#
Chris Dearmanc09b47d2006-06-20 17:15:20 +01001251# These two indicate the revision of the architecture, either Release 1 or Release 2
Ralf Baechle5e83d432005-10-29 19:32:41 +01001252#
1253config CPU_MIPSR1
1254 bool
1255 default y if CPU_MIPS32_R1 || CPU_MIPS64_R1
1256
1257config CPU_MIPSR2
1258 bool
1259 default y if CPU_MIPS32_R2 || CPU_MIPS64_R2
1260
1261config SYS_SUPPORTS_32BIT_KERNEL
1262 bool
1263config SYS_SUPPORTS_64BIT_KERNEL
1264 bool
1265config CPU_SUPPORTS_32BIT_KERNEL
1266 bool
1267config CPU_SUPPORTS_64BIT_KERNEL
1268 bool
1269
1270menu "Kernel type"
1271
1272choice
1273
1274 prompt "Kernel code model"
1275 help
1276 You should only select this option if you have a workload that
1277 actually benefits from 64-bit processing or if your machine has
1278 large memory. You will only be presented a single option in this
1279 menu if your system does not support both 32-bit and 64-bit kernels.
1280
1281config 32BIT
1282 bool "32-bit kernel"
1283 depends on CPU_SUPPORTS_32BIT_KERNEL && SYS_SUPPORTS_32BIT_KERNEL
1284 select TRAD_SIGNALS
1285 help
1286 Select this option if you want to build a 32-bit kernel.
1287config 64BIT
1288 bool "64-bit kernel"
1289 depends on CPU_SUPPORTS_64BIT_KERNEL && SYS_SUPPORTS_64BIT_KERNEL
1290 help
1291 Select this option if you want to build a 64-bit kernel.
1292
1293endchoice
1294
Linus Torvalds1da177e2005-04-16 15:20:36 -07001295choice
1296 prompt "Kernel page size"
1297 default PAGE_SIZE_4KB
1298
1299config PAGE_SIZE_4KB
1300 bool "4kB"
1301 help
1302 This option select the standard 4kB Linux page size. On some
1303 R3000-family processors this is the only available page size. Using
1304 4kB page size will minimize memory consumption and is therefore
1305 recommended for low memory systems.
1306
1307config PAGE_SIZE_8KB
1308 bool "8kB"
1309 depends on EXPERIMENTAL && CPU_R8000
1310 help
1311 Using 8kB page size will result in higher performance kernel at
1312 the price of higher memory consumption. This option is available
1313 only on the R8000 processor. Not that at the time of this writing
1314 this option is still high experimental; there are also issues with
1315 compatibility of user applications.
1316
1317config PAGE_SIZE_16KB
1318 bool "16kB"
Ralf Baechle714bfad2006-05-17 14:04:30 +01001319 depends on !CPU_R3000 && !CPU_TX39XX
Linus Torvalds1da177e2005-04-16 15:20:36 -07001320 help
1321 Using 16kB page size will result in higher performance kernel at
1322 the price of higher memory consumption. This option is available on
Ralf Baechle714bfad2006-05-17 14:04:30 +01001323 all non-R3000 family processors. Note that you will need a suitable
1324 Linux distribution to support this.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001325
1326config PAGE_SIZE_64KB
1327 bool "64kB"
1328 depends on EXPERIMENTAL && !CPU_R3000 && !CPU_TX39XX
1329 help
1330 Using 64kB page size will result in higher performance kernel at
1331 the price of higher memory consumption. This option is available on
1332 all non-R3000 family processor. Not that at the time of this
Ralf Baechle714bfad2006-05-17 14:04:30 +01001333 writing this option is still high experimental.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001334
1335endchoice
1336
1337config BOARD_SCACHE
1338 bool
1339
1340config IP22_CPU_SCACHE
1341 bool
1342 select BOARD_SCACHE
1343
Chris Dearman9318c512006-06-20 17:15:20 +01001344#
1345# Support for a MIPS32 / MIPS64 style S-caches
1346#
1347config MIPS_CPU_SCACHE
1348 bool
1349 select BOARD_SCACHE
1350
Linus Torvalds1da177e2005-04-16 15:20:36 -07001351config R5000_CPU_SCACHE
1352 bool
1353 select BOARD_SCACHE
1354
1355config RM7000_CPU_SCACHE
1356 bool
1357 select BOARD_SCACHE
1358
1359config SIBYTE_DMA_PAGEOPS
1360 bool "Use DMA to clear/copy pages"
1361 depends on CPU_SB1
1362 help
1363 Instead of using the CPU to zero and copy pages, use a Data Mover
1364 channel. These DMA channels are otherwise unused by the standard
1365 SiByte Linux port. Seems to give a small performance benefit.
1366
1367config CPU_HAS_PREFETCH
Ralf Baechlec8094b52005-08-05 14:28:54 +00001368 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001369
Ralf Baechle340ee4b2005-08-17 17:44:08 +00001370choice
1371 prompt "MIPS MT options"
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001372
1373config MIPS_MT_DISABLED
1374 bool "Disable multithreading support."
1375 help
1376 Use this option if your workload can't take advantage of
1377 MIPS hardware multithreading support. On systems that don't have
1378 the option of an MT-enabled processor this option will be the only
1379 option in this menu.
Ralf Baechle340ee4b2005-08-17 17:44:08 +00001380
Ralf Baechle59d6ab82006-10-06 17:36:20 +01001381config MIPS_MT_SMP
1382 bool "Use 1 TC on each available VPE for SMP"
1383 depends on SYS_SUPPORTS_MULTITHREADING
1384 select CPU_MIPSR2_IRQ_VI
Chris Dearmand725cf32007-05-08 14:05:39 +01001385 select CPU_MIPSR2_IRQ_EI
Ralf Baechle59d6ab82006-10-06 17:36:20 +01001386 select CPU_MIPSR2_SRS
1387 select MIPS_MT
Ralf Baechlef510aa32007-03-16 21:58:37 +00001388 select NR_CPUS_DEFAULT_2
Ralf Baechle59d6ab82006-10-06 17:36:20 +01001389 select SMP
1390 select SYS_SUPPORTS_SMP
1391 help
1392 This is a kernel model which is also known a VSMP or lately
1393 has been marketesed into SMVP.
1394
Ralf Baechle41c594a2006-04-05 09:45:45 +01001395config MIPS_MT_SMTC
1396 bool "SMTC: Use all TCs on all VPEs for SMP"
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001397 depends on CPU_MIPS32_R2
1398 #depends on CPU_MIPS64_R2 # once there is hardware ...
1399 depends on SYS_SUPPORTS_MULTITHREADING
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001400 select CPU_MIPSR2_IRQ_VI
Chris Dearmand725cf32007-05-08 14:05:39 +01001401 select CPU_MIPSR2_IRQ_EI
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001402 select CPU_MIPSR2_SRS
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001403 select MIPS_MT
Ralf Baechle130e2fb2007-02-06 16:53:15 +00001404 select NR_CPUS_DEFAULT_8
Ralf Baechle41c594a2006-04-05 09:45:45 +01001405 select SMP
Ralf Baechle73b76c72006-08-15 19:36:40 +01001406 select SYS_SUPPORTS_SMP
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001407 help
1408 This is a kernel model which is known a SMTC or lately has been
1409 marketesed into SMVP.
Ralf Baechle41c594a2006-04-05 09:45:45 +01001410
Ralf Baechlee01402b2005-07-14 15:57:16 +00001411config MIPS_VPE_LOADER
1412 bool "VPE loader support."
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001413 depends on SYS_SUPPORTS_MULTITHREADING
Chris Dearmand725cf32007-05-08 14:05:39 +01001414 select CPU_MIPSR2_IRQ_VI
1415 select CPU_MIPSR2_IRQ_EI
Ralf Baechleb0c10b9f2007-06-01 15:47:46 +01001416 select CPU_MIPSR2_SRS
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001417 select MIPS_MT
Ralf Baechlee01402b2005-07-14 15:57:16 +00001418 help
1419 Includes a loader for loading an elf relocatable object
1420 onto another VPE and running it.
1421
Ralf Baechle340ee4b2005-08-17 17:44:08 +00001422endchoice
1423
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001424config MIPS_MT
1425 bool
1426
1427config SYS_SUPPORTS_MULTITHREADING
1428 bool
1429
Ralf Baechlef088fc82006-04-05 09:45:47 +01001430config MIPS_MT_FPAFF
1431 bool "Dynamic FPU affinity for FP-intensive threads"
1432 depends on MIPS_MT
1433 default y
1434
Ralf Baechleac8be952007-01-20 00:18:01 +00001435config MIPS_MT_SMTC_INSTANT_REPLAY
1436 bool "Low-latency Dispatch of Deferred SMTC IPIs"
Ralf Baechle619af722007-03-26 15:13:57 +01001437 depends on MIPS_MT_SMTC && !PREEMPT
Ralf Baechleac8be952007-01-20 00:18:01 +00001438 default y
1439 help
1440 SMTC pseudo-interrupts between TCs are deferred and queued
1441 if the target TC is interrupt-inhibited (IXMT). In the first
1442 SMTC prototypes, these queued IPIs were serviced on return
1443 to user mode, or on entry into the kernel idle loop. The
1444 INSTANT_REPLAY option dispatches them as part of local_irq_restore()
1445 processing, which adds runtime overhead (hence the option to turn
1446 it off), but ensures that IPIs are handled promptly even under
1447 heavy I/O interrupt load.
1448
Ralf Baechlee01402b2005-07-14 15:57:16 +00001449config MIPS_VPE_LOADER_TOM
1450 bool "Load VPE program into memory hidden from linux"
1451 depends on MIPS_VPE_LOADER
1452 default y
1453 help
1454 The loader can use memory that is present but has been hidden from
1455 Linux using the kernel command line option "mem=xxMB". It's up to
1456 you to ensure the amount you put in the option and the space your
1457 program requires is less or equal to the amount physically present.
1458
1459# this should possibly be in drivers/char, but it is rather cpu related. Hmmm
1460config MIPS_VPE_APSP_API
Ralf Baechle5e83d432005-10-29 19:32:41 +01001461 bool "Enable support for AP/SP API (RTLX)"
1462 depends on MIPS_VPE_LOADER
1463 help
Ralf Baechlee01402b2005-07-14 15:57:16 +00001464
Ralf Baechle26009902006-04-05 09:45:45 +01001465config MIPS_APSP_KSPD
1466 bool "Enable KSPD"
1467 depends on MIPS_VPE_APSP_API
1468 default y
1469 help
1470 KSPD is a kernel daemon that accepts syscall requests from the SP
1471 side, actions them and returns the results. It also handles the
1472 "exit" syscall notifying other kernel modules the SP program is
1473 exiting. You probably want to say yes here.
1474
Linus Torvalds1da177e2005-04-16 15:20:36 -07001475config SB1_PASS_1_WORKAROUNDS
1476 bool
1477 depends on CPU_SB1_PASS_1
1478 default y
1479
1480config SB1_PASS_2_WORKAROUNDS
1481 bool
1482 depends on CPU_SB1 && (CPU_SB1_PASS_2_2 || CPU_SB1_PASS_2)
1483 default y
1484
1485config SB1_PASS_2_1_WORKAROUNDS
1486 bool
1487 depends on CPU_SB1 && CPU_SB1_PASS_2
1488 default y
1489
1490config 64BIT_PHYS_ADDR
1491 bool "Support for 64-bit physical address space"
Ralf Baechle948928a2005-12-23 02:16:44 +01001492 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 -07001493
Linus Torvalds1da177e2005-04-16 15:20:36 -07001494config CPU_HAS_LLSC
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001495 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001496
Franck Bui-Huu9693a852007-02-02 17:41:47 +01001497config CPU_HAS_SMARTMIPS
1498 depends on SYS_SUPPORTS_SMARTMIPS
1499 bool "Support for the SmartMIPS ASE"
1500 help
1501 SmartMIPS is a extension of the MIPS32 architecture aimed at
1502 increased security at both hardware and software level for
1503 smartcards. Enabling this option will allow proper use of the
1504 SmartMIPS instructions by Linux applications. However a kernel with
1505 this option will not work on a MIPS core without SmartMIPS core. If
1506 you don't know you probably don't have SmartMIPS and should say N
1507 here.
1508
Linus Torvalds1da177e2005-04-16 15:20:36 -07001509config CPU_HAS_WB
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001510 bool
Ralf Baechlee01402b2005-07-14 15:57:16 +00001511
Fuxin Zhang2a21c732007-06-06 14:52:43 +08001512config 64BIT_CONTEXT
1513 bool "Save 64bit integer registers"
1514 depends on 32BIT && CPU_LOONGSON2
1515 help
1516 Loongson2 CPU is 64bit , when used in 32BIT mode, its integer
1517 registers can still be accessed as 64bit, mainly for multimedia
1518 instructions. We must have all 64bit save/restored to make sure
1519 those instructions to get correct result.
1520
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001521#
1522# Vectored interrupt mode is an R2 feature
1523#
Ralf Baechlee01402b2005-07-14 15:57:16 +00001524config CPU_MIPSR2_IRQ_VI
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001525 bool
Ralf Baechlee01402b2005-07-14 15:57:16 +00001526
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001527#
1528# Extended interrupt mode is an R2 feature
1529#
Ralf Baechlee01402b2005-07-14 15:57:16 +00001530config CPU_MIPSR2_IRQ_EI
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001531 bool
Ralf Baechlee01402b2005-07-14 15:57:16 +00001532
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001533#
1534# Shadow registers are an R2 feature
1535#
Ralf Baechlee01402b2005-07-14 15:57:16 +00001536config CPU_MIPSR2_SRS
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001537 bool
Ralf Baechlee01402b2005-07-14 15:57:16 +00001538
Linus Torvalds1da177e2005-04-16 15:20:36 -07001539config CPU_HAS_SYNC
1540 bool
1541 depends on !CPU_R3000
1542 default y
1543
1544#
Ralf Baechle797798c2005-08-10 15:17:11 +00001545# Use the generic interrupt handling code in kernel/irq/:
1546#
1547config GENERIC_HARDIRQS
1548 bool
1549 default y
1550
1551config GENERIC_IRQ_PROBE
1552 bool
1553 default y
1554
Ingo Molnar0d7012a2006-06-29 02:24:43 -07001555config IRQ_PER_CPU
Ingo Molnar0d7012a2006-06-29 02:24:43 -07001556 bool
Ingo Molnar0d7012a2006-06-29 02:24:43 -07001557
Ralf Baechle797798c2005-08-10 15:17:11 +00001558#
Linus Torvalds1da177e2005-04-16 15:20:36 -07001559# - Highmem only makes sense for the 32-bit kernel.
1560# - The current highmem code will only work properly on physically indexed
1561# caches such as R3000, SB1, R7000 or those that look like they're virtually
1562# indexed such as R4000/R4400 SC and MC versions or R10000. So for the
1563# moment we protect the user and offer the highmem option only on machines
1564# where it's known to be safe. This will not offer highmem on a few systems
1565# such as MIPS32 and MIPS64 CPUs which may have virtual and physically
1566# indexed CPUs but we're playing safe.
Ralf Baechle797798c2005-08-10 15:17:11 +00001567# - We use SYS_SUPPORTS_HIGHMEM to offer highmem only for systems where we
1568# know they might have memory configurations that could make use of highmem
1569# support.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001570#
1571config HIGHMEM
1572 bool "High Memory Support"
Ralf Baechle797798c2005-08-10 15:17:11 +00001573 depends on 32BIT && CPU_SUPPORTS_HIGHMEM && SYS_SUPPORTS_HIGHMEM
1574
1575config CPU_SUPPORTS_HIGHMEM
1576 bool
1577
1578config SYS_SUPPORTS_HIGHMEM
1579 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001580
Franck Bui-Huu9693a852007-02-02 17:41:47 +01001581config SYS_SUPPORTS_SMARTMIPS
1582 bool
1583
Yoichi Yuasab4819b52005-06-25 14:54:31 -07001584config ARCH_FLATMEM_ENABLE
1585 def_bool y
1586 depends on !NUMA
1587
Ralf Baechled8cb4e12006-06-11 23:03:08 +01001588config ARCH_DISCONTIGMEM_ENABLE
1589 bool
1590 default y if SGI_IP27
1591 help
David Sterba3dde6ad2007-05-09 07:12:20 +02001592 Say Y to support efficient handling of discontiguous physical memory,
Ralf Baechled8cb4e12006-06-11 23:03:08 +01001593 for architectures which are either NUMA (Non-Uniform Memory Access)
1594 or have huge holes in the physical address space for other reasons.
1595 See <file:Documentation/vm/numa> for more.
1596
Atsushi Nemotob1c6cd42006-07-03 00:09:47 +09001597config ARCH_SPARSEMEM_ENABLE
1598 bool
Atsushi Nemoto7de58fa2006-07-05 01:22:44 +09001599 select SPARSEMEM_STATIC
Atsushi Nemoto31473742006-07-03 00:09:47 +09001600
Ralf Baechled8cb4e12006-06-11 23:03:08 +01001601config NUMA
1602 bool "NUMA Support"
1603 depends on SYS_SUPPORTS_NUMA
1604 help
1605 Say Y to compile the kernel to support NUMA (Non-Uniform Memory
1606 Access). This option improves performance on systems with more
1607 than two nodes; on two node systems it is generally better to
1608 leave it disabled; on single node systems disable this option
1609 disabled.
1610
1611config SYS_SUPPORTS_NUMA
1612 bool
1613
Yasunori Gotoc80d79d2006-04-10 22:53:53 -07001614config NODES_SHIFT
1615 int
1616 default "6"
1617 depends on NEED_MULTIPLE_NODES
1618
Yoichi Yuasab4819b52005-06-25 14:54:31 -07001619source "mm/Kconfig"
1620
Linus Torvalds1da177e2005-04-16 15:20:36 -07001621config SMP
1622 bool "Multi-Processing support"
Ralf Baechlee73ea272006-06-04 11:51:46 +01001623 depends on SYS_SUPPORTS_SMP
Ralf Baechleb4b30a52006-08-03 17:34:24 +01001624 select IRQ_PER_CPU
Ralf Baechlee73ea272006-06-04 11:51:46 +01001625 help
Linus Torvalds1da177e2005-04-16 15:20:36 -07001626 This enables support for systems with more than one CPU. If you have
1627 a system with only one CPU, like most personal computers, say N. If
1628 you have a system with more than one CPU, say Y.
1629
1630 If you say N here, the kernel will run on single and multiprocessor
1631 machines, but will use only one CPU of a multiprocessor machine. If
1632 you say Y here, the kernel will run on many, but not all,
1633 singleprocessor machines. On a singleprocessor machine, the kernel
1634 will run faster if you say N here.
1635
1636 People using multiprocessor machines who say Y here should also say
1637 Y to "Enhanced Real Time Clock Support", below.
1638
1639 See also the <file:Documentation/smp.txt> and the SMP-HOWTO
1640 available at <http://www.tldp.org/docs.html#howto>.
1641
1642 If you don't know what to do here, say N.
1643
Ralf Baechlee73ea272006-06-04 11:51:46 +01001644config SYS_SUPPORTS_SMP
1645 bool
1646
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09001647config NR_CPUS_DEFAULT_1
1648 bool
1649
Ralf Baechle130e2fb2007-02-06 16:53:15 +00001650config NR_CPUS_DEFAULT_2
1651 bool
1652
1653config NR_CPUS_DEFAULT_4
1654 bool
1655
1656config NR_CPUS_DEFAULT_8
1657 bool
1658
1659config NR_CPUS_DEFAULT_16
1660 bool
1661
1662config NR_CPUS_DEFAULT_32
1663 bool
1664
1665config NR_CPUS_DEFAULT_64
1666 bool
1667
Linus Torvalds1da177e2005-04-16 15:20:36 -07001668config NR_CPUS
1669 int "Maximum number of CPUs (2-64)"
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09001670 range 1 64 if NR_CPUS_DEFAULT_1
Linus Torvalds1da177e2005-04-16 15:20:36 -07001671 depends on SMP
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09001672 default "1" if NR_CPUS_DEFAULT_1
Ralf Baechle130e2fb2007-02-06 16:53:15 +00001673 default "2" if NR_CPUS_DEFAULT_2
1674 default "4" if NR_CPUS_DEFAULT_4
1675 default "8" if NR_CPUS_DEFAULT_8
1676 default "16" if NR_CPUS_DEFAULT_16
1677 default "32" if NR_CPUS_DEFAULT_32
1678 default "64" if NR_CPUS_DEFAULT_64
Linus Torvalds1da177e2005-04-16 15:20:36 -07001679 help
1680 This allows you to specify the maximum number of CPUs which this
1681 kernel will support. The maximum supported value is 32 for 32-bit
1682 kernel and 64 for 64-bit kernels; the minimum value which makes
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09001683 sense is 1 for Qemu (useful only for kernel debugging purposes)
1684 and 2 for all others.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001685
1686 This is purely to save memory - each supported CPU adds
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09001687 approximately eight kilobytes to the kernel image. For best
1688 performance should round up your number of processors to the next
1689 power of two.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001690
Atsushi Nemoto1723b4a2006-06-20 00:19:13 +09001691#
1692# Timer Interrupt Frequency Configuration
1693#
1694
1695choice
1696 prompt "Timer frequency"
1697 default HZ_250
1698 help
1699 Allows the configuration of the timer frequency.
1700
1701 config HZ_48
1702 bool "48 HZ" if SYS_SUPPORTS_48HZ
1703
1704 config HZ_100
1705 bool "100 HZ" if SYS_SUPPORTS_100HZ || SYS_SUPPORTS_ARBIT_HZ
1706
1707 config HZ_128
1708 bool "128 HZ" if SYS_SUPPORTS_128HZ || SYS_SUPPORTS_ARBIT_HZ
1709
1710 config HZ_250
1711 bool "250 HZ" if SYS_SUPPORTS_250HZ || SYS_SUPPORTS_ARBIT_HZ
1712
1713 config HZ_256
1714 bool "256 HZ" if SYS_SUPPORTS_256HZ || SYS_SUPPORTS_ARBIT_HZ
1715
1716 config HZ_1000
1717 bool "1000 HZ" if SYS_SUPPORTS_1000HZ || SYS_SUPPORTS_ARBIT_HZ
1718
1719 config HZ_1024
1720 bool "1024 HZ" if SYS_SUPPORTS_1024HZ || SYS_SUPPORTS_ARBIT_HZ
1721
1722endchoice
1723
1724config SYS_SUPPORTS_48HZ
1725 bool
1726
1727config SYS_SUPPORTS_100HZ
1728 bool
1729
1730config SYS_SUPPORTS_128HZ
1731 bool
1732
1733config SYS_SUPPORTS_250HZ
1734 bool
1735
1736config SYS_SUPPORTS_256HZ
1737 bool
1738
1739config SYS_SUPPORTS_1000HZ
1740 bool
1741
1742config SYS_SUPPORTS_1024HZ
1743 bool
1744
1745config SYS_SUPPORTS_ARBIT_HZ
1746 bool
1747 default y if !SYS_SUPPORTS_48HZ && !SYS_SUPPORTS_100HZ && \
1748 !SYS_SUPPORTS_128HZ && !SYS_SUPPORTS_250HZ && \
1749 !SYS_SUPPORTS_256HZ && !SYS_SUPPORTS_1000HZ && \
1750 !SYS_SUPPORTS_1024HZ
1751
1752config HZ
1753 int
1754 default 48 if HZ_48
1755 default 100 if HZ_100
1756 default 128 if HZ_128
1757 default 250 if HZ_250
1758 default 256 if HZ_256
1759 default 1000 if HZ_1000
1760 default 1024 if HZ_1024
1761
Ralf Baechlee80de852005-07-11 20:45:51 +00001762source "kernel/Kconfig.preempt"
Linus Torvalds1da177e2005-04-16 15:20:36 -07001763
Linus Torvalds1da177e2005-04-16 15:20:36 -07001764config MIPS_INSANE_LARGE
1765 bool "Support for large 64-bit configurations"
Ralf Baechle875d43e2005-09-03 15:56:16 -07001766 depends on CPU_R10000 && 64BIT
Linus Torvalds1da177e2005-04-16 15:20:36 -07001767 help
1768 MIPS R10000 does support a 44 bit / 16TB address space as opposed to
1769 previous 64-bit processors which only supported 40 bit / 1TB. If you
1770 need processes of more than 1TB virtual address space, say Y here.
1771 This will result in additional memory usage, so it is not
1772 recommended for normal users.
1773
Atsushi Nemotoea6e9422007-01-16 23:29:11 +09001774config KEXEC
1775 bool "Kexec system call (EXPERIMENTAL)"
1776 depends on EXPERIMENTAL
1777 help
1778 kexec is a system call that implements the ability to shutdown your
1779 current kernel, and to start another kernel. It is like a reboot
David Sterba3dde6ad2007-05-09 07:12:20 +02001780 but it is independent of the system firmware. And like a reboot
Atsushi Nemotoea6e9422007-01-16 23:29:11 +09001781 you can start any kernel with it, not just Linux.
1782
1783 The name comes from the similiarity to the exec system call.
1784
1785 It is an ongoing process to be certain the hardware in a machine
1786 is properly shutdown, so do not be surprised if this code does not
1787 initially work for you. It may help to enable device hotplugging
1788 support. As of this writing the exact hardware interface is
1789 strongly in flux, so no good recommendation can be made.
1790
1791config SECCOMP
1792 bool "Enable seccomp to safely compute untrusted bytecode"
1793 depends on PROC_FS && BROKEN
1794 default y
1795 help
1796 This kernel feature is useful for number crunching applications
1797 that may need to compute untrusted bytecode during their
1798 execution. By using pipes or other transports made available to
1799 the process as file descriptors supporting the read/write
1800 syscalls, it's possible to isolate those applications in
1801 their own address space using seccomp. Once seccomp is
1802 enabled via /proc/<pid>/seccomp, it cannot be disabled
1803 and the task is only allowed to execute a few safe syscalls
1804 defined by each seccomp mode.
1805
1806 If unsure, say Y. Only embedded should say N here.
1807
Ralf Baechle5e83d432005-10-29 19:32:41 +01001808endmenu
1809
Linus Torvalds1da177e2005-04-16 15:20:36 -07001810config RWSEM_GENERIC_SPINLOCK
1811 bool
1812 default y
1813
Atsushi Nemoto1df0f0f2006-09-26 23:44:01 +09001814config LOCKDEP_SUPPORT
1815 bool
1816 default y
1817
1818config STACKTRACE_SUPPORT
1819 bool
1820 default y
1821
Ralf Baechleb6c35392005-11-25 11:35:40 +00001822source "init/Kconfig"
1823
Linus Torvalds1da177e2005-04-16 15:20:36 -07001824menu "Bus options (PCI, PCMCIA, EISA, ISA, TC)"
1825
Ralf Baechle5e83d432005-10-29 19:32:41 +01001826config HW_HAS_EISA
1827 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001828config HW_HAS_PCI
1829 bool
1830
1831config PCI
1832 bool "Support for PCI controller"
1833 depends on HW_HAS_PCI
1834 help
1835 Find out whether you have a PCI motherboard. PCI is the name of a
1836 bus system, i.e. the way the CPU talks to the other stuff inside
1837 your box. Other bus systems are ISA, EISA, or VESA. If you have PCI,
1838 say Y, otherwise N.
1839
1840 The PCI-HOWTO, available from
1841 <http://www.tldp.org/docs.html#howto>, contains valuable
1842 information about which PCI hardware does work under Linux and which
1843 doesn't.
1844
1845config PCI_DOMAINS
1846 bool
1847 depends on PCI
1848
1849source "drivers/pci/Kconfig"
1850
1851#
1852# ISA support is now enabled via select. Too many systems still have the one
1853# or other ISA chip on the board that users don't know about so don't expect
1854# users to choose the right thing ...
1855#
1856config ISA
1857 bool
1858
1859config EISA
1860 bool "EISA support"
Ralf Baechle5e83d432005-10-29 19:32:41 +01001861 depends on HW_HAS_EISA
Linus Torvalds1da177e2005-04-16 15:20:36 -07001862 select ISA
Ralf Baechleaa414df2006-11-30 01:14:51 +00001863 select GENERIC_ISA_DMA
Linus Torvalds1da177e2005-04-16 15:20:36 -07001864 ---help---
1865 The Extended Industry Standard Architecture (EISA) bus was
1866 developed as an open alternative to the IBM MicroChannel bus.
1867
1868 The EISA bus provided some of the features of the IBM MicroChannel
1869 bus while maintaining backward compatibility with cards made for
1870 the older ISA bus. The EISA bus saw limited use between 1988 and
1871 1995 when it was made obsolete by the PCI bus.
1872
1873 Say Y here if you are building a kernel for an EISA-based machine.
1874
1875 Otherwise, say N.
1876
1877source "drivers/eisa/Kconfig"
1878
1879config TC
1880 bool "TURBOchannel support"
1881 depends on MACH_DECSTATION
1882 help
1883 TurboChannel is a DEC (now Compaq (now HP)) bus for Alpha and MIPS
1884 processors. Documentation on writing device drivers for TurboChannel
1885 is available at:
1886 <http://www.cs.arizona.edu/computer.help/policy/DIGITAL_unix/AA-PS3HD-TET1_html/TITLE.html>.
1887
1888#config ACCESSBUS
1889# bool "Access.Bus support"
1890# depends on TC
1891
1892config MMU
1893 bool
1894 default y
1895
Michael Neulinge5c6c8e2006-03-14 00:11:50 -05001896config I8253
1897 bool
1898
Linus Torvalds1da177e2005-04-16 15:20:36 -07001899source "drivers/pcmcia/Kconfig"
1900
1901source "drivers/pci/hotplug/Kconfig"
1902
1903endmenu
1904
1905menu "Executable file formats"
1906
1907source "fs/Kconfig.binfmt"
1908
1909config TRAD_SIGNALS
1910 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001911
1912config BUILD_ELF64
1913 bool "Use 64-bit ELF format for building"
Ralf Baechle875d43e2005-09-03 15:56:16 -07001914 depends on 64BIT
Linus Torvalds1da177e2005-04-16 15:20:36 -07001915 help
1916 A 64-bit kernel is usually built using the 64-bit ELF binary object
1917 format as it's one that allows arbitrary 64-bit constructs. For
1918 kernels that are loaded within the KSEG compatibility segments the
1919 32-bit ELF format can optionally be used resulting in a somewhat
1920 smaller binary, but this option is not explicitly supported by the
1921 toolchain and since binutils 2.14 it does not even work at all.
1922
1923 Say Y to use the 64-bit format or N to use the 32-bit one.
1924
1925 If unsure say Y.
1926
1927config BINFMT_IRIX
1928 bool "Include IRIX binary compatibility"
Ralf Baechle5e83d432005-10-29 19:32:41 +01001929 depends on CPU_BIG_ENDIAN && 32BIT && BROKEN
Linus Torvalds1da177e2005-04-16 15:20:36 -07001930
1931config MIPS32_COMPAT
1932 bool "Kernel support for Linux/MIPS 32-bit binary compatibility"
Ralf Baechle875d43e2005-09-03 15:56:16 -07001933 depends on 64BIT
Linus Torvalds1da177e2005-04-16 15:20:36 -07001934 help
1935 Select this option if you want Linux/MIPS 32-bit binary
1936 compatibility. Since all software available for Linux/MIPS is
1937 currently 32-bit you should say Y here.
1938
1939config COMPAT
1940 bool
1941 depends on MIPS32_COMPAT
1942 default y
1943
Atsushi Nemoto05e43962006-11-07 18:02:44 +09001944config SYSVIPC_COMPAT
1945 bool
1946 depends on COMPAT && SYSVIPC
1947 default y
1948
Linus Torvalds1da177e2005-04-16 15:20:36 -07001949config MIPS32_O32
1950 bool "Kernel support for o32 binaries"
1951 depends on MIPS32_COMPAT
1952 help
1953 Select this option if you want to run o32 binaries. These are pure
1954 32-bit binaries as used by the 32-bit Linux/MIPS port. Most of
1955 existing binaries are in this format.
1956
1957 If unsure, say Y.
1958
1959config MIPS32_N32
1960 bool "Kernel support for n32 binaries"
1961 depends on MIPS32_COMPAT
1962 help
1963 Select this option if you want to run n32 binaries. These are
1964 64-bit binaries using 32-bit quantities for addressing and certain
1965 data that would normally be 64-bit. They are used in special
1966 cases.
1967
1968 If unsure, say N.
1969
1970config BINFMT_ELF32
1971 bool
1972 default y if MIPS32_O32 || MIPS32_N32
1973
Ralf Baechle21162452007-02-09 17:08:58 +00001974endmenu
Linus Torvalds1da177e2005-04-16 15:20:36 -07001975
Ralf Baechle21162452007-02-09 17:08:58 +00001976menu "Power management options"
Rodolfo Giometti952fa952006-06-05 17:43:10 +02001977
Ralf Baechle21162452007-02-09 17:08:58 +00001978source "kernel/power/Kconfig"
Rodolfo Giometti952fa952006-06-05 17:43:10 +02001979
Linus Torvalds1da177e2005-04-16 15:20:36 -07001980endmenu
1981
Sam Ravnborgd5950b42005-07-11 21:03:49 -07001982source "net/Kconfig"
1983
Linus Torvalds1da177e2005-04-16 15:20:36 -07001984source "drivers/Kconfig"
1985
1986source "fs/Kconfig"
1987
Ralf Baechle5e83d432005-10-29 19:32:41 +01001988source "arch/mips/oprofile/Kconfig"
1989
Linus Torvalds1da177e2005-04-16 15:20:36 -07001990source "arch/mips/Kconfig.debug"
1991
1992source "security/Kconfig"
1993
1994source "crypto/Kconfig"
1995
1996source "lib/Kconfig"