blob: c20cd9027585326c7bf1fa64eb97c339148c229c [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
Ralf Baechle36a88532007-03-01 11:56:43 +000066 select SYS_HAS_EARLY_PRINTK
Linus Torvalds1da177e2005-04-16 15:20:36 -070067 select IRQ_CPU
Ralf Baechle7cf80532005-10-20 22:33:09 +010068 select SYS_HAS_CPU_R3000
69 select SYS_HAS_CPU_R4X00
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -070070 select SYS_SUPPORTS_32BIT_KERNEL
71 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
Ralf Baechle5e83d432005-10-29 19:32:41 +010072 select SYS_SUPPORTS_LITTLE_ENDIAN
Atsushi Nemoto1723b4a2006-06-20 00:19:13 +090073 select SYS_SUPPORTS_128HZ
74 select SYS_SUPPORTS_256HZ
75 select SYS_SUPPORTS_1024HZ
Ralf Baechle5e83d432005-10-29 19:32:41 +010076 help
Linus Torvalds1da177e2005-04-16 15:20:36 -070077 This enables support for DEC's MIPS based workstations. For details
78 see the Linux/MIPS FAQ on <http://www.linux-mips.org/> and the
79 DECstation porting pages on <http://decstation.unix-ag.org/>.
80
81 If you have one of the following DECstation Models you definitely
82 want to choose R4xx0 for the CPU Type:
83
84 DECstation 5000/50
85 DECstation 5000/150
86 DECstation 5000/260
87 DECsystem 5900/260
88
89 otherwise choose R3000.
90
91config MIPS_EV64120
Martin Michlmayr3fa986f2006-05-09 23:34:53 +020092 bool "Galileo EV64120 Evaluation board (EXPERIMENTAL)"
Linus Torvalds1da177e2005-04-16 15:20:36 -070093 depends on EXPERIMENTAL
94 select DMA_NONCOHERENT
95 select HW_HAS_PCI
Yoichi Yuasa252161e2007-03-14 21:51:26 +090096 select PCI_GT64XXX_PCI0
Ralf Baechle7cf80532005-10-20 22:33:09 +010097 select SYS_HAS_CPU_R5000
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -070098 select SYS_SUPPORTS_32BIT_KERNEL
99 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100100 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechlecc801072007-02-17 02:58:39 +0000101 select SYS_SUPPORTS_KGDB
Linus Torvalds1da177e2005-04-16 15:20:36 -0700102 help
103 This is an evaluation board based on the Galileo GT-64120
104 single-chip system controller that contains a MIPS R5000 compatible
105 core running at 75/100MHz. Their website is located at
106 <http://www.marvell.com/>. Say Y here if you wish to build a
107 kernel for this platform.
108
Ralf Baechle5e83d432005-10-29 19:32:41 +0100109config MACH_JAZZ
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200110 bool "Jazz family of machines"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100111 select ARC
112 select ARC32
113 select ARCH_MAY_HAVE_PC_FDC
114 select GENERIC_ISA_DMA
Michael Neulinge5c6c8e2006-03-14 00:11:50 -0500115 select I8253
Ralf Baechle5e83d432005-10-29 19:32:41 +0100116 select I8259
117 select ISA
Ralf Baechle7cf80532005-10-20 22:33:09 +0100118 select SYS_HAS_CPU_R4X00
Ralf Baechle5e83d432005-10-29 19:32:41 +0100119 select SYS_SUPPORTS_32BIT_KERNEL
120 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
Atsushi Nemoto1723b4a2006-06-20 00:19:13 +0900121 select SYS_SUPPORTS_100HZ
Atsushi Nemoto9fd32cf2006-12-08 01:55:07 +0900122 select GENERIC_HARDIRQS_NO__DO_IRQ
Linus Torvalds1da177e2005-04-16 15:20:36 -0700123 help
Ralf Baechle5e83d432005-10-29 19:32:41 +0100124 This a family of machines based on the MIPS R4030 chipset which was
125 used by several vendors to build RISC/os and Windows NT workstations.
126 Members include the Acer PICA, MIPS Magnum 4000, MIPS Millenium and
127 Olivetti M700-10 workstations.
128
129config LASAT
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200130 bool "LASAT Networks platforms"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100131 select DMA_NONCOHERENT
Ralf Baechle36a88532007-03-01 11:56:43 +0000132 select SYS_HAS_EARLY_PRINTK
Ralf Baechle5e83d432005-10-29 19:32:41 +0100133 select HW_HAS_PCI
Yoichi Yuasa252161e2007-03-14 21:51:26 +0900134 select PCI_GT64XXX_PCI0
Ralf Baechle5e83d432005-10-29 19:32:41 +0100135 select MIPS_NILE4
136 select R5000_CPU_SCACHE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100137 select SYS_HAS_CPU_R5000
Ralf Baechle5e83d432005-10-29 19:32:41 +0100138 select SYS_SUPPORTS_32BIT_KERNEL
Ralf Baechle080e9482007-03-13 08:59:54 +0000139 select SYS_SUPPORTS_64BIT_KERNEL if BROKEN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100140 select SYS_SUPPORTS_LITTLE_ENDIAN
Franck Bui-Huue77c2322006-12-01 18:22:27 +0100141 select GENERIC_HARDIRQS_NO__DO_IRQ
Linus Torvalds1da177e2005-04-16 15:20:36 -0700142
143config MIPS_ATLAS
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200144 bool "MIPS Atlas board"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700145 select BOOT_ELF32
146 select DMA_NONCOHERENT
Ralf Baechle36a88532007-03-01 11:56:43 +0000147 select SYS_HAS_EARLY_PRINTK
Ralf Baechle5e83d432005-10-29 19:32:41 +0100148 select IRQ_CPU
Linus Torvalds1da177e2005-04-16 15:20:36 -0700149 select HW_HAS_PCI
Ralf Baechle5e83d432005-10-29 19:32:41 +0100150 select MIPS_BOARDS_GEN
151 select MIPS_BONITO64
Yoichi Yuasa252161e2007-03-14 21:51:26 +0900152 select PCI_GT64XXX_PCI0
Ralf Baechle5e83d432005-10-29 19:32:41 +0100153 select MIPS_MSC
Maciej W. Rozyckif4b7cdb2005-02-12 04:31:49 +0000154 select RM7000_CPU_SCACHE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700155 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100156 select SYS_HAS_CPU_MIPS32_R1
157 select SYS_HAS_CPU_MIPS32_R2
158 select SYS_HAS_CPU_MIPS64_R1
159 select SYS_HAS_CPU_NEVADA
160 select SYS_HAS_CPU_RM7000
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700161 select SYS_SUPPORTS_32BIT_KERNEL
162 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100163 select SYS_SUPPORTS_BIG_ENDIAN
164 select SYS_SUPPORTS_LITTLE_ENDIAN
Ralf Baechlef41ae0b2006-06-05 17:24:46 +0100165 select SYS_SUPPORTS_MULTITHREADING if EXPERIMENTAL
Franck Bui-Huu9693a852007-02-02 17:41:47 +0100166 select SYS_SUPPORTS_SMARTMIPS
Franck Bui-Huue77c2322006-12-01 18:22:27 +0100167 select GENERIC_HARDIRQS_NO__DO_IRQ
Linus Torvalds1da177e2005-04-16 15:20:36 -0700168 help
Maciej W. Rozyckif638d192005-02-02 22:23:46 +0000169 This enables support for the MIPS Technologies Atlas evaluation
Linus Torvalds1da177e2005-04-16 15:20:36 -0700170 board.
171
172config MIPS_MALTA
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200173 bool "MIPS Malta board"
Ralf Baechle61ed2422005-09-15 08:52:34 +0000174 select ARCH_MAY_HAVE_PC_FDC
Linus Torvalds1da177e2005-04-16 15:20:36 -0700175 select BOOT_ELF32
176 select HAVE_STD_PC_SERIAL_PORT
177 select DMA_NONCOHERENT
178 select GENERIC_ISA_DMA
Ralf Baechleaa414df2006-11-30 01:14:51 +0000179 select IRQ_CPU
Linus Torvalds1da177e2005-04-16 15:20:36 -0700180 select HW_HAS_PCI
181 select I8259
Ralf Baechle5e83d432005-10-29 19:32:41 +0100182 select MIPS_BOARDS_GEN
183 select MIPS_BONITO64
Chris Dearman9318c512006-06-20 17:15:20 +0100184 select MIPS_CPU_SCACHE
Yoichi Yuasa252161e2007-03-14 21:51:26 +0900185 select PCI_GT64XXX_PCI0
Ralf Baechle5e83d432005-10-29 19:32:41 +0100186 select MIPS_MSC
Linus Torvalds1da177e2005-04-16 15:20:36 -0700187 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100188 select SYS_HAS_CPU_MIPS32_R1
189 select SYS_HAS_CPU_MIPS32_R2
190 select SYS_HAS_CPU_MIPS64_R1
191 select SYS_HAS_CPU_NEVADA
192 select SYS_HAS_CPU_RM7000
Ralf Baechle36a88532007-03-01 11:56:43 +0000193 select SYS_HAS_EARLY_PRINTK
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700194 select SYS_SUPPORTS_32BIT_KERNEL
195 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100196 select SYS_SUPPORTS_BIG_ENDIAN
197 select SYS_SUPPORTS_LITTLE_ENDIAN
Ralf Baechlef41ae0b2006-06-05 17:24:46 +0100198 select SYS_SUPPORTS_MULTITHREADING
Franck Bui-Huu9693a852007-02-02 17:41:47 +0100199 select SYS_SUPPORTS_SMARTMIPS
Linus Torvalds1da177e2005-04-16 15:20:36 -0700200 help
Maciej W. Rozyckif638d192005-02-02 22:23:46 +0000201 This enables support for the MIPS Technologies Malta evaluation
Linus Torvalds1da177e2005-04-16 15:20:36 -0700202 board.
203
204config MIPS_SEAD
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200205 bool "MIPS SEAD board (EXPERIMENTAL)"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700206 depends on EXPERIMENTAL
207 select IRQ_CPU
208 select DMA_NONCOHERENT
Ralf Baechle36a88532007-03-01 11:56:43 +0000209 select SYS_HAS_EARLY_PRINTK
Ralf Baechle5e83d432005-10-29 19:32:41 +0100210 select MIPS_BOARDS_GEN
Ralf Baechle7cf80532005-10-20 22:33:09 +0100211 select SYS_HAS_CPU_MIPS32_R1
212 select SYS_HAS_CPU_MIPS32_R2
213 select SYS_HAS_CPU_MIPS64_R1
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700214 select SYS_SUPPORTS_32BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100215 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
216 select SYS_SUPPORTS_BIG_ENDIAN
217 select SYS_SUPPORTS_LITTLE_ENDIAN
Franck Bui-Huu9693a852007-02-02 17:41:47 +0100218 select SYS_SUPPORTS_SMARTMIPS
Maciej W. Rozyckif638d192005-02-02 22:23:46 +0000219 help
220 This enables support for the MIPS Technologies SEAD evaluation
221 board.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700222
Mark.Zhana240a462006-05-06 17:04:20 +0800223config WR_PPMC
Mark.Zhan92478572006-06-20 18:15:02 +0800224 bool "Wind River PPMC board"
Mark.Zhana240a462006-05-06 17:04:20 +0800225 select IRQ_CPU
226 select BOOT_ELF32
227 select DMA_NONCOHERENT
228 select HW_HAS_PCI
Yoichi Yuasa252161e2007-03-14 21:51:26 +0900229 select PCI_GT64XXX_PCI0
Mark.Zhana240a462006-05-06 17:04:20 +0800230 select SWAP_IO_SPACE
231 select SYS_HAS_CPU_MIPS32_R1
232 select SYS_HAS_CPU_MIPS32_R2
233 select SYS_HAS_CPU_MIPS64_R1
234 select SYS_HAS_CPU_NEVADA
235 select SYS_HAS_CPU_RM7000
236 select SYS_SUPPORTS_32BIT_KERNEL
237 select SYS_SUPPORTS_64BIT_KERNEL
238 select SYS_SUPPORTS_BIG_ENDIAN
239 select SYS_SUPPORTS_LITTLE_ENDIAN
240 help
241 This enables support for the Wind River MIPS32 4KC PPMC evaluation
242 board, which is based on GT64120 bridge chip.
243
Ralf Baechlec78cbf42005-09-30 13:59:37 +0100244config MIPS_SIM
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200245 bool 'MIPS simulator (MIPSsim)'
Ralf Baechlec78cbf42005-09-30 13:59:37 +0100246 select DMA_NONCOHERENT
Ralf Baechle36a88532007-03-01 11:56:43 +0000247 select SYS_HAS_EARLY_PRINTK
Ralf Baechlec78cbf42005-09-30 13:59:37 +0100248 select IRQ_CPU
Ralf Baechle7cf80532005-10-20 22:33:09 +0100249 select SYS_HAS_CPU_MIPS32_R1
250 select SYS_HAS_CPU_MIPS32_R2
Ralf Baechle36a88532007-03-01 11:56:43 +0000251 select SYS_HAS_EARLY_PRINTK
Ralf Baechlec78cbf42005-09-30 13:59:37 +0100252 select SYS_SUPPORTS_32BIT_KERNEL
253 select SYS_SUPPORTS_BIG_ENDIAN
254 select SYS_SUPPORTS_LITTLE_ENDIAN
255 help
256 This option enables support for MIPS Technologies MIPSsim software
257 emulator.
258
Ralf Baechle5e83d432005-10-29 19:32:41 +0100259config MOMENCO_OCELOT
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200260 bool "Momentum Ocelot board"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100261 select DMA_NONCOHERENT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700262 select HW_HAS_PCI
263 select IRQ_CPU
264 select IRQ_CPU_RM7K
Yoichi Yuasa252161e2007-03-14 21:51:26 +0900265 select PCI_GT64XXX_PCI0
Ralf Baechle5e83d432005-10-29 19:32:41 +0100266 select RM7000_CPU_SCACHE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700267 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100268 select SYS_HAS_CPU_RM7000
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700269 select SYS_SUPPORTS_32BIT_KERNEL
270 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100271 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechlecc801072007-02-17 02:58:39 +0000272 select SYS_SUPPORTS_KGDB
Linus Torvalds1da177e2005-04-16 15:20:36 -0700273 help
Ralf Baechle5e83d432005-10-29 19:32:41 +0100274 The Ocelot is a MIPS-based Single Board Computer (SBC) made by
275 Momentum Computer <http://www.momenco.com/>.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700276
Ralf Baechle5e83d432005-10-29 19:32:41 +0100277config MOMENCO_OCELOT_3
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200278 bool "Momentum Ocelot-3 board"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100279 select BOOT_ELF32
280 select DMA_NONCOHERENT
281 select HW_HAS_PCI
282 select IRQ_CPU
283 select IRQ_CPU_RM7K
284 select IRQ_MV64340
285 select PCI_MARVELL
286 select RM7000_CPU_SCACHE
287 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100288 select SYS_HAS_CPU_RM9000
Ralf Baechle5e83d432005-10-29 19:32:41 +0100289 select SYS_SUPPORTS_32BIT_KERNEL
290 select SYS_SUPPORTS_64BIT_KERNEL
291 select SYS_SUPPORTS_BIG_ENDIAN
292 help
293 The Ocelot-3 is based off Discovery III System Controller and
294 PMC-Sierra Rm79000 core.
295
296config MOMENCO_OCELOT_C
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200297 bool "Momentum Ocelot-C board"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100298 select DMA_NONCOHERENT
299 select HW_HAS_PCI
300 select IRQ_CPU
301 select IRQ_MV64340
302 select PCI_MARVELL
303 select RM7000_CPU_SCACHE
304 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100305 select SYS_HAS_CPU_RM7000
Ralf Baechle5e83d432005-10-29 19:32:41 +0100306 select SYS_SUPPORTS_32BIT_KERNEL
Ralf Baechle8a88ca82006-11-02 17:23:33 +0000307 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100308 select SYS_SUPPORTS_BIG_ENDIAN
Franck Bui-Huue77c2322006-12-01 18:22:27 +0100309 select GENERIC_HARDIRQS_NO__DO_IRQ
Ralf Baechle5e83d432005-10-29 19:32:41 +0100310 help
311 The Ocelot is a MIPS-based Single Board Computer (SBC) made by
312 Momentum Computer <http://www.momenco.com/>.
313
Pete Popovbdf21b12005-07-14 17:47:57 +0000314config PNX8550_JBS
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200315 bool "Philips PNX8550 based JBS board"
Pete Popovbdf21b12005-07-14 17:47:57 +0000316 select PNX8550
317 select SYS_SUPPORTS_LITTLE_ENDIAN
318
Vitaly Woolf0647a52006-12-08 11:40:35 +0300319config PNX8550_STB810
Yoichi Yuasae460b732007-05-28 22:54:28 +0900320 bool "Philips PNX8550 based STB810 board"
Vitaly Woolf0647a52006-12-08 11:40:35 +0300321 select PNX8550
322 select SYS_SUPPORTS_LITTLE_ENDIAN
323
Linus Torvalds1da177e2005-04-16 15:20:36 -0700324config DDB5477
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200325 bool "NEC DDB Vrc-5477"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100326 select DDB5XXX_COMMON
Linus Torvalds1da177e2005-04-16 15:20:36 -0700327 select DMA_NONCOHERENT
328 select HW_HAS_PCI
329 select I8259
330 select IRQ_CPU
Ralf Baechle7cf80532005-10-20 22:33:09 +0100331 select SYS_HAS_CPU_R5432
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700332 select SYS_SUPPORTS_32BIT_KERNEL
333 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
Ralf Baechlecc801072007-02-17 02:58:39 +0000334 select SYS_SUPPORTS_KGDB
335 select SYS_SUPPORTS_KGDB
Ralf Baechle5e83d432005-10-29 19:32:41 +0100336 select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700337 help
338 This enables support for the R5432-based NEC DDB Vrc-5477,
339 or Rockhopper/SolutionGear boards with R5432/R5500 CPUs.
340
341 Features : kernel debugging, serial terminal, NFS root fs, on-board
342 ether port USB, AC97, PCI, etc.
343
Ralf Baechle5e83d432005-10-29 19:32:41 +0100344config MACH_VR41XX
Yoichi Yuasa74142d62007-04-26 19:45:09 +0900345 bool "NEC VR4100 series based machines"
Ralf Baechle7cf80532005-10-20 22:33:09 +0100346 select SYS_HAS_CPU_VR41XX
Atsushi Nemoto9fd32cf2006-12-08 01:55:07 +0900347 select GENERIC_HARDIRQS_NO__DO_IRQ
Ralf Baechle5e83d432005-10-29 19:32:41 +0100348
349config PMC_YOSEMITE
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200350 bool "PMC-Sierra Yosemite eval board"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100351 select DMA_COHERENT
352 select HW_HAS_PCI
353 select IRQ_CPU
354 select IRQ_CPU_RM7K
355 select IRQ_CPU_RM9K
356 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100357 select SYS_HAS_CPU_RM9000
Ralf Baechle36a88532007-03-01 11:56:43 +0000358 select SYS_HAS_EARLY_PRINTK
Ralf Baechle5e83d432005-10-29 19:32:41 +0100359 select SYS_SUPPORTS_32BIT_KERNEL
360 select SYS_SUPPORTS_64BIT_KERNEL
361 select SYS_SUPPORTS_BIG_ENDIAN
362 select SYS_SUPPORTS_HIGHMEM
Ralf Baechlecc801072007-02-17 02:58:39 +0000363 select SYS_SUPPORTS_KGDB
Ralf Baechlee73ea272006-06-04 11:51:46 +0100364 select SYS_SUPPORTS_SMP
Ralf Baechle5e83d432005-10-29 19:32:41 +0100365 help
366 Yosemite is an evaluation board for the RM9000x2 processor
367 manufactured by PMC-Sierra.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700368
Ralf Baechle07119622005-09-03 15:56:11 -0700369config QEMU
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200370 bool "Qemu"
Ralf Baechle07119622005-09-03 15:56:11 -0700371 select DMA_COHERENT
372 select GENERIC_ISA_DMA
373 select HAVE_STD_PC_SERIAL_PORT
Michael Neulinge5c6c8e2006-03-14 00:11:50 -0500374 select I8253
Ralf Baechle07119622005-09-03 15:56:11 -0700375 select I8259
376 select ISA
377 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100378 select SYS_HAS_CPU_MIPS32_R1
Ralf Baechle07119622005-09-03 15:56:11 -0700379 select SYS_SUPPORTS_32BIT_KERNEL
380 select SYS_SUPPORTS_BIG_ENDIAN
Aurelien Jarnoc8cc9612006-09-27 23:07:25 +0200381 select SYS_SUPPORTS_LITTLE_ENDIAN
Atsushi Nemotob1c6cd42006-07-03 00:09:47 +0900382 select ARCH_SPARSEMEM_ENABLE
Atsushi Nemoto9fd32cf2006-12-08 01:55:07 +0900383 select GENERIC_HARDIRQS_NO__DO_IRQ
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +0900384 select NR_CPUS_DEFAULT_1
385 select SYS_SUPPORTS_SMP
Ralf Baechle07119622005-09-03 15:56:11 -0700386 help
Ralf Baechle5e83d432005-10-29 19:32:41 +0100387 Qemu is a software emulator which among other architectures also
388 can simulate a MIPS32 4Kc system. This patch adds support for the
389 system architecture that currently is being simulated by Qemu. It
390 will eventually be removed again when Qemu has the capability to
391 simulate actual MIPS hardware platforms. More information on Qemu
392 can be found at http://www.linux-mips.org/wiki/Qemu.
Ralf Baechle07119622005-09-03 15:56:11 -0700393
dmitry pervushin355c4712006-05-21 14:53:06 +0400394config MARKEINS
Yoichi Yuasae460b732007-05-28 22:54:28 +0900395 bool "NEC EMMA2RH Mark-eins"
dmitry pervushin355c4712006-05-21 14:53:06 +0400396 select DMA_NONCOHERENT
397 select HW_HAS_PCI
398 select IRQ_CPU
399 select SWAP_IO_SPACE
400 select SYS_SUPPORTS_32BIT_KERNEL
401 select SYS_SUPPORTS_BIG_ENDIAN
402 select SYS_SUPPORTS_LITTLE_ENDIAN
403 select SYS_HAS_CPU_R5000
404 help
405 This enables support for the R5432-based NEC Mark-eins
406 boards with R5500 CPU.
407
Linus Torvalds1da177e2005-04-16 15:20:36 -0700408config SGI_IP22
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200409 bool "SGI IP22 (Indy/Indigo2)"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700410 select ARC
411 select ARC32
412 select BOOT_ELF32
413 select DMA_NONCOHERENT
Ralf Baechle5e83d432005-10-29 19:32:41 +0100414 select HW_HAS_EISA
Linus Torvalds1da177e2005-04-16 15:20:36 -0700415 select IP22_CPU_SCACHE
416 select IRQ_CPU
Ralf Baechleaa414df2006-11-30 01:14:51 +0000417 select GENERIC_ISA_DMA_SUPPORT_BROKEN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700418 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100419 select SYS_HAS_CPU_R4X00
420 select SYS_HAS_CPU_R5000
Ralf Baechle36a88532007-03-01 11:56:43 +0000421 select SYS_HAS_EARLY_PRINTK
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700422 select SYS_SUPPORTS_32BIT_KERNEL
423 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100424 select SYS_SUPPORTS_BIG_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700425 help
426 This are the SGI Indy, Challenge S and Indigo2, as well as certain
427 OEM variants like the Tandem CMN B006S. To compile a Linux kernel
428 that runs on these, say Y here.
429
430config SGI_IP27
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200431 bool "SGI IP27 (Origin200/2000)"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700432 select ARC
433 select ARC64
Ralf Baechle5e83d432005-10-29 19:32:41 +0100434 select BOOT_ELF64
Linus Torvalds1da177e2005-04-16 15:20:36 -0700435 select DMA_IP27
Ralf Baechle36a88532007-03-01 11:56:43 +0000436 select SYS_HAS_EARLY_PRINTK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700437 select HW_HAS_PCI
Ralf Baechle130e2fb2007-02-06 16:53:15 +0000438 select NR_CPUS_DEFAULT_64
Linus Torvalds1da177e2005-04-16 15:20:36 -0700439 select PCI_DOMAINS
Ralf Baechle7cf80532005-10-20 22:33:09 +0100440 select SYS_HAS_CPU_R10000
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700441 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100442 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechlecc801072007-02-17 02:58:39 +0000443 select SYS_SUPPORTS_KGDB
Ralf Baechled8cb4e12006-06-11 23:03:08 +0100444 select SYS_SUPPORTS_NUMA
Ralf Baechle1a5c5de2006-11-02 17:23:33 +0000445 select SYS_SUPPORTS_SMP
Franck Bui-Huue77c2322006-12-01 18:22:27 +0100446 select GENERIC_HARDIRQS_NO__DO_IRQ
Linus Torvalds1da177e2005-04-16 15:20:36 -0700447 help
448 This are the SGI Origin 200, Origin 2000 and Onyx 2 Graphics
449 workstations. To compile a Linux kernel that runs on these, say Y
450 here.
451
Linus Torvalds1da177e2005-04-16 15:20:36 -0700452config SGI_IP32
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200453 bool "SGI IP32 (O2) (EXPERIMENTAL)"
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700454 depends on EXPERIMENTAL
Linus Torvalds1da177e2005-04-16 15:20:36 -0700455 select ARC
456 select ARC32
457 select BOOT_ELF32
Linus Torvalds1da177e2005-04-16 15:20:36 -0700458 select DMA_NONCOHERENT
459 select HW_HAS_PCI
460 select R5000_CPU_SCACHE
461 select RM7000_CPU_SCACHE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100462 select SYS_HAS_CPU_R5000
463 select SYS_HAS_CPU_R10000 if BROKEN
464 select SYS_HAS_CPU_RM7000
Ralf Baechledd2f18f2006-01-19 14:55:42 +0000465 select SYS_HAS_CPU_NEVADA
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700466 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100467 select SYS_SUPPORTS_BIG_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700468 help
469 If you want this kernel to run on SGI O2 workstation, say Y here.
470
Andrew Isaacson9a6dcea2005-10-19 23:57:11 -0700471config SIBYTE_BIGSUR
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200472 bool "Sibyte BCM91480B-BigSur"
Andrew Isaacson9a6dcea2005-10-19 23:57:11 -0700473 select BOOT_ELF32
474 select DMA_COHERENT
Ralf Baechle130e2fb2007-02-06 16:53:15 +0000475 select NR_CPUS_DEFAULT_4
Ralf Baechle7cf80532005-10-20 22:33:09 +0100476 select PCI_DOMAINS
Andrew Isaacson9a6dcea2005-10-19 23:57:11 -0700477 select SIBYTE_BCM1x80
478 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100479 select SYS_HAS_CPU_SB1
Andrew Isaacson9a6dcea2005-10-19 23:57:11 -0700480 select SYS_SUPPORTS_BIG_ENDIAN
481 select SYS_SUPPORTS_LITTLE_ENDIAN
482
Ralf Baechle5e83d432005-10-29 19:32:41 +0100483config SIBYTE_SWARM
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200484 bool "Sibyte BCM91250A-SWARM"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100485 select BOOT_ELF32
486 select DMA_COHERENT
Ralf Baechle130e2fb2007-02-06 16:53:15 +0000487 select NR_CPUS_DEFAULT_2
Ralf Baechle5e83d432005-10-29 19:32:41 +0100488 select SIBYTE_SB1250
489 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100490 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100491 select SYS_SUPPORTS_BIG_ENDIAN
492 select SYS_SUPPORTS_HIGHMEM
Ralf Baechlecc801072007-02-17 02:58:39 +0000493 select SYS_SUPPORTS_KGDB
Ralf Baechle5e83d432005-10-29 19:32:41 +0100494 select SYS_SUPPORTS_LITTLE_ENDIAN
Pete Popove3ad1c22005-03-01 06:33:16 +0000495
Ralf Baechle5e83d432005-10-29 19:32:41 +0100496config SIBYTE_SENTOSA
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200497 bool "Sibyte BCM91250E-Sentosa"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100498 depends on EXPERIMENTAL
499 select BOOT_ELF32
500 select DMA_COHERENT
Ralf Baechle130e2fb2007-02-06 16:53:15 +0000501 select NR_CPUS_DEFAULT_2
Ralf Baechle5e83d432005-10-29 19:32:41 +0100502 select SIBYTE_SB1250
503 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100504 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100505 select SYS_SUPPORTS_BIG_ENDIAN
506 select SYS_SUPPORTS_LITTLE_ENDIAN
507
508config SIBYTE_RHONE
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200509 bool "Sibyte BCM91125E-Rhone"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100510 depends on EXPERIMENTAL
511 select BOOT_ELF32
512 select DMA_COHERENT
513 select SIBYTE_BCM1125H
514 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100515 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100516 select SYS_SUPPORTS_BIG_ENDIAN
517 select SYS_SUPPORTS_LITTLE_ENDIAN
518
519config SIBYTE_CARMEL
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200520 bool "Sibyte BCM91120x-Carmel"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100521 depends on EXPERIMENTAL
522 select BOOT_ELF32
523 select DMA_COHERENT
524 select SIBYTE_BCM1120
525 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100526 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100527 select SYS_SUPPORTS_BIG_ENDIAN
528 select SYS_SUPPORTS_LITTLE_ENDIAN
529
530config SIBYTE_PTSWARM
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200531 bool "Sibyte BCM91250PT-PTSWARM"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100532 depends on EXPERIMENTAL
533 select BOOT_ELF32
534 select DMA_COHERENT
Ralf Baechle130e2fb2007-02-06 16:53:15 +0000535 select NR_CPUS_DEFAULT_2
Ralf Baechle5e83d432005-10-29 19:32:41 +0100536 select SIBYTE_SB1250
537 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100538 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100539 select SYS_SUPPORTS_BIG_ENDIAN
540 select SYS_SUPPORTS_HIGHMEM
541 select SYS_SUPPORTS_LITTLE_ENDIAN
542
543config SIBYTE_LITTLESUR
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200544 bool "Sibyte BCM91250C2-LittleSur"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100545 depends on EXPERIMENTAL
546 select BOOT_ELF32
547 select DMA_COHERENT
Ralf Baechle130e2fb2007-02-06 16:53:15 +0000548 select NR_CPUS_DEFAULT_2
Ralf Baechle5e83d432005-10-29 19:32:41 +0100549 select SIBYTE_SB1250
550 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100551 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100552 select SYS_SUPPORTS_BIG_ENDIAN
553 select SYS_SUPPORTS_HIGHMEM
554 select SYS_SUPPORTS_LITTLE_ENDIAN
555
556config SIBYTE_CRHINE
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200557 bool "Sibyte BCM91120C-CRhine"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100558 depends on EXPERIMENTAL
559 select BOOT_ELF32
560 select DMA_COHERENT
561 select SIBYTE_BCM1120
562 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100563 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100564 select SYS_SUPPORTS_BIG_ENDIAN
565 select SYS_SUPPORTS_LITTLE_ENDIAN
566
567config SIBYTE_CRHONE
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200568 bool "Sibyte BCM91125C-CRhone"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100569 depends on EXPERIMENTAL
570 select BOOT_ELF32
571 select DMA_COHERENT
572 select SIBYTE_BCM1125
573 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100574 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100575 select SYS_SUPPORTS_BIG_ENDIAN
576 select SYS_SUPPORTS_HIGHMEM
577 select SYS_SUPPORTS_LITTLE_ENDIAN
578
Thomas Bogendoerfer14b36af2006-12-05 17:05:44 +0100579config SNI_RM
580 bool "SNI RM200/300/400"
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200581 select ARC if CPU_LITTLE_ENDIAN
582 select ARC32 if CPU_LITTLE_ENDIAN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100583 select ARCH_MAY_HAVE_PC_FDC
584 select BOOT_ELF32
585 select DMA_NONCOHERENT
586 select GENERIC_ISA_DMA
Ralf Baechle5e83d432005-10-29 19:32:41 +0100587 select HW_HAS_EISA
588 select HW_HAS_PCI
Thomas Bogendoerferc066a322006-12-28 18:22:32 +0100589 select IRQ_CPU
Michael Neulinge5c6c8e2006-03-14 00:11:50 -0500590 select I8253
Ralf Baechle5e83d432005-10-29 19:32:41 +0100591 select I8259
592 select ISA
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200593 select SWAP_IO_SPACE if CPU_BIG_ENDIAN
Ralf Baechle7cf80532005-10-20 22:33:09 +0100594 select SYS_HAS_CPU_R4X00
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200595 select SYS_HAS_CPU_R5000
Thomas Bogendoerferc066a322006-12-28 18:22:32 +0100596 select SYS_HAS_CPU_R10000
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200597 select R5000_CPU_SCACHE
Ralf Baechle36a88532007-03-01 11:56:43 +0000598 select SYS_HAS_EARLY_PRINTK
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700599 select SYS_SUPPORTS_32BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100600 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200601 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100602 select SYS_SUPPORTS_HIGHMEM
603 select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700604 help
Thomas Bogendoerfer14b36af2006-12-05 17:05:44 +0100605 The SNI RM200/300/400 are MIPS-based machines manufactured by
606 Siemens Nixdorf Informationssysteme (SNI), parent company of Pyramid
Ralf Baechle5e83d432005-10-29 19:32:41 +0100607 Technology and now in turn merged with Fujitsu. Say Y here to
608 support this machine type.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700609
Ralf Baechle5e83d432005-10-29 19:32:41 +0100610config TOSHIBA_JMR3927
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200611 bool "Toshiba JMR-TX3927 board"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100612 select DMA_NONCOHERENT
613 select HW_HAS_PCI
614 select MIPS_TX3927
615 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100616 select SYS_HAS_CPU_TX39XX
Ralf Baechle5e83d432005-10-29 19:32:41 +0100617 select SYS_SUPPORTS_32BIT_KERNEL
Sergei Shtylyov6a2603a2007-02-07 20:39:05 +0300618 select SYS_SUPPORTS_LITTLE_ENDIAN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100619 select SYS_SUPPORTS_BIG_ENDIAN
Atsushi Nemoto21274352007-03-15 00:58:28 +0900620 select GENERIC_HARDIRQS_NO__DO_IRQ
Ralf Baechle5e83d432005-10-29 19:32:41 +0100621
622config TOSHIBA_RBTX4927
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200623 bool "Toshiba TBTX49[23]7 board"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100624 select DMA_NONCOHERENT
625 select HAS_TXX9_SERIAL
626 select HW_HAS_PCI
627 select I8259
Ralf Baechle5e83d432005-10-29 19:32:41 +0100628 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100629 select SYS_HAS_CPU_TX49XX
Ralf Baechle5e83d432005-10-29 19:32:41 +0100630 select SYS_SUPPORTS_32BIT_KERNEL
631 select SYS_SUPPORTS_64BIT_KERNEL
Sergei Shtylyov6a2603a2007-02-07 20:39:05 +0300632 select SYS_SUPPORTS_LITTLE_ENDIAN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100633 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechlecc801072007-02-17 02:58:39 +0000634 select SYS_SUPPORTS_KGDB
Atsushi Nemoto9fd32cf2006-12-08 01:55:07 +0900635 select GENERIC_HARDIRQS_NO__DO_IRQ
Ralf Baechle5e83d432005-10-29 19:32:41 +0100636 help
637 This Toshiba board is based on the TX4927 processor. Say Y here to
638 support this machine type
Linus Torvalds1da177e2005-04-16 15:20:36 -0700639
Ralf Baechle23fbee92005-07-25 22:45:45 +0000640config TOSHIBA_RBTX4938
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200641 bool "Toshiba RBTX4938 board"
Ralf Baechle23fbee92005-07-25 22:45:45 +0000642 select HAVE_STD_PC_SERIAL_PORT
643 select DMA_NONCOHERENT
644 select GENERIC_ISA_DMA
645 select HAS_TXX9_SERIAL
646 select HW_HAS_PCI
647 select I8259
Ralf Baechle23fbee92005-07-25 22:45:45 +0000648 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100649 select SYS_HAS_CPU_TX49XX
Ralf Baechle23fbee92005-07-25 22:45:45 +0000650 select SYS_SUPPORTS_32BIT_KERNEL
651 select SYS_SUPPORTS_LITTLE_ENDIAN
652 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechlecc801072007-02-17 02:58:39 +0000653 select SYS_SUPPORTS_KGDB
Atsushi Nemoto9fd32cf2006-12-08 01:55:07 +0900654 select GENERIC_HARDIRQS_NO__DO_IRQ
Ralf Baechle23fbee92005-07-25 22:45:45 +0000655 help
656 This Toshiba board is based on the TX4938 processor. Say Y here to
657 support this machine type
658
Linus Torvalds1da177e2005-04-16 15:20:36 -0700659endchoice
660
Yoichi Yuasac3543e22007-05-11 20:44:30 +0900661source "arch/mips/au1000/Kconfig"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100662source "arch/mips/ddb5xxx/Kconfig"
663source "arch/mips/gt64120/ev64120/Kconfig"
664source "arch/mips/jazz/Kconfig"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100665source "arch/mips/lasat/Kconfig"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100666source "arch/mips/pmc-sierra/Kconfig"
Ralf Baechle29c48692005-02-07 01:27:14 +0000667source "arch/mips/sgi-ip27/Kconfig"
Ralf Baechle38b18f72005-02-03 14:28:23 +0000668source "arch/mips/sibyte/Kconfig"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100669source "arch/mips/tx4927/Kconfig"
Ralf Baechle23fbee92005-07-25 22:45:45 +0000670source "arch/mips/tx4938/Kconfig"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100671source "arch/mips/vr41xx/Kconfig"
Pete Popovbdf21b12005-07-14 17:47:57 +0000672source "arch/mips/philips/pnx8550/common/Kconfig"
Ralf Baechle38b18f72005-02-03 14:28:23 +0000673
Ralf Baechle5e83d432005-10-29 19:32:41 +0100674endmenu
675
Linus Torvalds1da177e2005-04-16 15:20:36 -0700676config RWSEM_GENERIC_SPINLOCK
677 bool
678 default y
679
680config RWSEM_XCHGADD_ALGORITHM
681 bool
682
David Howellsf0d1b0b2006-12-08 02:37:49 -0800683config ARCH_HAS_ILOG2_U32
684 bool
685 default n
686
687config ARCH_HAS_ILOG2_U64
688 bool
689 default n
690
Akinobu Mita3c9ee7e2006-03-26 01:39:30 -0800691config GENERIC_FIND_NEXT_BIT
692 bool
693 default y
694
695config GENERIC_HWEIGHT
696 bool
697 default y
698
Linus Torvalds1da177e2005-04-16 15:20:36 -0700699config GENERIC_CALIBRATE_DELAY
700 bool
701 default y
702
Ralf Baechle8db02012006-10-02 16:54:48 +0100703config GENERIC_TIME
704 bool
705 default y
706
Atsushi Nemoto1cc89032006-04-04 13:11:45 +0900707config SCHED_NO_NO_OMIT_FRAME_POINTER
708 bool
709 default y
710
Franck Bui-Huue77c2322006-12-01 18:22:27 +0100711config GENERIC_HARDIRQS_NO__DO_IRQ
712 bool
713 default n
714
Linus Torvalds1da177e2005-04-16 15:20:36 -0700715#
716# Select some configuration options automatically based on user selections.
717#
718config ARC
719 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700720
Ralf Baechle61ed2422005-09-15 08:52:34 +0000721config ARCH_MAY_HAVE_PC_FDC
722 bool
723
Ralf Baechle4ce588c2005-09-03 15:56:19 -0700724config DMA_COHERENT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700725 bool
726
Ralf Baechle4ce588c2005-09-03 15:56:19 -0700727config DMA_IP27
Linus Torvalds1da177e2005-04-16 15:20:36 -0700728 bool
729
Ralf Baechle4ce588c2005-09-03 15:56:19 -0700730config DMA_IP32
731 bool
732 select DMA_NEED_PCI_MAP_STATE
733
734config DMA_NONCOHERENT
735 bool
736 select DMA_NEED_PCI_MAP_STATE
737
738config DMA_NEED_PCI_MAP_STATE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700739 bool
740
741config EARLY_PRINTK
Ralf Baechle36a88532007-03-01 11:56:43 +0000742 bool "Early printk" if EMBEDDED && DEBUG_KERNEL
743 depends on SYS_HAS_EARLY_PRINTK
744 default y
745 help
746 This option enables special console drivers which allow the kernel
747 to print messages very early in the bootup process.
748
749 This is useful for kernel debugging when your machine crashes very
Robert P. J. Day490dcc42007-05-20 12:11:07 -0400750 early before the console code is initialized. For normal operation,
751 it is not recommended because it looks ugly on some machines and
752 doesn't cooperate with an X server. You should normally say N here,
Ralf Baechle36a88532007-03-01 11:56:43 +0000753 unless you want to debug such a crash.
754
755config SYS_HAS_EARLY_PRINTK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700756 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700757
758config GENERIC_ISA_DMA
759 bool
Atsushi Nemoto05502332007-03-21 00:36:02 +0900760 select ZONE_DMA
Linus Torvalds1da177e2005-04-16 15:20:36 -0700761
762config I8259
763 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700764
Linus Torvalds1da177e2005-04-16 15:20:36 -0700765config MIPS_BONITO64
766 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700767
768config MIPS_MSC
769 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700770
771config MIPS_NILE4
772 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700773
774config MIPS_DISABLE_OBSOLETE_IDE
775 bool
776
Ralf Baechleaa414df2006-11-30 01:14:51 +0000777config GENERIC_ISA_DMA_SUPPORT_BROKEN
778 bool
Atsushi Nemoto05502332007-03-21 00:36:02 +0900779 select ZONE_DMA
Ralf Baechleaa414df2006-11-30 01:14:51 +0000780
Ralf Baechle5e83d432005-10-29 19:32:41 +0100781#
Matt LaPlante3cb2fcc2006-11-30 05:22:59 +0100782# Endianess selection. Sufficiently obscure so many users don't know what to
Ralf Baechle5e83d432005-10-29 19:32:41 +0100783# answer,so we try hard to limit the available choices. Also the use of a
784# choice statement should be more obvious to the user.
785#
786choice
787 prompt "Endianess selection"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700788 help
789 Some MIPS machines can be configured for either little or big endian
Ralf Baechle5e83d432005-10-29 19:32:41 +0100790 byte order. These modes require different kernels and a different
Matt LaPlante3cb2fcc2006-11-30 05:22:59 +0100791 Linux distribution. In general there is one preferred byteorder for a
Ralf Baechle5e83d432005-10-29 19:32:41 +0100792 particular system but some systems are just as commonly used in the
David Sterba3dde6ad2007-05-09 07:12:20 +0200793 one or the other endianness.
Ralf Baechle5e83d432005-10-29 19:32:41 +0100794
795config CPU_BIG_ENDIAN
796 bool "Big endian"
797 depends on SYS_SUPPORTS_BIG_ENDIAN
798
799config CPU_LITTLE_ENDIAN
800 bool "Little endian"
801 depends on SYS_SUPPORTS_LITTLE_ENDIAN
802 help
803
804endchoice
805
Ralf Baechle21162452007-02-09 17:08:58 +0000806config SYS_SUPPORTS_APM_EMULATION
807 bool
808
Ralf Baechle5e83d432005-10-29 19:32:41 +0100809config SYS_SUPPORTS_BIG_ENDIAN
810 bool
811
812config SYS_SUPPORTS_LITTLE_ENDIAN
813 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700814
815config IRQ_CPU
816 bool
817
818config IRQ_CPU_RM7K
819 bool
820
Ralf Baechle5e83d432005-10-29 19:32:41 +0100821config IRQ_CPU_RM9K
822 bool
823
Linus Torvalds1da177e2005-04-16 15:20:36 -0700824config IRQ_MV64340
825 bool
826
827config DDB5XXX_COMMON
828 bool
Ralf Baechlecc801072007-02-17 02:58:39 +0000829 select SYS_SUPPORTS_KGDB
Linus Torvalds1da177e2005-04-16 15:20:36 -0700830
831config MIPS_BOARDS_GEN
832 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700833
Yoichi Yuasa252161e2007-03-14 21:51:26 +0900834config PCI_GT64XXX_PCI0
Linus Torvalds1da177e2005-04-16 15:20:36 -0700835 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700836
837config MIPS_TX3927
838 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700839 select HAS_TXX9_SERIAL
Linus Torvalds1da177e2005-04-16 15:20:36 -0700840
thomas@koeller.dyndns.org663c3d92006-08-27 13:51:48 +0200841config MIPS_RM9122
842 bool
843 select SERIAL_RM9000
thomas@koeller.dyndns.org663c3d92006-08-27 13:51:48 +0200844
Linus Torvalds1da177e2005-04-16 15:20:36 -0700845config PCI_MARVELL
846 bool
847
Pete Popovbdf21b12005-07-14 17:47:57 +0000848config PNX8550
849 bool
850 select SOC_PNX8550
851
852config SOC_PNX8550
853 bool
Pete Popovbdf21b12005-07-14 17:47:57 +0000854 select DMA_NONCOHERENT
855 select HW_HAS_PCI
Ralf Baechleb8c2a772005-10-31 13:08:37 +0000856 select SYS_HAS_CPU_MIPS32_R1
Ralf Baechle36a88532007-03-01 11:56:43 +0000857 select SYS_HAS_EARLY_PRINTK
Ralf Baechle7cf80532005-10-20 22:33:09 +0100858 select SYS_SUPPORTS_32BIT_KERNEL
Franck Bui-Huue77c2322006-12-01 18:22:27 +0100859 select GENERIC_HARDIRQS_NO__DO_IRQ
Ralf Baechlecc801072007-02-17 02:58:39 +0000860 select SYS_SUPPORTS_KGDB
Pete Popovbdf21b12005-07-14 17:47:57 +0000861
Linus Torvalds1da177e2005-04-16 15:20:36 -0700862config SWAP_IO_SPACE
863 bool
864
dmitry pervushin355c4712006-05-21 14:53:06 +0400865config EMMA2RH
866 bool
867 depends on MARKEINS
868 default y
869
thomas@koeller.dyndns.org663c3d92006-08-27 13:51:48 +0200870config SERIAL_RM9000
871 bool
872
Linus Torvalds1da177e2005-04-16 15:20:36 -0700873#
874# Unfortunately not all GT64120 systems run the chip at the same clock.
875# As the user for the clock rate and try to minimize the available options.
876#
877choice
878 prompt "Galileo Chip Clock"
879 #default SYSCLK_83 if MIPS_EV64120
Franck Bui-Huu1e54f772007-05-07 18:01:51 +0200880 depends on MIPS_EV64120 || MOMENCO_OCELOT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700881 default SYSCLK_83 if MIPS_EV64120
Franck Bui-Huu1e54f772007-05-07 18:01:51 +0200882 default SYSCLK_100 if MOMENCO_OCELOT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700883
884config SYSCLK_75
885 bool "75" if MIPS_EV64120
886
887config SYSCLK_83
888 bool "83.3" if MIPS_EV64120
889
890config SYSCLK_100
Franck Bui-Huu1e54f772007-05-07 18:01:51 +0200891 bool "100" if MIPS_EV64120 || MOMENCO_OCELOT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700892
893endchoice
894
Ralf Baechle5e83d432005-10-29 19:32:41 +0100895config ARC32
896 bool
897
Linus Torvalds1da177e2005-04-16 15:20:36 -0700898config BOOT_ELF32
899 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700900
901config MIPS_L1_CACHE_SHIFT
902 int
Thomas Bogendoerferc066a322006-12-28 18:22:32 +0100903 default "4" if MACH_DECSTATION || SNI_RM
Linus Torvalds1da177e2005-04-16 15:20:36 -0700904 default "7" if SGI_IP27
905 default "5"
906
Linus Torvalds1da177e2005-04-16 15:20:36 -0700907config HAVE_STD_PC_SERIAL_PORT
908 bool
909
Linus Torvalds1da177e2005-04-16 15:20:36 -0700910config ARC_CONSOLE
911 bool "ARC console support"
Ralf Baechle36a88532007-03-01 11:56:43 +0000912 depends on SGI_IP22 || (SNI_RM && CPU_LITTLE_ENDIAN)
Linus Torvalds1da177e2005-04-16 15:20:36 -0700913
914config ARC_MEMORY
915 bool
Thomas Bogendoerfer14b36af2006-12-05 17:05:44 +0100916 depends on MACH_JAZZ || SNI_RM || SGI_IP32
Linus Torvalds1da177e2005-04-16 15:20:36 -0700917 default y
918
919config ARC_PROMLIB
920 bool
Thomas Bogendoerfer14b36af2006-12-05 17:05:44 +0100921 depends on MACH_JAZZ || SNI_RM || SGI_IP22 || SGI_IP32
Linus Torvalds1da177e2005-04-16 15:20:36 -0700922 default y
923
924config ARC64
925 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700926
927config BOOT_ELF64
928 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700929
Linus Torvalds1da177e2005-04-16 15:20:36 -0700930menu "CPU selection"
931
932choice
933 prompt "CPU type"
934 default CPU_R4X00
935
Ralf Baechle6e760c82005-07-06 12:08:11 +0000936config CPU_MIPS32_R1
937 bool "MIPS32 Release 1"
Ralf Baechle7cf80532005-10-20 22:33:09 +0100938 depends on SYS_HAS_CPU_MIPS32_R1
Ralf Baechlef7062dd2006-04-24 14:58:53 +0100939 select CPU_HAS_LLSC
Ralf Baechle6e760c82005-07-06 12:08:11 +0000940 select CPU_HAS_PREFETCH
Ralf Baechle797798c2005-08-10 15:17:11 +0000941 select CPU_SUPPORTS_32BIT_KERNEL
Ralf Baechleec28f302006-03-05 00:45:33 +0000942 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle6e760c82005-07-06 12:08:11 +0000943 help
Ralf Baechle5e83d432005-10-29 19:32:41 +0100944 Choose this option to build a kernel for release 1 or later of the
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +0000945 MIPS32 architecture. Most modern embedded systems with a 32-bit
946 MIPS processor are based on a MIPS32 processor. If you know the
947 specific type of processor in your system, choose those that one
948 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
949 Release 2 of the MIPS32 architecture is available since several
950 years so chances are you even have a MIPS32 Release 2 processor
951 in which case you should choose CPU_MIPS32_R2 instead for better
952 performance.
953
954config CPU_MIPS32_R2
955 bool "MIPS32 Release 2"
Ralf Baechle7cf80532005-10-20 22:33:09 +0100956 depends on SYS_HAS_CPU_MIPS32_R2
Ralf Baechlef7062dd2006-04-24 14:58:53 +0100957 select CPU_HAS_LLSC
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +0000958 select CPU_HAS_PREFETCH
Ralf Baechle797798c2005-08-10 15:17:11 +0000959 select CPU_SUPPORTS_32BIT_KERNEL
Ralf Baechleec28f302006-03-05 00:45:33 +0000960 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +0000961 help
Ralf Baechle5e83d432005-10-29 19:32:41 +0100962 Choose this option to build a kernel for release 2 or later of the
Ralf Baechle6e760c82005-07-06 12:08:11 +0000963 MIPS32 architecture. Most modern embedded systems with a 32-bit
964 MIPS processor are based on a MIPS32 processor. If you know the
965 specific type of processor in your system, choose those that one
966 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700967
Ralf Baechle6e760c82005-07-06 12:08:11 +0000968config CPU_MIPS64_R1
969 bool "MIPS64 Release 1"
Ralf Baechle7cf80532005-10-20 22:33:09 +0100970 depends on SYS_HAS_CPU_MIPS64_R1
Ralf Baechlef7062dd2006-04-24 14:58:53 +0100971 select CPU_HAS_LLSC
Ralf Baechle797798c2005-08-10 15:17:11 +0000972 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700973 select CPU_SUPPORTS_32BIT_KERNEL
974 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechleec28f302006-03-05 00:45:33 +0000975 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle6e760c82005-07-06 12:08:11 +0000976 help
977 Choose this option to build a kernel for release 1 or later of the
978 MIPS64 architecture. Many modern embedded systems with a 64-bit
979 MIPS processor are based on a MIPS64 processor. If you know the
980 specific type of processor in your system, choose those that one
981 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +0000982 Release 2 of the MIPS64 architecture is available since several
983 years so chances are you even have a MIPS64 Release 2 processor
984 in which case you should choose CPU_MIPS64_R2 instead for better
985 performance.
986
987config CPU_MIPS64_R2
988 bool "MIPS64 Release 2"
Ralf Baechle7cf80532005-10-20 22:33:09 +0100989 depends on SYS_HAS_CPU_MIPS64_R2
Ralf Baechlef7062dd2006-04-24 14:58:53 +0100990 select CPU_HAS_LLSC
Ralf Baechle797798c2005-08-10 15:17:11 +0000991 select CPU_HAS_PREFETCH
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +0000992 select CPU_SUPPORTS_32BIT_KERNEL
993 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechleec28f302006-03-05 00:45:33 +0000994 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +0000995 help
996 Choose this option to build a kernel for release 2 or later of the
997 MIPS64 architecture. Many modern embedded systems with a 64-bit
998 MIPS processor are based on a MIPS64 processor. If you know the
999 specific type of processor in your system, choose those that one
1000 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001001
1002config CPU_R3000
1003 bool "R3000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001004 depends on SYS_HAS_CPU_R3000
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001005 select CPU_HAS_WB
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001006 select CPU_SUPPORTS_32BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +00001007 select CPU_SUPPORTS_HIGHMEM
Linus Torvalds1da177e2005-04-16 15:20:36 -07001008 help
1009 Please make sure to pick the right CPU type. Linux/MIPS is not
1010 designed to be generic, i.e. Kernels compiled for R3000 CPUs will
1011 *not* work on R4000 machines and vice versa. However, since most
1012 of the supported machines have an R4000 (or similar) CPU, R4x00
1013 might be a safe bet. If the resulting kernel does not work,
1014 try to recompile with R3000.
1015
1016config CPU_TX39XX
1017 bool "R39XX"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001018 depends on SYS_HAS_CPU_TX39XX
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001019 select CPU_SUPPORTS_32BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001020
1021config CPU_VR41XX
1022 bool "R41xx"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001023 depends on SYS_HAS_CPU_VR41XX
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001024 select CPU_SUPPORTS_32BIT_KERNEL
1025 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001026 help
Ralf Baechle5e83d432005-10-29 19:32:41 +01001027 The options selects support for the NEC VR4100 series of processors.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001028 Only choose this option if you have one of these processors as a
1029 kernel built with this option will not run on any other type of
1030 processor or vice versa.
1031
1032config CPU_R4300
1033 bool "R4300"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001034 depends on SYS_HAS_CPU_R4300
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001035 select CPU_HAS_LLSC
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001036 select CPU_SUPPORTS_32BIT_KERNEL
1037 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001038 help
1039 MIPS Technologies R4300-series processors.
1040
1041config CPU_R4X00
1042 bool "R4x00"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001043 depends on SYS_HAS_CPU_R4X00
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 R4000-series processors other than 4300, including
1049 the R4000, R4400, R4600, and 4700.
1050
1051config CPU_TX49XX
1052 bool "R49XX"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001053 depends on SYS_HAS_CPU_TX49XX
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001054 select CPU_HAS_LLSC
Atsushi Nemotode862b42006-03-17 12:59:22 +09001055 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001056 select CPU_SUPPORTS_32BIT_KERNEL
1057 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001058
1059config CPU_R5000
1060 bool "R5000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001061 depends on SYS_HAS_CPU_R5000
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001062 select CPU_HAS_LLSC
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001063 select CPU_SUPPORTS_32BIT_KERNEL
1064 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001065 help
1066 MIPS Technologies R5000-series processors other than the Nevada.
1067
1068config CPU_R5432
1069 bool "R5432"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001070 depends on SYS_HAS_CPU_R5432
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001071 select CPU_HAS_LLSC
Ralf Baechle5e83d432005-10-29 19:32:41 +01001072 select CPU_SUPPORTS_32BIT_KERNEL
1073 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001074
1075config CPU_R6000
1076 bool "R6000"
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001077 depends on EXPERIMENTAL
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001078 select CPU_HAS_LLSC
Ralf Baechle7cf80532005-10-20 22:33:09 +01001079 depends on SYS_HAS_CPU_R6000
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001080 select CPU_SUPPORTS_32BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001081 help
1082 MIPS Technologies R6000 and R6000A series processors. Note these
Chris Dearmanc09b47d2006-06-20 17:15:20 +01001083 processors are extremely rare and the support for them is incomplete.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001084
1085config CPU_NEVADA
1086 bool "RM52xx"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001087 depends on SYS_HAS_CPU_NEVADA
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001088 select CPU_HAS_LLSC
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001089 select CPU_SUPPORTS_32BIT_KERNEL
1090 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001091 help
1092 QED / PMC-Sierra RM52xx-series ("Nevada") processors.
1093
1094config CPU_R8000
1095 bool "R8000"
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001096 depends on EXPERIMENTAL
Ralf Baechle7cf80532005-10-20 22:33:09 +01001097 depends on SYS_HAS_CPU_R8000
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001098 select CPU_HAS_LLSC
Ralf Baechle5e83d432005-10-29 19:32:41 +01001099 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001100 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001101 help
1102 MIPS Technologies R8000 processors. Note these processors are
1103 uncommon and the support for them is incomplete.
1104
1105config CPU_R10000
1106 bool "R10000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001107 depends on SYS_HAS_CPU_R10000
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001108 select CPU_HAS_LLSC
Ralf Baechle5e83d432005-10-29 19:32:41 +01001109 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001110 select CPU_SUPPORTS_32BIT_KERNEL
1111 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +00001112 select CPU_SUPPORTS_HIGHMEM
Linus Torvalds1da177e2005-04-16 15:20:36 -07001113 help
1114 MIPS Technologies R10000-series processors.
1115
1116config CPU_RM7000
1117 bool "RM7000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001118 depends on SYS_HAS_CPU_RM7000
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001119 select CPU_HAS_LLSC
Ralf Baechle5e83d432005-10-29 19:32:41 +01001120 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001121 select CPU_SUPPORTS_32BIT_KERNEL
1122 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +00001123 select CPU_SUPPORTS_HIGHMEM
Linus Torvalds1da177e2005-04-16 15:20:36 -07001124
1125config CPU_RM9000
1126 bool "RM9000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001127 depends on SYS_HAS_CPU_RM9000
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
Ralf Baechle0004a9d2006-10-31 03:45:07 +00001133 select WEAK_ORDERING
Linus Torvalds1da177e2005-04-16 15:20:36 -07001134
1135config CPU_SB1
1136 bool "SB1"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001137 depends on SYS_HAS_CPU_SB1
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001138 select CPU_HAS_LLSC
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
1144endchoice
1145
Ralf Baechle7cf80532005-10-20 22:33:09 +01001146config SYS_HAS_CPU_MIPS32_R1
1147 bool
1148
1149config SYS_HAS_CPU_MIPS32_R2
1150 bool
1151
1152config SYS_HAS_CPU_MIPS64_R1
1153 bool
1154
1155config SYS_HAS_CPU_MIPS64_R2
1156 bool
1157
1158config SYS_HAS_CPU_R3000
1159 bool
1160
1161config SYS_HAS_CPU_TX39XX
1162 bool
1163
1164config SYS_HAS_CPU_VR41XX
1165 bool
1166
1167config SYS_HAS_CPU_R4300
1168 bool
1169
1170config SYS_HAS_CPU_R4X00
1171 bool
1172
1173config SYS_HAS_CPU_TX49XX
1174 bool
1175
1176config SYS_HAS_CPU_R5000
1177 bool
1178
1179config SYS_HAS_CPU_R5432
1180 bool
1181
1182config SYS_HAS_CPU_R6000
1183 bool
1184
1185config SYS_HAS_CPU_NEVADA
1186 bool
1187
1188config SYS_HAS_CPU_R8000
1189 bool
1190
1191config SYS_HAS_CPU_R10000
1192 bool
1193
1194config SYS_HAS_CPU_RM7000
1195 bool
1196
1197config SYS_HAS_CPU_RM9000
1198 bool
1199
1200config SYS_HAS_CPU_SB1
1201 bool
1202
Ralf Baechle0004a9d2006-10-31 03:45:07 +00001203config WEAK_ORDERING
1204 bool
Ralf Baechle5e83d432005-10-29 19:32:41 +01001205endmenu
1206
1207#
Chris Dearmanc09b47d2006-06-20 17:15:20 +01001208# These two indicate any level of the MIPS32 and MIPS64 architecture
Ralf Baechle5e83d432005-10-29 19:32:41 +01001209#
1210config CPU_MIPS32
1211 bool
1212 default y if CPU_MIPS32_R1 || CPU_MIPS32_R2
1213
1214config CPU_MIPS64
1215 bool
1216 default y if CPU_MIPS64_R1 || CPU_MIPS64_R2
1217
1218#
Chris Dearmanc09b47d2006-06-20 17:15:20 +01001219# These two indicate the revision of the architecture, either Release 1 or Release 2
Ralf Baechle5e83d432005-10-29 19:32:41 +01001220#
1221config CPU_MIPSR1
1222 bool
1223 default y if CPU_MIPS32_R1 || CPU_MIPS64_R1
1224
1225config CPU_MIPSR2
1226 bool
1227 default y if CPU_MIPS32_R2 || CPU_MIPS64_R2
1228
1229config SYS_SUPPORTS_32BIT_KERNEL
1230 bool
1231config SYS_SUPPORTS_64BIT_KERNEL
1232 bool
1233config CPU_SUPPORTS_32BIT_KERNEL
1234 bool
1235config CPU_SUPPORTS_64BIT_KERNEL
1236 bool
1237
1238menu "Kernel type"
1239
1240choice
1241
1242 prompt "Kernel code model"
1243 help
1244 You should only select this option if you have a workload that
1245 actually benefits from 64-bit processing or if your machine has
1246 large memory. You will only be presented a single option in this
1247 menu if your system does not support both 32-bit and 64-bit kernels.
1248
1249config 32BIT
1250 bool "32-bit kernel"
1251 depends on CPU_SUPPORTS_32BIT_KERNEL && SYS_SUPPORTS_32BIT_KERNEL
1252 select TRAD_SIGNALS
1253 help
1254 Select this option if you want to build a 32-bit kernel.
1255config 64BIT
1256 bool "64-bit kernel"
1257 depends on CPU_SUPPORTS_64BIT_KERNEL && SYS_SUPPORTS_64BIT_KERNEL
1258 help
1259 Select this option if you want to build a 64-bit kernel.
1260
1261endchoice
1262
Linus Torvalds1da177e2005-04-16 15:20:36 -07001263choice
1264 prompt "Kernel page size"
1265 default PAGE_SIZE_4KB
1266
1267config PAGE_SIZE_4KB
1268 bool "4kB"
1269 help
1270 This option select the standard 4kB Linux page size. On some
1271 R3000-family processors this is the only available page size. Using
1272 4kB page size will minimize memory consumption and is therefore
1273 recommended for low memory systems.
1274
1275config PAGE_SIZE_8KB
1276 bool "8kB"
1277 depends on EXPERIMENTAL && CPU_R8000
1278 help
1279 Using 8kB page size will result in higher performance kernel at
1280 the price of higher memory consumption. This option is available
1281 only on the R8000 processor. Not that at the time of this writing
1282 this option is still high experimental; there are also issues with
1283 compatibility of user applications.
1284
1285config PAGE_SIZE_16KB
1286 bool "16kB"
Ralf Baechle714bfad2006-05-17 14:04:30 +01001287 depends on !CPU_R3000 && !CPU_TX39XX
Linus Torvalds1da177e2005-04-16 15:20:36 -07001288 help
1289 Using 16kB page size will result in higher performance kernel at
1290 the price of higher memory consumption. This option is available on
Ralf Baechle714bfad2006-05-17 14:04:30 +01001291 all non-R3000 family processors. Note that you will need a suitable
1292 Linux distribution to support this.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001293
1294config PAGE_SIZE_64KB
1295 bool "64kB"
1296 depends on EXPERIMENTAL && !CPU_R3000 && !CPU_TX39XX
1297 help
1298 Using 64kB page size will result in higher performance kernel at
1299 the price of higher memory consumption. This option is available on
1300 all non-R3000 family processor. Not that at the time of this
Ralf Baechle714bfad2006-05-17 14:04:30 +01001301 writing this option is still high experimental.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001302
1303endchoice
1304
1305config BOARD_SCACHE
1306 bool
1307
1308config IP22_CPU_SCACHE
1309 bool
1310 select BOARD_SCACHE
1311
Chris Dearman9318c512006-06-20 17:15:20 +01001312#
1313# Support for a MIPS32 / MIPS64 style S-caches
1314#
1315config MIPS_CPU_SCACHE
1316 bool
1317 select BOARD_SCACHE
1318
Linus Torvalds1da177e2005-04-16 15:20:36 -07001319config R5000_CPU_SCACHE
1320 bool
1321 select BOARD_SCACHE
1322
1323config RM7000_CPU_SCACHE
1324 bool
1325 select BOARD_SCACHE
1326
1327config SIBYTE_DMA_PAGEOPS
1328 bool "Use DMA to clear/copy pages"
1329 depends on CPU_SB1
1330 help
1331 Instead of using the CPU to zero and copy pages, use a Data Mover
1332 channel. These DMA channels are otherwise unused by the standard
1333 SiByte Linux port. Seems to give a small performance benefit.
1334
1335config CPU_HAS_PREFETCH
Ralf Baechlec8094b52005-08-05 14:28:54 +00001336 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001337
Ralf Baechle340ee4b2005-08-17 17:44:08 +00001338choice
1339 prompt "MIPS MT options"
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001340
1341config MIPS_MT_DISABLED
1342 bool "Disable multithreading support."
1343 help
1344 Use this option if your workload can't take advantage of
1345 MIPS hardware multithreading support. On systems that don't have
1346 the option of an MT-enabled processor this option will be the only
1347 option in this menu.
Ralf Baechle340ee4b2005-08-17 17:44:08 +00001348
Ralf Baechle59d6ab82006-10-06 17:36:20 +01001349config MIPS_MT_SMP
1350 bool "Use 1 TC on each available VPE for SMP"
1351 depends on SYS_SUPPORTS_MULTITHREADING
1352 select CPU_MIPSR2_IRQ_VI
Chris Dearmand725cf32007-05-08 14:05:39 +01001353 select CPU_MIPSR2_IRQ_EI
Ralf Baechle59d6ab82006-10-06 17:36:20 +01001354 select CPU_MIPSR2_SRS
1355 select MIPS_MT
Ralf Baechlef510aa32007-03-16 21:58:37 +00001356 select NR_CPUS_DEFAULT_2
Ralf Baechle59d6ab82006-10-06 17:36:20 +01001357 select SMP
1358 select SYS_SUPPORTS_SMP
1359 help
1360 This is a kernel model which is also known a VSMP or lately
1361 has been marketesed into SMVP.
1362
Ralf Baechle41c594a2006-04-05 09:45:45 +01001363config MIPS_MT_SMTC
1364 bool "SMTC: Use all TCs on all VPEs for SMP"
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001365 depends on CPU_MIPS32_R2
1366 #depends on CPU_MIPS64_R2 # once there is hardware ...
1367 depends on SYS_SUPPORTS_MULTITHREADING
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001368 select CPU_MIPSR2_IRQ_VI
Chris Dearmand725cf32007-05-08 14:05:39 +01001369 select CPU_MIPSR2_IRQ_EI
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001370 select CPU_MIPSR2_SRS
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001371 select MIPS_MT
Ralf Baechle130e2fb2007-02-06 16:53:15 +00001372 select NR_CPUS_DEFAULT_8
Ralf Baechle41c594a2006-04-05 09:45:45 +01001373 select SMP
Ralf Baechle73b76c72006-08-15 19:36:40 +01001374 select SYS_SUPPORTS_SMP
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001375 help
1376 This is a kernel model which is known a SMTC or lately has been
1377 marketesed into SMVP.
Ralf Baechle41c594a2006-04-05 09:45:45 +01001378
Ralf Baechlee01402b2005-07-14 15:57:16 +00001379config MIPS_VPE_LOADER
1380 bool "VPE loader support."
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001381 depends on SYS_SUPPORTS_MULTITHREADING
Chris Dearmand725cf32007-05-08 14:05:39 +01001382 select CPU_MIPSR2_IRQ_VI
1383 select CPU_MIPSR2_IRQ_EI
Ralf Baechleb0c10b92007-06-01 15:47:46 +01001384 select CPU_MIPSR2_SRS
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001385 select MIPS_MT
Ralf Baechlee01402b2005-07-14 15:57:16 +00001386 help
1387 Includes a loader for loading an elf relocatable object
1388 onto another VPE and running it.
1389
Ralf Baechle340ee4b2005-08-17 17:44:08 +00001390endchoice
1391
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001392config MIPS_MT
1393 bool
1394
1395config SYS_SUPPORTS_MULTITHREADING
1396 bool
1397
Ralf Baechlef088fc82006-04-05 09:45:47 +01001398config MIPS_MT_FPAFF
1399 bool "Dynamic FPU affinity for FP-intensive threads"
1400 depends on MIPS_MT
1401 default y
1402
Ralf Baechleac8be952007-01-20 00:18:01 +00001403config MIPS_MT_SMTC_INSTANT_REPLAY
1404 bool "Low-latency Dispatch of Deferred SMTC IPIs"
Ralf Baechle619af722007-03-26 15:13:57 +01001405 depends on MIPS_MT_SMTC && !PREEMPT
Ralf Baechleac8be952007-01-20 00:18:01 +00001406 default y
1407 help
1408 SMTC pseudo-interrupts between TCs are deferred and queued
1409 if the target TC is interrupt-inhibited (IXMT). In the first
1410 SMTC prototypes, these queued IPIs were serviced on return
1411 to user mode, or on entry into the kernel idle loop. The
1412 INSTANT_REPLAY option dispatches them as part of local_irq_restore()
1413 processing, which adds runtime overhead (hence the option to turn
1414 it off), but ensures that IPIs are handled promptly even under
1415 heavy I/O interrupt load.
1416
Ralf Baechlee01402b2005-07-14 15:57:16 +00001417config MIPS_VPE_LOADER_TOM
1418 bool "Load VPE program into memory hidden from linux"
1419 depends on MIPS_VPE_LOADER
1420 default y
1421 help
1422 The loader can use memory that is present but has been hidden from
1423 Linux using the kernel command line option "mem=xxMB". It's up to
1424 you to ensure the amount you put in the option and the space your
1425 program requires is less or equal to the amount physically present.
1426
1427# this should possibly be in drivers/char, but it is rather cpu related. Hmmm
1428config MIPS_VPE_APSP_API
Ralf Baechle5e83d432005-10-29 19:32:41 +01001429 bool "Enable support for AP/SP API (RTLX)"
1430 depends on MIPS_VPE_LOADER
1431 help
Ralf Baechlee01402b2005-07-14 15:57:16 +00001432
Ralf Baechle26009902006-04-05 09:45:45 +01001433config MIPS_APSP_KSPD
1434 bool "Enable KSPD"
1435 depends on MIPS_VPE_APSP_API
1436 default y
1437 help
1438 KSPD is a kernel daemon that accepts syscall requests from the SP
1439 side, actions them and returns the results. It also handles the
1440 "exit" syscall notifying other kernel modules the SP program is
1441 exiting. You probably want to say yes here.
1442
Linus Torvalds1da177e2005-04-16 15:20:36 -07001443config SB1_PASS_1_WORKAROUNDS
1444 bool
1445 depends on CPU_SB1_PASS_1
1446 default y
1447
1448config SB1_PASS_2_WORKAROUNDS
1449 bool
1450 depends on CPU_SB1 && (CPU_SB1_PASS_2_2 || CPU_SB1_PASS_2)
1451 default y
1452
1453config SB1_PASS_2_1_WORKAROUNDS
1454 bool
1455 depends on CPU_SB1 && CPU_SB1_PASS_2
1456 default y
1457
1458config 64BIT_PHYS_ADDR
1459 bool "Support for 64-bit physical address space"
Ralf Baechle948928a2005-12-23 02:16:44 +01001460 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 -07001461
Linus Torvalds1da177e2005-04-16 15:20:36 -07001462config CPU_HAS_LLSC
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001463 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001464
Franck Bui-Huu9693a852007-02-02 17:41:47 +01001465config CPU_HAS_SMARTMIPS
1466 depends on SYS_SUPPORTS_SMARTMIPS
1467 bool "Support for the SmartMIPS ASE"
1468 help
1469 SmartMIPS is a extension of the MIPS32 architecture aimed at
1470 increased security at both hardware and software level for
1471 smartcards. Enabling this option will allow proper use of the
1472 SmartMIPS instructions by Linux applications. However a kernel with
1473 this option will not work on a MIPS core without SmartMIPS core. If
1474 you don't know you probably don't have SmartMIPS and should say N
1475 here.
1476
Linus Torvalds1da177e2005-04-16 15:20:36 -07001477config CPU_HAS_WB
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001478 bool
Ralf Baechlee01402b2005-07-14 15:57:16 +00001479
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001480#
1481# Vectored interrupt mode is an R2 feature
1482#
Ralf Baechlee01402b2005-07-14 15:57:16 +00001483config CPU_MIPSR2_IRQ_VI
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001484 bool
Ralf Baechlee01402b2005-07-14 15:57:16 +00001485
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001486#
1487# Extended interrupt mode is an R2 feature
1488#
Ralf Baechlee01402b2005-07-14 15:57:16 +00001489config CPU_MIPSR2_IRQ_EI
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001490 bool
Ralf Baechlee01402b2005-07-14 15:57:16 +00001491
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001492#
1493# Shadow registers are an R2 feature
1494#
Ralf Baechlee01402b2005-07-14 15:57:16 +00001495config CPU_MIPSR2_SRS
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001496 bool
Ralf Baechlee01402b2005-07-14 15:57:16 +00001497
Linus Torvalds1da177e2005-04-16 15:20:36 -07001498config CPU_HAS_SYNC
1499 bool
1500 depends on !CPU_R3000
1501 default y
1502
1503#
Ralf Baechle797798c2005-08-10 15:17:11 +00001504# Use the generic interrupt handling code in kernel/irq/:
1505#
1506config GENERIC_HARDIRQS
1507 bool
1508 default y
1509
1510config GENERIC_IRQ_PROBE
1511 bool
1512 default y
1513
Ingo Molnar0d7012a2006-06-29 02:24:43 -07001514config IRQ_PER_CPU
Ingo Molnar0d7012a2006-06-29 02:24:43 -07001515 bool
Ingo Molnar0d7012a2006-06-29 02:24:43 -07001516
Ralf Baechle797798c2005-08-10 15:17:11 +00001517#
Linus Torvalds1da177e2005-04-16 15:20:36 -07001518# - Highmem only makes sense for the 32-bit kernel.
1519# - The current highmem code will only work properly on physically indexed
1520# caches such as R3000, SB1, R7000 or those that look like they're virtually
1521# indexed such as R4000/R4400 SC and MC versions or R10000. So for the
1522# moment we protect the user and offer the highmem option only on machines
1523# where it's known to be safe. This will not offer highmem on a few systems
1524# such as MIPS32 and MIPS64 CPUs which may have virtual and physically
1525# indexed CPUs but we're playing safe.
Ralf Baechle797798c2005-08-10 15:17:11 +00001526# - We use SYS_SUPPORTS_HIGHMEM to offer highmem only for systems where we
1527# know they might have memory configurations that could make use of highmem
1528# support.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001529#
1530config HIGHMEM
1531 bool "High Memory Support"
Ralf Baechle797798c2005-08-10 15:17:11 +00001532 depends on 32BIT && CPU_SUPPORTS_HIGHMEM && SYS_SUPPORTS_HIGHMEM
1533
1534config CPU_SUPPORTS_HIGHMEM
1535 bool
1536
1537config SYS_SUPPORTS_HIGHMEM
1538 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001539
Franck Bui-Huu9693a852007-02-02 17:41:47 +01001540config SYS_SUPPORTS_SMARTMIPS
1541 bool
1542
Yoichi Yuasab4819b52005-06-25 14:54:31 -07001543config ARCH_FLATMEM_ENABLE
1544 def_bool y
1545 depends on !NUMA
1546
Ralf Baechled8cb4e12006-06-11 23:03:08 +01001547config ARCH_DISCONTIGMEM_ENABLE
1548 bool
1549 default y if SGI_IP27
1550 help
David Sterba3dde6ad2007-05-09 07:12:20 +02001551 Say Y to support efficient handling of discontiguous physical memory,
Ralf Baechled8cb4e12006-06-11 23:03:08 +01001552 for architectures which are either NUMA (Non-Uniform Memory Access)
1553 or have huge holes in the physical address space for other reasons.
1554 See <file:Documentation/vm/numa> for more.
1555
Atsushi Nemotob1c6cd42006-07-03 00:09:47 +09001556config ARCH_SPARSEMEM_ENABLE
1557 bool
Atsushi Nemoto7de58fa2006-07-05 01:22:44 +09001558 select SPARSEMEM_STATIC
Atsushi Nemoto31473742006-07-03 00:09:47 +09001559
Ralf Baechled8cb4e12006-06-11 23:03:08 +01001560config NUMA
1561 bool "NUMA Support"
1562 depends on SYS_SUPPORTS_NUMA
1563 help
1564 Say Y to compile the kernel to support NUMA (Non-Uniform Memory
1565 Access). This option improves performance on systems with more
1566 than two nodes; on two node systems it is generally better to
1567 leave it disabled; on single node systems disable this option
1568 disabled.
1569
1570config SYS_SUPPORTS_NUMA
1571 bool
1572
Yasunori Gotoc80d79d2006-04-10 22:53:53 -07001573config NODES_SHIFT
1574 int
1575 default "6"
1576 depends on NEED_MULTIPLE_NODES
1577
Yoichi Yuasab4819b52005-06-25 14:54:31 -07001578source "mm/Kconfig"
1579
Linus Torvalds1da177e2005-04-16 15:20:36 -07001580config SMP
1581 bool "Multi-Processing support"
Ralf Baechlee73ea272006-06-04 11:51:46 +01001582 depends on SYS_SUPPORTS_SMP
Ralf Baechleb4b30a52006-08-03 17:34:24 +01001583 select IRQ_PER_CPU
Ralf Baechlee73ea272006-06-04 11:51:46 +01001584 help
Linus Torvalds1da177e2005-04-16 15:20:36 -07001585 This enables support for systems with more than one CPU. If you have
1586 a system with only one CPU, like most personal computers, say N. If
1587 you have a system with more than one CPU, say Y.
1588
1589 If you say N here, the kernel will run on single and multiprocessor
1590 machines, but will use only one CPU of a multiprocessor machine. If
1591 you say Y here, the kernel will run on many, but not all,
1592 singleprocessor machines. On a singleprocessor machine, the kernel
1593 will run faster if you say N here.
1594
1595 People using multiprocessor machines who say Y here should also say
1596 Y to "Enhanced Real Time Clock Support", below.
1597
1598 See also the <file:Documentation/smp.txt> and the SMP-HOWTO
1599 available at <http://www.tldp.org/docs.html#howto>.
1600
1601 If you don't know what to do here, say N.
1602
Ralf Baechlee73ea272006-06-04 11:51:46 +01001603config SYS_SUPPORTS_SMP
1604 bool
1605
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09001606config NR_CPUS_DEFAULT_1
1607 bool
1608
Ralf Baechle130e2fb2007-02-06 16:53:15 +00001609config NR_CPUS_DEFAULT_2
1610 bool
1611
1612config NR_CPUS_DEFAULT_4
1613 bool
1614
1615config NR_CPUS_DEFAULT_8
1616 bool
1617
1618config NR_CPUS_DEFAULT_16
1619 bool
1620
1621config NR_CPUS_DEFAULT_32
1622 bool
1623
1624config NR_CPUS_DEFAULT_64
1625 bool
1626
Linus Torvalds1da177e2005-04-16 15:20:36 -07001627config NR_CPUS
1628 int "Maximum number of CPUs (2-64)"
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09001629 range 1 64 if NR_CPUS_DEFAULT_1
Linus Torvalds1da177e2005-04-16 15:20:36 -07001630 depends on SMP
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09001631 default "1" if NR_CPUS_DEFAULT_1
Ralf Baechle130e2fb2007-02-06 16:53:15 +00001632 default "2" if NR_CPUS_DEFAULT_2
1633 default "4" if NR_CPUS_DEFAULT_4
1634 default "8" if NR_CPUS_DEFAULT_8
1635 default "16" if NR_CPUS_DEFAULT_16
1636 default "32" if NR_CPUS_DEFAULT_32
1637 default "64" if NR_CPUS_DEFAULT_64
Linus Torvalds1da177e2005-04-16 15:20:36 -07001638 help
1639 This allows you to specify the maximum number of CPUs which this
1640 kernel will support. The maximum supported value is 32 for 32-bit
1641 kernel and 64 for 64-bit kernels; the minimum value which makes
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09001642 sense is 1 for Qemu (useful only for kernel debugging purposes)
1643 and 2 for all others.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001644
1645 This is purely to save memory - each supported CPU adds
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09001646 approximately eight kilobytes to the kernel image. For best
1647 performance should round up your number of processors to the next
1648 power of two.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001649
Atsushi Nemoto1723b4a2006-06-20 00:19:13 +09001650#
1651# Timer Interrupt Frequency Configuration
1652#
1653
1654choice
1655 prompt "Timer frequency"
1656 default HZ_250
1657 help
1658 Allows the configuration of the timer frequency.
1659
1660 config HZ_48
1661 bool "48 HZ" if SYS_SUPPORTS_48HZ
1662
1663 config HZ_100
1664 bool "100 HZ" if SYS_SUPPORTS_100HZ || SYS_SUPPORTS_ARBIT_HZ
1665
1666 config HZ_128
1667 bool "128 HZ" if SYS_SUPPORTS_128HZ || SYS_SUPPORTS_ARBIT_HZ
1668
1669 config HZ_250
1670 bool "250 HZ" if SYS_SUPPORTS_250HZ || SYS_SUPPORTS_ARBIT_HZ
1671
1672 config HZ_256
1673 bool "256 HZ" if SYS_SUPPORTS_256HZ || SYS_SUPPORTS_ARBIT_HZ
1674
1675 config HZ_1000
1676 bool "1000 HZ" if SYS_SUPPORTS_1000HZ || SYS_SUPPORTS_ARBIT_HZ
1677
1678 config HZ_1024
1679 bool "1024 HZ" if SYS_SUPPORTS_1024HZ || SYS_SUPPORTS_ARBIT_HZ
1680
1681endchoice
1682
1683config SYS_SUPPORTS_48HZ
1684 bool
1685
1686config SYS_SUPPORTS_100HZ
1687 bool
1688
1689config SYS_SUPPORTS_128HZ
1690 bool
1691
1692config SYS_SUPPORTS_250HZ
1693 bool
1694
1695config SYS_SUPPORTS_256HZ
1696 bool
1697
1698config SYS_SUPPORTS_1000HZ
1699 bool
1700
1701config SYS_SUPPORTS_1024HZ
1702 bool
1703
1704config SYS_SUPPORTS_ARBIT_HZ
1705 bool
1706 default y if !SYS_SUPPORTS_48HZ && !SYS_SUPPORTS_100HZ && \
1707 !SYS_SUPPORTS_128HZ && !SYS_SUPPORTS_250HZ && \
1708 !SYS_SUPPORTS_256HZ && !SYS_SUPPORTS_1000HZ && \
1709 !SYS_SUPPORTS_1024HZ
1710
1711config HZ
1712 int
1713 default 48 if HZ_48
1714 default 100 if HZ_100
1715 default 128 if HZ_128
1716 default 250 if HZ_250
1717 default 256 if HZ_256
1718 default 1000 if HZ_1000
1719 default 1024 if HZ_1024
1720
Ralf Baechlee80de852005-07-11 20:45:51 +00001721source "kernel/Kconfig.preempt"
Linus Torvalds1da177e2005-04-16 15:20:36 -07001722
Linus Torvalds1da177e2005-04-16 15:20:36 -07001723config MIPS_INSANE_LARGE
1724 bool "Support for large 64-bit configurations"
Ralf Baechle875d43e2005-09-03 15:56:16 -07001725 depends on CPU_R10000 && 64BIT
Linus Torvalds1da177e2005-04-16 15:20:36 -07001726 help
1727 MIPS R10000 does support a 44 bit / 16TB address space as opposed to
1728 previous 64-bit processors which only supported 40 bit / 1TB. If you
1729 need processes of more than 1TB virtual address space, say Y here.
1730 This will result in additional memory usage, so it is not
1731 recommended for normal users.
1732
Atsushi Nemotoea6e9422007-01-16 23:29:11 +09001733config KEXEC
1734 bool "Kexec system call (EXPERIMENTAL)"
1735 depends on EXPERIMENTAL
1736 help
1737 kexec is a system call that implements the ability to shutdown your
1738 current kernel, and to start another kernel. It is like a reboot
David Sterba3dde6ad2007-05-09 07:12:20 +02001739 but it is independent of the system firmware. And like a reboot
Atsushi Nemotoea6e9422007-01-16 23:29:11 +09001740 you can start any kernel with it, not just Linux.
1741
1742 The name comes from the similiarity to the exec system call.
1743
1744 It is an ongoing process to be certain the hardware in a machine
1745 is properly shutdown, so do not be surprised if this code does not
1746 initially work for you. It may help to enable device hotplugging
1747 support. As of this writing the exact hardware interface is
1748 strongly in flux, so no good recommendation can be made.
1749
1750config SECCOMP
1751 bool "Enable seccomp to safely compute untrusted bytecode"
1752 depends on PROC_FS && BROKEN
1753 default y
1754 help
1755 This kernel feature is useful for number crunching applications
1756 that may need to compute untrusted bytecode during their
1757 execution. By using pipes or other transports made available to
1758 the process as file descriptors supporting the read/write
1759 syscalls, it's possible to isolate those applications in
1760 their own address space using seccomp. Once seccomp is
1761 enabled via /proc/<pid>/seccomp, it cannot be disabled
1762 and the task is only allowed to execute a few safe syscalls
1763 defined by each seccomp mode.
1764
1765 If unsure, say Y. Only embedded should say N here.
1766
Ralf Baechle5e83d432005-10-29 19:32:41 +01001767endmenu
1768
Linus Torvalds1da177e2005-04-16 15:20:36 -07001769config RWSEM_GENERIC_SPINLOCK
1770 bool
1771 default y
1772
Atsushi Nemoto1df0f0f2006-09-26 23:44:01 +09001773config LOCKDEP_SUPPORT
1774 bool
1775 default y
1776
1777config STACKTRACE_SUPPORT
1778 bool
1779 default y
1780
Ralf Baechleb6c35392005-11-25 11:35:40 +00001781source "init/Kconfig"
1782
Linus Torvalds1da177e2005-04-16 15:20:36 -07001783menu "Bus options (PCI, PCMCIA, EISA, ISA, TC)"
1784
Ralf Baechle5e83d432005-10-29 19:32:41 +01001785config HW_HAS_EISA
1786 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001787config HW_HAS_PCI
1788 bool
1789
1790config PCI
1791 bool "Support for PCI controller"
1792 depends on HW_HAS_PCI
1793 help
1794 Find out whether you have a PCI motherboard. PCI is the name of a
1795 bus system, i.e. the way the CPU talks to the other stuff inside
1796 your box. Other bus systems are ISA, EISA, or VESA. If you have PCI,
1797 say Y, otherwise N.
1798
1799 The PCI-HOWTO, available from
1800 <http://www.tldp.org/docs.html#howto>, contains valuable
1801 information about which PCI hardware does work under Linux and which
1802 doesn't.
1803
1804config PCI_DOMAINS
1805 bool
1806 depends on PCI
1807
1808source "drivers/pci/Kconfig"
1809
1810#
1811# ISA support is now enabled via select. Too many systems still have the one
1812# or other ISA chip on the board that users don't know about so don't expect
1813# users to choose the right thing ...
1814#
1815config ISA
1816 bool
1817
1818config EISA
1819 bool "EISA support"
Ralf Baechle5e83d432005-10-29 19:32:41 +01001820 depends on HW_HAS_EISA
Linus Torvalds1da177e2005-04-16 15:20:36 -07001821 select ISA
Ralf Baechleaa414df2006-11-30 01:14:51 +00001822 select GENERIC_ISA_DMA
Linus Torvalds1da177e2005-04-16 15:20:36 -07001823 ---help---
1824 The Extended Industry Standard Architecture (EISA) bus was
1825 developed as an open alternative to the IBM MicroChannel bus.
1826
1827 The EISA bus provided some of the features of the IBM MicroChannel
1828 bus while maintaining backward compatibility with cards made for
1829 the older ISA bus. The EISA bus saw limited use between 1988 and
1830 1995 when it was made obsolete by the PCI bus.
1831
1832 Say Y here if you are building a kernel for an EISA-based machine.
1833
1834 Otherwise, say N.
1835
1836source "drivers/eisa/Kconfig"
1837
1838config TC
1839 bool "TURBOchannel support"
1840 depends on MACH_DECSTATION
1841 help
1842 TurboChannel is a DEC (now Compaq (now HP)) bus for Alpha and MIPS
1843 processors. Documentation on writing device drivers for TurboChannel
1844 is available at:
1845 <http://www.cs.arizona.edu/computer.help/policy/DIGITAL_unix/AA-PS3HD-TET1_html/TITLE.html>.
1846
1847#config ACCESSBUS
1848# bool "Access.Bus support"
1849# depends on TC
1850
1851config MMU
1852 bool
1853 default y
1854
Michael Neulinge5c6c8e2006-03-14 00:11:50 -05001855config I8253
1856 bool
1857
Linus Torvalds1da177e2005-04-16 15:20:36 -07001858source "drivers/pcmcia/Kconfig"
1859
1860source "drivers/pci/hotplug/Kconfig"
1861
1862endmenu
1863
1864menu "Executable file formats"
1865
1866source "fs/Kconfig.binfmt"
1867
1868config TRAD_SIGNALS
1869 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001870
1871config BUILD_ELF64
1872 bool "Use 64-bit ELF format for building"
Ralf Baechle875d43e2005-09-03 15:56:16 -07001873 depends on 64BIT
Linus Torvalds1da177e2005-04-16 15:20:36 -07001874 help
1875 A 64-bit kernel is usually built using the 64-bit ELF binary object
1876 format as it's one that allows arbitrary 64-bit constructs. For
1877 kernels that are loaded within the KSEG compatibility segments the
1878 32-bit ELF format can optionally be used resulting in a somewhat
1879 smaller binary, but this option is not explicitly supported by the
1880 toolchain and since binutils 2.14 it does not even work at all.
1881
1882 Say Y to use the 64-bit format or N to use the 32-bit one.
1883
1884 If unsure say Y.
1885
1886config BINFMT_IRIX
1887 bool "Include IRIX binary compatibility"
Ralf Baechle5e83d432005-10-29 19:32:41 +01001888 depends on CPU_BIG_ENDIAN && 32BIT && BROKEN
Linus Torvalds1da177e2005-04-16 15:20:36 -07001889
1890config MIPS32_COMPAT
1891 bool "Kernel support for Linux/MIPS 32-bit binary compatibility"
Ralf Baechle875d43e2005-09-03 15:56:16 -07001892 depends on 64BIT
Linus Torvalds1da177e2005-04-16 15:20:36 -07001893 help
1894 Select this option if you want Linux/MIPS 32-bit binary
1895 compatibility. Since all software available for Linux/MIPS is
1896 currently 32-bit you should say Y here.
1897
1898config COMPAT
1899 bool
1900 depends on MIPS32_COMPAT
1901 default y
1902
Atsushi Nemoto05e43962006-11-07 18:02:44 +09001903config SYSVIPC_COMPAT
1904 bool
1905 depends on COMPAT && SYSVIPC
1906 default y
1907
Linus Torvalds1da177e2005-04-16 15:20:36 -07001908config MIPS32_O32
1909 bool "Kernel support for o32 binaries"
1910 depends on MIPS32_COMPAT
1911 help
1912 Select this option if you want to run o32 binaries. These are pure
1913 32-bit binaries as used by the 32-bit Linux/MIPS port. Most of
1914 existing binaries are in this format.
1915
1916 If unsure, say Y.
1917
1918config MIPS32_N32
1919 bool "Kernel support for n32 binaries"
1920 depends on MIPS32_COMPAT
1921 help
1922 Select this option if you want to run n32 binaries. These are
1923 64-bit binaries using 32-bit quantities for addressing and certain
1924 data that would normally be 64-bit. They are used in special
1925 cases.
1926
1927 If unsure, say N.
1928
1929config BINFMT_ELF32
1930 bool
1931 default y if MIPS32_O32 || MIPS32_N32
1932
Ralf Baechle21162452007-02-09 17:08:58 +00001933endmenu
Linus Torvalds1da177e2005-04-16 15:20:36 -07001934
Ralf Baechle21162452007-02-09 17:08:58 +00001935menu "Power management options"
Rodolfo Giometti952fa952006-06-05 17:43:10 +02001936
Ralf Baechle21162452007-02-09 17:08:58 +00001937source "kernel/power/Kconfig"
Rodolfo Giometti952fa952006-06-05 17:43:10 +02001938
Linus Torvalds1da177e2005-04-16 15:20:36 -07001939endmenu
1940
Sam Ravnborgd5950b42005-07-11 21:03:49 -07001941source "net/Kconfig"
1942
Linus Torvalds1da177e2005-04-16 15:20:36 -07001943source "drivers/Kconfig"
1944
1945source "fs/Kconfig"
1946
Ralf Baechle5e83d432005-10-29 19:32:41 +01001947source "arch/mips/oprofile/Kconfig"
1948
Linus Torvalds1da177e2005-04-16 15:20:36 -07001949source "arch/mips/Kconfig.debug"
1950
1951source "security/Kconfig"
1952
1953source "crypto/Kconfig"
1954
1955source "lib/Kconfig"