blob: b00a84b6e09d48860ee36e5601f15ced3cc3a9f5 [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
Ralf Baechle5e83d432005-10-29 19:32:41 +010011choice
12 prompt "System type"
13 default SGI_IP22
Linus Torvalds1da177e2005-04-16 15:20:36 -070014
Ralf Baechle5e83d432005-10-29 19:32:41 +010015config MIPS_MTX1
Martin Michlmayr3fa986f2006-05-09 23:34:53 +020016 bool "4G Systems MTX-1 board"
Linus Torvalds1da177e2005-04-16 15:20:36 -070017 select DMA_NONCOHERENT
Linus Torvalds1da177e2005-04-16 15:20:36 -070018 select HW_HAS_PCI
Ralf Baechle08f57f72006-12-03 19:55:45 +000019 select RESOURCES_64BIT if PCI
Ralf Baechle5e83d432005-10-29 19:32:41 +010020 select SOC_AU1500
Ralf Baechle7cf80532005-10-20 22:33:09 +010021 select SYS_HAS_CPU_MIPS32_R1
Ralf Baechle5e83d432005-10-29 19:32:41 +010022 select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -070023
Ralf Baechle5e83d432005-10-29 19:32:41 +010024config MIPS_BOSPORUS
25 bool "AMD Alchemy Bosporus board"
26 select SOC_AU1500
Linus Torvalds1da177e2005-04-16 15:20:36 -070027 select DMA_NONCOHERENT
Ralf Baechle7cf80532005-10-20 22:33:09 +010028 select SYS_HAS_CPU_MIPS32_R1
Ralf Baechle5e83d432005-10-29 19:32:41 +010029 select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -070030
Ralf Baechle5e83d432005-10-29 19:32:41 +010031config MIPS_PB1000
32 bool "AMD Alchemy PB1000 board"
33 select SOC_AU1000
Linus Torvalds1da177e2005-04-16 15:20:36 -070034 select DMA_NONCOHERENT
35 select HW_HAS_PCI
Ralf Baechle08f57f72006-12-03 19:55:45 +000036 select RESOURCES_64BIT if PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -070037 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +010038 select SYS_HAS_CPU_MIPS32_R1
Ralf Baechle5e83d432005-10-29 19:32:41 +010039 select SYS_SUPPORTS_LITTLE_ENDIAN
40
41config MIPS_PB1100
42 bool "AMD Alchemy PB1100 board"
43 select SOC_AU1100
44 select DMA_NONCOHERENT
45 select HW_HAS_PCI
Ralf Baechle08f57f72006-12-03 19:55:45 +000046 select RESOURCES_64BIT if PCI
Ralf Baechle5e83d432005-10-29 19:32:41 +010047 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +010048 select SYS_HAS_CPU_MIPS32_R1
Ralf Baechle5e83d432005-10-29 19:32:41 +010049 select SYS_SUPPORTS_LITTLE_ENDIAN
50
51config MIPS_PB1500
52 bool "AMD Alchemy PB1500 board"
53 select SOC_AU1500
54 select DMA_NONCOHERENT
55 select HW_HAS_PCI
Ralf Baechle08f57f72006-12-03 19:55:45 +000056 select RESOURCES_64BIT if PCI
Ralf Baechle7cf80532005-10-20 22:33:09 +010057 select SYS_HAS_CPU_MIPS32_R1
Ralf Baechle5e83d432005-10-29 19:32:41 +010058 select SYS_SUPPORTS_LITTLE_ENDIAN
59
60config MIPS_PB1550
61 bool "AMD Alchemy PB1550 board"
62 select SOC_AU1550
63 select DMA_NONCOHERENT
64 select HW_HAS_PCI
65 select MIPS_DISABLE_OBSOLETE_IDE
Ralf Baechle08f57f72006-12-03 19:55:45 +000066 select RESOURCES_64BIT if PCI
Ralf Baechle7cf80532005-10-20 22:33:09 +010067 select SYS_HAS_CPU_MIPS32_R1
Ralf Baechle5e83d432005-10-29 19:32:41 +010068 select SYS_SUPPORTS_LITTLE_ENDIAN
69
70config MIPS_PB1200
71 bool "AMD Alchemy PB1200 board"
72 select SOC_AU1200
73 select DMA_NONCOHERENT
74 select MIPS_DISABLE_OBSOLETE_IDE
Ralf Baechle08f57f72006-12-03 19:55:45 +000075 select RESOURCES_64BIT if PCI
Ralf Baechle7cf80532005-10-20 22:33:09 +010076 select SYS_HAS_CPU_MIPS32_R1
Ralf Baechle5e83d432005-10-29 19:32:41 +010077 select SYS_SUPPORTS_LITTLE_ENDIAN
78
79config MIPS_DB1000
80 bool "AMD Alchemy DB1000 board"
81 select SOC_AU1000
82 select DMA_NONCOHERENT
83 select HW_HAS_PCI
Ralf Baechle08f57f72006-12-03 19:55:45 +000084 select RESOURCES_64BIT if PCI
Ralf Baechle7cf80532005-10-20 22:33:09 +010085 select SYS_HAS_CPU_MIPS32_R1
Ralf Baechle5e83d432005-10-29 19:32:41 +010086 select SYS_SUPPORTS_LITTLE_ENDIAN
87
88config MIPS_DB1100
89 bool "AMD Alchemy DB1100 board"
90 select SOC_AU1100
91 select DMA_NONCOHERENT
Ralf Baechle7cf80532005-10-20 22:33:09 +010092 select SYS_HAS_CPU_MIPS32_R1
Ralf Baechle5e83d432005-10-29 19:32:41 +010093 select SYS_SUPPORTS_LITTLE_ENDIAN
94
95config MIPS_DB1500
96 bool "AMD Alchemy DB1500 board"
97 select SOC_AU1500
98 select DMA_NONCOHERENT
99 select HW_HAS_PCI
100 select MIPS_DISABLE_OBSOLETE_IDE
Ralf Baechle08f57f72006-12-03 19:55:45 +0000101 select RESOURCES_64BIT if PCI
Ralf Baechle7cf80532005-10-20 22:33:09 +0100102 select SYS_HAS_CPU_MIPS32_R1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100103 select SYS_SUPPORTS_BIG_ENDIAN
104 select SYS_SUPPORTS_LITTLE_ENDIAN
105
106config MIPS_DB1550
107 bool "AMD Alchemy DB1550 board"
108 select SOC_AU1550
109 select HW_HAS_PCI
110 select DMA_NONCOHERENT
111 select MIPS_DISABLE_OBSOLETE_IDE
Ralf Baechle08f57f72006-12-03 19:55:45 +0000112 select RESOURCES_64BIT if PCI
Ralf Baechle7cf80532005-10-20 22:33:09 +0100113 select SYS_HAS_CPU_MIPS32_R1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100114 select SYS_SUPPORTS_LITTLE_ENDIAN
115
116config MIPS_DB1200
117 bool "AMD Alchemy DB1200 board"
118 select SOC_AU1200
119 select DMA_COHERENT
120 select MIPS_DISABLE_OBSOLETE_IDE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100121 select SYS_HAS_CPU_MIPS32_R1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100122 select SYS_SUPPORTS_LITTLE_ENDIAN
123
124config MIPS_MIRAGE
125 bool "AMD Alchemy Mirage board"
126 select DMA_NONCOHERENT
127 select SOC_AU1500
Ralf Baechle7cf80532005-10-20 22:33:09 +0100128 select SYS_HAS_CPU_MIPS32_R1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100129 select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700130
Ralf Baechle35189fa2006-06-18 16:39:46 +0100131config BASLER_EXCITE
132 bool "Basler eXcite smart camera support"
133 select DMA_COHERENT
134 select HW_HAS_PCI
135 select IRQ_CPU
136 select IRQ_CPU_RM7K
137 select IRQ_CPU_RM9K
thomas@koeller.dyndns.org663c3d92006-08-27 13:51:48 +0200138 select MIPS_RM9122
Ralf Baechle35189fa2006-06-18 16:39:46 +0100139 select SYS_HAS_CPU_RM9000
140 select SYS_SUPPORTS_32BIT_KERNEL
141 select SYS_SUPPORTS_64BIT_KERNEL
142 select SYS_SUPPORTS_BIG_ENDIAN
143 help
144 The eXcite is a smart camera platform manufactured by
145 Basler Vision Technologies AG
146
147config BASLER_EXCITE_PROTOTYPE
148 bool "Support for pre-release units"
149 depends on BASLER_EXCITE
150 default n
151 help
152 Pre-series (prototype) units are different from later ones in
153 some ways. Select this option if you have one of these. Please
154 note that a kernel built with this option selected will not be
155 able to run on normal units.
156
Linus Torvalds1da177e2005-04-16 15:20:36 -0700157config MIPS_COBALT
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200158 bool "Cobalt Server"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700159 select DMA_NONCOHERENT
160 select HW_HAS_PCI
161 select I8259
162 select IRQ_CPU
Ralf Baechle5e83d432005-10-29 19:32:41 +0100163 select MIPS_GT64111
Ralf Baechle7cf80532005-10-20 22:33:09 +0100164 select SYS_HAS_CPU_NEVADA
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700165 select SYS_SUPPORTS_32BIT_KERNEL
166 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100167 select SYS_SUPPORTS_LITTLE_ENDIAN
Atsushi Nemoto9fd32cf2006-12-08 01:55:07 +0900168 select GENERIC_HARDIRQS_NO__DO_IRQ
Linus Torvalds1da177e2005-04-16 15:20:36 -0700169
170config MACH_DECSTATION
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200171 bool "DECstations"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700172 select BOOT_ELF32
173 select DMA_NONCOHERENT
Maciej W. Rozyckib6d468e2005-02-02 20:36:21 +0000174 select EARLY_PRINTK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700175 select IRQ_CPU
Ralf Baechle7cf80532005-10-20 22:33:09 +0100176 select SYS_HAS_CPU_R3000
177 select SYS_HAS_CPU_R4X00
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700178 select SYS_SUPPORTS_32BIT_KERNEL
179 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100180 select SYS_SUPPORTS_LITTLE_ENDIAN
Atsushi Nemoto1723b4a2006-06-20 00:19:13 +0900181 select SYS_SUPPORTS_128HZ
182 select SYS_SUPPORTS_256HZ
183 select SYS_SUPPORTS_1024HZ
Ralf Baechle5e83d432005-10-29 19:32:41 +0100184 help
Linus Torvalds1da177e2005-04-16 15:20:36 -0700185 This enables support for DEC's MIPS based workstations. For details
186 see the Linux/MIPS FAQ on <http://www.linux-mips.org/> and the
187 DECstation porting pages on <http://decstation.unix-ag.org/>.
188
189 If you have one of the following DECstation Models you definitely
190 want to choose R4xx0 for the CPU Type:
191
192 DECstation 5000/50
193 DECstation 5000/150
194 DECstation 5000/260
195 DECsystem 5900/260
196
197 otherwise choose R3000.
198
199config MIPS_EV64120
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200200 bool "Galileo EV64120 Evaluation board (EXPERIMENTAL)"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700201 depends on EXPERIMENTAL
202 select DMA_NONCOHERENT
203 select HW_HAS_PCI
204 select MIPS_GT64120
Ralf Baechle7cf80532005-10-20 22:33:09 +0100205 select SYS_HAS_CPU_R5000
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700206 select SYS_SUPPORTS_32BIT_KERNEL
207 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100208 select SYS_SUPPORTS_BIG_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700209 help
210 This is an evaluation board based on the Galileo GT-64120
211 single-chip system controller that contains a MIPS R5000 compatible
212 core running at 75/100MHz. Their website is located at
213 <http://www.marvell.com/>. Say Y here if you wish to build a
214 kernel for this platform.
215
Ralf Baechle5e83d432005-10-29 19:32:41 +0100216config MACH_JAZZ
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200217 bool "Jazz family of machines"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100218 select ARC
219 select ARC32
220 select ARCH_MAY_HAVE_PC_FDC
221 select GENERIC_ISA_DMA
Michael Neulinge5c6c8e2006-03-14 00:11:50 -0500222 select I8253
Ralf Baechle5e83d432005-10-29 19:32:41 +0100223 select I8259
224 select ISA
Ralf Baechle7cf80532005-10-20 22:33:09 +0100225 select SYS_HAS_CPU_R4X00
Ralf Baechle5e83d432005-10-29 19:32:41 +0100226 select SYS_SUPPORTS_32BIT_KERNEL
227 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
Atsushi Nemoto1723b4a2006-06-20 00:19:13 +0900228 select SYS_SUPPORTS_100HZ
Atsushi Nemoto9fd32cf2006-12-08 01:55:07 +0900229 select GENERIC_HARDIRQS_NO__DO_IRQ
Linus Torvalds1da177e2005-04-16 15:20:36 -0700230 help
Ralf Baechle5e83d432005-10-29 19:32:41 +0100231 This a family of machines based on the MIPS R4030 chipset which was
232 used by several vendors to build RISC/os and Windows NT workstations.
233 Members include the Acer PICA, MIPS Magnum 4000, MIPS Millenium and
234 Olivetti M700-10 workstations.
235
236config LASAT
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200237 bool "LASAT Networks platforms"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100238 select DMA_NONCOHERENT
239 select HW_HAS_PCI
240 select MIPS_GT64120
241 select MIPS_NILE4
242 select R5000_CPU_SCACHE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100243 select SYS_HAS_CPU_R5000
Ralf Baechle5e83d432005-10-29 19:32:41 +0100244 select SYS_SUPPORTS_32BIT_KERNEL
245 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
246 select SYS_SUPPORTS_LITTLE_ENDIAN
Franck Bui-Huue77c2322006-12-01 18:22:27 +0100247 select GENERIC_HARDIRQS_NO__DO_IRQ
Linus Torvalds1da177e2005-04-16 15:20:36 -0700248
249config MIPS_ATLAS
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200250 bool "MIPS Atlas board"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700251 select BOOT_ELF32
252 select DMA_NONCOHERENT
Ralf Baechle5e83d432005-10-29 19:32:41 +0100253 select IRQ_CPU
Linus Torvalds1da177e2005-04-16 15:20:36 -0700254 select HW_HAS_PCI
Ralf Baechle5e83d432005-10-29 19:32:41 +0100255 select MIPS_BOARDS_GEN
256 select MIPS_BONITO64
Linus Torvalds1da177e2005-04-16 15:20:36 -0700257 select MIPS_GT64120
Ralf Baechle5e83d432005-10-29 19:32:41 +0100258 select MIPS_MSC
Maciej W. Rozyckif4b7cdb2005-02-12 04:31:49 +0000259 select RM7000_CPU_SCACHE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700260 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100261 select SYS_HAS_CPU_MIPS32_R1
262 select SYS_HAS_CPU_MIPS32_R2
263 select SYS_HAS_CPU_MIPS64_R1
264 select SYS_HAS_CPU_NEVADA
265 select SYS_HAS_CPU_RM7000
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700266 select SYS_SUPPORTS_32BIT_KERNEL
267 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100268 select SYS_SUPPORTS_BIG_ENDIAN
269 select SYS_SUPPORTS_LITTLE_ENDIAN
Ralf Baechlef41ae0b2006-06-05 17:24:46 +0100270 select SYS_SUPPORTS_MULTITHREADING if EXPERIMENTAL
Franck Bui-Huue77c2322006-12-01 18:22:27 +0100271 select GENERIC_HARDIRQS_NO__DO_IRQ
Linus Torvalds1da177e2005-04-16 15:20:36 -0700272 help
Maciej W. Rozyckif638d192005-02-02 22:23:46 +0000273 This enables support for the MIPS Technologies Atlas evaluation
Linus Torvalds1da177e2005-04-16 15:20:36 -0700274 board.
275
276config MIPS_MALTA
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200277 bool "MIPS Malta board"
Ralf Baechle61ed2422005-09-15 08:52:34 +0000278 select ARCH_MAY_HAVE_PC_FDC
Linus Torvalds1da177e2005-04-16 15:20:36 -0700279 select BOOT_ELF32
280 select HAVE_STD_PC_SERIAL_PORT
281 select DMA_NONCOHERENT
282 select GENERIC_ISA_DMA
Ralf Baechleaa414df2006-11-30 01:14:51 +0000283 select IRQ_CPU
Linus Torvalds1da177e2005-04-16 15:20:36 -0700284 select HW_HAS_PCI
285 select I8259
Ralf Baechle5e83d432005-10-29 19:32:41 +0100286 select MIPS_BOARDS_GEN
287 select MIPS_BONITO64
Chris Dearman9318c512006-06-20 17:15:20 +0100288 select MIPS_CPU_SCACHE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700289 select MIPS_GT64120
Ralf Baechle5e83d432005-10-29 19:32:41 +0100290 select MIPS_MSC
Linus Torvalds1da177e2005-04-16 15:20:36 -0700291 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100292 select SYS_HAS_CPU_MIPS32_R1
293 select SYS_HAS_CPU_MIPS32_R2
294 select SYS_HAS_CPU_MIPS64_R1
295 select SYS_HAS_CPU_NEVADA
296 select SYS_HAS_CPU_RM7000
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700297 select SYS_SUPPORTS_32BIT_KERNEL
298 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100299 select SYS_SUPPORTS_BIG_ENDIAN
300 select SYS_SUPPORTS_LITTLE_ENDIAN
Ralf Baechlef41ae0b2006-06-05 17:24:46 +0100301 select SYS_SUPPORTS_MULTITHREADING
Linus Torvalds1da177e2005-04-16 15:20:36 -0700302 help
Maciej W. Rozyckif638d192005-02-02 22:23:46 +0000303 This enables support for the MIPS Technologies Malta evaluation
Linus Torvalds1da177e2005-04-16 15:20:36 -0700304 board.
305
306config MIPS_SEAD
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200307 bool "MIPS SEAD board (EXPERIMENTAL)"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700308 depends on EXPERIMENTAL
309 select IRQ_CPU
310 select DMA_NONCOHERENT
Ralf Baechle5e83d432005-10-29 19:32:41 +0100311 select MIPS_BOARDS_GEN
Ralf Baechle7cf80532005-10-20 22:33:09 +0100312 select SYS_HAS_CPU_MIPS32_R1
313 select SYS_HAS_CPU_MIPS32_R2
314 select SYS_HAS_CPU_MIPS64_R1
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700315 select SYS_SUPPORTS_32BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100316 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
317 select SYS_SUPPORTS_BIG_ENDIAN
318 select SYS_SUPPORTS_LITTLE_ENDIAN
Maciej W. Rozyckif638d192005-02-02 22:23:46 +0000319 help
320 This enables support for the MIPS Technologies SEAD evaluation
321 board.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700322
Mark.Zhana240a462006-05-06 17:04:20 +0800323config WR_PPMC
Mark.Zhan92478572006-06-20 18:15:02 +0800324 bool "Wind River PPMC board"
Mark.Zhana240a462006-05-06 17:04:20 +0800325 select IRQ_CPU
326 select BOOT_ELF32
327 select DMA_NONCOHERENT
328 select HW_HAS_PCI
329 select MIPS_GT64120
330 select SWAP_IO_SPACE
331 select SYS_HAS_CPU_MIPS32_R1
332 select SYS_HAS_CPU_MIPS32_R2
333 select SYS_HAS_CPU_MIPS64_R1
334 select SYS_HAS_CPU_NEVADA
335 select SYS_HAS_CPU_RM7000
336 select SYS_SUPPORTS_32BIT_KERNEL
337 select SYS_SUPPORTS_64BIT_KERNEL
338 select SYS_SUPPORTS_BIG_ENDIAN
339 select SYS_SUPPORTS_LITTLE_ENDIAN
340 help
341 This enables support for the Wind River MIPS32 4KC PPMC evaluation
342 board, which is based on GT64120 bridge chip.
343
Ralf Baechlec78cbf42005-09-30 13:59:37 +0100344config MIPS_SIM
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200345 bool 'MIPS simulator (MIPSsim)'
Ralf Baechlec78cbf42005-09-30 13:59:37 +0100346 select DMA_NONCOHERENT
347 select IRQ_CPU
Ralf Baechle7cf80532005-10-20 22:33:09 +0100348 select SYS_HAS_CPU_MIPS32_R1
349 select SYS_HAS_CPU_MIPS32_R2
Ralf Baechlec78cbf42005-09-30 13:59:37 +0100350 select SYS_SUPPORTS_32BIT_KERNEL
351 select SYS_SUPPORTS_BIG_ENDIAN
352 select SYS_SUPPORTS_LITTLE_ENDIAN
353 help
354 This option enables support for MIPS Technologies MIPSsim software
355 emulator.
356
Linus Torvalds1da177e2005-04-16 15:20:36 -0700357config MOMENCO_JAGUAR_ATX
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200358 bool "Momentum Jaguar board"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700359 select BOOT_ELF32
360 select DMA_NONCOHERENT
361 select HW_HAS_PCI
362 select IRQ_CPU
363 select IRQ_CPU_RM7K
364 select IRQ_MV64340
365 select LIMITED_DMA
366 select PCI_MARVELL
367 select RM7000_CPU_SCACHE
368 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100369 select SYS_HAS_CPU_RM9000
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700370 select SYS_SUPPORTS_32BIT_KERNEL
371 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100372 select SYS_SUPPORTS_BIG_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700373 help
374 The Jaguar ATX is a MIPS-based Single Board Computer (SBC) made by
375 Momentum Computer <http://www.momenco.com/>.
376
Ralf Baechle5e83d432005-10-29 19:32:41 +0100377config MOMENCO_OCELOT
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200378 bool "Momentum Ocelot board"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100379 select DMA_NONCOHERENT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700380 select HW_HAS_PCI
381 select IRQ_CPU
382 select IRQ_CPU_RM7K
Ralf Baechle5e83d432005-10-29 19:32:41 +0100383 select MIPS_GT64120
384 select RM7000_CPU_SCACHE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700385 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100386 select SYS_HAS_CPU_RM7000
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700387 select SYS_SUPPORTS_32BIT_KERNEL
388 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100389 select SYS_SUPPORTS_BIG_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700390 help
Ralf Baechle5e83d432005-10-29 19:32:41 +0100391 The Ocelot is a MIPS-based Single Board Computer (SBC) made by
392 Momentum Computer <http://www.momenco.com/>.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700393
Ralf Baechle5e83d432005-10-29 19:32:41 +0100394config MOMENCO_OCELOT_3
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200395 bool "Momentum Ocelot-3 board"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100396 select BOOT_ELF32
397 select DMA_NONCOHERENT
398 select HW_HAS_PCI
399 select IRQ_CPU
400 select IRQ_CPU_RM7K
401 select IRQ_MV64340
402 select PCI_MARVELL
403 select RM7000_CPU_SCACHE
404 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100405 select SYS_HAS_CPU_RM9000
Ralf Baechle5e83d432005-10-29 19:32:41 +0100406 select SYS_SUPPORTS_32BIT_KERNEL
407 select SYS_SUPPORTS_64BIT_KERNEL
408 select SYS_SUPPORTS_BIG_ENDIAN
409 help
410 The Ocelot-3 is based off Discovery III System Controller and
411 PMC-Sierra Rm79000 core.
412
413config MOMENCO_OCELOT_C
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200414 bool "Momentum Ocelot-C board"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100415 select DMA_NONCOHERENT
416 select HW_HAS_PCI
417 select IRQ_CPU
418 select IRQ_MV64340
419 select PCI_MARVELL
420 select RM7000_CPU_SCACHE
421 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100422 select SYS_HAS_CPU_RM7000
Ralf Baechle5e83d432005-10-29 19:32:41 +0100423 select SYS_SUPPORTS_32BIT_KERNEL
Ralf Baechle8a88ca82006-11-02 17:23:33 +0000424 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100425 select SYS_SUPPORTS_BIG_ENDIAN
Franck Bui-Huue77c2322006-12-01 18:22:27 +0100426 select GENERIC_HARDIRQS_NO__DO_IRQ
Ralf Baechle5e83d432005-10-29 19:32:41 +0100427 help
428 The Ocelot is a MIPS-based Single Board Computer (SBC) made by
429 Momentum Computer <http://www.momenco.com/>.
430
431config MOMENCO_OCELOT_G
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200432 bool "Momentum Ocelot-G board"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100433 select DMA_NONCOHERENT
434 select HW_HAS_PCI
435 select IRQ_CPU
436 select IRQ_CPU_RM7K
437 select PCI_MARVELL
438 select RM7000_CPU_SCACHE
439 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100440 select SYS_HAS_CPU_RM7000
Ralf Baechle5e83d432005-10-29 19:32:41 +0100441 select SYS_SUPPORTS_32BIT_KERNEL
Ralf Baechle8a88ca82006-11-02 17:23:33 +0000442 select SYS_SUPPORTS_64BIT_KERNEL if BROKEN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100443 select SYS_SUPPORTS_BIG_ENDIAN
444 help
445 The Ocelot is a MIPS-based Single Board Computer (SBC) made by
446 Momentum Computer <http://www.momenco.com/>.
447
448config MIPS_XXS1500
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200449 bool "MyCable XXS1500 board"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100450 select DMA_NONCOHERENT
451 select SOC_AU1500
452 select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700453
Pete Popovbdf21b12005-07-14 17:47:57 +0000454config PNX8550_V2PCI
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200455 bool "Philips PNX8550 based Viper2-PCI board"
Pete Popovbdf21b12005-07-14 17:47:57 +0000456 select PNX8550
457 select SYS_SUPPORTS_LITTLE_ENDIAN
458
459config PNX8550_JBS
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200460 bool "Philips PNX8550 based JBS board"
Pete Popovbdf21b12005-07-14 17:47:57 +0000461 select PNX8550
462 select SYS_SUPPORTS_LITTLE_ENDIAN
463
Vitaly Woolf0647a52006-12-08 11:40:35 +0300464config PNX8550_STB810
465 bool "Support for Philips PNX8550 based STB810 board"
466 select PNX8550
467 select SYS_SUPPORTS_LITTLE_ENDIAN
468
Linus Torvalds1da177e2005-04-16 15:20:36 -0700469config DDB5477
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200470 bool "NEC DDB Vrc-5477"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100471 select DDB5XXX_COMMON
Linus Torvalds1da177e2005-04-16 15:20:36 -0700472 select DMA_NONCOHERENT
473 select HW_HAS_PCI
474 select I8259
475 select IRQ_CPU
Ralf Baechle7cf80532005-10-20 22:33:09 +0100476 select SYS_HAS_CPU_R5432
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700477 select SYS_SUPPORTS_32BIT_KERNEL
478 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100479 select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700480 help
481 This enables support for the R5432-based NEC DDB Vrc-5477,
482 or Rockhopper/SolutionGear boards with R5432/R5500 CPUs.
483
484 Features : kernel debugging, serial terminal, NFS root fs, on-board
485 ether port USB, AC97, PCI, etc.
486
Ralf Baechle5e83d432005-10-29 19:32:41 +0100487config MACH_VR41XX
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200488 bool "NEC VR41XX-based machines"
Ralf Baechle7cf80532005-10-20 22:33:09 +0100489 select SYS_HAS_CPU_VR41XX
Ralf Baechle5e83d432005-10-29 19:32:41 +0100490 select SYS_SUPPORTS_32BIT_KERNEL
491 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
Atsushi Nemoto9fd32cf2006-12-08 01:55:07 +0900492 select GENERIC_HARDIRQS_NO__DO_IRQ
Ralf Baechle5e83d432005-10-29 19:32:41 +0100493
494config PMC_YOSEMITE
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200495 bool "PMC-Sierra Yosemite eval board"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100496 select DMA_COHERENT
497 select HW_HAS_PCI
498 select IRQ_CPU
499 select IRQ_CPU_RM7K
500 select IRQ_CPU_RM9K
501 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100502 select SYS_HAS_CPU_RM9000
Ralf Baechle5e83d432005-10-29 19:32:41 +0100503 select SYS_SUPPORTS_32BIT_KERNEL
504 select SYS_SUPPORTS_64BIT_KERNEL
505 select SYS_SUPPORTS_BIG_ENDIAN
506 select SYS_SUPPORTS_HIGHMEM
Ralf Baechlee73ea272006-06-04 11:51:46 +0100507 select SYS_SUPPORTS_SMP
Ralf Baechle5e83d432005-10-29 19:32:41 +0100508 help
509 Yosemite is an evaluation board for the RM9000x2 processor
510 manufactured by PMC-Sierra.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700511
Ralf Baechle07119622005-09-03 15:56:11 -0700512config QEMU
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200513 bool "Qemu"
Ralf Baechle07119622005-09-03 15:56:11 -0700514 select DMA_COHERENT
515 select GENERIC_ISA_DMA
516 select HAVE_STD_PC_SERIAL_PORT
Michael Neulinge5c6c8e2006-03-14 00:11:50 -0500517 select I8253
Ralf Baechle07119622005-09-03 15:56:11 -0700518 select I8259
519 select ISA
520 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100521 select SYS_HAS_CPU_MIPS32_R1
Ralf Baechle07119622005-09-03 15:56:11 -0700522 select SYS_SUPPORTS_32BIT_KERNEL
523 select SYS_SUPPORTS_BIG_ENDIAN
Aurelien Jarnoc8cc9612006-09-27 23:07:25 +0200524 select SYS_SUPPORTS_LITTLE_ENDIAN
Atsushi Nemotob1c6cd42006-07-03 00:09:47 +0900525 select ARCH_SPARSEMEM_ENABLE
Atsushi Nemoto9fd32cf2006-12-08 01:55:07 +0900526 select GENERIC_HARDIRQS_NO__DO_IRQ
Ralf Baechle07119622005-09-03 15:56:11 -0700527 help
Ralf Baechle5e83d432005-10-29 19:32:41 +0100528 Qemu is a software emulator which among other architectures also
529 can simulate a MIPS32 4Kc system. This patch adds support for the
530 system architecture that currently is being simulated by Qemu. It
531 will eventually be removed again when Qemu has the capability to
532 simulate actual MIPS hardware platforms. More information on Qemu
533 can be found at http://www.linux-mips.org/wiki/Qemu.
Ralf Baechle07119622005-09-03 15:56:11 -0700534
dmitry pervushin355c4712006-05-21 14:53:06 +0400535config MARKEINS
536 bool "Support for NEC EMMA2RH Mark-eins"
537 select DMA_NONCOHERENT
538 select HW_HAS_PCI
539 select IRQ_CPU
540 select SWAP_IO_SPACE
541 select SYS_SUPPORTS_32BIT_KERNEL
542 select SYS_SUPPORTS_BIG_ENDIAN
543 select SYS_SUPPORTS_LITTLE_ENDIAN
544 select SYS_HAS_CPU_R5000
545 help
546 This enables support for the R5432-based NEC Mark-eins
547 boards with R5500 CPU.
548
Linus Torvalds1da177e2005-04-16 15:20:36 -0700549config SGI_IP22
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200550 bool "SGI IP22 (Indy/Indigo2)"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700551 select ARC
552 select ARC32
553 select BOOT_ELF32
554 select DMA_NONCOHERENT
Ralf Baechle5e83d432005-10-29 19:32:41 +0100555 select HW_HAS_EISA
Linus Torvalds1da177e2005-04-16 15:20:36 -0700556 select IP22_CPU_SCACHE
557 select IRQ_CPU
Ralf Baechleaa414df2006-11-30 01:14:51 +0000558 select GENERIC_ISA_DMA_SUPPORT_BROKEN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700559 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100560 select SYS_HAS_CPU_R4X00
561 select SYS_HAS_CPU_R5000
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700562 select SYS_SUPPORTS_32BIT_KERNEL
563 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100564 select SYS_SUPPORTS_BIG_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700565 help
566 This are the SGI Indy, Challenge S and Indigo2, as well as certain
567 OEM variants like the Tandem CMN B006S. To compile a Linux kernel
568 that runs on these, say Y here.
569
570config SGI_IP27
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200571 bool "SGI IP27 (Origin200/2000)"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700572 select ARC
573 select ARC64
Ralf Baechle5e83d432005-10-29 19:32:41 +0100574 select BOOT_ELF64
Linus Torvalds1da177e2005-04-16 15:20:36 -0700575 select DMA_IP27
Ralf Baechlea3d45392006-06-22 20:09:04 +0100576 select EARLY_PRINTK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700577 select HW_HAS_PCI
Ralf Baechle130e2fb2007-02-06 16:53:15 +0000578 select NR_CPUS_DEFAULT_64
Linus Torvalds1da177e2005-04-16 15:20:36 -0700579 select PCI_DOMAINS
Ralf Baechle7cf80532005-10-20 22:33:09 +0100580 select SYS_HAS_CPU_R10000
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700581 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100582 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechled8cb4e12006-06-11 23:03:08 +0100583 select SYS_SUPPORTS_NUMA
Ralf Baechle1a5c5de2006-11-02 17:23:33 +0000584 select SYS_SUPPORTS_SMP
Franck Bui-Huue77c2322006-12-01 18:22:27 +0100585 select GENERIC_HARDIRQS_NO__DO_IRQ
Linus Torvalds1da177e2005-04-16 15:20:36 -0700586 help
587 This are the SGI Origin 200, Origin 2000 and Onyx 2 Graphics
588 workstations. To compile a Linux kernel that runs on these, say Y
589 here.
590
Linus Torvalds1da177e2005-04-16 15:20:36 -0700591config SGI_IP32
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200592 bool "SGI IP32 (O2) (EXPERIMENTAL)"
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700593 depends on EXPERIMENTAL
Linus Torvalds1da177e2005-04-16 15:20:36 -0700594 select ARC
595 select ARC32
596 select BOOT_ELF32
597 select OWN_DMA
598 select DMA_IP32
599 select DMA_NONCOHERENT
600 select HW_HAS_PCI
601 select R5000_CPU_SCACHE
602 select RM7000_CPU_SCACHE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100603 select SYS_HAS_CPU_R5000
604 select SYS_HAS_CPU_R10000 if BROKEN
605 select SYS_HAS_CPU_RM7000
Ralf Baechledd2f18f2006-01-19 14:55:42 +0000606 select SYS_HAS_CPU_NEVADA
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700607 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100608 select SYS_SUPPORTS_BIG_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700609 help
610 If you want this kernel to run on SGI O2 workstation, say Y here.
611
Andrew Isaacson9a6dcea2005-10-19 23:57:11 -0700612config SIBYTE_BIGSUR
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200613 bool "Sibyte BCM91480B-BigSur"
Andrew Isaacson9a6dcea2005-10-19 23:57:11 -0700614 select BOOT_ELF32
615 select DMA_COHERENT
Ralf Baechle130e2fb2007-02-06 16:53:15 +0000616 select NR_CPUS_DEFAULT_4
Ralf Baechle7cf80532005-10-20 22:33:09 +0100617 select PCI_DOMAINS
Andrew Isaacson9a6dcea2005-10-19 23:57:11 -0700618 select SIBYTE_BCM1x80
619 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100620 select SYS_HAS_CPU_SB1
Andrew Isaacson9a6dcea2005-10-19 23:57:11 -0700621 select SYS_SUPPORTS_BIG_ENDIAN
622 select SYS_SUPPORTS_LITTLE_ENDIAN
623
Ralf Baechle5e83d432005-10-29 19:32:41 +0100624config SIBYTE_SWARM
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200625 bool "Sibyte BCM91250A-SWARM"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100626 select BOOT_ELF32
627 select DMA_COHERENT
Ralf Baechle130e2fb2007-02-06 16:53:15 +0000628 select NR_CPUS_DEFAULT_2
Ralf Baechle5e83d432005-10-29 19:32:41 +0100629 select SIBYTE_SB1250
630 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100631 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100632 select SYS_SUPPORTS_BIG_ENDIAN
633 select SYS_SUPPORTS_HIGHMEM
634 select SYS_SUPPORTS_LITTLE_ENDIAN
Pete Popove3ad1c22005-03-01 06:33:16 +0000635
Ralf Baechle5e83d432005-10-29 19:32:41 +0100636config SIBYTE_SENTOSA
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200637 bool "Sibyte BCM91250E-Sentosa"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100638 depends on EXPERIMENTAL
639 select BOOT_ELF32
640 select DMA_COHERENT
Ralf Baechle130e2fb2007-02-06 16:53:15 +0000641 select NR_CPUS_DEFAULT_2
Ralf Baechle5e83d432005-10-29 19:32:41 +0100642 select SIBYTE_SB1250
643 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100644 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100645 select SYS_SUPPORTS_BIG_ENDIAN
646 select SYS_SUPPORTS_LITTLE_ENDIAN
647
648config SIBYTE_RHONE
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200649 bool "Sibyte BCM91125E-Rhone"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100650 depends on EXPERIMENTAL
651 select BOOT_ELF32
652 select DMA_COHERENT
653 select SIBYTE_BCM1125H
654 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100655 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100656 select SYS_SUPPORTS_BIG_ENDIAN
657 select SYS_SUPPORTS_LITTLE_ENDIAN
658
659config SIBYTE_CARMEL
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200660 bool "Sibyte BCM91120x-Carmel"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100661 depends on EXPERIMENTAL
662 select BOOT_ELF32
663 select DMA_COHERENT
664 select SIBYTE_BCM1120
665 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100666 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100667 select SYS_SUPPORTS_BIG_ENDIAN
668 select SYS_SUPPORTS_LITTLE_ENDIAN
669
670config SIBYTE_PTSWARM
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200671 bool "Sibyte BCM91250PT-PTSWARM"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100672 depends on EXPERIMENTAL
673 select BOOT_ELF32
674 select DMA_COHERENT
Ralf Baechle130e2fb2007-02-06 16:53:15 +0000675 select NR_CPUS_DEFAULT_2
Ralf Baechle5e83d432005-10-29 19:32:41 +0100676 select SIBYTE_SB1250
677 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100678 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100679 select SYS_SUPPORTS_BIG_ENDIAN
680 select SYS_SUPPORTS_HIGHMEM
681 select SYS_SUPPORTS_LITTLE_ENDIAN
682
683config SIBYTE_LITTLESUR
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200684 bool "Sibyte BCM91250C2-LittleSur"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100685 depends on EXPERIMENTAL
686 select BOOT_ELF32
687 select DMA_COHERENT
Ralf Baechle130e2fb2007-02-06 16:53:15 +0000688 select NR_CPUS_DEFAULT_2
Ralf Baechle5e83d432005-10-29 19:32:41 +0100689 select SIBYTE_SB1250
690 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100691 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100692 select SYS_SUPPORTS_BIG_ENDIAN
693 select SYS_SUPPORTS_HIGHMEM
694 select SYS_SUPPORTS_LITTLE_ENDIAN
695
696config SIBYTE_CRHINE
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200697 bool "Sibyte BCM91120C-CRhine"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100698 depends on EXPERIMENTAL
699 select BOOT_ELF32
700 select DMA_COHERENT
701 select SIBYTE_BCM1120
702 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100703 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100704 select SYS_SUPPORTS_BIG_ENDIAN
705 select SYS_SUPPORTS_LITTLE_ENDIAN
706
707config SIBYTE_CRHONE
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200708 bool "Sibyte BCM91125C-CRhone"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100709 depends on EXPERIMENTAL
710 select BOOT_ELF32
711 select DMA_COHERENT
712 select SIBYTE_BCM1125
713 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100714 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100715 select SYS_SUPPORTS_BIG_ENDIAN
716 select SYS_SUPPORTS_HIGHMEM
717 select SYS_SUPPORTS_LITTLE_ENDIAN
718
Thomas Bogendoerfer14b36af2006-12-05 17:05:44 +0100719config SNI_RM
720 bool "SNI RM200/300/400"
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200721 select ARC if CPU_LITTLE_ENDIAN
722 select ARC32 if CPU_LITTLE_ENDIAN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100723 select ARCH_MAY_HAVE_PC_FDC
724 select BOOT_ELF32
725 select DMA_NONCOHERENT
726 select GENERIC_ISA_DMA
727 select HAVE_STD_PC_SERIAL_PORT
728 select HW_HAS_EISA
729 select HW_HAS_PCI
Michael Neulinge5c6c8e2006-03-14 00:11:50 -0500730 select I8253
Ralf Baechle5e83d432005-10-29 19:32:41 +0100731 select I8259
732 select ISA
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200733 select SWAP_IO_SPACE if CPU_BIG_ENDIAN
Ralf Baechle7cf80532005-10-20 22:33:09 +0100734 select SYS_HAS_CPU_R4X00
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200735 select SYS_HAS_CPU_R5000
736 select R5000_CPU_SCACHE
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700737 select SYS_SUPPORTS_32BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100738 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200739 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100740 select SYS_SUPPORTS_HIGHMEM
741 select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700742 help
Thomas Bogendoerfer14b36af2006-12-05 17:05:44 +0100743 The SNI RM200/300/400 are MIPS-based machines manufactured by
744 Siemens Nixdorf Informationssysteme (SNI), parent company of Pyramid
Ralf Baechle5e83d432005-10-29 19:32:41 +0100745 Technology and now in turn merged with Fujitsu. Say Y here to
746 support this machine type.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700747
Ralf Baechle5e83d432005-10-29 19:32:41 +0100748config TOSHIBA_JMR3927
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200749 bool "Toshiba JMR-TX3927 board"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100750 select DMA_NONCOHERENT
751 select HW_HAS_PCI
752 select MIPS_TX3927
753 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100754 select SYS_HAS_CPU_TX39XX
Ralf Baechle5e83d432005-10-29 19:32:41 +0100755 select SYS_SUPPORTS_32BIT_KERNEL
Sergei Shtylyov6a2603a2007-02-07 20:39:05 +0300756 select SYS_SUPPORTS_LITTLE_ENDIAN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100757 select SYS_SUPPORTS_BIG_ENDIAN
758 select TOSHIBA_BOARDS
759
760config TOSHIBA_RBTX4927
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200761 bool "Toshiba TBTX49[23]7 board"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100762 select DMA_NONCOHERENT
763 select HAS_TXX9_SERIAL
764 select HW_HAS_PCI
765 select I8259
766 select ISA
767 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100768 select SYS_HAS_CPU_TX49XX
Ralf Baechle5e83d432005-10-29 19:32:41 +0100769 select SYS_SUPPORTS_32BIT_KERNEL
770 select SYS_SUPPORTS_64BIT_KERNEL
Sergei Shtylyov6a2603a2007-02-07 20:39:05 +0300771 select SYS_SUPPORTS_LITTLE_ENDIAN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100772 select SYS_SUPPORTS_BIG_ENDIAN
773 select TOSHIBA_BOARDS
Atsushi Nemoto9fd32cf2006-12-08 01:55:07 +0900774 select GENERIC_HARDIRQS_NO__DO_IRQ
Ralf Baechle5e83d432005-10-29 19:32:41 +0100775 help
776 This Toshiba board is based on the TX4927 processor. Say Y here to
777 support this machine type
Linus Torvalds1da177e2005-04-16 15:20:36 -0700778
Ralf Baechle23fbee92005-07-25 22:45:45 +0000779config TOSHIBA_RBTX4938
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200780 bool "Toshiba RBTX4938 board"
Ralf Baechle23fbee92005-07-25 22:45:45 +0000781 select HAVE_STD_PC_SERIAL_PORT
782 select DMA_NONCOHERENT
783 select GENERIC_ISA_DMA
784 select HAS_TXX9_SERIAL
785 select HW_HAS_PCI
786 select I8259
787 select ISA
788 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100789 select SYS_HAS_CPU_TX49XX
Ralf Baechle23fbee92005-07-25 22:45:45 +0000790 select SYS_SUPPORTS_32BIT_KERNEL
791 select SYS_SUPPORTS_LITTLE_ENDIAN
792 select SYS_SUPPORTS_BIG_ENDIAN
793 select TOSHIBA_BOARDS
Atsushi Nemoto9fd32cf2006-12-08 01:55:07 +0900794 select GENERIC_HARDIRQS_NO__DO_IRQ
Ralf Baechle23fbee92005-07-25 22:45:45 +0000795 help
796 This Toshiba board is based on the TX4938 processor. Say Y here to
797 support this machine type
798
Linus Torvalds1da177e2005-04-16 15:20:36 -0700799endchoice
800
Ralf Baechle5e83d432005-10-29 19:32:41 +0100801source "arch/mips/ddb5xxx/Kconfig"
802source "arch/mips/gt64120/ev64120/Kconfig"
803source "arch/mips/jazz/Kconfig"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100804source "arch/mips/lasat/Kconfig"
805source "arch/mips/momentum/Kconfig"
806source "arch/mips/pmc-sierra/Kconfig"
Ralf Baechle29c48692005-02-07 01:27:14 +0000807source "arch/mips/sgi-ip27/Kconfig"
Ralf Baechle38b18f722005-02-03 14:28:23 +0000808source "arch/mips/sibyte/Kconfig"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100809source "arch/mips/tx4927/Kconfig"
Ralf Baechle23fbee92005-07-25 22:45:45 +0000810source "arch/mips/tx4938/Kconfig"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100811source "arch/mips/vr41xx/Kconfig"
Pete Popovbdf21b12005-07-14 17:47:57 +0000812source "arch/mips/philips/pnx8550/common/Kconfig"
Peter Hortone87ddde2006-02-12 17:10:25 +0000813source "arch/mips/cobalt/Kconfig"
Ralf Baechle38b18f722005-02-03 14:28:23 +0000814
Ralf Baechle5e83d432005-10-29 19:32:41 +0100815endmenu
816
Linus Torvalds1da177e2005-04-16 15:20:36 -0700817config RWSEM_GENERIC_SPINLOCK
818 bool
819 default y
820
821config RWSEM_XCHGADD_ALGORITHM
822 bool
823
David Howellsf0d1b0b2006-12-08 02:37:49 -0800824config ARCH_HAS_ILOG2_U32
825 bool
826 default n
827
828config ARCH_HAS_ILOG2_U64
829 bool
830 default n
831
Akinobu Mita3c9ee7e2006-03-26 01:39:30 -0800832config GENERIC_FIND_NEXT_BIT
833 bool
834 default y
835
836config GENERIC_HWEIGHT
837 bool
838 default y
839
Linus Torvalds1da177e2005-04-16 15:20:36 -0700840config GENERIC_CALIBRATE_DELAY
841 bool
842 default y
843
Ralf Baechle8db02012006-10-02 16:54:48 +0100844config GENERIC_TIME
845 bool
846 default y
847
Atsushi Nemoto1cc89032006-04-04 13:11:45 +0900848config SCHED_NO_NO_OMIT_FRAME_POINTER
849 bool
850 default y
851
Franck Bui-Huue77c2322006-12-01 18:22:27 +0100852config GENERIC_HARDIRQS_NO__DO_IRQ
853 bool
854 default n
855
Linus Torvalds1da177e2005-04-16 15:20:36 -0700856#
857# Select some configuration options automatically based on user selections.
858#
859config ARC
860 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700861
Ralf Baechle61ed2422005-09-15 08:52:34 +0000862config ARCH_MAY_HAVE_PC_FDC
863 bool
864
Ralf Baechle4ce588c2005-09-03 15:56:19 -0700865config DMA_COHERENT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700866 bool
867
Ralf Baechle4ce588c2005-09-03 15:56:19 -0700868config DMA_IP27
Linus Torvalds1da177e2005-04-16 15:20:36 -0700869 bool
870
Ralf Baechle4ce588c2005-09-03 15:56:19 -0700871config DMA_IP32
872 bool
873 select DMA_NEED_PCI_MAP_STATE
874
875config DMA_NONCOHERENT
876 bool
877 select DMA_NEED_PCI_MAP_STATE
878
879config DMA_NEED_PCI_MAP_STATE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700880 bool
881
Ralf Baechle5e83d432005-10-29 19:32:41 +0100882config OWN_DMA
883 bool
884
Linus Torvalds1da177e2005-04-16 15:20:36 -0700885config EARLY_PRINTK
886 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700887
888config GENERIC_ISA_DMA
889 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700890
891config I8259
892 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700893
894config LIMITED_DMA
895 bool
896 select HIGHMEM
Ralf Baechle797798c2005-08-10 15:17:11 +0000897 select SYS_SUPPORTS_HIGHMEM
Linus Torvalds1da177e2005-04-16 15:20:36 -0700898
899config MIPS_BONITO64
900 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700901
902config MIPS_MSC
903 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700904
905config MIPS_NILE4
906 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700907
908config MIPS_DISABLE_OBSOLETE_IDE
909 bool
910
Ralf Baechleaa414df2006-11-30 01:14:51 +0000911config GENERIC_ISA_DMA_SUPPORT_BROKEN
912 bool
913
Ralf Baechle5e83d432005-10-29 19:32:41 +0100914#
Matt LaPlante3cb2fcc2006-11-30 05:22:59 +0100915# Endianess selection. Sufficiently obscure so many users don't know what to
Ralf Baechle5e83d432005-10-29 19:32:41 +0100916# answer,so we try hard to limit the available choices. Also the use of a
917# choice statement should be more obvious to the user.
918#
919choice
920 prompt "Endianess selection"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700921 help
922 Some MIPS machines can be configured for either little or big endian
Ralf Baechle5e83d432005-10-29 19:32:41 +0100923 byte order. These modes require different kernels and a different
Matt LaPlante3cb2fcc2006-11-30 05:22:59 +0100924 Linux distribution. In general there is one preferred byteorder for a
Ralf Baechle5e83d432005-10-29 19:32:41 +0100925 particular system but some systems are just as commonly used in the
926 one or the other endianess.
927
928config CPU_BIG_ENDIAN
929 bool "Big endian"
930 depends on SYS_SUPPORTS_BIG_ENDIAN
931
932config CPU_LITTLE_ENDIAN
933 bool "Little endian"
934 depends on SYS_SUPPORTS_LITTLE_ENDIAN
935 help
936
937endchoice
938
Ralf Baechle21162452007-02-09 17:08:58 +0000939config SYS_SUPPORTS_APM_EMULATION
940 bool
941
Ralf Baechle5e83d432005-10-29 19:32:41 +0100942config SYS_SUPPORTS_BIG_ENDIAN
943 bool
944
945config SYS_SUPPORTS_LITTLE_ENDIAN
946 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700947
948config IRQ_CPU
949 bool
950
951config IRQ_CPU_RM7K
952 bool
953
Ralf Baechle5e83d432005-10-29 19:32:41 +0100954config IRQ_CPU_RM9K
955 bool
956
Linus Torvalds1da177e2005-04-16 15:20:36 -0700957config IRQ_MV64340
958 bool
959
960config DDB5XXX_COMMON
961 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700962
963config MIPS_BOARDS_GEN
964 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700965
966config MIPS_GT64111
967 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700968
969config MIPS_GT64120
970 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700971
972config MIPS_TX3927
973 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700974 select HAS_TXX9_SERIAL
Linus Torvalds1da177e2005-04-16 15:20:36 -0700975
thomas@koeller.dyndns.org663c3d92006-08-27 13:51:48 +0200976config MIPS_RM9122
977 bool
978 select SERIAL_RM9000
979 select GPI_RM9000
980 select WDT_RM9000
981
Linus Torvalds1da177e2005-04-16 15:20:36 -0700982config PCI_MARVELL
983 bool
984
Ralf Baechle5e83d432005-10-29 19:32:41 +0100985config SOC_AU1000
986 bool
987 select SOC_AU1X00
988
989config SOC_AU1100
990 bool
991 select SOC_AU1X00
992
993config SOC_AU1500
994 bool
995 select SOC_AU1X00
996
997config SOC_AU1550
998 bool
999 select SOC_AU1X00
1000
1001config SOC_AU1200
1002 bool
1003 select SOC_AU1X00
1004
1005config SOC_AU1X00
1006 bool
Ralf Baechle7cf80532005-10-20 22:33:09 +01001007 select SYS_HAS_CPU_MIPS32_R1
Ralf Baechle5e83d432005-10-29 19:32:41 +01001008 select SYS_SUPPORTS_32BIT_KERNEL
Ralf Baechle21162452007-02-09 17:08:58 +00001009 select SYS_SUPPORTS_APM_EMULATION
Linus Torvalds1da177e2005-04-16 15:20:36 -07001010
Pete Popovbdf21b12005-07-14 17:47:57 +00001011config PNX8550
1012 bool
1013 select SOC_PNX8550
1014
1015config SOC_PNX8550
1016 bool
Pete Popovbdf21b12005-07-14 17:47:57 +00001017 select DMA_NONCOHERENT
1018 select HW_HAS_PCI
Ralf Baechleb8c2a772005-10-31 13:08:37 +00001019 select SYS_HAS_CPU_MIPS32_R1
Ralf Baechle7cf80532005-10-20 22:33:09 +01001020 select SYS_SUPPORTS_32BIT_KERNEL
Franck Bui-Huue77c2322006-12-01 18:22:27 +01001021 select GENERIC_HARDIRQS_NO__DO_IRQ
Pete Popovbdf21b12005-07-14 17:47:57 +00001022
Linus Torvalds1da177e2005-04-16 15:20:36 -07001023config SWAP_IO_SPACE
1024 bool
1025
dmitry pervushin355c4712006-05-21 14:53:06 +04001026config EMMA2RH
1027 bool
1028 depends on MARKEINS
1029 default y
1030
thomas@koeller.dyndns.org663c3d92006-08-27 13:51:48 +02001031config SERIAL_RM9000
1032 bool
1033
1034config GPI_RM9000
1035 bool
1036
1037config WDT_RM9000
1038 bool
1039
Linus Torvalds1da177e2005-04-16 15:20:36 -07001040#
1041# Unfortunately not all GT64120 systems run the chip at the same clock.
1042# As the user for the clock rate and try to minimize the available options.
1043#
1044choice
1045 prompt "Galileo Chip Clock"
1046 #default SYSCLK_83 if MIPS_EV64120
1047 depends on MIPS_EV64120 || MOMENCO_OCELOT || MOMENCO_OCELOT_G
1048 default SYSCLK_83 if MIPS_EV64120
1049 default SYSCLK_100 if MOMENCO_OCELOT || MOMENCO_OCELOT_G
1050
1051config SYSCLK_75
1052 bool "75" if MIPS_EV64120
1053
1054config SYSCLK_83
1055 bool "83.3" if MIPS_EV64120
1056
1057config SYSCLK_100
1058 bool "100" if MIPS_EV64120 || MOMENCO_OCELOT || MOMENCO_OCELOT_G
1059
1060endchoice
1061
Ralf Baechle5e83d432005-10-29 19:32:41 +01001062config ARC32
1063 bool
1064
Linus Torvalds1da177e2005-04-16 15:20:36 -07001065config BOOT_ELF32
1066 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001067
1068config MIPS_L1_CACHE_SHIFT
1069 int
1070 default "4" if MACH_DECSTATION
1071 default "7" if SGI_IP27
1072 default "5"
1073
Linus Torvalds1da177e2005-04-16 15:20:36 -07001074config HAVE_STD_PC_SERIAL_PORT
1075 bool
1076
Linus Torvalds1da177e2005-04-16 15:20:36 -07001077config ARC_CONSOLE
1078 bool "ARC console support"
Thomas Bogendoerfer14b36af2006-12-05 17:05:44 +01001079 depends on SGI_IP22 || SNI_RM
Linus Torvalds1da177e2005-04-16 15:20:36 -07001080
1081config ARC_MEMORY
1082 bool
Thomas Bogendoerfer14b36af2006-12-05 17:05:44 +01001083 depends on MACH_JAZZ || SNI_RM || SGI_IP32
Linus Torvalds1da177e2005-04-16 15:20:36 -07001084 default y
1085
1086config ARC_PROMLIB
1087 bool
Thomas Bogendoerfer14b36af2006-12-05 17:05:44 +01001088 depends on MACH_JAZZ || SNI_RM || SGI_IP22 || SGI_IP32
Linus Torvalds1da177e2005-04-16 15:20:36 -07001089 default y
1090
1091config ARC64
1092 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001093
1094config BOOT_ELF64
1095 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001096
Linus Torvalds1da177e2005-04-16 15:20:36 -07001097config TOSHIBA_BOARDS
1098 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001099
1100menu "CPU selection"
1101
1102choice
1103 prompt "CPU type"
1104 default CPU_R4X00
1105
Ralf Baechle6e760c82005-07-06 12:08:11 +00001106config CPU_MIPS32_R1
1107 bool "MIPS32 Release 1"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001108 depends on SYS_HAS_CPU_MIPS32_R1
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001109 select CPU_HAS_LLSC
Ralf Baechle6e760c82005-07-06 12:08:11 +00001110 select CPU_HAS_PREFETCH
Ralf Baechle797798c2005-08-10 15:17:11 +00001111 select CPU_SUPPORTS_32BIT_KERNEL
Ralf Baechleec28f302006-03-05 00:45:33 +00001112 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle6e760c82005-07-06 12:08:11 +00001113 help
Ralf Baechle5e83d432005-10-29 19:32:41 +01001114 Choose this option to build a kernel for release 1 or later of the
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +00001115 MIPS32 architecture. Most modern embedded systems with a 32-bit
1116 MIPS processor are based on a MIPS32 processor. If you know the
1117 specific type of processor in your system, choose those that one
1118 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
1119 Release 2 of the MIPS32 architecture is available since several
1120 years so chances are you even have a MIPS32 Release 2 processor
1121 in which case you should choose CPU_MIPS32_R2 instead for better
1122 performance.
1123
1124config CPU_MIPS32_R2
1125 bool "MIPS32 Release 2"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001126 depends on SYS_HAS_CPU_MIPS32_R2
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001127 select CPU_HAS_LLSC
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +00001128 select CPU_HAS_PREFETCH
Ralf Baechle797798c2005-08-10 15:17:11 +00001129 select CPU_SUPPORTS_32BIT_KERNEL
Ralf Baechleec28f302006-03-05 00:45:33 +00001130 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +00001131 help
Ralf Baechle5e83d432005-10-29 19:32:41 +01001132 Choose this option to build a kernel for release 2 or later of the
Ralf Baechle6e760c82005-07-06 12:08:11 +00001133 MIPS32 architecture. Most modern embedded systems with a 32-bit
1134 MIPS processor are based on a MIPS32 processor. If you know the
1135 specific type of processor in your system, choose those that one
1136 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001137
Ralf Baechle6e760c82005-07-06 12:08:11 +00001138config CPU_MIPS64_R1
1139 bool "MIPS64 Release 1"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001140 depends on SYS_HAS_CPU_MIPS64_R1
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001141 select CPU_HAS_LLSC
Ralf Baechle797798c2005-08-10 15:17:11 +00001142 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001143 select CPU_SUPPORTS_32BIT_KERNEL
1144 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechleec28f302006-03-05 00:45:33 +00001145 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle6e760c82005-07-06 12:08:11 +00001146 help
1147 Choose this option to build a kernel for release 1 or later of the
1148 MIPS64 architecture. Many modern embedded systems with a 64-bit
1149 MIPS processor are based on a MIPS64 processor. If you know the
1150 specific type of processor in your system, choose those that one
1151 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +00001152 Release 2 of the MIPS64 architecture is available since several
1153 years so chances are you even have a MIPS64 Release 2 processor
1154 in which case you should choose CPU_MIPS64_R2 instead for better
1155 performance.
1156
1157config CPU_MIPS64_R2
1158 bool "MIPS64 Release 2"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001159 depends on SYS_HAS_CPU_MIPS64_R2
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001160 select CPU_HAS_LLSC
Ralf Baechle797798c2005-08-10 15:17:11 +00001161 select CPU_HAS_PREFETCH
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +00001162 select CPU_SUPPORTS_32BIT_KERNEL
1163 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechleec28f302006-03-05 00:45:33 +00001164 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +00001165 help
1166 Choose this option to build a kernel for release 2 or later of the
1167 MIPS64 architecture. Many modern embedded systems with a 64-bit
1168 MIPS processor are based on a MIPS64 processor. If you know the
1169 specific type of processor in your system, choose those that one
1170 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001171
1172config CPU_R3000
1173 bool "R3000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001174 depends on SYS_HAS_CPU_R3000
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001175 select CPU_HAS_WB
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001176 select CPU_SUPPORTS_32BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +00001177 select CPU_SUPPORTS_HIGHMEM
Linus Torvalds1da177e2005-04-16 15:20:36 -07001178 help
1179 Please make sure to pick the right CPU type. Linux/MIPS is not
1180 designed to be generic, i.e. Kernels compiled for R3000 CPUs will
1181 *not* work on R4000 machines and vice versa. However, since most
1182 of the supported machines have an R4000 (or similar) CPU, R4x00
1183 might be a safe bet. If the resulting kernel does not work,
1184 try to recompile with R3000.
1185
1186config CPU_TX39XX
1187 bool "R39XX"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001188 depends on SYS_HAS_CPU_TX39XX
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001189 select CPU_SUPPORTS_32BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001190
1191config CPU_VR41XX
1192 bool "R41xx"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001193 depends on SYS_HAS_CPU_VR41XX
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001194 select CPU_SUPPORTS_32BIT_KERNEL
1195 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001196 help
Ralf Baechle5e83d432005-10-29 19:32:41 +01001197 The options selects support for the NEC VR4100 series of processors.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001198 Only choose this option if you have one of these processors as a
1199 kernel built with this option will not run on any other type of
1200 processor or vice versa.
1201
1202config CPU_R4300
1203 bool "R4300"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001204 depends on SYS_HAS_CPU_R4300
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001205 select CPU_HAS_LLSC
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001206 select CPU_SUPPORTS_32BIT_KERNEL
1207 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001208 help
1209 MIPS Technologies R4300-series processors.
1210
1211config CPU_R4X00
1212 bool "R4x00"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001213 depends on SYS_HAS_CPU_R4X00
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001214 select CPU_HAS_LLSC
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001215 select CPU_SUPPORTS_32BIT_KERNEL
1216 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001217 help
1218 MIPS Technologies R4000-series processors other than 4300, including
1219 the R4000, R4400, R4600, and 4700.
1220
1221config CPU_TX49XX
1222 bool "R49XX"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001223 depends on SYS_HAS_CPU_TX49XX
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001224 select CPU_HAS_LLSC
Atsushi Nemotode862b42006-03-17 12:59:22 +09001225 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001226 select CPU_SUPPORTS_32BIT_KERNEL
1227 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001228
1229config CPU_R5000
1230 bool "R5000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001231 depends on SYS_HAS_CPU_R5000
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001232 select CPU_HAS_LLSC
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001233 select CPU_SUPPORTS_32BIT_KERNEL
1234 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001235 help
1236 MIPS Technologies R5000-series processors other than the Nevada.
1237
1238config CPU_R5432
1239 bool "R5432"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001240 depends on SYS_HAS_CPU_R5432
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001241 select CPU_HAS_LLSC
Ralf Baechle5e83d432005-10-29 19:32:41 +01001242 select CPU_SUPPORTS_32BIT_KERNEL
1243 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001244
1245config CPU_R6000
1246 bool "R6000"
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001247 depends on EXPERIMENTAL
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001248 select CPU_HAS_LLSC
Ralf Baechle7cf80532005-10-20 22:33:09 +01001249 depends on SYS_HAS_CPU_R6000
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001250 select CPU_SUPPORTS_32BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001251 help
1252 MIPS Technologies R6000 and R6000A series processors. Note these
Chris Dearmanc09b47d2006-06-20 17:15:20 +01001253 processors are extremely rare and the support for them is incomplete.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001254
1255config CPU_NEVADA
1256 bool "RM52xx"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001257 depends on SYS_HAS_CPU_NEVADA
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001258 select CPU_HAS_LLSC
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001259 select CPU_SUPPORTS_32BIT_KERNEL
1260 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001261 help
1262 QED / PMC-Sierra RM52xx-series ("Nevada") processors.
1263
1264config CPU_R8000
1265 bool "R8000"
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001266 depends on EXPERIMENTAL
Ralf Baechle7cf80532005-10-20 22:33:09 +01001267 depends on SYS_HAS_CPU_R8000
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001268 select CPU_HAS_LLSC
Ralf Baechle5e83d432005-10-29 19:32:41 +01001269 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001270 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001271 help
1272 MIPS Technologies R8000 processors. Note these processors are
1273 uncommon and the support for them is incomplete.
1274
1275config CPU_R10000
1276 bool "R10000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001277 depends on SYS_HAS_CPU_R10000
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001278 select CPU_HAS_LLSC
Ralf Baechle5e83d432005-10-29 19:32:41 +01001279 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001280 select CPU_SUPPORTS_32BIT_KERNEL
1281 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +00001282 select CPU_SUPPORTS_HIGHMEM
Linus Torvalds1da177e2005-04-16 15:20:36 -07001283 help
1284 MIPS Technologies R10000-series processors.
1285
1286config CPU_RM7000
1287 bool "RM7000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001288 depends on SYS_HAS_CPU_RM7000
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001289 select CPU_HAS_LLSC
Ralf Baechle5e83d432005-10-29 19:32:41 +01001290 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001291 select CPU_SUPPORTS_32BIT_KERNEL
1292 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +00001293 select CPU_SUPPORTS_HIGHMEM
Linus Torvalds1da177e2005-04-16 15:20:36 -07001294
1295config CPU_RM9000
1296 bool "RM9000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001297 depends on SYS_HAS_CPU_RM9000
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001298 select CPU_HAS_LLSC
Ralf Baechle5e83d432005-10-29 19:32:41 +01001299 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001300 select CPU_SUPPORTS_32BIT_KERNEL
1301 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +00001302 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle0004a9d2006-10-31 03:45:07 +00001303 select WEAK_ORDERING
Linus Torvalds1da177e2005-04-16 15:20:36 -07001304
1305config CPU_SB1
1306 bool "SB1"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001307 depends on SYS_HAS_CPU_SB1
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001308 select CPU_HAS_LLSC
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001309 select CPU_SUPPORTS_32BIT_KERNEL
1310 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +00001311 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle0004a9d2006-10-31 03:45:07 +00001312 select WEAK_ORDERING
Linus Torvalds1da177e2005-04-16 15:20:36 -07001313
1314endchoice
1315
Ralf Baechle7cf80532005-10-20 22:33:09 +01001316config SYS_HAS_CPU_MIPS32_R1
1317 bool
1318
1319config SYS_HAS_CPU_MIPS32_R2
1320 bool
1321
1322config SYS_HAS_CPU_MIPS64_R1
1323 bool
1324
1325config SYS_HAS_CPU_MIPS64_R2
1326 bool
1327
1328config SYS_HAS_CPU_R3000
1329 bool
1330
1331config SYS_HAS_CPU_TX39XX
1332 bool
1333
1334config SYS_HAS_CPU_VR41XX
1335 bool
1336
1337config SYS_HAS_CPU_R4300
1338 bool
1339
1340config SYS_HAS_CPU_R4X00
1341 bool
1342
1343config SYS_HAS_CPU_TX49XX
1344 bool
1345
1346config SYS_HAS_CPU_R5000
1347 bool
1348
1349config SYS_HAS_CPU_R5432
1350 bool
1351
1352config SYS_HAS_CPU_R6000
1353 bool
1354
1355config SYS_HAS_CPU_NEVADA
1356 bool
1357
1358config SYS_HAS_CPU_R8000
1359 bool
1360
1361config SYS_HAS_CPU_R10000
1362 bool
1363
1364config SYS_HAS_CPU_RM7000
1365 bool
1366
1367config SYS_HAS_CPU_RM9000
1368 bool
1369
1370config SYS_HAS_CPU_SB1
1371 bool
1372
Ralf Baechle0004a9d2006-10-31 03:45:07 +00001373config WEAK_ORDERING
1374 bool
Ralf Baechle5e83d432005-10-29 19:32:41 +01001375endmenu
1376
1377#
Chris Dearmanc09b47d2006-06-20 17:15:20 +01001378# These two indicate any level of the MIPS32 and MIPS64 architecture
Ralf Baechle5e83d432005-10-29 19:32:41 +01001379#
1380config CPU_MIPS32
1381 bool
1382 default y if CPU_MIPS32_R1 || CPU_MIPS32_R2
1383
1384config CPU_MIPS64
1385 bool
1386 default y if CPU_MIPS64_R1 || CPU_MIPS64_R2
1387
1388#
Chris Dearmanc09b47d2006-06-20 17:15:20 +01001389# These two indicate the revision of the architecture, either Release 1 or Release 2
Ralf Baechle5e83d432005-10-29 19:32:41 +01001390#
1391config CPU_MIPSR1
1392 bool
1393 default y if CPU_MIPS32_R1 || CPU_MIPS64_R1
1394
1395config CPU_MIPSR2
1396 bool
1397 default y if CPU_MIPS32_R2 || CPU_MIPS64_R2
1398
1399config SYS_SUPPORTS_32BIT_KERNEL
1400 bool
1401config SYS_SUPPORTS_64BIT_KERNEL
1402 bool
1403config CPU_SUPPORTS_32BIT_KERNEL
1404 bool
1405config CPU_SUPPORTS_64BIT_KERNEL
1406 bool
1407
1408menu "Kernel type"
1409
1410choice
1411
1412 prompt "Kernel code model"
1413 help
1414 You should only select this option if you have a workload that
1415 actually benefits from 64-bit processing or if your machine has
1416 large memory. You will only be presented a single option in this
1417 menu if your system does not support both 32-bit and 64-bit kernels.
1418
1419config 32BIT
1420 bool "32-bit kernel"
1421 depends on CPU_SUPPORTS_32BIT_KERNEL && SYS_SUPPORTS_32BIT_KERNEL
1422 select TRAD_SIGNALS
1423 help
1424 Select this option if you want to build a 32-bit kernel.
1425config 64BIT
1426 bool "64-bit kernel"
1427 depends on CPU_SUPPORTS_64BIT_KERNEL && SYS_SUPPORTS_64BIT_KERNEL
1428 help
1429 Select this option if you want to build a 64-bit kernel.
1430
1431endchoice
1432
Linus Torvalds1da177e2005-04-16 15:20:36 -07001433choice
1434 prompt "Kernel page size"
1435 default PAGE_SIZE_4KB
1436
1437config PAGE_SIZE_4KB
1438 bool "4kB"
1439 help
1440 This option select the standard 4kB Linux page size. On some
1441 R3000-family processors this is the only available page size. Using
1442 4kB page size will minimize memory consumption and is therefore
1443 recommended for low memory systems.
1444
1445config PAGE_SIZE_8KB
1446 bool "8kB"
1447 depends on EXPERIMENTAL && CPU_R8000
1448 help
1449 Using 8kB page size will result in higher performance kernel at
1450 the price of higher memory consumption. This option is available
1451 only on the R8000 processor. Not that at the time of this writing
1452 this option is still high experimental; there are also issues with
1453 compatibility of user applications.
1454
1455config PAGE_SIZE_16KB
1456 bool "16kB"
Ralf Baechle714bfad2006-05-17 14:04:30 +01001457 depends on !CPU_R3000 && !CPU_TX39XX
Linus Torvalds1da177e2005-04-16 15:20:36 -07001458 help
1459 Using 16kB page size will result in higher performance kernel at
1460 the price of higher memory consumption. This option is available on
Ralf Baechle714bfad2006-05-17 14:04:30 +01001461 all non-R3000 family processors. Note that you will need a suitable
1462 Linux distribution to support this.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001463
1464config PAGE_SIZE_64KB
1465 bool "64kB"
1466 depends on EXPERIMENTAL && !CPU_R3000 && !CPU_TX39XX
1467 help
1468 Using 64kB page size will result in higher performance kernel at
1469 the price of higher memory consumption. This option is available on
1470 all non-R3000 family processor. Not that at the time of this
Ralf Baechle714bfad2006-05-17 14:04:30 +01001471 writing this option is still high experimental.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001472
1473endchoice
1474
1475config BOARD_SCACHE
1476 bool
1477
1478config IP22_CPU_SCACHE
1479 bool
1480 select BOARD_SCACHE
1481
Chris Dearman9318c512006-06-20 17:15:20 +01001482#
1483# Support for a MIPS32 / MIPS64 style S-caches
1484#
1485config MIPS_CPU_SCACHE
1486 bool
1487 select BOARD_SCACHE
1488
Linus Torvalds1da177e2005-04-16 15:20:36 -07001489config R5000_CPU_SCACHE
1490 bool
1491 select BOARD_SCACHE
1492
1493config RM7000_CPU_SCACHE
1494 bool
1495 select BOARD_SCACHE
1496
1497config SIBYTE_DMA_PAGEOPS
1498 bool "Use DMA to clear/copy pages"
1499 depends on CPU_SB1
1500 help
1501 Instead of using the CPU to zero and copy pages, use a Data Mover
1502 channel. These DMA channels are otherwise unused by the standard
1503 SiByte Linux port. Seems to give a small performance benefit.
1504
1505config CPU_HAS_PREFETCH
Ralf Baechlec8094b52005-08-05 14:28:54 +00001506 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001507
Ralf Baechle340ee4b2005-08-17 17:44:08 +00001508choice
1509 prompt "MIPS MT options"
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001510
1511config MIPS_MT_DISABLED
1512 bool "Disable multithreading support."
1513 help
1514 Use this option if your workload can't take advantage of
1515 MIPS hardware multithreading support. On systems that don't have
1516 the option of an MT-enabled processor this option will be the only
1517 option in this menu.
Ralf Baechle340ee4b2005-08-17 17:44:08 +00001518
Ralf Baechle59d6ab82006-10-06 17:36:20 +01001519config MIPS_MT_SMP
1520 bool "Use 1 TC on each available VPE for SMP"
1521 depends on SYS_SUPPORTS_MULTITHREADING
1522 select CPU_MIPSR2_IRQ_VI
1523 select CPU_MIPSR2_SRS
1524 select MIPS_MT
1525 select SMP
1526 select SYS_SUPPORTS_SMP
1527 help
1528 This is a kernel model which is also known a VSMP or lately
1529 has been marketesed into SMVP.
1530
Ralf Baechle41c594a2006-04-05 09:45:45 +01001531config MIPS_MT_SMTC
1532 bool "SMTC: Use all TCs on all VPEs for SMP"
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001533 depends on CPU_MIPS32_R2
1534 #depends on CPU_MIPS64_R2 # once there is hardware ...
1535 depends on SYS_SUPPORTS_MULTITHREADING
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001536 select CPU_MIPSR2_IRQ_VI
1537 select CPU_MIPSR2_SRS
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001538 select MIPS_MT
Ralf Baechle130e2fb2007-02-06 16:53:15 +00001539 select NR_CPUS_DEFAULT_2
1540 select NR_CPUS_DEFAULT_8
Ralf Baechle41c594a2006-04-05 09:45:45 +01001541 select SMP
Ralf Baechle73b76c72006-08-15 19:36:40 +01001542 select SYS_SUPPORTS_SMP
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001543 help
1544 This is a kernel model which is known a SMTC or lately has been
1545 marketesed into SMVP.
Ralf Baechle41c594a2006-04-05 09:45:45 +01001546
Ralf Baechlee01402b2005-07-14 15:57:16 +00001547config MIPS_VPE_LOADER
1548 bool "VPE loader support."
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001549 depends on SYS_SUPPORTS_MULTITHREADING
1550 select MIPS_MT
Ralf Baechlee01402b2005-07-14 15:57:16 +00001551 help
1552 Includes a loader for loading an elf relocatable object
1553 onto another VPE and running it.
1554
Ralf Baechle340ee4b2005-08-17 17:44:08 +00001555endchoice
1556
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001557config MIPS_MT
1558 bool
1559
1560config SYS_SUPPORTS_MULTITHREADING
1561 bool
1562
Ralf Baechlef088fc82006-04-05 09:45:47 +01001563config MIPS_MT_FPAFF
1564 bool "Dynamic FPU affinity for FP-intensive threads"
1565 depends on MIPS_MT
1566 default y
1567
Ralf Baechleac8be952007-01-20 00:18:01 +00001568config MIPS_MT_SMTC_INSTANT_REPLAY
1569 bool "Low-latency Dispatch of Deferred SMTC IPIs"
1570 depends on MIPS_MT_SMTC
1571 default y
1572 help
1573 SMTC pseudo-interrupts between TCs are deferred and queued
1574 if the target TC is interrupt-inhibited (IXMT). In the first
1575 SMTC prototypes, these queued IPIs were serviced on return
1576 to user mode, or on entry into the kernel idle loop. The
1577 INSTANT_REPLAY option dispatches them as part of local_irq_restore()
1578 processing, which adds runtime overhead (hence the option to turn
1579 it off), but ensures that IPIs are handled promptly even under
1580 heavy I/O interrupt load.
1581
Ralf Baechlee01402b2005-07-14 15:57:16 +00001582config MIPS_VPE_LOADER_TOM
1583 bool "Load VPE program into memory hidden from linux"
1584 depends on MIPS_VPE_LOADER
1585 default y
1586 help
1587 The loader can use memory that is present but has been hidden from
1588 Linux using the kernel command line option "mem=xxMB". It's up to
1589 you to ensure the amount you put in the option and the space your
1590 program requires is less or equal to the amount physically present.
1591
1592# this should possibly be in drivers/char, but it is rather cpu related. Hmmm
1593config MIPS_VPE_APSP_API
Ralf Baechle5e83d432005-10-29 19:32:41 +01001594 bool "Enable support for AP/SP API (RTLX)"
1595 depends on MIPS_VPE_LOADER
1596 help
Ralf Baechlee01402b2005-07-14 15:57:16 +00001597
Ralf Baechle26009902006-04-05 09:45:45 +01001598config MIPS_APSP_KSPD
1599 bool "Enable KSPD"
1600 depends on MIPS_VPE_APSP_API
1601 default y
1602 help
1603 KSPD is a kernel daemon that accepts syscall requests from the SP
1604 side, actions them and returns the results. It also handles the
1605 "exit" syscall notifying other kernel modules the SP program is
1606 exiting. You probably want to say yes here.
1607
Linus Torvalds1da177e2005-04-16 15:20:36 -07001608config SB1_PASS_1_WORKAROUNDS
1609 bool
1610 depends on CPU_SB1_PASS_1
1611 default y
1612
1613config SB1_PASS_2_WORKAROUNDS
1614 bool
1615 depends on CPU_SB1 && (CPU_SB1_PASS_2_2 || CPU_SB1_PASS_2)
1616 default y
1617
1618config SB1_PASS_2_1_WORKAROUNDS
1619 bool
1620 depends on CPU_SB1 && CPU_SB1_PASS_2
1621 default y
1622
1623config 64BIT_PHYS_ADDR
1624 bool "Support for 64-bit physical address space"
Ralf Baechle948928a2005-12-23 02:16:44 +01001625 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 -07001626
Linus Torvalds1da177e2005-04-16 15:20:36 -07001627config CPU_HAS_LLSC
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001628 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001629
Linus Torvalds1da177e2005-04-16 15:20:36 -07001630config CPU_HAS_WB
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001631 bool
Ralf Baechlee01402b2005-07-14 15:57:16 +00001632
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001633#
1634# Vectored interrupt mode is an R2 feature
1635#
Ralf Baechlee01402b2005-07-14 15:57:16 +00001636config CPU_MIPSR2_IRQ_VI
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001637 bool
Ralf Baechlee01402b2005-07-14 15:57:16 +00001638
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001639#
1640# Extended interrupt mode is an R2 feature
1641#
Ralf Baechlee01402b2005-07-14 15:57:16 +00001642config CPU_MIPSR2_IRQ_EI
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001643 bool
Ralf Baechlee01402b2005-07-14 15:57:16 +00001644
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001645#
1646# Shadow registers are an R2 feature
1647#
Ralf Baechlee01402b2005-07-14 15:57:16 +00001648config CPU_MIPSR2_SRS
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001649 bool
Ralf Baechlee01402b2005-07-14 15:57:16 +00001650
Linus Torvalds1da177e2005-04-16 15:20:36 -07001651config CPU_HAS_SYNC
1652 bool
1653 depends on !CPU_R3000
1654 default y
1655
1656#
Ralf Baechle797798c2005-08-10 15:17:11 +00001657# Use the generic interrupt handling code in kernel/irq/:
1658#
1659config GENERIC_HARDIRQS
1660 bool
1661 default y
1662
1663config GENERIC_IRQ_PROBE
1664 bool
1665 default y
1666
Ingo Molnar0d7012a2006-06-29 02:24:43 -07001667config IRQ_PER_CPU
Ingo Molnar0d7012a2006-06-29 02:24:43 -07001668 bool
Ingo Molnar0d7012a2006-06-29 02:24:43 -07001669
Ralf Baechle797798c2005-08-10 15:17:11 +00001670#
Linus Torvalds1da177e2005-04-16 15:20:36 -07001671# - Highmem only makes sense for the 32-bit kernel.
1672# - The current highmem code will only work properly on physically indexed
1673# caches such as R3000, SB1, R7000 or those that look like they're virtually
1674# indexed such as R4000/R4400 SC and MC versions or R10000. So for the
1675# moment we protect the user and offer the highmem option only on machines
1676# where it's known to be safe. This will not offer highmem on a few systems
1677# such as MIPS32 and MIPS64 CPUs which may have virtual and physically
1678# indexed CPUs but we're playing safe.
Ralf Baechle797798c2005-08-10 15:17:11 +00001679# - We use SYS_SUPPORTS_HIGHMEM to offer highmem only for systems where we
1680# know they might have memory configurations that could make use of highmem
1681# support.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001682#
1683config HIGHMEM
1684 bool "High Memory Support"
Ralf Baechle797798c2005-08-10 15:17:11 +00001685 depends on 32BIT && CPU_SUPPORTS_HIGHMEM && SYS_SUPPORTS_HIGHMEM
1686
1687config CPU_SUPPORTS_HIGHMEM
1688 bool
1689
1690config SYS_SUPPORTS_HIGHMEM
1691 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001692
Yoichi Yuasab4819b52005-06-25 14:54:31 -07001693config ARCH_FLATMEM_ENABLE
1694 def_bool y
1695 depends on !NUMA
1696
Ralf Baechled8cb4e12006-06-11 23:03:08 +01001697config ARCH_DISCONTIGMEM_ENABLE
1698 bool
1699 default y if SGI_IP27
1700 help
1701 Say Y to upport efficient handling of discontiguous physical memory,
1702 for architectures which are either NUMA (Non-Uniform Memory Access)
1703 or have huge holes in the physical address space for other reasons.
1704 See <file:Documentation/vm/numa> for more.
1705
Atsushi Nemotob1c6cd42006-07-03 00:09:47 +09001706config ARCH_SPARSEMEM_ENABLE
1707 bool
Atsushi Nemoto7de58fa2006-07-05 01:22:44 +09001708 select SPARSEMEM_STATIC
Atsushi Nemoto31473742006-07-03 00:09:47 +09001709
Ralf Baechled8cb4e12006-06-11 23:03:08 +01001710config NUMA
1711 bool "NUMA Support"
1712 depends on SYS_SUPPORTS_NUMA
1713 help
1714 Say Y to compile the kernel to support NUMA (Non-Uniform Memory
1715 Access). This option improves performance on systems with more
1716 than two nodes; on two node systems it is generally better to
1717 leave it disabled; on single node systems disable this option
1718 disabled.
1719
1720config SYS_SUPPORTS_NUMA
1721 bool
1722
Yasunori Gotoc80d79d2006-04-10 22:53:53 -07001723config NODES_SHIFT
1724 int
1725 default "6"
1726 depends on NEED_MULTIPLE_NODES
1727
Yoichi Yuasab4819b52005-06-25 14:54:31 -07001728source "mm/Kconfig"
1729
Linus Torvalds1da177e2005-04-16 15:20:36 -07001730config SMP
1731 bool "Multi-Processing support"
Ralf Baechlee73ea272006-06-04 11:51:46 +01001732 depends on SYS_SUPPORTS_SMP
Ralf Baechleb4b30a52006-08-03 17:34:24 +01001733 select IRQ_PER_CPU
Ralf Baechlee73ea272006-06-04 11:51:46 +01001734 help
Linus Torvalds1da177e2005-04-16 15:20:36 -07001735 This enables support for systems with more than one CPU. If you have
1736 a system with only one CPU, like most personal computers, say N. If
1737 you have a system with more than one CPU, say Y.
1738
1739 If you say N here, the kernel will run on single and multiprocessor
1740 machines, but will use only one CPU of a multiprocessor machine. If
1741 you say Y here, the kernel will run on many, but not all,
1742 singleprocessor machines. On a singleprocessor machine, the kernel
1743 will run faster if you say N here.
1744
1745 People using multiprocessor machines who say Y here should also say
1746 Y to "Enhanced Real Time Clock Support", below.
1747
1748 See also the <file:Documentation/smp.txt> and the SMP-HOWTO
1749 available at <http://www.tldp.org/docs.html#howto>.
1750
1751 If you don't know what to do here, say N.
1752
Ralf Baechlee73ea272006-06-04 11:51:46 +01001753config SYS_SUPPORTS_SMP
1754 bool
1755
Ralf Baechle130e2fb2007-02-06 16:53:15 +00001756config NR_CPUS_DEFAULT_2
1757 bool
1758
1759config NR_CPUS_DEFAULT_4
1760 bool
1761
1762config NR_CPUS_DEFAULT_8
1763 bool
1764
1765config NR_CPUS_DEFAULT_16
1766 bool
1767
1768config NR_CPUS_DEFAULT_32
1769 bool
1770
1771config NR_CPUS_DEFAULT_64
1772 bool
1773
Linus Torvalds1da177e2005-04-16 15:20:36 -07001774config NR_CPUS
1775 int "Maximum number of CPUs (2-64)"
1776 range 2 64
1777 depends on SMP
Ralf Baechle130e2fb2007-02-06 16:53:15 +00001778 default "2" if NR_CPUS_DEFAULT_2
1779 default "4" if NR_CPUS_DEFAULT_4
1780 default "8" if NR_CPUS_DEFAULT_8
1781 default "16" if NR_CPUS_DEFAULT_16
1782 default "32" if NR_CPUS_DEFAULT_32
1783 default "64" if NR_CPUS_DEFAULT_64
Linus Torvalds1da177e2005-04-16 15:20:36 -07001784 help
1785 This allows you to specify the maximum number of CPUs which this
1786 kernel will support. The maximum supported value is 32 for 32-bit
1787 kernel and 64 for 64-bit kernels; the minimum value which makes
1788 sense is 2.
1789
1790 This is purely to save memory - each supported CPU adds
1791 approximately eight kilobytes to the kernel image.
1792
Atsushi Nemoto1723b4a2006-06-20 00:19:13 +09001793#
1794# Timer Interrupt Frequency Configuration
1795#
1796
1797choice
1798 prompt "Timer frequency"
1799 default HZ_250
1800 help
1801 Allows the configuration of the timer frequency.
1802
1803 config HZ_48
1804 bool "48 HZ" if SYS_SUPPORTS_48HZ
1805
1806 config HZ_100
1807 bool "100 HZ" if SYS_SUPPORTS_100HZ || SYS_SUPPORTS_ARBIT_HZ
1808
1809 config HZ_128
1810 bool "128 HZ" if SYS_SUPPORTS_128HZ || SYS_SUPPORTS_ARBIT_HZ
1811
1812 config HZ_250
1813 bool "250 HZ" if SYS_SUPPORTS_250HZ || SYS_SUPPORTS_ARBIT_HZ
1814
1815 config HZ_256
1816 bool "256 HZ" if SYS_SUPPORTS_256HZ || SYS_SUPPORTS_ARBIT_HZ
1817
1818 config HZ_1000
1819 bool "1000 HZ" if SYS_SUPPORTS_1000HZ || SYS_SUPPORTS_ARBIT_HZ
1820
1821 config HZ_1024
1822 bool "1024 HZ" if SYS_SUPPORTS_1024HZ || SYS_SUPPORTS_ARBIT_HZ
1823
1824endchoice
1825
1826config SYS_SUPPORTS_48HZ
1827 bool
1828
1829config SYS_SUPPORTS_100HZ
1830 bool
1831
1832config SYS_SUPPORTS_128HZ
1833 bool
1834
1835config SYS_SUPPORTS_250HZ
1836 bool
1837
1838config SYS_SUPPORTS_256HZ
1839 bool
1840
1841config SYS_SUPPORTS_1000HZ
1842 bool
1843
1844config SYS_SUPPORTS_1024HZ
1845 bool
1846
1847config SYS_SUPPORTS_ARBIT_HZ
1848 bool
1849 default y if !SYS_SUPPORTS_48HZ && !SYS_SUPPORTS_100HZ && \
1850 !SYS_SUPPORTS_128HZ && !SYS_SUPPORTS_250HZ && \
1851 !SYS_SUPPORTS_256HZ && !SYS_SUPPORTS_1000HZ && \
1852 !SYS_SUPPORTS_1024HZ
1853
1854config HZ
1855 int
1856 default 48 if HZ_48
1857 default 100 if HZ_100
1858 default 128 if HZ_128
1859 default 250 if HZ_250
1860 default 256 if HZ_256
1861 default 1000 if HZ_1000
1862 default 1024 if HZ_1024
1863
Ralf Baechlee80de852005-07-11 20:45:51 +00001864source "kernel/Kconfig.preempt"
Linus Torvalds1da177e2005-04-16 15:20:36 -07001865
1866config RTC_DS1742
1867 bool "DS1742 BRAM/RTC support"
1868 depends on TOSHIBA_JMR3927 || TOSHIBA_RBTX4927
1869
1870config MIPS_INSANE_LARGE
1871 bool "Support for large 64-bit configurations"
Ralf Baechle875d43e2005-09-03 15:56:16 -07001872 depends on CPU_R10000 && 64BIT
Linus Torvalds1da177e2005-04-16 15:20:36 -07001873 help
1874 MIPS R10000 does support a 44 bit / 16TB address space as opposed to
1875 previous 64-bit processors which only supported 40 bit / 1TB. If you
1876 need processes of more than 1TB virtual address space, say Y here.
1877 This will result in additional memory usage, so it is not
1878 recommended for normal users.
1879
Atsushi Nemotoea6e9422007-01-16 23:29:11 +09001880config KEXEC
1881 bool "Kexec system call (EXPERIMENTAL)"
1882 depends on EXPERIMENTAL
1883 help
1884 kexec is a system call that implements the ability to shutdown your
1885 current kernel, and to start another kernel. It is like a reboot
1886 but it is indepedent of the system firmware. And like a reboot
1887 you can start any kernel with it, not just Linux.
1888
1889 The name comes from the similiarity to the exec system call.
1890
1891 It is an ongoing process to be certain the hardware in a machine
1892 is properly shutdown, so do not be surprised if this code does not
1893 initially work for you. It may help to enable device hotplugging
1894 support. As of this writing the exact hardware interface is
1895 strongly in flux, so no good recommendation can be made.
1896
1897config SECCOMP
1898 bool "Enable seccomp to safely compute untrusted bytecode"
1899 depends on PROC_FS && BROKEN
1900 default y
1901 help
1902 This kernel feature is useful for number crunching applications
1903 that may need to compute untrusted bytecode during their
1904 execution. By using pipes or other transports made available to
1905 the process as file descriptors supporting the read/write
1906 syscalls, it's possible to isolate those applications in
1907 their own address space using seccomp. Once seccomp is
1908 enabled via /proc/<pid>/seccomp, it cannot be disabled
1909 and the task is only allowed to execute a few safe syscalls
1910 defined by each seccomp mode.
1911
1912 If unsure, say Y. Only embedded should say N here.
1913
Ralf Baechle5e83d432005-10-29 19:32:41 +01001914endmenu
1915
Linus Torvalds1da177e2005-04-16 15:20:36 -07001916config RWSEM_GENERIC_SPINLOCK
1917 bool
1918 default y
1919
Atsushi Nemoto1df0f0f2006-09-26 23:44:01 +09001920config LOCKDEP_SUPPORT
1921 bool
1922 default y
1923
1924config STACKTRACE_SUPPORT
1925 bool
1926 default y
1927
Ralf Baechleb6c35392005-11-25 11:35:40 +00001928source "init/Kconfig"
1929
Linus Torvalds1da177e2005-04-16 15:20:36 -07001930menu "Bus options (PCI, PCMCIA, EISA, ISA, TC)"
1931
Ralf Baechle5e83d432005-10-29 19:32:41 +01001932config HW_HAS_EISA
1933 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001934config HW_HAS_PCI
1935 bool
1936
1937config PCI
1938 bool "Support for PCI controller"
1939 depends on HW_HAS_PCI
1940 help
1941 Find out whether you have a PCI motherboard. PCI is the name of a
1942 bus system, i.e. the way the CPU talks to the other stuff inside
1943 your box. Other bus systems are ISA, EISA, or VESA. If you have PCI,
1944 say Y, otherwise N.
1945
1946 The PCI-HOWTO, available from
1947 <http://www.tldp.org/docs.html#howto>, contains valuable
1948 information about which PCI hardware does work under Linux and which
1949 doesn't.
1950
1951config PCI_DOMAINS
1952 bool
1953 depends on PCI
1954
1955source "drivers/pci/Kconfig"
1956
1957#
1958# ISA support is now enabled via select. Too many systems still have the one
1959# or other ISA chip on the board that users don't know about so don't expect
1960# users to choose the right thing ...
1961#
1962config ISA
1963 bool
1964
1965config EISA
1966 bool "EISA support"
Ralf Baechle5e83d432005-10-29 19:32:41 +01001967 depends on HW_HAS_EISA
Linus Torvalds1da177e2005-04-16 15:20:36 -07001968 select ISA
Ralf Baechleaa414df2006-11-30 01:14:51 +00001969 select GENERIC_ISA_DMA
Linus Torvalds1da177e2005-04-16 15:20:36 -07001970 ---help---
1971 The Extended Industry Standard Architecture (EISA) bus was
1972 developed as an open alternative to the IBM MicroChannel bus.
1973
1974 The EISA bus provided some of the features of the IBM MicroChannel
1975 bus while maintaining backward compatibility with cards made for
1976 the older ISA bus. The EISA bus saw limited use between 1988 and
1977 1995 when it was made obsolete by the PCI bus.
1978
1979 Say Y here if you are building a kernel for an EISA-based machine.
1980
1981 Otherwise, say N.
1982
1983source "drivers/eisa/Kconfig"
1984
1985config TC
1986 bool "TURBOchannel support"
1987 depends on MACH_DECSTATION
1988 help
1989 TurboChannel is a DEC (now Compaq (now HP)) bus for Alpha and MIPS
1990 processors. Documentation on writing device drivers for TurboChannel
1991 is available at:
1992 <http://www.cs.arizona.edu/computer.help/policy/DIGITAL_unix/AA-PS3HD-TET1_html/TITLE.html>.
1993
1994#config ACCESSBUS
1995# bool "Access.Bus support"
1996# depends on TC
1997
1998config MMU
1999 bool
2000 default y
2001
Michael Neulinge5c6c8e2006-03-14 00:11:50 -05002002config I8253
2003 bool
2004
Linus Torvalds1da177e2005-04-16 15:20:36 -07002005source "drivers/pcmcia/Kconfig"
2006
2007source "drivers/pci/hotplug/Kconfig"
2008
2009endmenu
2010
2011menu "Executable file formats"
2012
2013source "fs/Kconfig.binfmt"
2014
2015config TRAD_SIGNALS
2016 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07002017
2018config BUILD_ELF64
2019 bool "Use 64-bit ELF format for building"
Ralf Baechle875d43e2005-09-03 15:56:16 -07002020 depends on 64BIT
Linus Torvalds1da177e2005-04-16 15:20:36 -07002021 help
2022 A 64-bit kernel is usually built using the 64-bit ELF binary object
2023 format as it's one that allows arbitrary 64-bit constructs. For
2024 kernels that are loaded within the KSEG compatibility segments the
2025 32-bit ELF format can optionally be used resulting in a somewhat
2026 smaller binary, but this option is not explicitly supported by the
2027 toolchain and since binutils 2.14 it does not even work at all.
2028
2029 Say Y to use the 64-bit format or N to use the 32-bit one.
2030
2031 If unsure say Y.
2032
2033config BINFMT_IRIX
2034 bool "Include IRIX binary compatibility"
Ralf Baechle5e83d432005-10-29 19:32:41 +01002035 depends on CPU_BIG_ENDIAN && 32BIT && BROKEN
Linus Torvalds1da177e2005-04-16 15:20:36 -07002036
2037config MIPS32_COMPAT
2038 bool "Kernel support for Linux/MIPS 32-bit binary compatibility"
Ralf Baechle875d43e2005-09-03 15:56:16 -07002039 depends on 64BIT
Linus Torvalds1da177e2005-04-16 15:20:36 -07002040 help
2041 Select this option if you want Linux/MIPS 32-bit binary
2042 compatibility. Since all software available for Linux/MIPS is
2043 currently 32-bit you should say Y here.
2044
2045config COMPAT
2046 bool
2047 depends on MIPS32_COMPAT
2048 default y
2049
Atsushi Nemoto05e43962006-11-07 18:02:44 +09002050config SYSVIPC_COMPAT
2051 bool
2052 depends on COMPAT && SYSVIPC
2053 default y
2054
Linus Torvalds1da177e2005-04-16 15:20:36 -07002055config MIPS32_O32
2056 bool "Kernel support for o32 binaries"
2057 depends on MIPS32_COMPAT
2058 help
2059 Select this option if you want to run o32 binaries. These are pure
2060 32-bit binaries as used by the 32-bit Linux/MIPS port. Most of
2061 existing binaries are in this format.
2062
2063 If unsure, say Y.
2064
2065config MIPS32_N32
2066 bool "Kernel support for n32 binaries"
2067 depends on MIPS32_COMPAT
2068 help
2069 Select this option if you want to run n32 binaries. These are
2070 64-bit binaries using 32-bit quantities for addressing and certain
2071 data that would normally be 64-bit. They are used in special
2072 cases.
2073
2074 If unsure, say N.
2075
2076config BINFMT_ELF32
2077 bool
2078 default y if MIPS32_O32 || MIPS32_N32
2079
Ralf Baechle21162452007-02-09 17:08:58 +00002080endmenu
Linus Torvalds1da177e2005-04-16 15:20:36 -07002081
Ralf Baechle21162452007-02-09 17:08:58 +00002082menu "Power management options"
Rodolfo Giometti952fa952006-06-05 17:43:10 +02002083
Ralf Baechle21162452007-02-09 17:08:58 +00002084source "kernel/power/Kconfig"
Rodolfo Giometti952fa952006-06-05 17:43:10 +02002085
Linus Torvalds1da177e2005-04-16 15:20:36 -07002086endmenu
2087
Sam Ravnborgd5950b42005-07-11 21:03:49 -07002088source "net/Kconfig"
2089
Linus Torvalds1da177e2005-04-16 15:20:36 -07002090source "drivers/Kconfig"
2091
2092source "fs/Kconfig"
2093
Ralf Baechle5e83d432005-10-29 19:32:41 +01002094source "arch/mips/oprofile/Kconfig"
2095
Linus Torvalds1da177e2005-04-16 15:20:36 -07002096source "arch/mips/Kconfig.debug"
2097
2098source "security/Kconfig"
2099
2100source "crypto/Kconfig"
2101
2102source "lib/Kconfig"