blob: 7080e7117f415b5c838607accef4718e64dc6733 [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
Yoichi Yuasac3543e22007-05-11 20:44:30 +090018config MACH_ALCHEMY
19 bool "Alchemy processor based machines"
Linus Torvalds1da177e2005-04-16 15:20:36 -070020
Ralf Baechle35189fa2006-06-18 16:39:46 +010021config BASLER_EXCITE
Thomas Koellerbe915892007-02-23 01:40:34 +010022 bool "Basler eXcite smart camera"
Ralf Baechle35189fa2006-06-18 16:39:46 +010023 select DMA_COHERENT
24 select HW_HAS_PCI
25 select IRQ_CPU
26 select IRQ_CPU_RM7K
27 select IRQ_CPU_RM9K
thomas@koeller.dyndns.org663c3d92006-08-27 13:51:48 +020028 select MIPS_RM9122
Ralf Baechle35189fa2006-06-18 16:39:46 +010029 select SYS_HAS_CPU_RM9000
30 select SYS_SUPPORTS_32BIT_KERNEL
31 select SYS_SUPPORTS_64BIT_KERNEL
32 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechlecc801072007-02-17 02:58:39 +000033 select SYS_SUPPORTS_KGDB
Ralf Baechle35189fa2006-06-18 16:39:46 +010034 help
35 The eXcite is a smart camera platform manufactured by
Thomas Koellerbe915892007-02-23 01:40:34 +010036 Basler Vision Technologies AG.
Ralf Baechle35189fa2006-06-18 16:39:46 +010037
38config BASLER_EXCITE_PROTOTYPE
39 bool "Support for pre-release units"
40 depends on BASLER_EXCITE
41 default n
42 help
43 Pre-series (prototype) units are different from later ones in
44 some ways. Select this option if you have one of these. Please
45 note that a kernel built with this option selected will not be
46 able to run on normal units.
47
Linus Torvalds1da177e2005-04-16 15:20:36 -070048config MIPS_COBALT
Martin Michlmayr3fa986f2006-05-09 23:34:53 +020049 bool "Cobalt Server"
Linus Torvalds1da177e2005-04-16 15:20:36 -070050 select DMA_NONCOHERENT
51 select HW_HAS_PCI
52 select I8259
53 select IRQ_CPU
Yoichi Yuasa252161e2007-03-14 21:51:26 +090054 select PCI_GT64XXX_PCI0
Ralf Baechle7cf80532005-10-20 22:33:09 +010055 select SYS_HAS_CPU_NEVADA
Yoichi Yuasa0a22e0d2007-03-02 12:42:33 +090056 select SYS_HAS_EARLY_PRINTK
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -070057 select SYS_SUPPORTS_32BIT_KERNEL
58 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
Ralf Baechle5e83d432005-10-29 19:32:41 +010059 select SYS_SUPPORTS_LITTLE_ENDIAN
Atsushi Nemoto9fd32cf2006-12-08 01:55:07 +090060 select GENERIC_HARDIRQS_NO__DO_IRQ
Linus Torvalds1da177e2005-04-16 15:20:36 -070061
62config MACH_DECSTATION
Martin Michlmayr3fa986f2006-05-09 23:34:53 +020063 bool "DECstations"
Linus Torvalds1da177e2005-04-16 15:20:36 -070064 select BOOT_ELF32
65 select DMA_NONCOHERENT
Maciej W. Rozyckid388d682007-05-29 15:08:07 +010066 select NO_IOPORT
Ralf Baechle36a88532007-03-01 11:56:43 +000067 select SYS_HAS_EARLY_PRINTK
Linus Torvalds1da177e2005-04-16 15:20:36 -070068 select IRQ_CPU
Ralf Baechle7cf80532005-10-20 22:33:09 +010069 select SYS_HAS_CPU_R3000
70 select SYS_HAS_CPU_R4X00
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -070071 select SYS_SUPPORTS_32BIT_KERNEL
72 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
Ralf Baechle5e83d432005-10-29 19:32:41 +010073 select SYS_SUPPORTS_LITTLE_ENDIAN
Atsushi Nemoto1723b4a2006-06-20 00:19:13 +090074 select SYS_SUPPORTS_128HZ
75 select SYS_SUPPORTS_256HZ
76 select SYS_SUPPORTS_1024HZ
Ralf Baechle5e83d432005-10-29 19:32:41 +010077 help
Linus Torvalds1da177e2005-04-16 15:20:36 -070078 This enables support for DEC's MIPS based workstations. For details
79 see the Linux/MIPS FAQ on <http://www.linux-mips.org/> and the
80 DECstation porting pages on <http://decstation.unix-ag.org/>.
81
82 If you have one of the following DECstation Models you definitely
83 want to choose R4xx0 for the CPU Type:
84
85 DECstation 5000/50
86 DECstation 5000/150
87 DECstation 5000/260
88 DECsystem 5900/260
89
90 otherwise choose R3000.
91
92config MIPS_EV64120
Martin Michlmayr3fa986f2006-05-09 23:34:53 +020093 bool "Galileo EV64120 Evaluation board (EXPERIMENTAL)"
Linus Torvalds1da177e2005-04-16 15:20:36 -070094 depends on EXPERIMENTAL
95 select DMA_NONCOHERENT
96 select HW_HAS_PCI
Yoichi Yuasa252161e2007-03-14 21:51:26 +090097 select PCI_GT64XXX_PCI0
Ralf Baechle7cf80532005-10-20 22:33:09 +010098 select SYS_HAS_CPU_R5000
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -070099 select SYS_SUPPORTS_32BIT_KERNEL
100 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100101 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechlecc801072007-02-17 02:58:39 +0000102 select SYS_SUPPORTS_KGDB
Linus Torvalds1da177e2005-04-16 15:20:36 -0700103 help
104 This is an evaluation board based on the Galileo GT-64120
105 single-chip system controller that contains a MIPS R5000 compatible
106 core running at 75/100MHz. Their website is located at
107 <http://www.marvell.com/>. Say Y here if you wish to build a
108 kernel for this platform.
109
Ralf Baechle5e83d432005-10-29 19:32:41 +0100110config MACH_JAZZ
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200111 bool "Jazz family of machines"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100112 select ARC
113 select ARC32
114 select ARCH_MAY_HAVE_PC_FDC
115 select GENERIC_ISA_DMA
Michael Neulinge5c6c8e2006-03-14 00:11:50 -0500116 select I8253
Ralf Baechle5e83d432005-10-29 19:32:41 +0100117 select I8259
118 select ISA
Ralf Baechle7cf80532005-10-20 22:33:09 +0100119 select SYS_HAS_CPU_R4X00
Ralf Baechle5e83d432005-10-29 19:32:41 +0100120 select SYS_SUPPORTS_32BIT_KERNEL
121 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
Atsushi Nemoto1723b4a2006-06-20 00:19:13 +0900122 select SYS_SUPPORTS_100HZ
Atsushi Nemoto9fd32cf2006-12-08 01:55:07 +0900123 select GENERIC_HARDIRQS_NO__DO_IRQ
Linus Torvalds1da177e2005-04-16 15:20:36 -0700124 help
Ralf Baechle5e83d432005-10-29 19:32:41 +0100125 This a family of machines based on the MIPS R4030 chipset which was
126 used by several vendors to build RISC/os and Windows NT workstations.
127 Members include the Acer PICA, MIPS Magnum 4000, MIPS Millenium and
128 Olivetti M700-10 workstations.
129
130config LASAT
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200131 bool "LASAT Networks platforms"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100132 select DMA_NONCOHERENT
Ralf Baechle36a88532007-03-01 11:56:43 +0000133 select SYS_HAS_EARLY_PRINTK
Ralf Baechle5e83d432005-10-29 19:32:41 +0100134 select HW_HAS_PCI
Yoichi Yuasa252161e2007-03-14 21:51:26 +0900135 select PCI_GT64XXX_PCI0
Ralf Baechle5e83d432005-10-29 19:32:41 +0100136 select MIPS_NILE4
137 select R5000_CPU_SCACHE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100138 select SYS_HAS_CPU_R5000
Ralf Baechle5e83d432005-10-29 19:32:41 +0100139 select SYS_SUPPORTS_32BIT_KERNEL
Ralf Baechle080e9482007-03-13 08:59:54 +0000140 select SYS_SUPPORTS_64BIT_KERNEL if BROKEN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100141 select SYS_SUPPORTS_LITTLE_ENDIAN
Franck Bui-Huue77c2322006-12-01 18:22:27 +0100142 select GENERIC_HARDIRQS_NO__DO_IRQ
Linus Torvalds1da177e2005-04-16 15:20:36 -0700143
144config MIPS_ATLAS
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200145 bool "MIPS Atlas board"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700146 select BOOT_ELF32
147 select DMA_NONCOHERENT
Ralf Baechle36a88532007-03-01 11:56:43 +0000148 select SYS_HAS_EARLY_PRINTK
Ralf Baechle5e83d432005-10-29 19:32:41 +0100149 select IRQ_CPU
Linus Torvalds1da177e2005-04-16 15:20:36 -0700150 select HW_HAS_PCI
Ralf Baechle5e83d432005-10-29 19:32:41 +0100151 select MIPS_BOARDS_GEN
152 select MIPS_BONITO64
Yoichi Yuasa252161e2007-03-14 21:51:26 +0900153 select PCI_GT64XXX_PCI0
Ralf Baechle5e83d432005-10-29 19:32:41 +0100154 select MIPS_MSC
Maciej W. Rozyckif4b7cdb2005-02-12 04:31:49 +0000155 select RM7000_CPU_SCACHE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700156 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100157 select SYS_HAS_CPU_MIPS32_R1
158 select SYS_HAS_CPU_MIPS32_R2
159 select SYS_HAS_CPU_MIPS64_R1
160 select SYS_HAS_CPU_NEVADA
161 select SYS_HAS_CPU_RM7000
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700162 select SYS_SUPPORTS_32BIT_KERNEL
163 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100164 select SYS_SUPPORTS_BIG_ENDIAN
165 select SYS_SUPPORTS_LITTLE_ENDIAN
Ralf Baechlef41ae0b2006-06-05 17:24:46 +0100166 select SYS_SUPPORTS_MULTITHREADING if EXPERIMENTAL
Franck Bui-Huu9693a852007-02-02 17:41:47 +0100167 select SYS_SUPPORTS_SMARTMIPS
Franck Bui-Huue77c2322006-12-01 18:22:27 +0100168 select GENERIC_HARDIRQS_NO__DO_IRQ
Linus Torvalds1da177e2005-04-16 15:20:36 -0700169 help
Maciej W. Rozyckif638d192005-02-02 22:23:46 +0000170 This enables support for the MIPS Technologies Atlas evaluation
Linus Torvalds1da177e2005-04-16 15:20:36 -0700171 board.
172
173config MIPS_MALTA
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200174 bool "MIPS Malta board"
Ralf Baechle61ed2422005-09-15 08:52:34 +0000175 select ARCH_MAY_HAVE_PC_FDC
Linus Torvalds1da177e2005-04-16 15:20:36 -0700176 select BOOT_ELF32
177 select HAVE_STD_PC_SERIAL_PORT
178 select DMA_NONCOHERENT
179 select GENERIC_ISA_DMA
Ralf Baechleaa414df2006-11-30 01:14:51 +0000180 select IRQ_CPU
Linus Torvalds1da177e2005-04-16 15:20:36 -0700181 select HW_HAS_PCI
182 select I8259
Ralf Baechle5e83d432005-10-29 19:32:41 +0100183 select MIPS_BOARDS_GEN
184 select MIPS_BONITO64
Chris Dearman9318c512006-06-20 17:15:20 +0100185 select MIPS_CPU_SCACHE
Yoichi Yuasa252161e2007-03-14 21:51:26 +0900186 select PCI_GT64XXX_PCI0
Ralf Baechle5e83d432005-10-29 19:32:41 +0100187 select MIPS_MSC
Linus Torvalds1da177e2005-04-16 15:20:36 -0700188 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100189 select SYS_HAS_CPU_MIPS32_R1
190 select SYS_HAS_CPU_MIPS32_R2
191 select SYS_HAS_CPU_MIPS64_R1
192 select SYS_HAS_CPU_NEVADA
193 select SYS_HAS_CPU_RM7000
Ralf Baechle36a88532007-03-01 11:56:43 +0000194 select SYS_HAS_EARLY_PRINTK
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700195 select SYS_SUPPORTS_32BIT_KERNEL
196 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100197 select SYS_SUPPORTS_BIG_ENDIAN
198 select SYS_SUPPORTS_LITTLE_ENDIAN
Ralf Baechlef41ae0b2006-06-05 17:24:46 +0100199 select SYS_SUPPORTS_MULTITHREADING
Franck Bui-Huu9693a852007-02-02 17:41:47 +0100200 select SYS_SUPPORTS_SMARTMIPS
Linus Torvalds1da177e2005-04-16 15:20:36 -0700201 help
Maciej W. Rozyckif638d192005-02-02 22:23:46 +0000202 This enables support for the MIPS Technologies Malta evaluation
Linus Torvalds1da177e2005-04-16 15:20:36 -0700203 board.
204
205config MIPS_SEAD
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200206 bool "MIPS SEAD board (EXPERIMENTAL)"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700207 depends on EXPERIMENTAL
208 select IRQ_CPU
209 select DMA_NONCOHERENT
Ralf Baechle36a88532007-03-01 11:56:43 +0000210 select SYS_HAS_EARLY_PRINTK
Ralf Baechle5e83d432005-10-29 19:32:41 +0100211 select MIPS_BOARDS_GEN
Ralf Baechle7cf80532005-10-20 22:33:09 +0100212 select SYS_HAS_CPU_MIPS32_R1
213 select SYS_HAS_CPU_MIPS32_R2
214 select SYS_HAS_CPU_MIPS64_R1
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700215 select SYS_SUPPORTS_32BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100216 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
217 select SYS_SUPPORTS_BIG_ENDIAN
218 select SYS_SUPPORTS_LITTLE_ENDIAN
Franck Bui-Huu9693a852007-02-02 17:41:47 +0100219 select SYS_SUPPORTS_SMARTMIPS
Maciej W. Rozyckif638d192005-02-02 22:23:46 +0000220 help
221 This enables support for the MIPS Technologies SEAD evaluation
222 board.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700223
Mark.Zhana240a462006-05-06 17:04:20 +0800224config WR_PPMC
Mark.Zhan92478572006-06-20 18:15:02 +0800225 bool "Wind River PPMC board"
Mark.Zhana240a462006-05-06 17:04:20 +0800226 select IRQ_CPU
227 select BOOT_ELF32
228 select DMA_NONCOHERENT
229 select HW_HAS_PCI
Yoichi Yuasa252161e2007-03-14 21:51:26 +0900230 select PCI_GT64XXX_PCI0
Mark.Zhana240a462006-05-06 17:04:20 +0800231 select SWAP_IO_SPACE
232 select SYS_HAS_CPU_MIPS32_R1
233 select SYS_HAS_CPU_MIPS32_R2
234 select SYS_HAS_CPU_MIPS64_R1
235 select SYS_HAS_CPU_NEVADA
236 select SYS_HAS_CPU_RM7000
237 select SYS_SUPPORTS_32BIT_KERNEL
238 select SYS_SUPPORTS_64BIT_KERNEL
239 select SYS_SUPPORTS_BIG_ENDIAN
240 select SYS_SUPPORTS_LITTLE_ENDIAN
241 help
242 This enables support for the Wind River MIPS32 4KC PPMC evaluation
243 board, which is based on GT64120 bridge chip.
244
Ralf Baechlec78cbf42005-09-30 13:59:37 +0100245config MIPS_SIM
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200246 bool 'MIPS simulator (MIPSsim)'
Ralf Baechlec78cbf42005-09-30 13:59:37 +0100247 select DMA_NONCOHERENT
Ralf Baechle36a88532007-03-01 11:56:43 +0000248 select SYS_HAS_EARLY_PRINTK
Ralf Baechlec78cbf42005-09-30 13:59:37 +0100249 select IRQ_CPU
Ralf Baechle7cf80532005-10-20 22:33:09 +0100250 select SYS_HAS_CPU_MIPS32_R1
251 select SYS_HAS_CPU_MIPS32_R2
Ralf Baechle36a88532007-03-01 11:56:43 +0000252 select SYS_HAS_EARLY_PRINTK
Ralf Baechlec78cbf42005-09-30 13:59:37 +0100253 select SYS_SUPPORTS_32BIT_KERNEL
254 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechlef6e23732007-07-10 17:32:56 +0100255 select SYS_SUPPORTS_MULTITHREADING
Ralf Baechlec78cbf42005-09-30 13:59:37 +0100256 select SYS_SUPPORTS_LITTLE_ENDIAN
257 help
258 This option enables support for MIPS Technologies MIPSsim software
259 emulator.
260
Ralf Baechle5e83d432005-10-29 19:32:41 +0100261config MOMENCO_OCELOT
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200262 bool "Momentum Ocelot board"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100263 select DMA_NONCOHERENT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700264 select HW_HAS_PCI
265 select IRQ_CPU
266 select IRQ_CPU_RM7K
Yoichi Yuasa252161e2007-03-14 21:51:26 +0900267 select PCI_GT64XXX_PCI0
Ralf Baechle5e83d432005-10-29 19:32:41 +0100268 select RM7000_CPU_SCACHE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700269 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100270 select SYS_HAS_CPU_RM7000
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700271 select SYS_SUPPORTS_32BIT_KERNEL
272 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100273 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechlecc801072007-02-17 02:58:39 +0000274 select SYS_SUPPORTS_KGDB
Linus Torvalds1da177e2005-04-16 15:20:36 -0700275 help
Ralf Baechle5e83d432005-10-29 19:32:41 +0100276 The Ocelot is a MIPS-based Single Board Computer (SBC) made by
277 Momentum Computer <http://www.momenco.com/>.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700278
Ralf Baechle5e83d432005-10-29 19:32:41 +0100279config MOMENCO_OCELOT_3
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200280 bool "Momentum Ocelot-3 board"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100281 select BOOT_ELF32
282 select DMA_NONCOHERENT
283 select HW_HAS_PCI
284 select IRQ_CPU
285 select IRQ_CPU_RM7K
286 select IRQ_MV64340
287 select PCI_MARVELL
288 select RM7000_CPU_SCACHE
289 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100290 select SYS_HAS_CPU_RM9000
Ralf Baechle5e83d432005-10-29 19:32:41 +0100291 select SYS_SUPPORTS_32BIT_KERNEL
292 select SYS_SUPPORTS_64BIT_KERNEL
293 select SYS_SUPPORTS_BIG_ENDIAN
294 help
295 The Ocelot-3 is based off Discovery III System Controller and
296 PMC-Sierra Rm79000 core.
297
298config MOMENCO_OCELOT_C
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200299 bool "Momentum Ocelot-C board"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100300 select DMA_NONCOHERENT
301 select HW_HAS_PCI
302 select IRQ_CPU
303 select IRQ_MV64340
304 select PCI_MARVELL
305 select RM7000_CPU_SCACHE
306 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100307 select SYS_HAS_CPU_RM7000
Ralf Baechle5e83d432005-10-29 19:32:41 +0100308 select SYS_SUPPORTS_32BIT_KERNEL
Ralf Baechle8a88ca82006-11-02 17:23:33 +0000309 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100310 select SYS_SUPPORTS_BIG_ENDIAN
Franck Bui-Huue77c2322006-12-01 18:22:27 +0100311 select GENERIC_HARDIRQS_NO__DO_IRQ
Ralf Baechle5e83d432005-10-29 19:32:41 +0100312 help
313 The Ocelot is a MIPS-based Single Board Computer (SBC) made by
314 Momentum Computer <http://www.momenco.com/>.
315
Pete Popovbdf21b12005-07-14 17:47:57 +0000316config PNX8550_JBS
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200317 bool "Philips PNX8550 based JBS board"
Pete Popovbdf21b12005-07-14 17:47:57 +0000318 select PNX8550
319 select SYS_SUPPORTS_LITTLE_ENDIAN
320
Vitaly Woolf0647a52006-12-08 11:40:35 +0300321config PNX8550_STB810
Yoichi Yuasae460b732007-05-28 22:54:28 +0900322 bool "Philips PNX8550 based STB810 board"
Vitaly Woolf0647a52006-12-08 11:40:35 +0300323 select PNX8550
324 select SYS_SUPPORTS_LITTLE_ENDIAN
325
Linus Torvalds1da177e2005-04-16 15:20:36 -0700326config DDB5477
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200327 bool "NEC DDB Vrc-5477"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100328 select DDB5XXX_COMMON
Linus Torvalds1da177e2005-04-16 15:20:36 -0700329 select DMA_NONCOHERENT
330 select HW_HAS_PCI
331 select I8259
332 select IRQ_CPU
Ralf Baechle7cf80532005-10-20 22:33:09 +0100333 select SYS_HAS_CPU_R5432
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700334 select SYS_SUPPORTS_32BIT_KERNEL
335 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
Ralf Baechlecc801072007-02-17 02:58:39 +0000336 select SYS_SUPPORTS_KGDB
337 select SYS_SUPPORTS_KGDB
Ralf Baechle5e83d432005-10-29 19:32:41 +0100338 select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700339 help
340 This enables support for the R5432-based NEC DDB Vrc-5477,
341 or Rockhopper/SolutionGear boards with R5432/R5500 CPUs.
342
343 Features : kernel debugging, serial terminal, NFS root fs, on-board
344 ether port USB, AC97, PCI, etc.
345
Ralf Baechle5e83d432005-10-29 19:32:41 +0100346config MACH_VR41XX
Yoichi Yuasa74142d62007-04-26 19:45:09 +0900347 bool "NEC VR4100 series based machines"
Ralf Baechle7cf80532005-10-20 22:33:09 +0100348 select SYS_HAS_CPU_VR41XX
Atsushi Nemoto9fd32cf2006-12-08 01:55:07 +0900349 select GENERIC_HARDIRQS_NO__DO_IRQ
Ralf Baechle5e83d432005-10-29 19:32:41 +0100350
351config PMC_YOSEMITE
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200352 bool "PMC-Sierra Yosemite eval board"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100353 select DMA_COHERENT
354 select HW_HAS_PCI
355 select IRQ_CPU
356 select IRQ_CPU_RM7K
357 select IRQ_CPU_RM9K
358 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100359 select SYS_HAS_CPU_RM9000
Ralf Baechle36a88532007-03-01 11:56:43 +0000360 select SYS_HAS_EARLY_PRINTK
Ralf Baechle5e83d432005-10-29 19:32:41 +0100361 select SYS_SUPPORTS_32BIT_KERNEL
362 select SYS_SUPPORTS_64BIT_KERNEL
363 select SYS_SUPPORTS_BIG_ENDIAN
364 select SYS_SUPPORTS_HIGHMEM
Ralf Baechlecc801072007-02-17 02:58:39 +0000365 select SYS_SUPPORTS_KGDB
Ralf Baechlee73ea272006-06-04 11:51:46 +0100366 select SYS_SUPPORTS_SMP
Ralf Baechle5e83d432005-10-29 19:32:41 +0100367 help
368 Yosemite is an evaluation board for the RM9000x2 processor
369 manufactured by PMC-Sierra.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700370
Ralf Baechle07119622005-09-03 15:56:11 -0700371config QEMU
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200372 bool "Qemu"
Ralf Baechle07119622005-09-03 15:56:11 -0700373 select DMA_COHERENT
374 select GENERIC_ISA_DMA
375 select HAVE_STD_PC_SERIAL_PORT
Michael Neulinge5c6c8e2006-03-14 00:11:50 -0500376 select I8253
Ralf Baechle07119622005-09-03 15:56:11 -0700377 select I8259
378 select ISA
379 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100380 select SYS_HAS_CPU_MIPS32_R1
Ralf Baechle07119622005-09-03 15:56:11 -0700381 select SYS_SUPPORTS_32BIT_KERNEL
382 select SYS_SUPPORTS_BIG_ENDIAN
Aurelien Jarnoc8cc9612006-09-27 23:07:25 +0200383 select SYS_SUPPORTS_LITTLE_ENDIAN
Atsushi Nemotob1c6cd42006-07-03 00:09:47 +0900384 select ARCH_SPARSEMEM_ENABLE
Atsushi Nemoto9fd32cf2006-12-08 01:55:07 +0900385 select GENERIC_HARDIRQS_NO__DO_IRQ
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +0900386 select NR_CPUS_DEFAULT_1
387 select SYS_SUPPORTS_SMP
Ralf Baechle07119622005-09-03 15:56:11 -0700388 help
Ralf Baechle5e83d432005-10-29 19:32:41 +0100389 Qemu is a software emulator which among other architectures also
390 can simulate a MIPS32 4Kc system. This patch adds support for the
391 system architecture that currently is being simulated by Qemu. It
392 will eventually be removed again when Qemu has the capability to
393 simulate actual MIPS hardware platforms. More information on Qemu
394 can be found at http://www.linux-mips.org/wiki/Qemu.
Ralf Baechle07119622005-09-03 15:56:11 -0700395
dmitry pervushin355c4712006-05-21 14:53:06 +0400396config MARKEINS
Yoichi Yuasae460b732007-05-28 22:54:28 +0900397 bool "NEC EMMA2RH Mark-eins"
dmitry pervushin355c4712006-05-21 14:53:06 +0400398 select DMA_NONCOHERENT
399 select HW_HAS_PCI
400 select IRQ_CPU
401 select SWAP_IO_SPACE
402 select SYS_SUPPORTS_32BIT_KERNEL
403 select SYS_SUPPORTS_BIG_ENDIAN
404 select SYS_SUPPORTS_LITTLE_ENDIAN
405 select SYS_HAS_CPU_R5000
406 help
407 This enables support for the R5432-based NEC Mark-eins
408 boards with R5500 CPU.
409
Linus Torvalds1da177e2005-04-16 15:20:36 -0700410config SGI_IP22
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200411 bool "SGI IP22 (Indy/Indigo2)"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700412 select ARC
413 select ARC32
414 select BOOT_ELF32
415 select DMA_NONCOHERENT
Ralf Baechle5e83d432005-10-29 19:32:41 +0100416 select HW_HAS_EISA
Linus Torvalds1da177e2005-04-16 15:20:36 -0700417 select IP22_CPU_SCACHE
418 select IRQ_CPU
Ralf Baechleaa414df2006-11-30 01:14:51 +0000419 select GENERIC_ISA_DMA_SUPPORT_BROKEN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700420 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100421 select SYS_HAS_CPU_R4X00
422 select SYS_HAS_CPU_R5000
Ralf Baechle36a88532007-03-01 11:56:43 +0000423 select SYS_HAS_EARLY_PRINTK
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700424 select SYS_SUPPORTS_32BIT_KERNEL
425 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100426 select SYS_SUPPORTS_BIG_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700427 help
428 This are the SGI Indy, Challenge S and Indigo2, as well as certain
429 OEM variants like the Tandem CMN B006S. To compile a Linux kernel
430 that runs on these, say Y here.
431
432config SGI_IP27
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200433 bool "SGI IP27 (Origin200/2000)"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700434 select ARC
435 select ARC64
Ralf Baechle5e83d432005-10-29 19:32:41 +0100436 select BOOT_ELF64
Linus Torvalds1da177e2005-04-16 15:20:36 -0700437 select DMA_IP27
Ralf Baechle36a88532007-03-01 11:56:43 +0000438 select SYS_HAS_EARLY_PRINTK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700439 select HW_HAS_PCI
Ralf Baechle130e2fb2007-02-06 16:53:15 +0000440 select NR_CPUS_DEFAULT_64
Linus Torvalds1da177e2005-04-16 15:20:36 -0700441 select PCI_DOMAINS
Ralf Baechle7cf80532005-10-20 22:33:09 +0100442 select SYS_HAS_CPU_R10000
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700443 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100444 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechlecc801072007-02-17 02:58:39 +0000445 select SYS_SUPPORTS_KGDB
Ralf Baechled8cb4e12006-06-11 23:03:08 +0100446 select SYS_SUPPORTS_NUMA
Ralf Baechle1a5c5de2006-11-02 17:23:33 +0000447 select SYS_SUPPORTS_SMP
Franck Bui-Huue77c2322006-12-01 18:22:27 +0100448 select GENERIC_HARDIRQS_NO__DO_IRQ
Linus Torvalds1da177e2005-04-16 15:20:36 -0700449 help
450 This are the SGI Origin 200, Origin 2000 and Onyx 2 Graphics
451 workstations. To compile a Linux kernel that runs on these, say Y
452 here.
453
Linus Torvalds1da177e2005-04-16 15:20:36 -0700454config SGI_IP32
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200455 bool "SGI IP32 (O2) (EXPERIMENTAL)"
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700456 depends on EXPERIMENTAL
Linus Torvalds1da177e2005-04-16 15:20:36 -0700457 select ARC
458 select ARC32
459 select BOOT_ELF32
Linus Torvalds1da177e2005-04-16 15:20:36 -0700460 select DMA_NONCOHERENT
461 select HW_HAS_PCI
462 select R5000_CPU_SCACHE
463 select RM7000_CPU_SCACHE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100464 select SYS_HAS_CPU_R5000
465 select SYS_HAS_CPU_R10000 if BROKEN
466 select SYS_HAS_CPU_RM7000
Ralf Baechledd2f18f2006-01-19 14:55:42 +0000467 select SYS_HAS_CPU_NEVADA
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700468 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100469 select SYS_SUPPORTS_BIG_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700470 help
471 If you want this kernel to run on SGI O2 workstation, say Y here.
472
Andrew Isaacson9a6dcea2005-10-19 23:57:11 -0700473config SIBYTE_BIGSUR
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200474 bool "Sibyte BCM91480B-BigSur"
Andrew Isaacson9a6dcea2005-10-19 23:57:11 -0700475 select BOOT_ELF32
476 select DMA_COHERENT
Ralf Baechle130e2fb2007-02-06 16:53:15 +0000477 select NR_CPUS_DEFAULT_4
Ralf Baechle7cf80532005-10-20 22:33:09 +0100478 select PCI_DOMAINS
Andrew Isaacson9a6dcea2005-10-19 23:57:11 -0700479 select SIBYTE_BCM1x80
480 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100481 select SYS_HAS_CPU_SB1
Andrew Isaacson9a6dcea2005-10-19 23:57:11 -0700482 select SYS_SUPPORTS_BIG_ENDIAN
483 select SYS_SUPPORTS_LITTLE_ENDIAN
484
Ralf Baechle5e83d432005-10-29 19:32:41 +0100485config SIBYTE_SWARM
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200486 bool "Sibyte BCM91250A-SWARM"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100487 select BOOT_ELF32
488 select DMA_COHERENT
Ralf Baechle130e2fb2007-02-06 16:53:15 +0000489 select NR_CPUS_DEFAULT_2
Ralf Baechle5e83d432005-10-29 19:32:41 +0100490 select SIBYTE_SB1250
491 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100492 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100493 select SYS_SUPPORTS_BIG_ENDIAN
494 select SYS_SUPPORTS_HIGHMEM
Ralf Baechlecc801072007-02-17 02:58:39 +0000495 select SYS_SUPPORTS_KGDB
Ralf Baechle5e83d432005-10-29 19:32:41 +0100496 select SYS_SUPPORTS_LITTLE_ENDIAN
Pete Popove3ad1c22005-03-01 06:33:16 +0000497
Ralf Baechle5e83d432005-10-29 19:32:41 +0100498config SIBYTE_SENTOSA
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200499 bool "Sibyte BCM91250E-Sentosa"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100500 depends on EXPERIMENTAL
501 select BOOT_ELF32
502 select DMA_COHERENT
Ralf Baechle130e2fb2007-02-06 16:53:15 +0000503 select NR_CPUS_DEFAULT_2
Ralf Baechle5e83d432005-10-29 19:32:41 +0100504 select SIBYTE_SB1250
505 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100506 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100507 select SYS_SUPPORTS_BIG_ENDIAN
508 select SYS_SUPPORTS_LITTLE_ENDIAN
509
510config SIBYTE_RHONE
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200511 bool "Sibyte BCM91125E-Rhone"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100512 depends on EXPERIMENTAL
513 select BOOT_ELF32
514 select DMA_COHERENT
515 select SIBYTE_BCM1125H
516 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100517 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100518 select SYS_SUPPORTS_BIG_ENDIAN
519 select SYS_SUPPORTS_LITTLE_ENDIAN
520
521config SIBYTE_CARMEL
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200522 bool "Sibyte BCM91120x-Carmel"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100523 depends on EXPERIMENTAL
524 select BOOT_ELF32
525 select DMA_COHERENT
526 select SIBYTE_BCM1120
527 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100528 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100529 select SYS_SUPPORTS_BIG_ENDIAN
530 select SYS_SUPPORTS_LITTLE_ENDIAN
531
532config SIBYTE_PTSWARM
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200533 bool "Sibyte BCM91250PT-PTSWARM"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100534 depends on EXPERIMENTAL
535 select BOOT_ELF32
536 select DMA_COHERENT
Ralf Baechle130e2fb2007-02-06 16:53:15 +0000537 select NR_CPUS_DEFAULT_2
Ralf Baechle5e83d432005-10-29 19:32:41 +0100538 select SIBYTE_SB1250
539 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100540 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100541 select SYS_SUPPORTS_BIG_ENDIAN
542 select SYS_SUPPORTS_HIGHMEM
543 select SYS_SUPPORTS_LITTLE_ENDIAN
544
545config SIBYTE_LITTLESUR
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200546 bool "Sibyte BCM91250C2-LittleSur"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100547 depends on EXPERIMENTAL
548 select BOOT_ELF32
549 select DMA_COHERENT
Ralf Baechle130e2fb2007-02-06 16:53:15 +0000550 select NR_CPUS_DEFAULT_2
Ralf Baechle5e83d432005-10-29 19:32:41 +0100551 select SIBYTE_SB1250
552 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100553 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100554 select SYS_SUPPORTS_BIG_ENDIAN
555 select SYS_SUPPORTS_HIGHMEM
556 select SYS_SUPPORTS_LITTLE_ENDIAN
557
558config SIBYTE_CRHINE
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200559 bool "Sibyte BCM91120C-CRhine"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100560 depends on EXPERIMENTAL
561 select BOOT_ELF32
562 select DMA_COHERENT
563 select SIBYTE_BCM1120
564 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100565 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100566 select SYS_SUPPORTS_BIG_ENDIAN
567 select SYS_SUPPORTS_LITTLE_ENDIAN
568
569config SIBYTE_CRHONE
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200570 bool "Sibyte BCM91125C-CRhone"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100571 depends on EXPERIMENTAL
572 select BOOT_ELF32
573 select DMA_COHERENT
574 select SIBYTE_BCM1125
575 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100576 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100577 select SYS_SUPPORTS_BIG_ENDIAN
578 select SYS_SUPPORTS_HIGHMEM
579 select SYS_SUPPORTS_LITTLE_ENDIAN
580
Thomas Bogendoerfer14b36af2006-12-05 17:05:44 +0100581config SNI_RM
582 bool "SNI RM200/300/400"
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200583 select ARC if CPU_LITTLE_ENDIAN
584 select ARC32 if CPU_LITTLE_ENDIAN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100585 select ARCH_MAY_HAVE_PC_FDC
586 select BOOT_ELF32
587 select DMA_NONCOHERENT
588 select GENERIC_ISA_DMA
Ralf Baechle5e83d432005-10-29 19:32:41 +0100589 select HW_HAS_EISA
590 select HW_HAS_PCI
Thomas Bogendoerferc066a322006-12-28 18:22:32 +0100591 select IRQ_CPU
Michael Neulinge5c6c8e2006-03-14 00:11:50 -0500592 select I8253
Ralf Baechle5e83d432005-10-29 19:32:41 +0100593 select I8259
594 select ISA
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200595 select SWAP_IO_SPACE if CPU_BIG_ENDIAN
Ralf Baechle7cf80532005-10-20 22:33:09 +0100596 select SYS_HAS_CPU_R4X00
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200597 select SYS_HAS_CPU_R5000
Thomas Bogendoerferc066a322006-12-28 18:22:32 +0100598 select SYS_HAS_CPU_R10000
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200599 select R5000_CPU_SCACHE
Ralf Baechle36a88532007-03-01 11:56:43 +0000600 select SYS_HAS_EARLY_PRINTK
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700601 select SYS_SUPPORTS_32BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100602 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200603 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100604 select SYS_SUPPORTS_HIGHMEM
605 select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700606 help
Thomas Bogendoerfer14b36af2006-12-05 17:05:44 +0100607 The SNI RM200/300/400 are MIPS-based machines manufactured by
608 Siemens Nixdorf Informationssysteme (SNI), parent company of Pyramid
Ralf Baechle5e83d432005-10-29 19:32:41 +0100609 Technology and now in turn merged with Fujitsu. Say Y here to
610 support this machine type.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700611
Ralf Baechle5e83d432005-10-29 19:32:41 +0100612config TOSHIBA_JMR3927
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200613 bool "Toshiba JMR-TX3927 board"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100614 select DMA_NONCOHERENT
615 select HW_HAS_PCI
616 select MIPS_TX3927
617 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100618 select SYS_HAS_CPU_TX39XX
Ralf Baechle5e83d432005-10-29 19:32:41 +0100619 select SYS_SUPPORTS_32BIT_KERNEL
Sergei Shtylyov6a2603a2007-02-07 20:39:05 +0300620 select SYS_SUPPORTS_LITTLE_ENDIAN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100621 select SYS_SUPPORTS_BIG_ENDIAN
Atsushi Nemoto21274352007-03-15 00:58:28 +0900622 select GENERIC_HARDIRQS_NO__DO_IRQ
Ralf Baechle5e83d432005-10-29 19:32:41 +0100623
624config TOSHIBA_RBTX4927
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200625 bool "Toshiba TBTX49[23]7 board"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100626 select DMA_NONCOHERENT
627 select HAS_TXX9_SERIAL
628 select HW_HAS_PCI
629 select I8259
Ralf Baechle5e83d432005-10-29 19:32:41 +0100630 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100631 select SYS_HAS_CPU_TX49XX
Ralf Baechle5e83d432005-10-29 19:32:41 +0100632 select SYS_SUPPORTS_32BIT_KERNEL
633 select SYS_SUPPORTS_64BIT_KERNEL
Sergei Shtylyov6a2603a2007-02-07 20:39:05 +0300634 select SYS_SUPPORTS_LITTLE_ENDIAN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100635 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechlecc801072007-02-17 02:58:39 +0000636 select SYS_SUPPORTS_KGDB
Atsushi Nemoto9fd32cf2006-12-08 01:55:07 +0900637 select GENERIC_HARDIRQS_NO__DO_IRQ
Ralf Baechle5e83d432005-10-29 19:32:41 +0100638 help
639 This Toshiba board is based on the TX4927 processor. Say Y here to
640 support this machine type
Linus Torvalds1da177e2005-04-16 15:20:36 -0700641
Ralf Baechle23fbee92005-07-25 22:45:45 +0000642config TOSHIBA_RBTX4938
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200643 bool "Toshiba RBTX4938 board"
Ralf Baechle23fbee92005-07-25 22:45:45 +0000644 select HAVE_STD_PC_SERIAL_PORT
645 select DMA_NONCOHERENT
646 select GENERIC_ISA_DMA
647 select HAS_TXX9_SERIAL
648 select HW_HAS_PCI
649 select I8259
Ralf Baechle23fbee92005-07-25 22:45:45 +0000650 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100651 select SYS_HAS_CPU_TX49XX
Ralf Baechle23fbee92005-07-25 22:45:45 +0000652 select SYS_SUPPORTS_32BIT_KERNEL
653 select SYS_SUPPORTS_LITTLE_ENDIAN
654 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechlecc801072007-02-17 02:58:39 +0000655 select SYS_SUPPORTS_KGDB
Atsushi Nemoto9fd32cf2006-12-08 01:55:07 +0900656 select GENERIC_HARDIRQS_NO__DO_IRQ
Ralf Baechle23fbee92005-07-25 22:45:45 +0000657 help
658 This Toshiba board is based on the TX4938 processor. Say Y here to
659 support this machine type
660
Linus Torvalds1da177e2005-04-16 15:20:36 -0700661endchoice
662
Yoichi Yuasac3543e22007-05-11 20:44:30 +0900663source "arch/mips/au1000/Kconfig"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100664source "arch/mips/ddb5xxx/Kconfig"
665source "arch/mips/gt64120/ev64120/Kconfig"
666source "arch/mips/jazz/Kconfig"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100667source "arch/mips/lasat/Kconfig"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100668source "arch/mips/pmc-sierra/Kconfig"
Ralf Baechle29c48692005-02-07 01:27:14 +0000669source "arch/mips/sgi-ip27/Kconfig"
Ralf Baechle38b18f722005-02-03 14:28:23 +0000670source "arch/mips/sibyte/Kconfig"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100671source "arch/mips/tx4927/Kconfig"
Ralf Baechle23fbee92005-07-25 22:45:45 +0000672source "arch/mips/tx4938/Kconfig"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100673source "arch/mips/vr41xx/Kconfig"
Pete Popovbdf21b12005-07-14 17:47:57 +0000674source "arch/mips/philips/pnx8550/common/Kconfig"
Ralf Baechle38b18f722005-02-03 14:28:23 +0000675
Ralf Baechle5e83d432005-10-29 19:32:41 +0100676endmenu
677
Linus Torvalds1da177e2005-04-16 15:20:36 -0700678config RWSEM_GENERIC_SPINLOCK
679 bool
680 default y
681
682config RWSEM_XCHGADD_ALGORITHM
683 bool
684
David Howellsf0d1b0b2006-12-08 02:37:49 -0800685config ARCH_HAS_ILOG2_U32
686 bool
687 default n
688
689config ARCH_HAS_ILOG2_U64
690 bool
691 default n
692
Akinobu Mita3c9ee7e2006-03-26 01:39:30 -0800693config GENERIC_FIND_NEXT_BIT
694 bool
695 default y
696
697config GENERIC_HWEIGHT
698 bool
699 default y
700
Linus Torvalds1da177e2005-04-16 15:20:36 -0700701config GENERIC_CALIBRATE_DELAY
702 bool
703 default y
704
Ralf Baechle8db02012006-10-02 16:54:48 +0100705config GENERIC_TIME
706 bool
707 default y
708
Atsushi Nemoto1cc89032006-04-04 13:11:45 +0900709config SCHED_NO_NO_OMIT_FRAME_POINTER
710 bool
711 default y
712
Franck Bui-Huue77c2322006-12-01 18:22:27 +0100713config GENERIC_HARDIRQS_NO__DO_IRQ
714 bool
715 default n
716
Linus Torvalds1da177e2005-04-16 15:20:36 -0700717#
718# Select some configuration options automatically based on user selections.
719#
720config ARC
721 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700722
Ralf Baechle61ed2422005-09-15 08:52:34 +0000723config ARCH_MAY_HAVE_PC_FDC
724 bool
725
Ralf Baechle4ce588c2005-09-03 15:56:19 -0700726config DMA_COHERENT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700727 bool
728
Ralf Baechle4ce588c2005-09-03 15:56:19 -0700729config DMA_IP27
Linus Torvalds1da177e2005-04-16 15:20:36 -0700730 bool
731
Ralf Baechle4ce588c2005-09-03 15:56:19 -0700732config DMA_IP32
733 bool
734 select DMA_NEED_PCI_MAP_STATE
735
736config DMA_NONCOHERENT
737 bool
738 select DMA_NEED_PCI_MAP_STATE
739
740config DMA_NEED_PCI_MAP_STATE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700741 bool
742
743config EARLY_PRINTK
Ralf Baechle36a88532007-03-01 11:56:43 +0000744 bool "Early printk" if EMBEDDED && DEBUG_KERNEL
745 depends on SYS_HAS_EARLY_PRINTK
746 default y
747 help
748 This option enables special console drivers which allow the kernel
749 to print messages very early in the bootup process.
750
751 This is useful for kernel debugging when your machine crashes very
Robert P. J. Day490dcc42007-05-20 12:11:07 -0400752 early before the console code is initialized. For normal operation,
753 it is not recommended because it looks ugly on some machines and
754 doesn't cooperate with an X server. You should normally say N here,
Ralf Baechle36a88532007-03-01 11:56:43 +0000755 unless you want to debug such a crash.
756
757config SYS_HAS_EARLY_PRINTK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700758 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700759
760config GENERIC_ISA_DMA
761 bool
Atsushi Nemoto05502332007-03-21 00:36:02 +0900762 select ZONE_DMA
Linus Torvalds1da177e2005-04-16 15:20:36 -0700763
764config I8259
765 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700766
Linus Torvalds1da177e2005-04-16 15:20:36 -0700767config MIPS_BONITO64
768 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700769
770config MIPS_MSC
771 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700772
773config MIPS_NILE4
774 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700775
776config MIPS_DISABLE_OBSOLETE_IDE
777 bool
778
Maciej W. Rozyckid388d682007-05-29 15:08:07 +0100779config NO_IOPORT
780 def_bool n
781
Ralf Baechleaa414df2006-11-30 01:14:51 +0000782config GENERIC_ISA_DMA_SUPPORT_BROKEN
783 bool
Atsushi Nemoto05502332007-03-21 00:36:02 +0900784 select ZONE_DMA
Ralf Baechleaa414df2006-11-30 01:14:51 +0000785
Yoichi Yuasa09663332007-05-22 00:05:58 +0900786config GENERIC_GPIO
787 bool
788
Ralf Baechle5e83d432005-10-29 19:32:41 +0100789#
Matt LaPlante3cb2fcc2006-11-30 05:22:59 +0100790# Endianess selection. Sufficiently obscure so many users don't know what to
Ralf Baechle5e83d432005-10-29 19:32:41 +0100791# answer,so we try hard to limit the available choices. Also the use of a
792# choice statement should be more obvious to the user.
793#
794choice
795 prompt "Endianess selection"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700796 help
797 Some MIPS machines can be configured for either little or big endian
Ralf Baechle5e83d432005-10-29 19:32:41 +0100798 byte order. These modes require different kernels and a different
Matt LaPlante3cb2fcc2006-11-30 05:22:59 +0100799 Linux distribution. In general there is one preferred byteorder for a
Ralf Baechle5e83d432005-10-29 19:32:41 +0100800 particular system but some systems are just as commonly used in the
David Sterba3dde6ad2007-05-09 07:12:20 +0200801 one or the other endianness.
Ralf Baechle5e83d432005-10-29 19:32:41 +0100802
803config CPU_BIG_ENDIAN
804 bool "Big endian"
805 depends on SYS_SUPPORTS_BIG_ENDIAN
806
807config CPU_LITTLE_ENDIAN
808 bool "Little endian"
809 depends on SYS_SUPPORTS_LITTLE_ENDIAN
810 help
811
812endchoice
813
Ralf Baechle21162452007-02-09 17:08:58 +0000814config SYS_SUPPORTS_APM_EMULATION
815 bool
816
Ralf Baechle5e83d432005-10-29 19:32:41 +0100817config SYS_SUPPORTS_BIG_ENDIAN
818 bool
819
820config SYS_SUPPORTS_LITTLE_ENDIAN
821 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700822
823config IRQ_CPU
824 bool
825
826config IRQ_CPU_RM7K
827 bool
828
Ralf Baechle5e83d432005-10-29 19:32:41 +0100829config IRQ_CPU_RM9K
830 bool
831
Linus Torvalds1da177e2005-04-16 15:20:36 -0700832config IRQ_MV64340
833 bool
834
835config DDB5XXX_COMMON
836 bool
Ralf Baechlecc801072007-02-17 02:58:39 +0000837 select SYS_SUPPORTS_KGDB
Linus Torvalds1da177e2005-04-16 15:20:36 -0700838
839config MIPS_BOARDS_GEN
840 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700841
Yoichi Yuasa252161e2007-03-14 21:51:26 +0900842config PCI_GT64XXX_PCI0
Linus Torvalds1da177e2005-04-16 15:20:36 -0700843 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700844
845config MIPS_TX3927
846 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700847 select HAS_TXX9_SERIAL
Linus Torvalds1da177e2005-04-16 15:20:36 -0700848
thomas@koeller.dyndns.org663c3d92006-08-27 13:51:48 +0200849config MIPS_RM9122
850 bool
851 select SERIAL_RM9000
thomas@koeller.dyndns.org663c3d92006-08-27 13:51:48 +0200852
Linus Torvalds1da177e2005-04-16 15:20:36 -0700853config PCI_MARVELL
854 bool
855
Pete Popovbdf21b12005-07-14 17:47:57 +0000856config PNX8550
857 bool
858 select SOC_PNX8550
859
860config SOC_PNX8550
861 bool
Pete Popovbdf21b12005-07-14 17:47:57 +0000862 select DMA_NONCOHERENT
863 select HW_HAS_PCI
Ralf Baechleb8c2a772005-10-31 13:08:37 +0000864 select SYS_HAS_CPU_MIPS32_R1
Ralf Baechle36a88532007-03-01 11:56:43 +0000865 select SYS_HAS_EARLY_PRINTK
Ralf Baechle7cf80532005-10-20 22:33:09 +0100866 select SYS_SUPPORTS_32BIT_KERNEL
Franck Bui-Huue77c2322006-12-01 18:22:27 +0100867 select GENERIC_HARDIRQS_NO__DO_IRQ
Ralf Baechlecc801072007-02-17 02:58:39 +0000868 select SYS_SUPPORTS_KGDB
Florian Fainelli4ead1682007-05-22 21:44:42 +0200869 select GENERIC_GPIO
Pete Popovbdf21b12005-07-14 17:47:57 +0000870
Linus Torvalds1da177e2005-04-16 15:20:36 -0700871config SWAP_IO_SPACE
872 bool
873
dmitry pervushin355c4712006-05-21 14:53:06 +0400874config EMMA2RH
875 bool
876 depends on MARKEINS
877 default y
878
thomas@koeller.dyndns.org663c3d92006-08-27 13:51:48 +0200879config SERIAL_RM9000
880 bool
881
Linus Torvalds1da177e2005-04-16 15:20:36 -0700882#
883# Unfortunately not all GT64120 systems run the chip at the same clock.
884# As the user for the clock rate and try to minimize the available options.
885#
886choice
887 prompt "Galileo Chip Clock"
888 #default SYSCLK_83 if MIPS_EV64120
Franck Bui-Huu1e54f772007-05-07 18:01:51 +0200889 depends on MIPS_EV64120 || MOMENCO_OCELOT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700890 default SYSCLK_83 if MIPS_EV64120
Franck Bui-Huu1e54f772007-05-07 18:01:51 +0200891 default SYSCLK_100 if MOMENCO_OCELOT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700892
893config SYSCLK_75
894 bool "75" if MIPS_EV64120
895
896config SYSCLK_83
897 bool "83.3" if MIPS_EV64120
898
899config SYSCLK_100
Franck Bui-Huu1e54f772007-05-07 18:01:51 +0200900 bool "100" if MIPS_EV64120 || MOMENCO_OCELOT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700901
902endchoice
903
Ralf Baechle5e83d432005-10-29 19:32:41 +0100904config ARC32
905 bool
906
Linus Torvalds1da177e2005-04-16 15:20:36 -0700907config BOOT_ELF32
908 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700909
910config MIPS_L1_CACHE_SHIFT
911 int
Thomas Bogendoerferc066a322006-12-28 18:22:32 +0100912 default "4" if MACH_DECSTATION || SNI_RM
Linus Torvalds1da177e2005-04-16 15:20:36 -0700913 default "7" if SGI_IP27
914 default "5"
915
Linus Torvalds1da177e2005-04-16 15:20:36 -0700916config HAVE_STD_PC_SERIAL_PORT
917 bool
918
Linus Torvalds1da177e2005-04-16 15:20:36 -0700919config ARC_CONSOLE
920 bool "ARC console support"
Ralf Baechle36a88532007-03-01 11:56:43 +0000921 depends on SGI_IP22 || (SNI_RM && CPU_LITTLE_ENDIAN)
Linus Torvalds1da177e2005-04-16 15:20:36 -0700922
923config ARC_MEMORY
924 bool
Thomas Bogendoerfer14b36af2006-12-05 17:05:44 +0100925 depends on MACH_JAZZ || SNI_RM || SGI_IP32
Linus Torvalds1da177e2005-04-16 15:20:36 -0700926 default y
927
928config ARC_PROMLIB
929 bool
Thomas Bogendoerfer14b36af2006-12-05 17:05:44 +0100930 depends on MACH_JAZZ || SNI_RM || SGI_IP22 || SGI_IP32
Linus Torvalds1da177e2005-04-16 15:20:36 -0700931 default y
932
933config ARC64
934 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700935
936config BOOT_ELF64
937 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700938
Linus Torvalds1da177e2005-04-16 15:20:36 -0700939menu "CPU selection"
940
941choice
942 prompt "CPU type"
943 default CPU_R4X00
944
Ralf Baechle6e760c82005-07-06 12:08:11 +0000945config CPU_MIPS32_R1
946 bool "MIPS32 Release 1"
Ralf Baechle7cf80532005-10-20 22:33:09 +0100947 depends on SYS_HAS_CPU_MIPS32_R1
Ralf Baechlef7062dd2006-04-24 14:58:53 +0100948 select CPU_HAS_LLSC
Ralf Baechle6e760c82005-07-06 12:08:11 +0000949 select CPU_HAS_PREFETCH
Ralf Baechle797798c2005-08-10 15:17:11 +0000950 select CPU_SUPPORTS_32BIT_KERNEL
Ralf Baechleec28f302006-03-05 00:45:33 +0000951 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle6e760c82005-07-06 12:08:11 +0000952 help
Ralf Baechle5e83d432005-10-29 19:32:41 +0100953 Choose this option to build a kernel for release 1 or later of the
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +0000954 MIPS32 architecture. Most modern embedded systems with a 32-bit
955 MIPS processor are based on a MIPS32 processor. If you know the
956 specific type of processor in your system, choose those that one
957 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
958 Release 2 of the MIPS32 architecture is available since several
959 years so chances are you even have a MIPS32 Release 2 processor
960 in which case you should choose CPU_MIPS32_R2 instead for better
961 performance.
962
963config CPU_MIPS32_R2
964 bool "MIPS32 Release 2"
Ralf Baechle7cf80532005-10-20 22:33:09 +0100965 depends on SYS_HAS_CPU_MIPS32_R2
Ralf Baechlef7062dd2006-04-24 14:58:53 +0100966 select CPU_HAS_LLSC
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +0000967 select CPU_HAS_PREFETCH
Ralf Baechle797798c2005-08-10 15:17:11 +0000968 select CPU_SUPPORTS_32BIT_KERNEL
Ralf Baechleec28f302006-03-05 00:45:33 +0000969 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +0000970 help
Ralf Baechle5e83d432005-10-29 19:32:41 +0100971 Choose this option to build a kernel for release 2 or later of the
Ralf Baechle6e760c82005-07-06 12:08:11 +0000972 MIPS32 architecture. Most modern embedded systems with a 32-bit
973 MIPS processor are based on a MIPS32 processor. If you know the
974 specific type of processor in your system, choose those that one
975 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700976
Ralf Baechle6e760c82005-07-06 12:08:11 +0000977config CPU_MIPS64_R1
978 bool "MIPS64 Release 1"
Ralf Baechle7cf80532005-10-20 22:33:09 +0100979 depends on SYS_HAS_CPU_MIPS64_R1
Ralf Baechlef7062dd2006-04-24 14:58:53 +0100980 select CPU_HAS_LLSC
Ralf Baechle797798c2005-08-10 15:17:11 +0000981 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700982 select CPU_SUPPORTS_32BIT_KERNEL
983 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechleec28f302006-03-05 00:45:33 +0000984 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle6e760c82005-07-06 12:08:11 +0000985 help
986 Choose this option to build a kernel for release 1 or later of the
987 MIPS64 architecture. Many modern embedded systems with a 64-bit
988 MIPS processor are based on a MIPS64 processor. If you know the
989 specific type of processor in your system, choose those that one
990 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +0000991 Release 2 of the MIPS64 architecture is available since several
992 years so chances are you even have a MIPS64 Release 2 processor
993 in which case you should choose CPU_MIPS64_R2 instead for better
994 performance.
995
996config CPU_MIPS64_R2
997 bool "MIPS64 Release 2"
Ralf Baechle7cf80532005-10-20 22:33:09 +0100998 depends on SYS_HAS_CPU_MIPS64_R2
Ralf Baechlef7062dd2006-04-24 14:58:53 +0100999 select CPU_HAS_LLSC
Ralf Baechle797798c2005-08-10 15:17:11 +00001000 select CPU_HAS_PREFETCH
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +00001001 select CPU_SUPPORTS_32BIT_KERNEL
1002 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechleec28f302006-03-05 00:45:33 +00001003 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +00001004 help
1005 Choose this option to build a kernel for release 2 or later of the
1006 MIPS64 architecture. Many modern embedded systems with a 64-bit
1007 MIPS processor are based on a MIPS64 processor. If you know the
1008 specific type of processor in your system, choose those that one
1009 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001010
1011config CPU_R3000
1012 bool "R3000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001013 depends on SYS_HAS_CPU_R3000
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001014 select CPU_HAS_WB
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001015 select CPU_SUPPORTS_32BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +00001016 select CPU_SUPPORTS_HIGHMEM
Linus Torvalds1da177e2005-04-16 15:20:36 -07001017 help
1018 Please make sure to pick the right CPU type. Linux/MIPS is not
1019 designed to be generic, i.e. Kernels compiled for R3000 CPUs will
1020 *not* work on R4000 machines and vice versa. However, since most
1021 of the supported machines have an R4000 (or similar) CPU, R4x00
1022 might be a safe bet. If the resulting kernel does not work,
1023 try to recompile with R3000.
1024
1025config CPU_TX39XX
1026 bool "R39XX"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001027 depends on SYS_HAS_CPU_TX39XX
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001028 select CPU_SUPPORTS_32BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001029
1030config CPU_VR41XX
1031 bool "R41xx"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001032 depends on SYS_HAS_CPU_VR41XX
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001033 select CPU_SUPPORTS_32BIT_KERNEL
1034 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001035 help
Ralf Baechle5e83d432005-10-29 19:32:41 +01001036 The options selects support for the NEC VR4100 series of processors.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001037 Only choose this option if you have one of these processors as a
1038 kernel built with this option will not run on any other type of
1039 processor or vice versa.
1040
1041config CPU_R4300
1042 bool "R4300"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001043 depends on SYS_HAS_CPU_R4300
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001044 select CPU_HAS_LLSC
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001045 select CPU_SUPPORTS_32BIT_KERNEL
1046 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001047 help
1048 MIPS Technologies R4300-series processors.
1049
1050config CPU_R4X00
1051 bool "R4x00"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001052 depends on SYS_HAS_CPU_R4X00
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001053 select CPU_HAS_LLSC
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001054 select CPU_SUPPORTS_32BIT_KERNEL
1055 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001056 help
1057 MIPS Technologies R4000-series processors other than 4300, including
1058 the R4000, R4400, R4600, and 4700.
1059
1060config CPU_TX49XX
1061 bool "R49XX"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001062 depends on SYS_HAS_CPU_TX49XX
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001063 select CPU_HAS_LLSC
Atsushi Nemotode862b42006-03-17 12:59:22 +09001064 select CPU_HAS_PREFETCH
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
1068config CPU_R5000
1069 bool "R5000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001070 depends on SYS_HAS_CPU_R5000
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001071 select CPU_HAS_LLSC
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001072 select CPU_SUPPORTS_32BIT_KERNEL
1073 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001074 help
1075 MIPS Technologies R5000-series processors other than the Nevada.
1076
1077config CPU_R5432
1078 bool "R5432"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001079 depends on SYS_HAS_CPU_R5432
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001080 select CPU_HAS_LLSC
Ralf Baechle5e83d432005-10-29 19:32:41 +01001081 select CPU_SUPPORTS_32BIT_KERNEL
1082 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001083
1084config CPU_R6000
1085 bool "R6000"
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001086 depends on EXPERIMENTAL
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001087 select CPU_HAS_LLSC
Ralf Baechle7cf80532005-10-20 22:33:09 +01001088 depends on SYS_HAS_CPU_R6000
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001089 select CPU_SUPPORTS_32BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001090 help
1091 MIPS Technologies R6000 and R6000A series processors. Note these
Chris Dearmanc09b47d2006-06-20 17:15:20 +01001092 processors are extremely rare and the support for them is incomplete.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001093
1094config CPU_NEVADA
1095 bool "RM52xx"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001096 depends on SYS_HAS_CPU_NEVADA
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001097 select CPU_HAS_LLSC
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001098 select CPU_SUPPORTS_32BIT_KERNEL
1099 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001100 help
1101 QED / PMC-Sierra RM52xx-series ("Nevada") processors.
1102
1103config CPU_R8000
1104 bool "R8000"
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001105 depends on EXPERIMENTAL
Ralf Baechle7cf80532005-10-20 22:33:09 +01001106 depends on SYS_HAS_CPU_R8000
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001107 select CPU_HAS_LLSC
Ralf Baechle5e83d432005-10-29 19:32:41 +01001108 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001109 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001110 help
1111 MIPS Technologies R8000 processors. Note these processors are
1112 uncommon and the support for them is incomplete.
1113
1114config CPU_R10000
1115 bool "R10000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001116 depends on SYS_HAS_CPU_R10000
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001117 select CPU_HAS_LLSC
Ralf Baechle5e83d432005-10-29 19:32:41 +01001118 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001119 select CPU_SUPPORTS_32BIT_KERNEL
1120 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +00001121 select CPU_SUPPORTS_HIGHMEM
Linus Torvalds1da177e2005-04-16 15:20:36 -07001122 help
1123 MIPS Technologies R10000-series processors.
1124
1125config CPU_RM7000
1126 bool "RM7000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001127 depends on SYS_HAS_CPU_RM7000
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001128 select CPU_HAS_LLSC
Ralf Baechle5e83d432005-10-29 19:32:41 +01001129 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001130 select CPU_SUPPORTS_32BIT_KERNEL
1131 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +00001132 select CPU_SUPPORTS_HIGHMEM
Linus Torvalds1da177e2005-04-16 15:20:36 -07001133
1134config CPU_RM9000
1135 bool "RM9000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001136 depends on SYS_HAS_CPU_RM9000
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
Ralf Baechle0004a9d2006-10-31 03:45:07 +00001142 select WEAK_ORDERING
Linus Torvalds1da177e2005-04-16 15:20:36 -07001143
1144config CPU_SB1
1145 bool "SB1"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001146 depends on SYS_HAS_CPU_SB1
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001147 select CPU_HAS_LLSC
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001148 select CPU_SUPPORTS_32BIT_KERNEL
1149 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +00001150 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle0004a9d2006-10-31 03:45:07 +00001151 select WEAK_ORDERING
Linus Torvalds1da177e2005-04-16 15:20:36 -07001152
1153endchoice
1154
Ralf Baechle7cf80532005-10-20 22:33:09 +01001155config SYS_HAS_CPU_MIPS32_R1
1156 bool
1157
1158config SYS_HAS_CPU_MIPS32_R2
1159 bool
1160
1161config SYS_HAS_CPU_MIPS64_R1
1162 bool
1163
1164config SYS_HAS_CPU_MIPS64_R2
1165 bool
1166
1167config SYS_HAS_CPU_R3000
1168 bool
1169
1170config SYS_HAS_CPU_TX39XX
1171 bool
1172
1173config SYS_HAS_CPU_VR41XX
1174 bool
1175
1176config SYS_HAS_CPU_R4300
1177 bool
1178
1179config SYS_HAS_CPU_R4X00
1180 bool
1181
1182config SYS_HAS_CPU_TX49XX
1183 bool
1184
1185config SYS_HAS_CPU_R5000
1186 bool
1187
1188config SYS_HAS_CPU_R5432
1189 bool
1190
1191config SYS_HAS_CPU_R6000
1192 bool
1193
1194config SYS_HAS_CPU_NEVADA
1195 bool
1196
1197config SYS_HAS_CPU_R8000
1198 bool
1199
1200config SYS_HAS_CPU_R10000
1201 bool
1202
1203config SYS_HAS_CPU_RM7000
1204 bool
1205
1206config SYS_HAS_CPU_RM9000
1207 bool
1208
1209config SYS_HAS_CPU_SB1
1210 bool
1211
Ralf Baechle0004a9d2006-10-31 03:45:07 +00001212config WEAK_ORDERING
1213 bool
Ralf Baechle5e83d432005-10-29 19:32:41 +01001214endmenu
1215
1216#
Chris Dearmanc09b47d2006-06-20 17:15:20 +01001217# These two indicate any level of the MIPS32 and MIPS64 architecture
Ralf Baechle5e83d432005-10-29 19:32:41 +01001218#
1219config CPU_MIPS32
1220 bool
1221 default y if CPU_MIPS32_R1 || CPU_MIPS32_R2
1222
1223config CPU_MIPS64
1224 bool
1225 default y if CPU_MIPS64_R1 || CPU_MIPS64_R2
1226
1227#
Chris Dearmanc09b47d2006-06-20 17:15:20 +01001228# These two indicate the revision of the architecture, either Release 1 or Release 2
Ralf Baechle5e83d432005-10-29 19:32:41 +01001229#
1230config CPU_MIPSR1
1231 bool
1232 default y if CPU_MIPS32_R1 || CPU_MIPS64_R1
1233
1234config CPU_MIPSR2
1235 bool
1236 default y if CPU_MIPS32_R2 || CPU_MIPS64_R2
1237
1238config SYS_SUPPORTS_32BIT_KERNEL
1239 bool
1240config SYS_SUPPORTS_64BIT_KERNEL
1241 bool
1242config CPU_SUPPORTS_32BIT_KERNEL
1243 bool
1244config CPU_SUPPORTS_64BIT_KERNEL
1245 bool
1246
1247menu "Kernel type"
1248
1249choice
1250
1251 prompt "Kernel code model"
1252 help
1253 You should only select this option if you have a workload that
1254 actually benefits from 64-bit processing or if your machine has
1255 large memory. You will only be presented a single option in this
1256 menu if your system does not support both 32-bit and 64-bit kernels.
1257
1258config 32BIT
1259 bool "32-bit kernel"
1260 depends on CPU_SUPPORTS_32BIT_KERNEL && SYS_SUPPORTS_32BIT_KERNEL
1261 select TRAD_SIGNALS
1262 help
1263 Select this option if you want to build a 32-bit kernel.
1264config 64BIT
1265 bool "64-bit kernel"
1266 depends on CPU_SUPPORTS_64BIT_KERNEL && SYS_SUPPORTS_64BIT_KERNEL
1267 help
1268 Select this option if you want to build a 64-bit kernel.
1269
1270endchoice
1271
Linus Torvalds1da177e2005-04-16 15:20:36 -07001272choice
1273 prompt "Kernel page size"
1274 default PAGE_SIZE_4KB
1275
1276config PAGE_SIZE_4KB
1277 bool "4kB"
1278 help
1279 This option select the standard 4kB Linux page size. On some
1280 R3000-family processors this is the only available page size. Using
1281 4kB page size will minimize memory consumption and is therefore
1282 recommended for low memory systems.
1283
1284config PAGE_SIZE_8KB
1285 bool "8kB"
1286 depends on EXPERIMENTAL && CPU_R8000
1287 help
1288 Using 8kB page size will result in higher performance kernel at
1289 the price of higher memory consumption. This option is available
1290 only on the R8000 processor. Not that at the time of this writing
1291 this option is still high experimental; there are also issues with
1292 compatibility of user applications.
1293
1294config PAGE_SIZE_16KB
1295 bool "16kB"
Ralf Baechle714bfad2006-05-17 14:04:30 +01001296 depends on !CPU_R3000 && !CPU_TX39XX
Linus Torvalds1da177e2005-04-16 15:20:36 -07001297 help
1298 Using 16kB page size will result in higher performance kernel at
1299 the price of higher memory consumption. This option is available on
Ralf Baechle714bfad2006-05-17 14:04:30 +01001300 all non-R3000 family processors. Note that you will need a suitable
1301 Linux distribution to support this.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001302
1303config PAGE_SIZE_64KB
1304 bool "64kB"
1305 depends on EXPERIMENTAL && !CPU_R3000 && !CPU_TX39XX
1306 help
1307 Using 64kB page size will result in higher performance kernel at
1308 the price of higher memory consumption. This option is available on
1309 all non-R3000 family processor. Not that at the time of this
Ralf Baechle714bfad2006-05-17 14:04:30 +01001310 writing this option is still high experimental.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001311
1312endchoice
1313
1314config BOARD_SCACHE
1315 bool
1316
1317config IP22_CPU_SCACHE
1318 bool
1319 select BOARD_SCACHE
1320
Chris Dearman9318c512006-06-20 17:15:20 +01001321#
1322# Support for a MIPS32 / MIPS64 style S-caches
1323#
1324config MIPS_CPU_SCACHE
1325 bool
1326 select BOARD_SCACHE
1327
Linus Torvalds1da177e2005-04-16 15:20:36 -07001328config R5000_CPU_SCACHE
1329 bool
1330 select BOARD_SCACHE
1331
1332config RM7000_CPU_SCACHE
1333 bool
1334 select BOARD_SCACHE
1335
1336config SIBYTE_DMA_PAGEOPS
1337 bool "Use DMA to clear/copy pages"
1338 depends on CPU_SB1
1339 help
1340 Instead of using the CPU to zero and copy pages, use a Data Mover
1341 channel. These DMA channels are otherwise unused by the standard
1342 SiByte Linux port. Seems to give a small performance benefit.
1343
1344config CPU_HAS_PREFETCH
Ralf Baechlec8094b52005-08-05 14:28:54 +00001345 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001346
Ralf Baechle340ee4b2005-08-17 17:44:08 +00001347choice
1348 prompt "MIPS MT options"
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001349
1350config MIPS_MT_DISABLED
1351 bool "Disable multithreading support."
1352 help
1353 Use this option if your workload can't take advantage of
1354 MIPS hardware multithreading support. On systems that don't have
1355 the option of an MT-enabled processor this option will be the only
1356 option in this menu.
Ralf Baechle340ee4b2005-08-17 17:44:08 +00001357
Ralf Baechle59d6ab82006-10-06 17:36:20 +01001358config MIPS_MT_SMP
1359 bool "Use 1 TC on each available VPE for SMP"
1360 depends on SYS_SUPPORTS_MULTITHREADING
1361 select CPU_MIPSR2_IRQ_VI
Chris Dearmand725cf32007-05-08 14:05:39 +01001362 select CPU_MIPSR2_IRQ_EI
Ralf Baechle59d6ab82006-10-06 17:36:20 +01001363 select CPU_MIPSR2_SRS
1364 select MIPS_MT
Ralf Baechlef510aa32007-03-16 21:58:37 +00001365 select NR_CPUS_DEFAULT_2
Ralf Baechle59d6ab82006-10-06 17:36:20 +01001366 select SMP
1367 select SYS_SUPPORTS_SMP
1368 help
1369 This is a kernel model which is also known a VSMP or lately
1370 has been marketesed into SMVP.
1371
Ralf Baechle41c594a2006-04-05 09:45:45 +01001372config MIPS_MT_SMTC
1373 bool "SMTC: Use all TCs on all VPEs for SMP"
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001374 depends on CPU_MIPS32_R2
1375 #depends on CPU_MIPS64_R2 # once there is hardware ...
1376 depends on SYS_SUPPORTS_MULTITHREADING
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001377 select CPU_MIPSR2_IRQ_VI
Chris Dearmand725cf32007-05-08 14:05:39 +01001378 select CPU_MIPSR2_IRQ_EI
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001379 select CPU_MIPSR2_SRS
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001380 select MIPS_MT
Ralf Baechle130e2fb2007-02-06 16:53:15 +00001381 select NR_CPUS_DEFAULT_8
Ralf Baechle41c594a2006-04-05 09:45:45 +01001382 select SMP
Ralf Baechle73b76c72006-08-15 19:36:40 +01001383 select SYS_SUPPORTS_SMP
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001384 help
1385 This is a kernel model which is known a SMTC or lately has been
1386 marketesed into SMVP.
Ralf Baechle41c594a2006-04-05 09:45:45 +01001387
Ralf Baechlee01402b2005-07-14 15:57:16 +00001388config MIPS_VPE_LOADER
1389 bool "VPE loader support."
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001390 depends on SYS_SUPPORTS_MULTITHREADING
Chris Dearmand725cf32007-05-08 14:05:39 +01001391 select CPU_MIPSR2_IRQ_VI
1392 select CPU_MIPSR2_IRQ_EI
Ralf Baechleb0c10b9f2007-06-01 15:47:46 +01001393 select CPU_MIPSR2_SRS
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001394 select MIPS_MT
Ralf Baechlee01402b2005-07-14 15:57:16 +00001395 help
1396 Includes a loader for loading an elf relocatable object
1397 onto another VPE and running it.
1398
Ralf Baechle340ee4b2005-08-17 17:44:08 +00001399endchoice
1400
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001401config MIPS_MT
1402 bool
1403
1404config SYS_SUPPORTS_MULTITHREADING
1405 bool
1406
Ralf Baechlef088fc82006-04-05 09:45:47 +01001407config MIPS_MT_FPAFF
1408 bool "Dynamic FPU affinity for FP-intensive threads"
1409 depends on MIPS_MT
1410 default y
1411
Ralf Baechleac8be952007-01-20 00:18:01 +00001412config MIPS_MT_SMTC_INSTANT_REPLAY
1413 bool "Low-latency Dispatch of Deferred SMTC IPIs"
Ralf Baechle619af722007-03-26 15:13:57 +01001414 depends on MIPS_MT_SMTC && !PREEMPT
Ralf Baechleac8be952007-01-20 00:18:01 +00001415 default y
1416 help
1417 SMTC pseudo-interrupts between TCs are deferred and queued
1418 if the target TC is interrupt-inhibited (IXMT). In the first
1419 SMTC prototypes, these queued IPIs were serviced on return
1420 to user mode, or on entry into the kernel idle loop. The
1421 INSTANT_REPLAY option dispatches them as part of local_irq_restore()
1422 processing, which adds runtime overhead (hence the option to turn
1423 it off), but ensures that IPIs are handled promptly even under
1424 heavy I/O interrupt load.
1425
Ralf Baechlee01402b2005-07-14 15:57:16 +00001426config MIPS_VPE_LOADER_TOM
1427 bool "Load VPE program into memory hidden from linux"
1428 depends on MIPS_VPE_LOADER
1429 default y
1430 help
1431 The loader can use memory that is present but has been hidden from
1432 Linux using the kernel command line option "mem=xxMB". It's up to
1433 you to ensure the amount you put in the option and the space your
1434 program requires is less or equal to the amount physically present.
1435
1436# this should possibly be in drivers/char, but it is rather cpu related. Hmmm
1437config MIPS_VPE_APSP_API
Ralf Baechle5e83d432005-10-29 19:32:41 +01001438 bool "Enable support for AP/SP API (RTLX)"
1439 depends on MIPS_VPE_LOADER
1440 help
Ralf Baechlee01402b2005-07-14 15:57:16 +00001441
Ralf Baechle26009902006-04-05 09:45:45 +01001442config MIPS_APSP_KSPD
1443 bool "Enable KSPD"
1444 depends on MIPS_VPE_APSP_API
1445 default y
1446 help
1447 KSPD is a kernel daemon that accepts syscall requests from the SP
1448 side, actions them and returns the results. It also handles the
1449 "exit" syscall notifying other kernel modules the SP program is
1450 exiting. You probably want to say yes here.
1451
Linus Torvalds1da177e2005-04-16 15:20:36 -07001452config SB1_PASS_1_WORKAROUNDS
1453 bool
1454 depends on CPU_SB1_PASS_1
1455 default y
1456
1457config SB1_PASS_2_WORKAROUNDS
1458 bool
1459 depends on CPU_SB1 && (CPU_SB1_PASS_2_2 || CPU_SB1_PASS_2)
1460 default y
1461
1462config SB1_PASS_2_1_WORKAROUNDS
1463 bool
1464 depends on CPU_SB1 && CPU_SB1_PASS_2
1465 default y
1466
1467config 64BIT_PHYS_ADDR
1468 bool "Support for 64-bit physical address space"
Ralf Baechle948928a2005-12-23 02:16:44 +01001469 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 -07001470
Linus Torvalds1da177e2005-04-16 15:20:36 -07001471config CPU_HAS_LLSC
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001472 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001473
Franck Bui-Huu9693a852007-02-02 17:41:47 +01001474config CPU_HAS_SMARTMIPS
1475 depends on SYS_SUPPORTS_SMARTMIPS
1476 bool "Support for the SmartMIPS ASE"
1477 help
1478 SmartMIPS is a extension of the MIPS32 architecture aimed at
1479 increased security at both hardware and software level for
1480 smartcards. Enabling this option will allow proper use of the
1481 SmartMIPS instructions by Linux applications. However a kernel with
1482 this option will not work on a MIPS core without SmartMIPS core. If
1483 you don't know you probably don't have SmartMIPS and should say N
1484 here.
1485
Linus Torvalds1da177e2005-04-16 15:20:36 -07001486config CPU_HAS_WB
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001487 bool
Ralf Baechlee01402b2005-07-14 15:57:16 +00001488
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001489#
1490# Vectored interrupt mode is an R2 feature
1491#
Ralf Baechlee01402b2005-07-14 15:57:16 +00001492config CPU_MIPSR2_IRQ_VI
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001493 bool
Ralf Baechlee01402b2005-07-14 15:57:16 +00001494
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001495#
1496# Extended interrupt mode is an R2 feature
1497#
Ralf Baechlee01402b2005-07-14 15:57:16 +00001498config CPU_MIPSR2_IRQ_EI
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001499 bool
Ralf Baechlee01402b2005-07-14 15:57:16 +00001500
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001501#
1502# Shadow registers are an R2 feature
1503#
Ralf Baechlee01402b2005-07-14 15:57:16 +00001504config CPU_MIPSR2_SRS
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001505 bool
Ralf Baechlee01402b2005-07-14 15:57:16 +00001506
Linus Torvalds1da177e2005-04-16 15:20:36 -07001507config CPU_HAS_SYNC
1508 bool
1509 depends on !CPU_R3000
1510 default y
1511
1512#
Ralf Baechle797798c2005-08-10 15:17:11 +00001513# Use the generic interrupt handling code in kernel/irq/:
1514#
1515config GENERIC_HARDIRQS
1516 bool
1517 default y
1518
1519config GENERIC_IRQ_PROBE
1520 bool
1521 default y
1522
Ingo Molnar0d7012a2006-06-29 02:24:43 -07001523config IRQ_PER_CPU
Ingo Molnar0d7012a2006-06-29 02:24:43 -07001524 bool
Ingo Molnar0d7012a2006-06-29 02:24:43 -07001525
Ralf Baechle797798c2005-08-10 15:17:11 +00001526#
Linus Torvalds1da177e2005-04-16 15:20:36 -07001527# - Highmem only makes sense for the 32-bit kernel.
1528# - The current highmem code will only work properly on physically indexed
1529# caches such as R3000, SB1, R7000 or those that look like they're virtually
1530# indexed such as R4000/R4400 SC and MC versions or R10000. So for the
1531# moment we protect the user and offer the highmem option only on machines
1532# where it's known to be safe. This will not offer highmem on a few systems
1533# such as MIPS32 and MIPS64 CPUs which may have virtual and physically
1534# indexed CPUs but we're playing safe.
Ralf Baechle797798c2005-08-10 15:17:11 +00001535# - We use SYS_SUPPORTS_HIGHMEM to offer highmem only for systems where we
1536# know they might have memory configurations that could make use of highmem
1537# support.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001538#
1539config HIGHMEM
1540 bool "High Memory Support"
Ralf Baechle797798c2005-08-10 15:17:11 +00001541 depends on 32BIT && CPU_SUPPORTS_HIGHMEM && SYS_SUPPORTS_HIGHMEM
1542
1543config CPU_SUPPORTS_HIGHMEM
1544 bool
1545
1546config SYS_SUPPORTS_HIGHMEM
1547 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001548
Franck Bui-Huu9693a852007-02-02 17:41:47 +01001549config SYS_SUPPORTS_SMARTMIPS
1550 bool
1551
Yoichi Yuasab4819b52005-06-25 14:54:31 -07001552config ARCH_FLATMEM_ENABLE
1553 def_bool y
1554 depends on !NUMA
1555
Ralf Baechled8cb4e12006-06-11 23:03:08 +01001556config ARCH_DISCONTIGMEM_ENABLE
1557 bool
1558 default y if SGI_IP27
1559 help
David Sterba3dde6ad2007-05-09 07:12:20 +02001560 Say Y to support efficient handling of discontiguous physical memory,
Ralf Baechled8cb4e12006-06-11 23:03:08 +01001561 for architectures which are either NUMA (Non-Uniform Memory Access)
1562 or have huge holes in the physical address space for other reasons.
1563 See <file:Documentation/vm/numa> for more.
1564
Atsushi Nemotob1c6cd42006-07-03 00:09:47 +09001565config ARCH_SPARSEMEM_ENABLE
1566 bool
Atsushi Nemoto7de58fa2006-07-05 01:22:44 +09001567 select SPARSEMEM_STATIC
Atsushi Nemoto31473742006-07-03 00:09:47 +09001568
Ralf Baechled8cb4e12006-06-11 23:03:08 +01001569config NUMA
1570 bool "NUMA Support"
1571 depends on SYS_SUPPORTS_NUMA
1572 help
1573 Say Y to compile the kernel to support NUMA (Non-Uniform Memory
1574 Access). This option improves performance on systems with more
1575 than two nodes; on two node systems it is generally better to
1576 leave it disabled; on single node systems disable this option
1577 disabled.
1578
1579config SYS_SUPPORTS_NUMA
1580 bool
1581
Yasunori Gotoc80d79d2006-04-10 22:53:53 -07001582config NODES_SHIFT
1583 int
1584 default "6"
1585 depends on NEED_MULTIPLE_NODES
1586
Yoichi Yuasab4819b52005-06-25 14:54:31 -07001587source "mm/Kconfig"
1588
Linus Torvalds1da177e2005-04-16 15:20:36 -07001589config SMP
1590 bool "Multi-Processing support"
Ralf Baechlee73ea272006-06-04 11:51:46 +01001591 depends on SYS_SUPPORTS_SMP
Ralf Baechleb4b30a52006-08-03 17:34:24 +01001592 select IRQ_PER_CPU
Ralf Baechlee73ea272006-06-04 11:51:46 +01001593 help
Linus Torvalds1da177e2005-04-16 15:20:36 -07001594 This enables support for systems with more than one CPU. If you have
1595 a system with only one CPU, like most personal computers, say N. If
1596 you have a system with more than one CPU, say Y.
1597
1598 If you say N here, the kernel will run on single and multiprocessor
1599 machines, but will use only one CPU of a multiprocessor machine. If
1600 you say Y here, the kernel will run on many, but not all,
1601 singleprocessor machines. On a singleprocessor machine, the kernel
1602 will run faster if you say N here.
1603
1604 People using multiprocessor machines who say Y here should also say
1605 Y to "Enhanced Real Time Clock Support", below.
1606
1607 See also the <file:Documentation/smp.txt> and the SMP-HOWTO
1608 available at <http://www.tldp.org/docs.html#howto>.
1609
1610 If you don't know what to do here, say N.
1611
Ralf Baechlee73ea272006-06-04 11:51:46 +01001612config SYS_SUPPORTS_SMP
1613 bool
1614
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09001615config NR_CPUS_DEFAULT_1
1616 bool
1617
Ralf Baechle130e2fb2007-02-06 16:53:15 +00001618config NR_CPUS_DEFAULT_2
1619 bool
1620
1621config NR_CPUS_DEFAULT_4
1622 bool
1623
1624config NR_CPUS_DEFAULT_8
1625 bool
1626
1627config NR_CPUS_DEFAULT_16
1628 bool
1629
1630config NR_CPUS_DEFAULT_32
1631 bool
1632
1633config NR_CPUS_DEFAULT_64
1634 bool
1635
Linus Torvalds1da177e2005-04-16 15:20:36 -07001636config NR_CPUS
1637 int "Maximum number of CPUs (2-64)"
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09001638 range 1 64 if NR_CPUS_DEFAULT_1
Linus Torvalds1da177e2005-04-16 15:20:36 -07001639 depends on SMP
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09001640 default "1" if NR_CPUS_DEFAULT_1
Ralf Baechle130e2fb2007-02-06 16:53:15 +00001641 default "2" if NR_CPUS_DEFAULT_2
1642 default "4" if NR_CPUS_DEFAULT_4
1643 default "8" if NR_CPUS_DEFAULT_8
1644 default "16" if NR_CPUS_DEFAULT_16
1645 default "32" if NR_CPUS_DEFAULT_32
1646 default "64" if NR_CPUS_DEFAULT_64
Linus Torvalds1da177e2005-04-16 15:20:36 -07001647 help
1648 This allows you to specify the maximum number of CPUs which this
1649 kernel will support. The maximum supported value is 32 for 32-bit
1650 kernel and 64 for 64-bit kernels; the minimum value which makes
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09001651 sense is 1 for Qemu (useful only for kernel debugging purposes)
1652 and 2 for all others.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001653
1654 This is purely to save memory - each supported CPU adds
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09001655 approximately eight kilobytes to the kernel image. For best
1656 performance should round up your number of processors to the next
1657 power of two.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001658
Atsushi Nemoto1723b4a2006-06-20 00:19:13 +09001659#
1660# Timer Interrupt Frequency Configuration
1661#
1662
1663choice
1664 prompt "Timer frequency"
1665 default HZ_250
1666 help
1667 Allows the configuration of the timer frequency.
1668
1669 config HZ_48
1670 bool "48 HZ" if SYS_SUPPORTS_48HZ
1671
1672 config HZ_100
1673 bool "100 HZ" if SYS_SUPPORTS_100HZ || SYS_SUPPORTS_ARBIT_HZ
1674
1675 config HZ_128
1676 bool "128 HZ" if SYS_SUPPORTS_128HZ || SYS_SUPPORTS_ARBIT_HZ
1677
1678 config HZ_250
1679 bool "250 HZ" if SYS_SUPPORTS_250HZ || SYS_SUPPORTS_ARBIT_HZ
1680
1681 config HZ_256
1682 bool "256 HZ" if SYS_SUPPORTS_256HZ || SYS_SUPPORTS_ARBIT_HZ
1683
1684 config HZ_1000
1685 bool "1000 HZ" if SYS_SUPPORTS_1000HZ || SYS_SUPPORTS_ARBIT_HZ
1686
1687 config HZ_1024
1688 bool "1024 HZ" if SYS_SUPPORTS_1024HZ || SYS_SUPPORTS_ARBIT_HZ
1689
1690endchoice
1691
1692config SYS_SUPPORTS_48HZ
1693 bool
1694
1695config SYS_SUPPORTS_100HZ
1696 bool
1697
1698config SYS_SUPPORTS_128HZ
1699 bool
1700
1701config SYS_SUPPORTS_250HZ
1702 bool
1703
1704config SYS_SUPPORTS_256HZ
1705 bool
1706
1707config SYS_SUPPORTS_1000HZ
1708 bool
1709
1710config SYS_SUPPORTS_1024HZ
1711 bool
1712
1713config SYS_SUPPORTS_ARBIT_HZ
1714 bool
1715 default y if !SYS_SUPPORTS_48HZ && !SYS_SUPPORTS_100HZ && \
1716 !SYS_SUPPORTS_128HZ && !SYS_SUPPORTS_250HZ && \
1717 !SYS_SUPPORTS_256HZ && !SYS_SUPPORTS_1000HZ && \
1718 !SYS_SUPPORTS_1024HZ
1719
1720config HZ
1721 int
1722 default 48 if HZ_48
1723 default 100 if HZ_100
1724 default 128 if HZ_128
1725 default 250 if HZ_250
1726 default 256 if HZ_256
1727 default 1000 if HZ_1000
1728 default 1024 if HZ_1024
1729
Ralf Baechlee80de852005-07-11 20:45:51 +00001730source "kernel/Kconfig.preempt"
Linus Torvalds1da177e2005-04-16 15:20:36 -07001731
Linus Torvalds1da177e2005-04-16 15:20:36 -07001732config MIPS_INSANE_LARGE
1733 bool "Support for large 64-bit configurations"
Ralf Baechle875d43e2005-09-03 15:56:16 -07001734 depends on CPU_R10000 && 64BIT
Linus Torvalds1da177e2005-04-16 15:20:36 -07001735 help
1736 MIPS R10000 does support a 44 bit / 16TB address space as opposed to
1737 previous 64-bit processors which only supported 40 bit / 1TB. If you
1738 need processes of more than 1TB virtual address space, say Y here.
1739 This will result in additional memory usage, so it is not
1740 recommended for normal users.
1741
Atsushi Nemotoea6e9422007-01-16 23:29:11 +09001742config KEXEC
1743 bool "Kexec system call (EXPERIMENTAL)"
1744 depends on EXPERIMENTAL
1745 help
1746 kexec is a system call that implements the ability to shutdown your
1747 current kernel, and to start another kernel. It is like a reboot
David Sterba3dde6ad2007-05-09 07:12:20 +02001748 but it is independent of the system firmware. And like a reboot
Atsushi Nemotoea6e9422007-01-16 23:29:11 +09001749 you can start any kernel with it, not just Linux.
1750
1751 The name comes from the similiarity to the exec system call.
1752
1753 It is an ongoing process to be certain the hardware in a machine
1754 is properly shutdown, so do not be surprised if this code does not
1755 initially work for you. It may help to enable device hotplugging
1756 support. As of this writing the exact hardware interface is
1757 strongly in flux, so no good recommendation can be made.
1758
1759config SECCOMP
1760 bool "Enable seccomp to safely compute untrusted bytecode"
1761 depends on PROC_FS && BROKEN
1762 default y
1763 help
1764 This kernel feature is useful for number crunching applications
1765 that may need to compute untrusted bytecode during their
1766 execution. By using pipes or other transports made available to
1767 the process as file descriptors supporting the read/write
1768 syscalls, it's possible to isolate those applications in
1769 their own address space using seccomp. Once seccomp is
1770 enabled via /proc/<pid>/seccomp, it cannot be disabled
1771 and the task is only allowed to execute a few safe syscalls
1772 defined by each seccomp mode.
1773
1774 If unsure, say Y. Only embedded should say N here.
1775
Ralf Baechle5e83d432005-10-29 19:32:41 +01001776endmenu
1777
Linus Torvalds1da177e2005-04-16 15:20:36 -07001778config RWSEM_GENERIC_SPINLOCK
1779 bool
1780 default y
1781
Atsushi Nemoto1df0f0f2006-09-26 23:44:01 +09001782config LOCKDEP_SUPPORT
1783 bool
1784 default y
1785
1786config STACKTRACE_SUPPORT
1787 bool
1788 default y
1789
Ralf Baechleb6c35392005-11-25 11:35:40 +00001790source "init/Kconfig"
1791
Linus Torvalds1da177e2005-04-16 15:20:36 -07001792menu "Bus options (PCI, PCMCIA, EISA, ISA, TC)"
1793
Ralf Baechle5e83d432005-10-29 19:32:41 +01001794config HW_HAS_EISA
1795 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001796config HW_HAS_PCI
1797 bool
1798
1799config PCI
1800 bool "Support for PCI controller"
1801 depends on HW_HAS_PCI
1802 help
1803 Find out whether you have a PCI motherboard. PCI is the name of a
1804 bus system, i.e. the way the CPU talks to the other stuff inside
1805 your box. Other bus systems are ISA, EISA, or VESA. If you have PCI,
1806 say Y, otherwise N.
1807
1808 The PCI-HOWTO, available from
1809 <http://www.tldp.org/docs.html#howto>, contains valuable
1810 information about which PCI hardware does work under Linux and which
1811 doesn't.
1812
1813config PCI_DOMAINS
1814 bool
1815 depends on PCI
1816
1817source "drivers/pci/Kconfig"
1818
1819#
1820# ISA support is now enabled via select. Too many systems still have the one
1821# or other ISA chip on the board that users don't know about so don't expect
1822# users to choose the right thing ...
1823#
1824config ISA
1825 bool
1826
1827config EISA
1828 bool "EISA support"
Ralf Baechle5e83d432005-10-29 19:32:41 +01001829 depends on HW_HAS_EISA
Linus Torvalds1da177e2005-04-16 15:20:36 -07001830 select ISA
Ralf Baechleaa414df2006-11-30 01:14:51 +00001831 select GENERIC_ISA_DMA
Linus Torvalds1da177e2005-04-16 15:20:36 -07001832 ---help---
1833 The Extended Industry Standard Architecture (EISA) bus was
1834 developed as an open alternative to the IBM MicroChannel bus.
1835
1836 The EISA bus provided some of the features of the IBM MicroChannel
1837 bus while maintaining backward compatibility with cards made for
1838 the older ISA bus. The EISA bus saw limited use between 1988 and
1839 1995 when it was made obsolete by the PCI bus.
1840
1841 Say Y here if you are building a kernel for an EISA-based machine.
1842
1843 Otherwise, say N.
1844
1845source "drivers/eisa/Kconfig"
1846
1847config TC
1848 bool "TURBOchannel support"
1849 depends on MACH_DECSTATION
1850 help
1851 TurboChannel is a DEC (now Compaq (now HP)) bus for Alpha and MIPS
1852 processors. Documentation on writing device drivers for TurboChannel
1853 is available at:
1854 <http://www.cs.arizona.edu/computer.help/policy/DIGITAL_unix/AA-PS3HD-TET1_html/TITLE.html>.
1855
1856#config ACCESSBUS
1857# bool "Access.Bus support"
1858# depends on TC
1859
1860config MMU
1861 bool
1862 default y
1863
Michael Neulinge5c6c8e2006-03-14 00:11:50 -05001864config I8253
1865 bool
1866
Linus Torvalds1da177e2005-04-16 15:20:36 -07001867source "drivers/pcmcia/Kconfig"
1868
1869source "drivers/pci/hotplug/Kconfig"
1870
1871endmenu
1872
1873menu "Executable file formats"
1874
1875source "fs/Kconfig.binfmt"
1876
1877config TRAD_SIGNALS
1878 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001879
1880config BUILD_ELF64
1881 bool "Use 64-bit ELF format for building"
Ralf Baechle875d43e2005-09-03 15:56:16 -07001882 depends on 64BIT
Linus Torvalds1da177e2005-04-16 15:20:36 -07001883 help
1884 A 64-bit kernel is usually built using the 64-bit ELF binary object
1885 format as it's one that allows arbitrary 64-bit constructs. For
1886 kernels that are loaded within the KSEG compatibility segments the
1887 32-bit ELF format can optionally be used resulting in a somewhat
1888 smaller binary, but this option is not explicitly supported by the
1889 toolchain and since binutils 2.14 it does not even work at all.
1890
1891 Say Y to use the 64-bit format or N to use the 32-bit one.
1892
1893 If unsure say Y.
1894
1895config BINFMT_IRIX
1896 bool "Include IRIX binary compatibility"
Ralf Baechle5e83d432005-10-29 19:32:41 +01001897 depends on CPU_BIG_ENDIAN && 32BIT && BROKEN
Linus Torvalds1da177e2005-04-16 15:20:36 -07001898
1899config MIPS32_COMPAT
1900 bool "Kernel support for Linux/MIPS 32-bit binary compatibility"
Ralf Baechle875d43e2005-09-03 15:56:16 -07001901 depends on 64BIT
Linus Torvalds1da177e2005-04-16 15:20:36 -07001902 help
1903 Select this option if you want Linux/MIPS 32-bit binary
1904 compatibility. Since all software available for Linux/MIPS is
1905 currently 32-bit you should say Y here.
1906
1907config COMPAT
1908 bool
1909 depends on MIPS32_COMPAT
1910 default y
1911
Atsushi Nemoto05e43962006-11-07 18:02:44 +09001912config SYSVIPC_COMPAT
1913 bool
1914 depends on COMPAT && SYSVIPC
1915 default y
1916
Linus Torvalds1da177e2005-04-16 15:20:36 -07001917config MIPS32_O32
1918 bool "Kernel support for o32 binaries"
1919 depends on MIPS32_COMPAT
1920 help
1921 Select this option if you want to run o32 binaries. These are pure
1922 32-bit binaries as used by the 32-bit Linux/MIPS port. Most of
1923 existing binaries are in this format.
1924
1925 If unsure, say Y.
1926
1927config MIPS32_N32
1928 bool "Kernel support for n32 binaries"
1929 depends on MIPS32_COMPAT
1930 help
1931 Select this option if you want to run n32 binaries. These are
1932 64-bit binaries using 32-bit quantities for addressing and certain
1933 data that would normally be 64-bit. They are used in special
1934 cases.
1935
1936 If unsure, say N.
1937
1938config BINFMT_ELF32
1939 bool
1940 default y if MIPS32_O32 || MIPS32_N32
1941
Ralf Baechle21162452007-02-09 17:08:58 +00001942endmenu
Linus Torvalds1da177e2005-04-16 15:20:36 -07001943
Ralf Baechle21162452007-02-09 17:08:58 +00001944menu "Power management options"
Rodolfo Giometti952fa952006-06-05 17:43:10 +02001945
Ralf Baechle21162452007-02-09 17:08:58 +00001946source "kernel/power/Kconfig"
Rodolfo Giometti952fa952006-06-05 17:43:10 +02001947
Linus Torvalds1da177e2005-04-16 15:20:36 -07001948endmenu
1949
Sam Ravnborgd5950b42005-07-11 21:03:49 -07001950source "net/Kconfig"
1951
Linus Torvalds1da177e2005-04-16 15:20:36 -07001952source "drivers/Kconfig"
1953
1954source "fs/Kconfig"
1955
Ralf Baechle5e83d432005-10-29 19:32:41 +01001956source "arch/mips/oprofile/Kconfig"
1957
Linus Torvalds1da177e2005-04-16 15:20:36 -07001958source "arch/mips/Kconfig.debug"
1959
1960source "security/Kconfig"
1961
1962source "crypto/Kconfig"
1963
1964source "lib/Kconfig"