blob: c8d954d6f2c4aef9c3e16b04c78d257e6d39b4f4 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001config MIPS
2 bool
3 default y
4 # Horrible source of confusion. Die, die, die ...
5 select EMBEDDED
6
Linus Torvalds1da177e2005-04-16 15:20:36 -07007mainmenu "Linux/MIPS Kernel Configuration"
8
Linus Torvalds1da177e2005-04-16 15:20:36 -07009menu "Machine selection"
10
Christoph Lameter5ac6da62007-02-10 01:43:14 -080011config ZONE_DMA
12 bool
Christoph Lameter5ac6da62007-02-10 01:43:14 -080013
Ralf Baechle5e83d432005-10-29 19:32:41 +010014choice
15 prompt "System type"
16 default SGI_IP22
Linus Torvalds1da177e2005-04-16 15:20:36 -070017
Yoichi Yuasac3543e22007-05-11 20:44:30 +090018config MACH_ALCHEMY
19 bool "Alchemy processor based machines"
Linus Torvalds1da177e2005-04-16 15:20:36 -070020
Ralf Baechle35189fa2006-06-18 16:39:46 +010021config BASLER_EXCITE
Thomas Koellerbe915892007-02-23 01:40:34 +010022 bool "Basler eXcite smart camera"
Ralf Baechle35189fa2006-06-18 16:39:46 +010023 select DMA_COHERENT
24 select HW_HAS_PCI
25 select IRQ_CPU
26 select IRQ_CPU_RM7K
27 select IRQ_CPU_RM9K
thomas@koeller.dyndns.org663c3d92006-08-27 13:51:48 +020028 select MIPS_RM9122
Ralf Baechle35189fa2006-06-18 16:39:46 +010029 select SYS_HAS_CPU_RM9000
30 select SYS_SUPPORTS_32BIT_KERNEL
31 select SYS_SUPPORTS_64BIT_KERNEL
32 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechlecc801072007-02-17 02:58:39 +000033 select SYS_SUPPORTS_KGDB
Ralf Baechle35189fa2006-06-18 16:39:46 +010034 help
35 The eXcite is a smart camera platform manufactured by
Thomas Koellerbe915892007-02-23 01:40:34 +010036 Basler Vision Technologies AG.
Ralf Baechle35189fa2006-06-18 16:39:46 +010037
38config BASLER_EXCITE_PROTOTYPE
39 bool "Support for pre-release units"
40 depends on BASLER_EXCITE
41 default n
42 help
43 Pre-series (prototype) units are different from later ones in
44 some ways. Select this option if you have one of these. Please
45 note that a kernel built with this option selected will not be
46 able to run on normal units.
47
Linus Torvalds1da177e2005-04-16 15:20:36 -070048config MIPS_COBALT
Martin Michlmayr3fa986f2006-05-09 23:34:53 +020049 bool "Cobalt Server"
Linus Torvalds1da177e2005-04-16 15:20:36 -070050 select DMA_NONCOHERENT
51 select HW_HAS_PCI
52 select I8259
53 select IRQ_CPU
Yoichi Yuasa252161e2007-03-14 21:51:26 +090054 select PCI_GT64XXX_PCI0
Ralf Baechle7cf80532005-10-20 22:33:09 +010055 select SYS_HAS_CPU_NEVADA
Yoichi Yuasa0a22e0d2007-03-02 12:42:33 +090056 select SYS_HAS_EARLY_PRINTK
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -070057 select SYS_SUPPORTS_32BIT_KERNEL
58 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
Ralf Baechle5e83d432005-10-29 19:32:41 +010059 select SYS_SUPPORTS_LITTLE_ENDIAN
Atsushi Nemoto9fd32cf2006-12-08 01:55:07 +090060 select GENERIC_HARDIRQS_NO__DO_IRQ
Linus Torvalds1da177e2005-04-16 15:20:36 -070061
62config MACH_DECSTATION
Martin Michlmayr3fa986f2006-05-09 23:34:53 +020063 bool "DECstations"
Linus Torvalds1da177e2005-04-16 15:20:36 -070064 select BOOT_ELF32
65 select DMA_NONCOHERENT
Maciej W. Rozyckid388d682007-05-29 15:08:07 +010066 select NO_IOPORT
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
Ralf Baechle5e83d432005-10-29 19:32:41 +010091config MACH_JAZZ
Martin Michlmayr3fa986f2006-05-09 23:34:53 +020092 bool "Jazz family of machines"
Ralf Baechle5e83d432005-10-29 19:32:41 +010093 select ARC
94 select ARC32
95 select ARCH_MAY_HAVE_PC_FDC
96 select GENERIC_ISA_DMA
Michael Neulinge5c6c8e2006-03-14 00:11:50 -050097 select I8253
Ralf Baechle5e83d432005-10-29 19:32:41 +010098 select I8259
99 select ISA
Ralf Baechle7cf80532005-10-20 22:33:09 +0100100 select SYS_HAS_CPU_R4X00
Ralf Baechle5e83d432005-10-29 19:32:41 +0100101 select SYS_SUPPORTS_32BIT_KERNEL
102 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
Atsushi Nemoto1723b4a2006-06-20 00:19:13 +0900103 select SYS_SUPPORTS_100HZ
Atsushi Nemoto9fd32cf2006-12-08 01:55:07 +0900104 select GENERIC_HARDIRQS_NO__DO_IRQ
Linus Torvalds1da177e2005-04-16 15:20:36 -0700105 help
Ralf Baechle5e83d432005-10-29 19:32:41 +0100106 This a family of machines based on the MIPS R4030 chipset which was
107 used by several vendors to build RISC/os and Windows NT workstations.
108 Members include the Acer PICA, MIPS Magnum 4000, MIPS Millenium and
109 Olivetti M700-10 workstations.
110
111config LASAT
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200112 bool "LASAT Networks platforms"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100113 select DMA_NONCOHERENT
Ralf Baechle36a88532007-03-01 11:56:43 +0000114 select SYS_HAS_EARLY_PRINTK
Ralf Baechle5e83d432005-10-29 19:32:41 +0100115 select HW_HAS_PCI
Yoichi Yuasa252161e2007-03-14 21:51:26 +0900116 select PCI_GT64XXX_PCI0
Ralf Baechle5e83d432005-10-29 19:32:41 +0100117 select MIPS_NILE4
118 select R5000_CPU_SCACHE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100119 select SYS_HAS_CPU_R5000
Ralf Baechle5e83d432005-10-29 19:32:41 +0100120 select SYS_SUPPORTS_32BIT_KERNEL
Ralf Baechle080e9482007-03-13 08:59:54 +0000121 select SYS_SUPPORTS_64BIT_KERNEL if BROKEN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100122 select SYS_SUPPORTS_LITTLE_ENDIAN
Franck Bui-Huue77c2322006-12-01 18:22:27 +0100123 select GENERIC_HARDIRQS_NO__DO_IRQ
Linus Torvalds1da177e2005-04-16 15:20:36 -0700124
125config MIPS_ATLAS
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200126 bool "MIPS Atlas board"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700127 select BOOT_ELF32
128 select DMA_NONCOHERENT
Ralf Baechle36a88532007-03-01 11:56:43 +0000129 select SYS_HAS_EARLY_PRINTK
Ralf Baechle5e83d432005-10-29 19:32:41 +0100130 select IRQ_CPU
Linus Torvalds1da177e2005-04-16 15:20:36 -0700131 select HW_HAS_PCI
Ralf Baechle5e83d432005-10-29 19:32:41 +0100132 select MIPS_BOARDS_GEN
133 select MIPS_BONITO64
Yoichi Yuasa252161e2007-03-14 21:51:26 +0900134 select PCI_GT64XXX_PCI0
Ralf Baechle5e83d432005-10-29 19:32:41 +0100135 select MIPS_MSC
Maciej W. Rozyckif4b7cdb2005-02-12 04:31:49 +0000136 select RM7000_CPU_SCACHE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700137 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100138 select SYS_HAS_CPU_MIPS32_R1
139 select SYS_HAS_CPU_MIPS32_R2
140 select SYS_HAS_CPU_MIPS64_R1
141 select SYS_HAS_CPU_NEVADA
142 select SYS_HAS_CPU_RM7000
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700143 select SYS_SUPPORTS_32BIT_KERNEL
144 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100145 select SYS_SUPPORTS_BIG_ENDIAN
146 select SYS_SUPPORTS_LITTLE_ENDIAN
Ralf Baechlef41ae0b2006-06-05 17:24:46 +0100147 select SYS_SUPPORTS_MULTITHREADING if EXPERIMENTAL
Franck Bui-Huu9693a852007-02-02 17:41:47 +0100148 select SYS_SUPPORTS_SMARTMIPS
Franck Bui-Huue77c2322006-12-01 18:22:27 +0100149 select GENERIC_HARDIRQS_NO__DO_IRQ
Linus Torvalds1da177e2005-04-16 15:20:36 -0700150 help
Maciej W. Rozyckif638d192005-02-02 22:23:46 +0000151 This enables support for the MIPS Technologies Atlas evaluation
Linus Torvalds1da177e2005-04-16 15:20:36 -0700152 board.
153
154config MIPS_MALTA
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200155 bool "MIPS Malta board"
Ralf Baechle61ed242d2005-09-15 08:52:34 +0000156 select ARCH_MAY_HAVE_PC_FDC
Linus Torvalds1da177e2005-04-16 15:20:36 -0700157 select BOOT_ELF32
Linus Torvalds1da177e2005-04-16 15:20:36 -0700158 select DMA_NONCOHERENT
159 select GENERIC_ISA_DMA
Ralf Baechleaa414df2006-11-30 01:14:51 +0000160 select IRQ_CPU
Linus Torvalds1da177e2005-04-16 15:20:36 -0700161 select HW_HAS_PCI
162 select I8259
Ralf Baechle5e83d432005-10-29 19:32:41 +0100163 select MIPS_BOARDS_GEN
164 select MIPS_BONITO64
Chris Dearman9318c512006-06-20 17:15:20 +0100165 select MIPS_CPU_SCACHE
Yoichi Yuasa252161e2007-03-14 21:51:26 +0900166 select PCI_GT64XXX_PCI0
Ralf Baechle5e83d432005-10-29 19:32:41 +0100167 select MIPS_MSC
Linus Torvalds1da177e2005-04-16 15:20:36 -0700168 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100169 select SYS_HAS_CPU_MIPS32_R1
170 select SYS_HAS_CPU_MIPS32_R2
171 select SYS_HAS_CPU_MIPS64_R1
172 select SYS_HAS_CPU_NEVADA
173 select SYS_HAS_CPU_RM7000
Ralf Baechle36a88532007-03-01 11:56:43 +0000174 select SYS_HAS_EARLY_PRINTK
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700175 select SYS_SUPPORTS_32BIT_KERNEL
176 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100177 select SYS_SUPPORTS_BIG_ENDIAN
178 select SYS_SUPPORTS_LITTLE_ENDIAN
Ralf Baechlef41ae0b2006-06-05 17:24:46 +0100179 select SYS_SUPPORTS_MULTITHREADING
Franck Bui-Huu9693a852007-02-02 17:41:47 +0100180 select SYS_SUPPORTS_SMARTMIPS
Linus Torvalds1da177e2005-04-16 15:20:36 -0700181 help
Maciej W. Rozyckif638d192005-02-02 22:23:46 +0000182 This enables support for the MIPS Technologies Malta evaluation
Linus Torvalds1da177e2005-04-16 15:20:36 -0700183 board.
184
185config MIPS_SEAD
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200186 bool "MIPS SEAD board (EXPERIMENTAL)"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700187 depends on EXPERIMENTAL
188 select IRQ_CPU
189 select DMA_NONCOHERENT
Ralf Baechle36a88532007-03-01 11:56:43 +0000190 select SYS_HAS_EARLY_PRINTK
Ralf Baechle5e83d432005-10-29 19:32:41 +0100191 select MIPS_BOARDS_GEN
Ralf Baechle7cf80532005-10-20 22:33:09 +0100192 select SYS_HAS_CPU_MIPS32_R1
193 select SYS_HAS_CPU_MIPS32_R2
194 select SYS_HAS_CPU_MIPS64_R1
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700195 select SYS_SUPPORTS_32BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100196 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
197 select SYS_SUPPORTS_BIG_ENDIAN
198 select SYS_SUPPORTS_LITTLE_ENDIAN
Franck Bui-Huu9693a852007-02-02 17:41:47 +0100199 select SYS_SUPPORTS_SMARTMIPS
Maciej W. Rozyckif638d192005-02-02 22:23:46 +0000200 help
201 This enables support for the MIPS Technologies SEAD evaluation
202 board.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700203
Mark.Zhana240a462006-05-06 17:04:20 +0800204config WR_PPMC
Mark.Zhan92478572006-06-20 18:15:02 +0800205 bool "Wind River PPMC board"
Mark.Zhana240a462006-05-06 17:04:20 +0800206 select IRQ_CPU
207 select BOOT_ELF32
208 select DMA_NONCOHERENT
209 select HW_HAS_PCI
Yoichi Yuasa252161e2007-03-14 21:51:26 +0900210 select PCI_GT64XXX_PCI0
Mark.Zhana240a462006-05-06 17:04:20 +0800211 select SWAP_IO_SPACE
212 select SYS_HAS_CPU_MIPS32_R1
213 select SYS_HAS_CPU_MIPS32_R2
214 select SYS_HAS_CPU_MIPS64_R1
215 select SYS_HAS_CPU_NEVADA
216 select SYS_HAS_CPU_RM7000
217 select SYS_SUPPORTS_32BIT_KERNEL
218 select SYS_SUPPORTS_64BIT_KERNEL
219 select SYS_SUPPORTS_BIG_ENDIAN
220 select SYS_SUPPORTS_LITTLE_ENDIAN
221 help
222 This enables support for the Wind River MIPS32 4KC PPMC evaluation
223 board, which is based on GT64120 bridge chip.
224
Ralf Baechlec78cbf42005-09-30 13:59:37 +0100225config MIPS_SIM
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200226 bool 'MIPS simulator (MIPSsim)'
Ralf Baechlec78cbf42005-09-30 13:59:37 +0100227 select DMA_NONCOHERENT
Ralf Baechle36a88532007-03-01 11:56:43 +0000228 select SYS_HAS_EARLY_PRINTK
Ralf Baechlec78cbf42005-09-30 13:59:37 +0100229 select IRQ_CPU
Ralf Baechle7cf80532005-10-20 22:33:09 +0100230 select SYS_HAS_CPU_MIPS32_R1
231 select SYS_HAS_CPU_MIPS32_R2
Ralf Baechle36a88532007-03-01 11:56:43 +0000232 select SYS_HAS_EARLY_PRINTK
Ralf Baechlec78cbf42005-09-30 13:59:37 +0100233 select SYS_SUPPORTS_32BIT_KERNEL
234 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechlef6e23732007-07-10 17:32:56 +0100235 select SYS_SUPPORTS_MULTITHREADING
Ralf Baechlec78cbf42005-09-30 13:59:37 +0100236 select SYS_SUPPORTS_LITTLE_ENDIAN
237 help
238 This option enables support for MIPS Technologies MIPSsim software
239 emulator.
240
Ralf Baechle5e83d432005-10-29 19:32:41 +0100241config MOMENCO_OCELOT
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200242 bool "Momentum Ocelot board"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100243 select DMA_NONCOHERENT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700244 select HW_HAS_PCI
245 select IRQ_CPU
246 select IRQ_CPU_RM7K
Yoichi Yuasa252161e2007-03-14 21:51:26 +0900247 select PCI_GT64XXX_PCI0
Ralf Baechle5e83d432005-10-29 19:32:41 +0100248 select RM7000_CPU_SCACHE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700249 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100250 select SYS_HAS_CPU_RM7000
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700251 select SYS_SUPPORTS_32BIT_KERNEL
252 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100253 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechlecc801072007-02-17 02:58:39 +0000254 select SYS_SUPPORTS_KGDB
Linus Torvalds1da177e2005-04-16 15:20:36 -0700255 help
Ralf Baechle5e83d432005-10-29 19:32:41 +0100256 The Ocelot is a MIPS-based Single Board Computer (SBC) made by
257 Momentum Computer <http://www.momenco.com/>.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700258
Ralf Baechle5e83d432005-10-29 19:32:41 +0100259config MOMENCO_OCELOT_3
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200260 bool "Momentum Ocelot-3 board"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100261 select BOOT_ELF32
262 select DMA_NONCOHERENT
263 select HW_HAS_PCI
264 select IRQ_CPU
265 select IRQ_CPU_RM7K
266 select IRQ_MV64340
267 select PCI_MARVELL
268 select RM7000_CPU_SCACHE
269 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100270 select SYS_HAS_CPU_RM9000
Ralf Baechle5e83d432005-10-29 19:32:41 +0100271 select SYS_SUPPORTS_32BIT_KERNEL
272 select SYS_SUPPORTS_64BIT_KERNEL
273 select SYS_SUPPORTS_BIG_ENDIAN
274 help
275 The Ocelot-3 is based off Discovery III System Controller and
276 PMC-Sierra Rm79000 core.
277
Pete Popovbdf21b12005-07-14 17:47:57 +0000278config PNX8550_JBS
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200279 bool "Philips PNX8550 based JBS board"
Pete Popovbdf21b12005-07-14 17:47:57 +0000280 select PNX8550
281 select SYS_SUPPORTS_LITTLE_ENDIAN
282
Vitaly Woolf0647a52006-12-08 11:40:35 +0300283config PNX8550_STB810
Yoichi Yuasae460b732007-05-28 22:54:28 +0900284 bool "Philips PNX8550 based STB810 board"
Vitaly Woolf0647a52006-12-08 11:40:35 +0300285 select PNX8550
286 select SYS_SUPPORTS_LITTLE_ENDIAN
287
Linus Torvalds1da177e2005-04-16 15:20:36 -0700288config DDB5477
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200289 bool "NEC DDB Vrc-5477"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100290 select DDB5XXX_COMMON
Linus Torvalds1da177e2005-04-16 15:20:36 -0700291 select DMA_NONCOHERENT
292 select HW_HAS_PCI
293 select I8259
294 select IRQ_CPU
Ralf Baechle7cf80532005-10-20 22:33:09 +0100295 select SYS_HAS_CPU_R5432
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700296 select SYS_SUPPORTS_32BIT_KERNEL
297 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
Ralf Baechlecc801072007-02-17 02:58:39 +0000298 select SYS_SUPPORTS_KGDB
299 select SYS_SUPPORTS_KGDB
Ralf Baechle5e83d432005-10-29 19:32:41 +0100300 select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700301 help
302 This enables support for the R5432-based NEC DDB Vrc-5477,
303 or Rockhopper/SolutionGear boards with R5432/R5500 CPUs.
304
305 Features : kernel debugging, serial terminal, NFS root fs, on-board
306 ether port USB, AC97, PCI, etc.
307
Ralf Baechle5e83d432005-10-29 19:32:41 +0100308config MACH_VR41XX
Yoichi Yuasa74142d62007-04-26 19:45:09 +0900309 bool "NEC VR4100 series based machines"
Ralf Baechle7cf80532005-10-20 22:33:09 +0100310 select SYS_HAS_CPU_VR41XX
Atsushi Nemoto9fd32cf2006-12-08 01:55:07 +0900311 select GENERIC_HARDIRQS_NO__DO_IRQ
Ralf Baechle5e83d432005-10-29 19:32:41 +0100312
313config PMC_YOSEMITE
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200314 bool "PMC-Sierra Yosemite eval board"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100315 select DMA_COHERENT
316 select HW_HAS_PCI
317 select IRQ_CPU
318 select IRQ_CPU_RM7K
319 select IRQ_CPU_RM9K
320 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100321 select SYS_HAS_CPU_RM9000
Ralf Baechle36a88532007-03-01 11:56:43 +0000322 select SYS_HAS_EARLY_PRINTK
Ralf Baechle5e83d432005-10-29 19:32:41 +0100323 select SYS_SUPPORTS_32BIT_KERNEL
324 select SYS_SUPPORTS_64BIT_KERNEL
325 select SYS_SUPPORTS_BIG_ENDIAN
326 select SYS_SUPPORTS_HIGHMEM
Ralf Baechlecc801072007-02-17 02:58:39 +0000327 select SYS_SUPPORTS_KGDB
Ralf Baechlee73ea272006-06-04 11:51:46 +0100328 select SYS_SUPPORTS_SMP
Ralf Baechle5e83d432005-10-29 19:32:41 +0100329 help
330 Yosemite is an evaluation board for the RM9000x2 processor
331 manufactured by PMC-Sierra.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700332
Ralf Baechle07119622005-09-03 15:56:11 -0700333config QEMU
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200334 bool "Qemu"
Ralf Baechle07119622005-09-03 15:56:11 -0700335 select DMA_COHERENT
336 select GENERIC_ISA_DMA
337 select HAVE_STD_PC_SERIAL_PORT
Michael Neulinge5c6c8e2006-03-14 00:11:50 -0500338 select I8253
Ralf Baechle07119622005-09-03 15:56:11 -0700339 select I8259
340 select ISA
341 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100342 select SYS_HAS_CPU_MIPS32_R1
Ralf Baechle07119622005-09-03 15:56:11 -0700343 select SYS_SUPPORTS_32BIT_KERNEL
344 select SYS_SUPPORTS_BIG_ENDIAN
Aurelien Jarnoc8cc9612006-09-27 23:07:25 +0200345 select SYS_SUPPORTS_LITTLE_ENDIAN
Atsushi Nemotob1c6cd42006-07-03 00:09:47 +0900346 select ARCH_SPARSEMEM_ENABLE
Atsushi Nemoto9fd32cf2006-12-08 01:55:07 +0900347 select GENERIC_HARDIRQS_NO__DO_IRQ
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +0900348 select NR_CPUS_DEFAULT_1
349 select SYS_SUPPORTS_SMP
Ralf Baechle07119622005-09-03 15:56:11 -0700350 help
Ralf Baechle5e83d432005-10-29 19:32:41 +0100351 Qemu is a software emulator which among other architectures also
352 can simulate a MIPS32 4Kc system. This patch adds support for the
353 system architecture that currently is being simulated by Qemu. It
354 will eventually be removed again when Qemu has the capability to
355 simulate actual MIPS hardware platforms. More information on Qemu
356 can be found at http://www.linux-mips.org/wiki/Qemu.
Ralf Baechle07119622005-09-03 15:56:11 -0700357
dmitry pervushin355c4712006-05-21 14:53:06 +0400358config MARKEINS
Yoichi Yuasae460b732007-05-28 22:54:28 +0900359 bool "NEC EMMA2RH Mark-eins"
dmitry pervushin355c4712006-05-21 14:53:06 +0400360 select DMA_NONCOHERENT
361 select HW_HAS_PCI
362 select IRQ_CPU
363 select SWAP_IO_SPACE
364 select SYS_SUPPORTS_32BIT_KERNEL
365 select SYS_SUPPORTS_BIG_ENDIAN
366 select SYS_SUPPORTS_LITTLE_ENDIAN
367 select SYS_HAS_CPU_R5000
368 help
369 This enables support for the R5432-based NEC Mark-eins
370 boards with R5500 CPU.
371
Linus Torvalds1da177e2005-04-16 15:20:36 -0700372config SGI_IP22
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200373 bool "SGI IP22 (Indy/Indigo2)"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700374 select ARC
375 select ARC32
376 select BOOT_ELF32
377 select DMA_NONCOHERENT
Ralf Baechle5e83d432005-10-29 19:32:41 +0100378 select HW_HAS_EISA
Linus Torvalds1da177e2005-04-16 15:20:36 -0700379 select IP22_CPU_SCACHE
380 select IRQ_CPU
Ralf Baechleaa414df2006-11-30 01:14:51 +0000381 select GENERIC_ISA_DMA_SUPPORT_BROKEN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700382 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100383 select SYS_HAS_CPU_R4X00
384 select SYS_HAS_CPU_R5000
Ralf Baechle36a88532007-03-01 11:56:43 +0000385 select SYS_HAS_EARLY_PRINTK
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700386 select SYS_SUPPORTS_32BIT_KERNEL
387 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100388 select SYS_SUPPORTS_BIG_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700389 help
390 This are the SGI Indy, Challenge S and Indigo2, as well as certain
391 OEM variants like the Tandem CMN B006S. To compile a Linux kernel
392 that runs on these, say Y here.
393
394config SGI_IP27
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200395 bool "SGI IP27 (Origin200/2000)"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700396 select ARC
397 select ARC64
Ralf Baechle5e83d432005-10-29 19:32:41 +0100398 select BOOT_ELF64
Linus Torvalds1da177e2005-04-16 15:20:36 -0700399 select DMA_IP27
Ralf Baechle36a88532007-03-01 11:56:43 +0000400 select SYS_HAS_EARLY_PRINTK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700401 select HW_HAS_PCI
Ralf Baechle130e2fb2007-02-06 16:53:15 +0000402 select NR_CPUS_DEFAULT_64
Linus Torvalds1da177e2005-04-16 15:20:36 -0700403 select PCI_DOMAINS
Ralf Baechle7cf80532005-10-20 22:33:09 +0100404 select SYS_HAS_CPU_R10000
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700405 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100406 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechlecc801072007-02-17 02:58:39 +0000407 select SYS_SUPPORTS_KGDB
Ralf Baechled8cb4e12006-06-11 23:03:08 +0100408 select SYS_SUPPORTS_NUMA
Ralf Baechle1a5c5de2006-11-02 17:23:33 +0000409 select SYS_SUPPORTS_SMP
Franck Bui-Huue77c2322006-12-01 18:22:27 +0100410 select GENERIC_HARDIRQS_NO__DO_IRQ
Linus Torvalds1da177e2005-04-16 15:20:36 -0700411 help
412 This are the SGI Origin 200, Origin 2000 and Onyx 2 Graphics
413 workstations. To compile a Linux kernel that runs on these, say Y
414 here.
415
Linus Torvalds1da177e2005-04-16 15:20:36 -0700416config SGI_IP32
Ralf Baechlecfd2afc2007-07-10 17:33:00 +0100417 bool "SGI IP32 (O2)"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700418 select ARC
419 select ARC32
420 select BOOT_ELF32
Linus Torvalds1da177e2005-04-16 15:20:36 -0700421 select DMA_NONCOHERENT
422 select HW_HAS_PCI
423 select R5000_CPU_SCACHE
424 select RM7000_CPU_SCACHE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100425 select SYS_HAS_CPU_R5000
426 select SYS_HAS_CPU_R10000 if BROKEN
427 select SYS_HAS_CPU_RM7000
Ralf Baechledd2f18f2006-01-19 14:55:42 +0000428 select SYS_HAS_CPU_NEVADA
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700429 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100430 select SYS_SUPPORTS_BIG_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700431 help
432 If you want this kernel to run on SGI O2 workstation, say Y here.
433
Andrew Isaacson9a6dcea2005-10-19 23:57:11 -0700434config SIBYTE_BIGSUR
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200435 bool "Sibyte BCM91480B-BigSur"
Andrew Isaacson9a6dcea2005-10-19 23:57:11 -0700436 select BOOT_ELF32
437 select DMA_COHERENT
Ralf Baechle130e2fb2007-02-06 16:53:15 +0000438 select NR_CPUS_DEFAULT_4
Ralf Baechle7cf80532005-10-20 22:33:09 +0100439 select PCI_DOMAINS
Andrew Isaacson9a6dcea2005-10-19 23:57:11 -0700440 select SIBYTE_BCM1x80
441 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100442 select SYS_HAS_CPU_SB1
Andrew Isaacson9a6dcea2005-10-19 23:57:11 -0700443 select SYS_SUPPORTS_BIG_ENDIAN
444 select SYS_SUPPORTS_LITTLE_ENDIAN
445
Ralf Baechle5e83d432005-10-29 19:32:41 +0100446config SIBYTE_SWARM
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200447 bool "Sibyte BCM91250A-SWARM"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100448 select BOOT_ELF32
449 select DMA_COHERENT
Ralf Baechle130e2fb2007-02-06 16:53:15 +0000450 select NR_CPUS_DEFAULT_2
Ralf Baechle5e83d432005-10-29 19:32:41 +0100451 select SIBYTE_SB1250
452 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100453 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100454 select SYS_SUPPORTS_BIG_ENDIAN
455 select SYS_SUPPORTS_HIGHMEM
Ralf Baechlecc801072007-02-17 02:58:39 +0000456 select SYS_SUPPORTS_KGDB
Ralf Baechle5e83d432005-10-29 19:32:41 +0100457 select SYS_SUPPORTS_LITTLE_ENDIAN
Pete Popove3ad1c22005-03-01 06:33:16 +0000458
Ralf Baechle5e83d432005-10-29 19:32:41 +0100459config SIBYTE_SENTOSA
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200460 bool "Sibyte BCM91250E-Sentosa"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100461 depends on EXPERIMENTAL
462 select BOOT_ELF32
463 select DMA_COHERENT
Ralf Baechle130e2fb2007-02-06 16:53:15 +0000464 select NR_CPUS_DEFAULT_2
Ralf Baechle5e83d432005-10-29 19:32:41 +0100465 select SIBYTE_SB1250
466 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100467 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100468 select SYS_SUPPORTS_BIG_ENDIAN
469 select SYS_SUPPORTS_LITTLE_ENDIAN
470
471config SIBYTE_RHONE
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200472 bool "Sibyte BCM91125E-Rhone"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100473 depends on EXPERIMENTAL
474 select BOOT_ELF32
475 select DMA_COHERENT
476 select SIBYTE_BCM1125H
477 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100478 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100479 select SYS_SUPPORTS_BIG_ENDIAN
480 select SYS_SUPPORTS_LITTLE_ENDIAN
481
482config SIBYTE_CARMEL
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200483 bool "Sibyte BCM91120x-Carmel"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100484 depends on EXPERIMENTAL
485 select BOOT_ELF32
486 select DMA_COHERENT
487 select SIBYTE_BCM1120
488 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100489 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100490 select SYS_SUPPORTS_BIG_ENDIAN
491 select SYS_SUPPORTS_LITTLE_ENDIAN
492
493config SIBYTE_PTSWARM
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200494 bool "Sibyte BCM91250PT-PTSWARM"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100495 depends on EXPERIMENTAL
496 select BOOT_ELF32
497 select DMA_COHERENT
Ralf Baechle130e2fb2007-02-06 16:53:15 +0000498 select NR_CPUS_DEFAULT_2
Ralf Baechle5e83d432005-10-29 19:32:41 +0100499 select SIBYTE_SB1250
500 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100501 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100502 select SYS_SUPPORTS_BIG_ENDIAN
503 select SYS_SUPPORTS_HIGHMEM
504 select SYS_SUPPORTS_LITTLE_ENDIAN
505
506config SIBYTE_LITTLESUR
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200507 bool "Sibyte BCM91250C2-LittleSur"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100508 depends on EXPERIMENTAL
509 select BOOT_ELF32
510 select DMA_COHERENT
Ralf Baechle130e2fb2007-02-06 16:53:15 +0000511 select NR_CPUS_DEFAULT_2
Ralf Baechle5e83d432005-10-29 19:32:41 +0100512 select SIBYTE_SB1250
513 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100514 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100515 select SYS_SUPPORTS_BIG_ENDIAN
516 select SYS_SUPPORTS_HIGHMEM
517 select SYS_SUPPORTS_LITTLE_ENDIAN
518
519config SIBYTE_CRHINE
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200520 bool "Sibyte BCM91120C-CRhine"
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_CRHONE
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200531 bool "Sibyte BCM91125C-CRhone"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100532 depends on EXPERIMENTAL
533 select BOOT_ELF32
534 select DMA_COHERENT
535 select SIBYTE_BCM1125
536 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100537 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100538 select SYS_SUPPORTS_BIG_ENDIAN
539 select SYS_SUPPORTS_HIGHMEM
540 select SYS_SUPPORTS_LITTLE_ENDIAN
541
Thomas Bogendoerfer14b36af2006-12-05 17:05:44 +0100542config SNI_RM
543 bool "SNI RM200/300/400"
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200544 select ARC if CPU_LITTLE_ENDIAN
545 select ARC32 if CPU_LITTLE_ENDIAN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100546 select ARCH_MAY_HAVE_PC_FDC
547 select BOOT_ELF32
548 select DMA_NONCOHERENT
549 select GENERIC_ISA_DMA
Ralf Baechle5e83d432005-10-29 19:32:41 +0100550 select HW_HAS_EISA
551 select HW_HAS_PCI
Thomas Bogendoerferc066a322006-12-28 18:22:32 +0100552 select IRQ_CPU
Michael Neulinge5c6c8e2006-03-14 00:11:50 -0500553 select I8253
Ralf Baechle5e83d432005-10-29 19:32:41 +0100554 select I8259
555 select ISA
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200556 select SWAP_IO_SPACE if CPU_BIG_ENDIAN
Ralf Baechle7cf80532005-10-20 22:33:09 +0100557 select SYS_HAS_CPU_R4X00
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200558 select SYS_HAS_CPU_R5000
Thomas Bogendoerferc066a322006-12-28 18:22:32 +0100559 select SYS_HAS_CPU_R10000
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200560 select R5000_CPU_SCACHE
Ralf Baechle36a88532007-03-01 11:56:43 +0000561 select SYS_HAS_EARLY_PRINTK
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700562 select SYS_SUPPORTS_32BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100563 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200564 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100565 select SYS_SUPPORTS_HIGHMEM
566 select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700567 help
Thomas Bogendoerfer14b36af2006-12-05 17:05:44 +0100568 The SNI RM200/300/400 are MIPS-based machines manufactured by
569 Siemens Nixdorf Informationssysteme (SNI), parent company of Pyramid
Ralf Baechle5e83d432005-10-29 19:32:41 +0100570 Technology and now in turn merged with Fujitsu. Say Y here to
571 support this machine type.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700572
Ralf Baechle5e83d432005-10-29 19:32:41 +0100573config TOSHIBA_JMR3927
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200574 bool "Toshiba JMR-TX3927 board"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100575 select DMA_NONCOHERENT
576 select HW_HAS_PCI
577 select MIPS_TX3927
578 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100579 select SYS_HAS_CPU_TX39XX
Ralf Baechle5e83d432005-10-29 19:32:41 +0100580 select SYS_SUPPORTS_32BIT_KERNEL
Sergei Shtylyov6a2603a2007-02-07 20:39:05 +0300581 select SYS_SUPPORTS_LITTLE_ENDIAN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100582 select SYS_SUPPORTS_BIG_ENDIAN
Atsushi Nemoto21274352007-03-15 00:58:28 +0900583 select GENERIC_HARDIRQS_NO__DO_IRQ
Ralf Baechle5e83d432005-10-29 19:32:41 +0100584
585config TOSHIBA_RBTX4927
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200586 bool "Toshiba TBTX49[23]7 board"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100587 select DMA_NONCOHERENT
588 select HAS_TXX9_SERIAL
589 select HW_HAS_PCI
590 select I8259
Ralf Baechle5e83d432005-10-29 19:32:41 +0100591 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100592 select SYS_HAS_CPU_TX49XX
Ralf Baechle5e83d432005-10-29 19:32:41 +0100593 select SYS_SUPPORTS_32BIT_KERNEL
594 select SYS_SUPPORTS_64BIT_KERNEL
Sergei Shtylyov6a2603a2007-02-07 20:39:05 +0300595 select SYS_SUPPORTS_LITTLE_ENDIAN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100596 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechlecc801072007-02-17 02:58:39 +0000597 select SYS_SUPPORTS_KGDB
Atsushi Nemoto9fd32cf2006-12-08 01:55:07 +0900598 select GENERIC_HARDIRQS_NO__DO_IRQ
Ralf Baechle5e83d432005-10-29 19:32:41 +0100599 help
600 This Toshiba board is based on the TX4927 processor. Say Y here to
601 support this machine type
Linus Torvalds1da177e2005-04-16 15:20:36 -0700602
Ralf Baechle23fbee92005-07-25 22:45:45 +0000603config TOSHIBA_RBTX4938
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200604 bool "Toshiba RBTX4938 board"
Ralf Baechle23fbee92005-07-25 22:45:45 +0000605 select HAVE_STD_PC_SERIAL_PORT
606 select DMA_NONCOHERENT
607 select GENERIC_ISA_DMA
608 select HAS_TXX9_SERIAL
609 select HW_HAS_PCI
610 select I8259
Ralf Baechle23fbee92005-07-25 22:45:45 +0000611 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100612 select SYS_HAS_CPU_TX49XX
Ralf Baechle23fbee92005-07-25 22:45:45 +0000613 select SYS_SUPPORTS_32BIT_KERNEL
614 select SYS_SUPPORTS_LITTLE_ENDIAN
615 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechlecc801072007-02-17 02:58:39 +0000616 select SYS_SUPPORTS_KGDB
Atsushi Nemoto9fd32cf2006-12-08 01:55:07 +0900617 select GENERIC_HARDIRQS_NO__DO_IRQ
Ralf Baechle23fbee92005-07-25 22:45:45 +0000618 help
619 This Toshiba board is based on the TX4938 processor. Say Y here to
620 support this machine type
621
Linus Torvalds1da177e2005-04-16 15:20:36 -0700622endchoice
623
Yoichi Yuasac3543e22007-05-11 20:44:30 +0900624source "arch/mips/au1000/Kconfig"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100625source "arch/mips/ddb5xxx/Kconfig"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100626source "arch/mips/jazz/Kconfig"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100627source "arch/mips/lasat/Kconfig"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100628source "arch/mips/pmc-sierra/Kconfig"
Ralf Baechle29c48692005-02-07 01:27:14 +0000629source "arch/mips/sgi-ip27/Kconfig"
Ralf Baechle38b18f722005-02-03 14:28:23 +0000630source "arch/mips/sibyte/Kconfig"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100631source "arch/mips/tx4927/Kconfig"
Ralf Baechle23fbee92005-07-25 22:45:45 +0000632source "arch/mips/tx4938/Kconfig"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100633source "arch/mips/vr41xx/Kconfig"
Pete Popovbdf21b12005-07-14 17:47:57 +0000634source "arch/mips/philips/pnx8550/common/Kconfig"
Ralf Baechle38b18f722005-02-03 14:28:23 +0000635
Ralf Baechle5e83d432005-10-29 19:32:41 +0100636endmenu
637
Linus Torvalds1da177e2005-04-16 15:20:36 -0700638config RWSEM_GENERIC_SPINLOCK
639 bool
640 default y
641
642config RWSEM_XCHGADD_ALGORITHM
643 bool
644
David Howellsf0d1b0b2006-12-08 02:37:49 -0800645config ARCH_HAS_ILOG2_U32
646 bool
647 default n
648
649config ARCH_HAS_ILOG2_U64
650 bool
651 default n
652
Akinobu Mita3c9ee7e2006-03-26 01:39:30 -0800653config GENERIC_FIND_NEXT_BIT
654 bool
655 default y
656
657config GENERIC_HWEIGHT
658 bool
659 default y
660
Linus Torvalds1da177e2005-04-16 15:20:36 -0700661config GENERIC_CALIBRATE_DELAY
662 bool
663 default y
664
Ralf Baechle8db02012006-10-02 16:54:48 +0100665config GENERIC_TIME
666 bool
667 default y
668
Atsushi Nemoto1cc89032006-04-04 13:11:45 +0900669config SCHED_NO_NO_OMIT_FRAME_POINTER
670 bool
671 default y
672
Franck Bui-Huue77c2322006-12-01 18:22:27 +0100673config GENERIC_HARDIRQS_NO__DO_IRQ
674 bool
675 default n
676
Linus Torvalds1da177e2005-04-16 15:20:36 -0700677#
678# Select some configuration options automatically based on user selections.
679#
680config ARC
681 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700682
Ralf Baechle61ed242d2005-09-15 08:52:34 +0000683config ARCH_MAY_HAVE_PC_FDC
684 bool
685
Ralf Baechle4ce588c2005-09-03 15:56:19 -0700686config DMA_COHERENT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700687 bool
688
Ralf Baechle4ce588c2005-09-03 15:56:19 -0700689config DMA_IP27
Linus Torvalds1da177e2005-04-16 15:20:36 -0700690 bool
691
Ralf Baechle4ce588c2005-09-03 15:56:19 -0700692config DMA_IP32
693 bool
694 select DMA_NEED_PCI_MAP_STATE
695
696config DMA_NONCOHERENT
697 bool
698 select DMA_NEED_PCI_MAP_STATE
699
700config DMA_NEED_PCI_MAP_STATE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700701 bool
702
703config EARLY_PRINTK
Ralf Baechle36a88532007-03-01 11:56:43 +0000704 bool "Early printk" if EMBEDDED && DEBUG_KERNEL
705 depends on SYS_HAS_EARLY_PRINTK
706 default y
707 help
708 This option enables special console drivers which allow the kernel
709 to print messages very early in the bootup process.
710
711 This is useful for kernel debugging when your machine crashes very
Robert P. J. Day490dcc42007-05-20 12:11:07 -0400712 early before the console code is initialized. For normal operation,
713 it is not recommended because it looks ugly on some machines and
714 doesn't cooperate with an X server. You should normally say N here,
Ralf Baechle36a88532007-03-01 11:56:43 +0000715 unless you want to debug such a crash.
716
717config SYS_HAS_EARLY_PRINTK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700718 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700719
720config GENERIC_ISA_DMA
721 bool
Atsushi Nemoto05502332007-03-21 00:36:02 +0900722 select ZONE_DMA
Linus Torvalds1da177e2005-04-16 15:20:36 -0700723
724config I8259
725 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700726
Linus Torvalds1da177e2005-04-16 15:20:36 -0700727config MIPS_BONITO64
728 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700729
730config MIPS_MSC
731 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700732
733config MIPS_NILE4
734 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700735
736config MIPS_DISABLE_OBSOLETE_IDE
737 bool
738
Maciej W. Rozyckid388d682007-05-29 15:08:07 +0100739config NO_IOPORT
740 def_bool n
741
Ralf Baechleaa414df2006-11-30 01:14:51 +0000742config GENERIC_ISA_DMA_SUPPORT_BROKEN
743 bool
Atsushi Nemoto05502332007-03-21 00:36:02 +0900744 select ZONE_DMA
Ralf Baechleaa414df2006-11-30 01:14:51 +0000745
Yoichi Yuasa09663332007-05-22 00:05:58 +0900746config GENERIC_GPIO
747 bool
748
Ralf Baechle5e83d432005-10-29 19:32:41 +0100749#
Matt LaPlante3cb2fcc2006-11-30 05:22:59 +0100750# Endianess selection. Sufficiently obscure so many users don't know what to
Ralf Baechle5e83d432005-10-29 19:32:41 +0100751# answer,so we try hard to limit the available choices. Also the use of a
752# choice statement should be more obvious to the user.
753#
754choice
755 prompt "Endianess selection"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700756 help
757 Some MIPS machines can be configured for either little or big endian
Ralf Baechle5e83d432005-10-29 19:32:41 +0100758 byte order. These modes require different kernels and a different
Matt LaPlante3cb2fcc2006-11-30 05:22:59 +0100759 Linux distribution. In general there is one preferred byteorder for a
Ralf Baechle5e83d432005-10-29 19:32:41 +0100760 particular system but some systems are just as commonly used in the
David Sterba3dde6ad2007-05-09 07:12:20 +0200761 one or the other endianness.
Ralf Baechle5e83d432005-10-29 19:32:41 +0100762
763config CPU_BIG_ENDIAN
764 bool "Big endian"
765 depends on SYS_SUPPORTS_BIG_ENDIAN
766
767config CPU_LITTLE_ENDIAN
768 bool "Little endian"
769 depends on SYS_SUPPORTS_LITTLE_ENDIAN
770 help
771
772endchoice
773
Ralf Baechle21162452007-02-09 17:08:58 +0000774config SYS_SUPPORTS_APM_EMULATION
775 bool
776
Ralf Baechle5e83d432005-10-29 19:32:41 +0100777config SYS_SUPPORTS_BIG_ENDIAN
778 bool
779
780config SYS_SUPPORTS_LITTLE_ENDIAN
781 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700782
783config IRQ_CPU
784 bool
785
786config IRQ_CPU_RM7K
787 bool
788
Ralf Baechle5e83d432005-10-29 19:32:41 +0100789config IRQ_CPU_RM9K
790 bool
791
Linus Torvalds1da177e2005-04-16 15:20:36 -0700792config IRQ_MV64340
793 bool
794
795config DDB5XXX_COMMON
796 bool
Ralf Baechlecc801072007-02-17 02:58:39 +0000797 select SYS_SUPPORTS_KGDB
Linus Torvalds1da177e2005-04-16 15:20:36 -0700798
799config MIPS_BOARDS_GEN
800 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700801
Yoichi Yuasa252161e2007-03-14 21:51:26 +0900802config PCI_GT64XXX_PCI0
Linus Torvalds1da177e2005-04-16 15:20:36 -0700803 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700804
805config MIPS_TX3927
806 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700807 select HAS_TXX9_SERIAL
Linus Torvalds1da177e2005-04-16 15:20:36 -0700808
thomas@koeller.dyndns.org663c3d92006-08-27 13:51:48 +0200809config MIPS_RM9122
810 bool
811 select SERIAL_RM9000
thomas@koeller.dyndns.org663c3d92006-08-27 13:51:48 +0200812
Linus Torvalds1da177e2005-04-16 15:20:36 -0700813config PCI_MARVELL
814 bool
815
Pete Popovbdf21b12005-07-14 17:47:57 +0000816config PNX8550
817 bool
818 select SOC_PNX8550
819
820config SOC_PNX8550
821 bool
Pete Popovbdf21b12005-07-14 17:47:57 +0000822 select DMA_NONCOHERENT
823 select HW_HAS_PCI
Ralf Baechleb8c2a772005-10-31 13:08:37 +0000824 select SYS_HAS_CPU_MIPS32_R1
Ralf Baechle36a88532007-03-01 11:56:43 +0000825 select SYS_HAS_EARLY_PRINTK
Ralf Baechle7cf80532005-10-20 22:33:09 +0100826 select SYS_SUPPORTS_32BIT_KERNEL
Franck Bui-Huue77c2322006-12-01 18:22:27 +0100827 select GENERIC_HARDIRQS_NO__DO_IRQ
Ralf Baechlecc801072007-02-17 02:58:39 +0000828 select SYS_SUPPORTS_KGDB
Florian Fainelli4ead1682007-05-22 21:44:42 +0200829 select GENERIC_GPIO
Pete Popovbdf21b12005-07-14 17:47:57 +0000830
Linus Torvalds1da177e2005-04-16 15:20:36 -0700831config SWAP_IO_SPACE
832 bool
833
dmitry pervushin355c4712006-05-21 14:53:06 +0400834config EMMA2RH
835 bool
836 depends on MARKEINS
837 default y
838
thomas@koeller.dyndns.org663c3d92006-08-27 13:51:48 +0200839config SERIAL_RM9000
840 bool
841
Linus Torvalds1da177e2005-04-16 15:20:36 -0700842#
843# Unfortunately not all GT64120 systems run the chip at the same clock.
844# As the user for the clock rate and try to minimize the available options.
845#
846choice
847 prompt "Galileo Chip Clock"
Yoichi Yuasa6b5bf502007-06-21 15:06:21 +0900848 depends on MOMENCO_OCELOT
Franck Bui-Huu1e54f772007-05-07 18:01:51 +0200849 default SYSCLK_100 if MOMENCO_OCELOT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700850
Linus Torvalds1da177e2005-04-16 15:20:36 -0700851config SYSCLK_100
Yoichi Yuasa6b5bf502007-06-21 15:06:21 +0900852 bool "100" if MOMENCO_OCELOT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700853
854endchoice
855
Ralf Baechle5e83d432005-10-29 19:32:41 +0100856config ARC32
857 bool
858
Linus Torvalds1da177e2005-04-16 15:20:36 -0700859config BOOT_ELF32
860 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700861
862config MIPS_L1_CACHE_SHIFT
863 int
Thomas Bogendoerferc066a322006-12-28 18:22:32 +0100864 default "4" if MACH_DECSTATION || SNI_RM
Linus Torvalds1da177e2005-04-16 15:20:36 -0700865 default "7" if SGI_IP27
866 default "5"
867
Linus Torvalds1da177e2005-04-16 15:20:36 -0700868config HAVE_STD_PC_SERIAL_PORT
869 bool
870
Linus Torvalds1da177e2005-04-16 15:20:36 -0700871config ARC_CONSOLE
872 bool "ARC console support"
Ralf Baechle36a88532007-03-01 11:56:43 +0000873 depends on SGI_IP22 || (SNI_RM && CPU_LITTLE_ENDIAN)
Linus Torvalds1da177e2005-04-16 15:20:36 -0700874
875config ARC_MEMORY
876 bool
Thomas Bogendoerfer14b36af2006-12-05 17:05:44 +0100877 depends on MACH_JAZZ || SNI_RM || SGI_IP32
Linus Torvalds1da177e2005-04-16 15:20:36 -0700878 default y
879
880config ARC_PROMLIB
881 bool
Thomas Bogendoerfer14b36af2006-12-05 17:05:44 +0100882 depends on MACH_JAZZ || SNI_RM || SGI_IP22 || SGI_IP32
Linus Torvalds1da177e2005-04-16 15:20:36 -0700883 default y
884
885config ARC64
886 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700887
888config BOOT_ELF64
889 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700890
Linus Torvalds1da177e2005-04-16 15:20:36 -0700891menu "CPU selection"
892
893choice
894 prompt "CPU type"
895 default CPU_R4X00
896
Fuxin Zhang2a21c732007-06-06 14:52:43 +0800897config CPU_LOONGSON2
898 bool "Loongson 2"
899 depends on SYS_HAS_CPU_LOONGSON2
900 select CPU_SUPPORTS_32BIT_KERNEL
901 select CPU_SUPPORTS_64BIT_KERNEL
902 select CPU_SUPPORTS_HIGHMEM
903 help
904 The Loongson 2E processor implements the MIPS III instruction set
905 with many extensions.
906
Ralf Baechle6e760c82005-07-06 12:08:11 +0000907config CPU_MIPS32_R1
908 bool "MIPS32 Release 1"
Ralf Baechle7cf80532005-10-20 22:33:09 +0100909 depends on SYS_HAS_CPU_MIPS32_R1
Ralf Baechlef7062dd2006-04-24 14:58:53 +0100910 select CPU_HAS_LLSC
Ralf Baechle6e760c82005-07-06 12:08:11 +0000911 select CPU_HAS_PREFETCH
Ralf Baechle797798c2005-08-10 15:17:11 +0000912 select CPU_SUPPORTS_32BIT_KERNEL
Ralf Baechleec28f302006-03-05 00:45:33 +0000913 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle6e760c82005-07-06 12:08:11 +0000914 help
Ralf Baechle5e83d432005-10-29 19:32:41 +0100915 Choose this option to build a kernel for release 1 or later of the
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +0000916 MIPS32 architecture. Most modern embedded systems with a 32-bit
917 MIPS processor are based on a MIPS32 processor. If you know the
918 specific type of processor in your system, choose those that one
919 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
920 Release 2 of the MIPS32 architecture is available since several
921 years so chances are you even have a MIPS32 Release 2 processor
922 in which case you should choose CPU_MIPS32_R2 instead for better
923 performance.
924
925config CPU_MIPS32_R2
926 bool "MIPS32 Release 2"
Ralf Baechle7cf80532005-10-20 22:33:09 +0100927 depends on SYS_HAS_CPU_MIPS32_R2
Ralf Baechlef7062dd2006-04-24 14:58:53 +0100928 select CPU_HAS_LLSC
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +0000929 select CPU_HAS_PREFETCH
Ralf Baechle797798c2005-08-10 15:17:11 +0000930 select CPU_SUPPORTS_32BIT_KERNEL
Ralf Baechleec28f302006-03-05 00:45:33 +0000931 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +0000932 help
Ralf Baechle5e83d432005-10-29 19:32:41 +0100933 Choose this option to build a kernel for release 2 or later of the
Ralf Baechle6e760c82005-07-06 12:08:11 +0000934 MIPS32 architecture. Most modern embedded systems with a 32-bit
935 MIPS processor are based on a MIPS32 processor. If you know the
936 specific type of processor in your system, choose those that one
937 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700938
Ralf Baechle6e760c82005-07-06 12:08:11 +0000939config CPU_MIPS64_R1
940 bool "MIPS64 Release 1"
Ralf Baechle7cf80532005-10-20 22:33:09 +0100941 depends on SYS_HAS_CPU_MIPS64_R1
Ralf Baechlef7062dd2006-04-24 14:58:53 +0100942 select CPU_HAS_LLSC
Ralf Baechle797798c2005-08-10 15:17:11 +0000943 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700944 select CPU_SUPPORTS_32BIT_KERNEL
945 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechleec28f302006-03-05 00:45:33 +0000946 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle6e760c82005-07-06 12:08:11 +0000947 help
948 Choose this option to build a kernel for release 1 or later of the
949 MIPS64 architecture. Many modern embedded systems with a 64-bit
950 MIPS processor are based on a MIPS64 processor. If you know the
951 specific type of processor in your system, choose those that one
952 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +0000953 Release 2 of the MIPS64 architecture is available since several
954 years so chances are you even have a MIPS64 Release 2 processor
955 in which case you should choose CPU_MIPS64_R2 instead for better
956 performance.
957
958config CPU_MIPS64_R2
959 bool "MIPS64 Release 2"
Ralf Baechle7cf80532005-10-20 22:33:09 +0100960 depends on SYS_HAS_CPU_MIPS64_R2
Ralf Baechlef7062dd2006-04-24 14:58:53 +0100961 select CPU_HAS_LLSC
Ralf Baechle797798c2005-08-10 15:17:11 +0000962 select CPU_HAS_PREFETCH
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +0000963 select CPU_SUPPORTS_32BIT_KERNEL
964 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechleec28f302006-03-05 00:45:33 +0000965 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +0000966 help
967 Choose this option to build a kernel for release 2 or later of the
968 MIPS64 architecture. Many modern embedded systems with a 64-bit
969 MIPS processor are based on a MIPS64 processor. If you know the
970 specific type of processor in your system, choose those that one
971 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700972
973config CPU_R3000
974 bool "R3000"
Ralf Baechle7cf80532005-10-20 22:33:09 +0100975 depends on SYS_HAS_CPU_R3000
Ralf Baechlef7062dd2006-04-24 14:58:53 +0100976 select CPU_HAS_WB
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700977 select CPU_SUPPORTS_32BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +0000978 select CPU_SUPPORTS_HIGHMEM
Linus Torvalds1da177e2005-04-16 15:20:36 -0700979 help
980 Please make sure to pick the right CPU type. Linux/MIPS is not
981 designed to be generic, i.e. Kernels compiled for R3000 CPUs will
982 *not* work on R4000 machines and vice versa. However, since most
983 of the supported machines have an R4000 (or similar) CPU, R4x00
984 might be a safe bet. If the resulting kernel does not work,
985 try to recompile with R3000.
986
987config CPU_TX39XX
988 bool "R39XX"
Ralf Baechle7cf80532005-10-20 22:33:09 +0100989 depends on SYS_HAS_CPU_TX39XX
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700990 select CPU_SUPPORTS_32BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -0700991
992config CPU_VR41XX
993 bool "R41xx"
Ralf Baechle7cf80532005-10-20 22:33:09 +0100994 depends on SYS_HAS_CPU_VR41XX
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700995 select CPU_SUPPORTS_32BIT_KERNEL
996 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -0700997 help
Ralf Baechle5e83d432005-10-29 19:32:41 +0100998 The options selects support for the NEC VR4100 series of processors.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700999 Only choose this option if you have one of these processors as a
1000 kernel built with this option will not run on any other type of
1001 processor or vice versa.
1002
1003config CPU_R4300
1004 bool "R4300"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001005 depends on SYS_HAS_CPU_R4300
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001006 select CPU_HAS_LLSC
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001007 select CPU_SUPPORTS_32BIT_KERNEL
1008 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001009 help
1010 MIPS Technologies R4300-series processors.
1011
1012config CPU_R4X00
1013 bool "R4x00"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001014 depends on SYS_HAS_CPU_R4X00
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001015 select CPU_HAS_LLSC
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001016 select CPU_SUPPORTS_32BIT_KERNEL
1017 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001018 help
1019 MIPS Technologies R4000-series processors other than 4300, including
1020 the R4000, R4400, R4600, and 4700.
1021
1022config CPU_TX49XX
1023 bool "R49XX"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001024 depends on SYS_HAS_CPU_TX49XX
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001025 select CPU_HAS_LLSC
Atsushi Nemotode862b42006-03-17 12:59:22 +09001026 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001027 select CPU_SUPPORTS_32BIT_KERNEL
1028 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001029
1030config CPU_R5000
1031 bool "R5000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001032 depends on SYS_HAS_CPU_R5000
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001033 select CPU_HAS_LLSC
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001034 select CPU_SUPPORTS_32BIT_KERNEL
1035 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001036 help
1037 MIPS Technologies R5000-series processors other than the Nevada.
1038
1039config CPU_R5432
1040 bool "R5432"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001041 depends on SYS_HAS_CPU_R5432
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001042 select CPU_HAS_LLSC
Ralf Baechle5e83d432005-10-29 19:32:41 +01001043 select CPU_SUPPORTS_32BIT_KERNEL
1044 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001045
1046config CPU_R6000
1047 bool "R6000"
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001048 depends on EXPERIMENTAL
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001049 select CPU_HAS_LLSC
Ralf Baechle7cf80532005-10-20 22:33:09 +01001050 depends on SYS_HAS_CPU_R6000
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001051 select CPU_SUPPORTS_32BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001052 help
1053 MIPS Technologies R6000 and R6000A series processors. Note these
Chris Dearmanc09b47d2006-06-20 17:15:20 +01001054 processors are extremely rare and the support for them is incomplete.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001055
1056config CPU_NEVADA
1057 bool "RM52xx"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001058 depends on SYS_HAS_CPU_NEVADA
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001059 select CPU_HAS_LLSC
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001060 select CPU_SUPPORTS_32BIT_KERNEL
1061 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001062 help
1063 QED / PMC-Sierra RM52xx-series ("Nevada") processors.
1064
1065config CPU_R8000
1066 bool "R8000"
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001067 depends on EXPERIMENTAL
Ralf Baechle7cf80532005-10-20 22:33:09 +01001068 depends on SYS_HAS_CPU_R8000
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001069 select CPU_HAS_LLSC
Ralf Baechle5e83d432005-10-29 19:32:41 +01001070 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001071 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001072 help
1073 MIPS Technologies R8000 processors. Note these processors are
1074 uncommon and the support for them is incomplete.
1075
1076config CPU_R10000
1077 bool "R10000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001078 depends on SYS_HAS_CPU_R10000
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001079 select CPU_HAS_LLSC
Ralf Baechle5e83d432005-10-29 19:32:41 +01001080 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001081 select CPU_SUPPORTS_32BIT_KERNEL
1082 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +00001083 select CPU_SUPPORTS_HIGHMEM
Linus Torvalds1da177e2005-04-16 15:20:36 -07001084 help
1085 MIPS Technologies R10000-series processors.
1086
1087config CPU_RM7000
1088 bool "RM7000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001089 depends on SYS_HAS_CPU_RM7000
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001090 select CPU_HAS_LLSC
Ralf Baechle5e83d432005-10-29 19:32:41 +01001091 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001092 select CPU_SUPPORTS_32BIT_KERNEL
1093 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +00001094 select CPU_SUPPORTS_HIGHMEM
Linus Torvalds1da177e2005-04-16 15:20:36 -07001095
1096config CPU_RM9000
1097 bool "RM9000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001098 depends on SYS_HAS_CPU_RM9000
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001099 select CPU_HAS_LLSC
Ralf Baechle5e83d432005-10-29 19:32:41 +01001100 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001101 select CPU_SUPPORTS_32BIT_KERNEL
1102 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +00001103 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle0004a9d2006-10-31 03:45:07 +00001104 select WEAK_ORDERING
Linus Torvalds1da177e2005-04-16 15:20:36 -07001105
1106config CPU_SB1
1107 bool "SB1"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001108 depends on SYS_HAS_CPU_SB1
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001109 select CPU_HAS_LLSC
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
Ralf Baechle0004a9d2006-10-31 03:45:07 +00001113 select WEAK_ORDERING
Linus Torvalds1da177e2005-04-16 15:20:36 -07001114
1115endchoice
1116
Fuxin Zhang2a21c732007-06-06 14:52:43 +08001117config SYS_HAS_CPU_LOONGSON2
1118 bool
1119
Ralf Baechle7cf80532005-10-20 22:33:09 +01001120config SYS_HAS_CPU_MIPS32_R1
1121 bool
1122
1123config SYS_HAS_CPU_MIPS32_R2
1124 bool
1125
1126config SYS_HAS_CPU_MIPS64_R1
1127 bool
1128
1129config SYS_HAS_CPU_MIPS64_R2
1130 bool
1131
1132config SYS_HAS_CPU_R3000
1133 bool
1134
1135config SYS_HAS_CPU_TX39XX
1136 bool
1137
1138config SYS_HAS_CPU_VR41XX
1139 bool
1140
1141config SYS_HAS_CPU_R4300
1142 bool
1143
1144config SYS_HAS_CPU_R4X00
1145 bool
1146
1147config SYS_HAS_CPU_TX49XX
1148 bool
1149
1150config SYS_HAS_CPU_R5000
1151 bool
1152
1153config SYS_HAS_CPU_R5432
1154 bool
1155
1156config SYS_HAS_CPU_R6000
1157 bool
1158
1159config SYS_HAS_CPU_NEVADA
1160 bool
1161
1162config SYS_HAS_CPU_R8000
1163 bool
1164
1165config SYS_HAS_CPU_R10000
1166 bool
1167
1168config SYS_HAS_CPU_RM7000
1169 bool
1170
1171config SYS_HAS_CPU_RM9000
1172 bool
1173
1174config SYS_HAS_CPU_SB1
1175 bool
1176
Ralf Baechle0004a9d2006-10-31 03:45:07 +00001177config WEAK_ORDERING
1178 bool
Ralf Baechle5e83d432005-10-29 19:32:41 +01001179endmenu
1180
1181#
Chris Dearmanc09b47d2006-06-20 17:15:20 +01001182# These two indicate any level of the MIPS32 and MIPS64 architecture
Ralf Baechle5e83d432005-10-29 19:32:41 +01001183#
1184config CPU_MIPS32
1185 bool
1186 default y if CPU_MIPS32_R1 || CPU_MIPS32_R2
1187
1188config CPU_MIPS64
1189 bool
1190 default y if CPU_MIPS64_R1 || CPU_MIPS64_R2
1191
1192#
Chris Dearmanc09b47d2006-06-20 17:15:20 +01001193# These two indicate the revision of the architecture, either Release 1 or Release 2
Ralf Baechle5e83d432005-10-29 19:32:41 +01001194#
1195config CPU_MIPSR1
1196 bool
1197 default y if CPU_MIPS32_R1 || CPU_MIPS64_R1
1198
1199config CPU_MIPSR2
1200 bool
1201 default y if CPU_MIPS32_R2 || CPU_MIPS64_R2
1202
1203config SYS_SUPPORTS_32BIT_KERNEL
1204 bool
1205config SYS_SUPPORTS_64BIT_KERNEL
1206 bool
1207config CPU_SUPPORTS_32BIT_KERNEL
1208 bool
1209config CPU_SUPPORTS_64BIT_KERNEL
1210 bool
1211
1212menu "Kernel type"
1213
1214choice
1215
1216 prompt "Kernel code model"
1217 help
1218 You should only select this option if you have a workload that
1219 actually benefits from 64-bit processing or if your machine has
1220 large memory. You will only be presented a single option in this
1221 menu if your system does not support both 32-bit and 64-bit kernels.
1222
1223config 32BIT
1224 bool "32-bit kernel"
1225 depends on CPU_SUPPORTS_32BIT_KERNEL && SYS_SUPPORTS_32BIT_KERNEL
1226 select TRAD_SIGNALS
1227 help
1228 Select this option if you want to build a 32-bit kernel.
1229config 64BIT
1230 bool "64-bit kernel"
1231 depends on CPU_SUPPORTS_64BIT_KERNEL && SYS_SUPPORTS_64BIT_KERNEL
1232 help
1233 Select this option if you want to build a 64-bit kernel.
1234
1235endchoice
1236
Linus Torvalds1da177e2005-04-16 15:20:36 -07001237choice
1238 prompt "Kernel page size"
1239 default PAGE_SIZE_4KB
1240
1241config PAGE_SIZE_4KB
1242 bool "4kB"
1243 help
1244 This option select the standard 4kB Linux page size. On some
1245 R3000-family processors this is the only available page size. Using
1246 4kB page size will minimize memory consumption and is therefore
1247 recommended for low memory systems.
1248
1249config PAGE_SIZE_8KB
1250 bool "8kB"
1251 depends on EXPERIMENTAL && CPU_R8000
1252 help
1253 Using 8kB page size will result in higher performance kernel at
1254 the price of higher memory consumption. This option is available
1255 only on the R8000 processor. Not that at the time of this writing
1256 this option is still high experimental; there are also issues with
1257 compatibility of user applications.
1258
1259config PAGE_SIZE_16KB
1260 bool "16kB"
Ralf Baechle714bfad2006-05-17 14:04:30 +01001261 depends on !CPU_R3000 && !CPU_TX39XX
Linus Torvalds1da177e2005-04-16 15:20:36 -07001262 help
1263 Using 16kB page size will result in higher performance kernel at
1264 the price of higher memory consumption. This option is available on
Ralf Baechle714bfad2006-05-17 14:04:30 +01001265 all non-R3000 family processors. Note that you will need a suitable
1266 Linux distribution to support this.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001267
1268config PAGE_SIZE_64KB
1269 bool "64kB"
1270 depends on EXPERIMENTAL && !CPU_R3000 && !CPU_TX39XX
1271 help
1272 Using 64kB page size will result in higher performance kernel at
1273 the price of higher memory consumption. This option is available on
1274 all non-R3000 family processor. Not that at the time of this
Ralf Baechle714bfad2006-05-17 14:04:30 +01001275 writing this option is still high experimental.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001276
1277endchoice
1278
1279config BOARD_SCACHE
1280 bool
1281
1282config IP22_CPU_SCACHE
1283 bool
1284 select BOARD_SCACHE
1285
Chris Dearman9318c512006-06-20 17:15:20 +01001286#
1287# Support for a MIPS32 / MIPS64 style S-caches
1288#
1289config MIPS_CPU_SCACHE
1290 bool
1291 select BOARD_SCACHE
1292
Linus Torvalds1da177e2005-04-16 15:20:36 -07001293config R5000_CPU_SCACHE
1294 bool
1295 select BOARD_SCACHE
1296
1297config RM7000_CPU_SCACHE
1298 bool
1299 select BOARD_SCACHE
1300
1301config SIBYTE_DMA_PAGEOPS
1302 bool "Use DMA to clear/copy pages"
1303 depends on CPU_SB1
1304 help
1305 Instead of using the CPU to zero and copy pages, use a Data Mover
1306 channel. These DMA channels are otherwise unused by the standard
1307 SiByte Linux port. Seems to give a small performance benefit.
1308
1309config CPU_HAS_PREFETCH
Ralf Baechlec8094b52005-08-05 14:28:54 +00001310 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001311
Ralf Baechle340ee4b2005-08-17 17:44:08 +00001312choice
1313 prompt "MIPS MT options"
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001314
1315config MIPS_MT_DISABLED
1316 bool "Disable multithreading support."
1317 help
1318 Use this option if your workload can't take advantage of
1319 MIPS hardware multithreading support. On systems that don't have
1320 the option of an MT-enabled processor this option will be the only
1321 option in this menu.
Ralf Baechle340ee4b2005-08-17 17:44:08 +00001322
Ralf Baechle59d6ab82006-10-06 17:36:20 +01001323config MIPS_MT_SMP
1324 bool "Use 1 TC on each available VPE for SMP"
1325 depends on SYS_SUPPORTS_MULTITHREADING
1326 select CPU_MIPSR2_IRQ_VI
Chris Dearmand725cf32007-05-08 14:05:39 +01001327 select CPU_MIPSR2_IRQ_EI
Ralf Baechle59d6ab82006-10-06 17:36:20 +01001328 select CPU_MIPSR2_SRS
1329 select MIPS_MT
Ralf Baechlef510aa32007-03-16 21:58:37 +00001330 select NR_CPUS_DEFAULT_2
Ralf Baechle59d6ab82006-10-06 17:36:20 +01001331 select SMP
1332 select SYS_SUPPORTS_SMP
1333 help
1334 This is a kernel model which is also known a VSMP or lately
1335 has been marketesed into SMVP.
1336
Ralf Baechle41c594a2006-04-05 09:45:45 +01001337config MIPS_MT_SMTC
1338 bool "SMTC: Use all TCs on all VPEs for SMP"
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001339 depends on CPU_MIPS32_R2
1340 #depends on CPU_MIPS64_R2 # once there is hardware ...
1341 depends on SYS_SUPPORTS_MULTITHREADING
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001342 select CPU_MIPSR2_IRQ_VI
Chris Dearmand725cf32007-05-08 14:05:39 +01001343 select CPU_MIPSR2_IRQ_EI
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001344 select CPU_MIPSR2_SRS
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001345 select MIPS_MT
Ralf Baechle130e2fb2007-02-06 16:53:15 +00001346 select NR_CPUS_DEFAULT_8
Ralf Baechle41c594a2006-04-05 09:45:45 +01001347 select SMP
Ralf Baechle73b76c72006-08-15 19:36:40 +01001348 select SYS_SUPPORTS_SMP
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001349 help
1350 This is a kernel model which is known a SMTC or lately has been
1351 marketesed into SMVP.
Ralf Baechle41c594a2006-04-05 09:45:45 +01001352
Ralf Baechlee01402b2005-07-14 15:57:16 +00001353config MIPS_VPE_LOADER
1354 bool "VPE loader support."
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001355 depends on SYS_SUPPORTS_MULTITHREADING
Chris Dearmand725cf32007-05-08 14:05:39 +01001356 select CPU_MIPSR2_IRQ_VI
1357 select CPU_MIPSR2_IRQ_EI
Ralf Baechleb0c10b9f2007-06-01 15:47:46 +01001358 select CPU_MIPSR2_SRS
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001359 select MIPS_MT
Ralf Baechlee01402b2005-07-14 15:57:16 +00001360 help
1361 Includes a loader for loading an elf relocatable object
1362 onto another VPE and running it.
1363
Ralf Baechle340ee4b2005-08-17 17:44:08 +00001364endchoice
1365
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001366config MIPS_MT
1367 bool
1368
1369config SYS_SUPPORTS_MULTITHREADING
1370 bool
1371
Ralf Baechlef088fc82006-04-05 09:45:47 +01001372config MIPS_MT_FPAFF
1373 bool "Dynamic FPU affinity for FP-intensive threads"
1374 depends on MIPS_MT
1375 default y
1376
Ralf Baechleac8be952007-01-20 00:18:01 +00001377config MIPS_MT_SMTC_INSTANT_REPLAY
1378 bool "Low-latency Dispatch of Deferred SMTC IPIs"
Ralf Baechle619af722007-03-26 15:13:57 +01001379 depends on MIPS_MT_SMTC && !PREEMPT
Ralf Baechleac8be952007-01-20 00:18:01 +00001380 default y
1381 help
1382 SMTC pseudo-interrupts between TCs are deferred and queued
1383 if the target TC is interrupt-inhibited (IXMT). In the first
1384 SMTC prototypes, these queued IPIs were serviced on return
1385 to user mode, or on entry into the kernel idle loop. The
1386 INSTANT_REPLAY option dispatches them as part of local_irq_restore()
1387 processing, which adds runtime overhead (hence the option to turn
1388 it off), but ensures that IPIs are handled promptly even under
1389 heavy I/O interrupt load.
1390
Ralf Baechlee01402b2005-07-14 15:57:16 +00001391config MIPS_VPE_LOADER_TOM
1392 bool "Load VPE program into memory hidden from linux"
1393 depends on MIPS_VPE_LOADER
1394 default y
1395 help
1396 The loader can use memory that is present but has been hidden from
1397 Linux using the kernel command line option "mem=xxMB". It's up to
1398 you to ensure the amount you put in the option and the space your
1399 program requires is less or equal to the amount physically present.
1400
1401# this should possibly be in drivers/char, but it is rather cpu related. Hmmm
1402config MIPS_VPE_APSP_API
Ralf Baechle5e83d432005-10-29 19:32:41 +01001403 bool "Enable support for AP/SP API (RTLX)"
1404 depends on MIPS_VPE_LOADER
1405 help
Ralf Baechlee01402b2005-07-14 15:57:16 +00001406
Ralf Baechle26009902006-04-05 09:45:45 +01001407config MIPS_APSP_KSPD
1408 bool "Enable KSPD"
1409 depends on MIPS_VPE_APSP_API
1410 default y
1411 help
1412 KSPD is a kernel daemon that accepts syscall requests from the SP
1413 side, actions them and returns the results. It also handles the
1414 "exit" syscall notifying other kernel modules the SP program is
1415 exiting. You probably want to say yes here.
1416
Linus Torvalds1da177e2005-04-16 15:20:36 -07001417config SB1_PASS_1_WORKAROUNDS
1418 bool
1419 depends on CPU_SB1_PASS_1
1420 default y
1421
1422config SB1_PASS_2_WORKAROUNDS
1423 bool
1424 depends on CPU_SB1 && (CPU_SB1_PASS_2_2 || CPU_SB1_PASS_2)
1425 default y
1426
1427config SB1_PASS_2_1_WORKAROUNDS
1428 bool
1429 depends on CPU_SB1 && CPU_SB1_PASS_2
1430 default y
1431
1432config 64BIT_PHYS_ADDR
1433 bool "Support for 64-bit physical address space"
Ralf Baechle948928a2005-12-23 02:16:44 +01001434 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 -07001435
Linus Torvalds1da177e2005-04-16 15:20:36 -07001436config CPU_HAS_LLSC
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001437 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001438
Franck Bui-Huu9693a852007-02-02 17:41:47 +01001439config CPU_HAS_SMARTMIPS
1440 depends on SYS_SUPPORTS_SMARTMIPS
1441 bool "Support for the SmartMIPS ASE"
1442 help
1443 SmartMIPS is a extension of the MIPS32 architecture aimed at
1444 increased security at both hardware and software level for
1445 smartcards. Enabling this option will allow proper use of the
1446 SmartMIPS instructions by Linux applications. However a kernel with
1447 this option will not work on a MIPS core without SmartMIPS core. If
1448 you don't know you probably don't have SmartMIPS and should say N
1449 here.
1450
Linus Torvalds1da177e2005-04-16 15:20:36 -07001451config CPU_HAS_WB
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001452 bool
Ralf Baechlee01402b2005-07-14 15:57:16 +00001453
Fuxin Zhang2a21c732007-06-06 14:52:43 +08001454config 64BIT_CONTEXT
1455 bool "Save 64bit integer registers"
1456 depends on 32BIT && CPU_LOONGSON2
1457 help
1458 Loongson2 CPU is 64bit , when used in 32BIT mode, its integer
1459 registers can still be accessed as 64bit, mainly for multimedia
1460 instructions. We must have all 64bit save/restored to make sure
1461 those instructions to get correct result.
1462
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001463#
1464# Vectored interrupt mode is an R2 feature
1465#
Ralf Baechlee01402b2005-07-14 15:57:16 +00001466config CPU_MIPSR2_IRQ_VI
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001467 bool
Ralf Baechlee01402b2005-07-14 15:57:16 +00001468
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001469#
1470# Extended interrupt mode is an R2 feature
1471#
Ralf Baechlee01402b2005-07-14 15:57:16 +00001472config CPU_MIPSR2_IRQ_EI
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001473 bool
Ralf Baechlee01402b2005-07-14 15:57:16 +00001474
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001475#
1476# Shadow registers are an R2 feature
1477#
Ralf Baechlee01402b2005-07-14 15:57:16 +00001478config CPU_MIPSR2_SRS
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001479 bool
Ralf Baechlee01402b2005-07-14 15:57:16 +00001480
Linus Torvalds1da177e2005-04-16 15:20:36 -07001481config CPU_HAS_SYNC
1482 bool
1483 depends on !CPU_R3000
1484 default y
1485
1486#
Ralf Baechle797798c2005-08-10 15:17:11 +00001487# Use the generic interrupt handling code in kernel/irq/:
1488#
1489config GENERIC_HARDIRQS
1490 bool
1491 default y
1492
1493config GENERIC_IRQ_PROBE
1494 bool
1495 default y
1496
Ingo Molnar0d7012a2006-06-29 02:24:43 -07001497config IRQ_PER_CPU
Ingo Molnar0d7012a2006-06-29 02:24:43 -07001498 bool
Ingo Molnar0d7012a2006-06-29 02:24:43 -07001499
Ralf Baechle797798c2005-08-10 15:17:11 +00001500#
Linus Torvalds1da177e2005-04-16 15:20:36 -07001501# - Highmem only makes sense for the 32-bit kernel.
1502# - The current highmem code will only work properly on physically indexed
1503# caches such as R3000, SB1, R7000 or those that look like they're virtually
1504# indexed such as R4000/R4400 SC and MC versions or R10000. So for the
1505# moment we protect the user and offer the highmem option only on machines
1506# where it's known to be safe. This will not offer highmem on a few systems
1507# such as MIPS32 and MIPS64 CPUs which may have virtual and physically
1508# indexed CPUs but we're playing safe.
Ralf Baechle797798c2005-08-10 15:17:11 +00001509# - We use SYS_SUPPORTS_HIGHMEM to offer highmem only for systems where we
1510# know they might have memory configurations that could make use of highmem
1511# support.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001512#
1513config HIGHMEM
1514 bool "High Memory Support"
Ralf Baechle797798c2005-08-10 15:17:11 +00001515 depends on 32BIT && CPU_SUPPORTS_HIGHMEM && SYS_SUPPORTS_HIGHMEM
1516
1517config CPU_SUPPORTS_HIGHMEM
1518 bool
1519
1520config SYS_SUPPORTS_HIGHMEM
1521 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001522
Franck Bui-Huu9693a852007-02-02 17:41:47 +01001523config SYS_SUPPORTS_SMARTMIPS
1524 bool
1525
Yoichi Yuasab4819b52005-06-25 14:54:31 -07001526config ARCH_FLATMEM_ENABLE
1527 def_bool y
1528 depends on !NUMA
1529
Ralf Baechled8cb4e12006-06-11 23:03:08 +01001530config ARCH_DISCONTIGMEM_ENABLE
1531 bool
1532 default y if SGI_IP27
1533 help
David Sterba3dde6ad2007-05-09 07:12:20 +02001534 Say Y to support efficient handling of discontiguous physical memory,
Ralf Baechled8cb4e12006-06-11 23:03:08 +01001535 for architectures which are either NUMA (Non-Uniform Memory Access)
1536 or have huge holes in the physical address space for other reasons.
1537 See <file:Documentation/vm/numa> for more.
1538
Atsushi Nemotob1c6cd42006-07-03 00:09:47 +09001539config ARCH_SPARSEMEM_ENABLE
1540 bool
Atsushi Nemoto7de58fa2006-07-05 01:22:44 +09001541 select SPARSEMEM_STATIC
Atsushi Nemoto31473742006-07-03 00:09:47 +09001542
Ralf Baechled8cb4e12006-06-11 23:03:08 +01001543config NUMA
1544 bool "NUMA Support"
1545 depends on SYS_SUPPORTS_NUMA
1546 help
1547 Say Y to compile the kernel to support NUMA (Non-Uniform Memory
1548 Access). This option improves performance on systems with more
1549 than two nodes; on two node systems it is generally better to
1550 leave it disabled; on single node systems disable this option
1551 disabled.
1552
1553config SYS_SUPPORTS_NUMA
1554 bool
1555
Yasunori Gotoc80d79d2006-04-10 22:53:53 -07001556config NODES_SHIFT
1557 int
1558 default "6"
1559 depends on NEED_MULTIPLE_NODES
1560
Yoichi Yuasab4819b52005-06-25 14:54:31 -07001561source "mm/Kconfig"
1562
Linus Torvalds1da177e2005-04-16 15:20:36 -07001563config SMP
1564 bool "Multi-Processing support"
Ralf Baechlee73ea272006-06-04 11:51:46 +01001565 depends on SYS_SUPPORTS_SMP
Ralf Baechleb4b30a52006-08-03 17:34:24 +01001566 select IRQ_PER_CPU
Ralf Baechlee73ea272006-06-04 11:51:46 +01001567 help
Linus Torvalds1da177e2005-04-16 15:20:36 -07001568 This enables support for systems with more than one CPU. If you have
1569 a system with only one CPU, like most personal computers, say N. If
1570 you have a system with more than one CPU, say Y.
1571
1572 If you say N here, the kernel will run on single and multiprocessor
1573 machines, but will use only one CPU of a multiprocessor machine. If
1574 you say Y here, the kernel will run on many, but not all,
1575 singleprocessor machines. On a singleprocessor machine, the kernel
1576 will run faster if you say N here.
1577
1578 People using multiprocessor machines who say Y here should also say
1579 Y to "Enhanced Real Time Clock Support", below.
1580
1581 See also the <file:Documentation/smp.txt> and the SMP-HOWTO
1582 available at <http://www.tldp.org/docs.html#howto>.
1583
1584 If you don't know what to do here, say N.
1585
Ralf Baechlee73ea272006-06-04 11:51:46 +01001586config SYS_SUPPORTS_SMP
1587 bool
1588
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09001589config NR_CPUS_DEFAULT_1
1590 bool
1591
Ralf Baechle130e2fb2007-02-06 16:53:15 +00001592config NR_CPUS_DEFAULT_2
1593 bool
1594
1595config NR_CPUS_DEFAULT_4
1596 bool
1597
1598config NR_CPUS_DEFAULT_8
1599 bool
1600
1601config NR_CPUS_DEFAULT_16
1602 bool
1603
1604config NR_CPUS_DEFAULT_32
1605 bool
1606
1607config NR_CPUS_DEFAULT_64
1608 bool
1609
Linus Torvalds1da177e2005-04-16 15:20:36 -07001610config NR_CPUS
1611 int "Maximum number of CPUs (2-64)"
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09001612 range 1 64 if NR_CPUS_DEFAULT_1
Linus Torvalds1da177e2005-04-16 15:20:36 -07001613 depends on SMP
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09001614 default "1" if NR_CPUS_DEFAULT_1
Ralf Baechle130e2fb2007-02-06 16:53:15 +00001615 default "2" if NR_CPUS_DEFAULT_2
1616 default "4" if NR_CPUS_DEFAULT_4
1617 default "8" if NR_CPUS_DEFAULT_8
1618 default "16" if NR_CPUS_DEFAULT_16
1619 default "32" if NR_CPUS_DEFAULT_32
1620 default "64" if NR_CPUS_DEFAULT_64
Linus Torvalds1da177e2005-04-16 15:20:36 -07001621 help
1622 This allows you to specify the maximum number of CPUs which this
1623 kernel will support. The maximum supported value is 32 for 32-bit
1624 kernel and 64 for 64-bit kernels; the minimum value which makes
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09001625 sense is 1 for Qemu (useful only for kernel debugging purposes)
1626 and 2 for all others.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001627
1628 This is purely to save memory - each supported CPU adds
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09001629 approximately eight kilobytes to the kernel image. For best
1630 performance should round up your number of processors to the next
1631 power of two.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001632
Atsushi Nemoto1723b4a2006-06-20 00:19:13 +09001633#
1634# Timer Interrupt Frequency Configuration
1635#
1636
1637choice
1638 prompt "Timer frequency"
1639 default HZ_250
1640 help
1641 Allows the configuration of the timer frequency.
1642
1643 config HZ_48
1644 bool "48 HZ" if SYS_SUPPORTS_48HZ
1645
1646 config HZ_100
1647 bool "100 HZ" if SYS_SUPPORTS_100HZ || SYS_SUPPORTS_ARBIT_HZ
1648
1649 config HZ_128
1650 bool "128 HZ" if SYS_SUPPORTS_128HZ || SYS_SUPPORTS_ARBIT_HZ
1651
1652 config HZ_250
1653 bool "250 HZ" if SYS_SUPPORTS_250HZ || SYS_SUPPORTS_ARBIT_HZ
1654
1655 config HZ_256
1656 bool "256 HZ" if SYS_SUPPORTS_256HZ || SYS_SUPPORTS_ARBIT_HZ
1657
1658 config HZ_1000
1659 bool "1000 HZ" if SYS_SUPPORTS_1000HZ || SYS_SUPPORTS_ARBIT_HZ
1660
1661 config HZ_1024
1662 bool "1024 HZ" if SYS_SUPPORTS_1024HZ || SYS_SUPPORTS_ARBIT_HZ
1663
1664endchoice
1665
1666config SYS_SUPPORTS_48HZ
1667 bool
1668
1669config SYS_SUPPORTS_100HZ
1670 bool
1671
1672config SYS_SUPPORTS_128HZ
1673 bool
1674
1675config SYS_SUPPORTS_250HZ
1676 bool
1677
1678config SYS_SUPPORTS_256HZ
1679 bool
1680
1681config SYS_SUPPORTS_1000HZ
1682 bool
1683
1684config SYS_SUPPORTS_1024HZ
1685 bool
1686
1687config SYS_SUPPORTS_ARBIT_HZ
1688 bool
1689 default y if !SYS_SUPPORTS_48HZ && !SYS_SUPPORTS_100HZ && \
1690 !SYS_SUPPORTS_128HZ && !SYS_SUPPORTS_250HZ && \
1691 !SYS_SUPPORTS_256HZ && !SYS_SUPPORTS_1000HZ && \
1692 !SYS_SUPPORTS_1024HZ
1693
1694config HZ
1695 int
1696 default 48 if HZ_48
1697 default 100 if HZ_100
1698 default 128 if HZ_128
1699 default 250 if HZ_250
1700 default 256 if HZ_256
1701 default 1000 if HZ_1000
1702 default 1024 if HZ_1024
1703
Ralf Baechlee80de852005-07-11 20:45:51 +00001704source "kernel/Kconfig.preempt"
Linus Torvalds1da177e2005-04-16 15:20:36 -07001705
Linus Torvalds1da177e2005-04-16 15:20:36 -07001706config MIPS_INSANE_LARGE
1707 bool "Support for large 64-bit configurations"
Ralf Baechle875d43e2005-09-03 15:56:16 -07001708 depends on CPU_R10000 && 64BIT
Linus Torvalds1da177e2005-04-16 15:20:36 -07001709 help
1710 MIPS R10000 does support a 44 bit / 16TB address space as opposed to
1711 previous 64-bit processors which only supported 40 bit / 1TB. If you
1712 need processes of more than 1TB virtual address space, say Y here.
1713 This will result in additional memory usage, so it is not
1714 recommended for normal users.
1715
Atsushi Nemotoea6e9422007-01-16 23:29:11 +09001716config KEXEC
1717 bool "Kexec system call (EXPERIMENTAL)"
1718 depends on EXPERIMENTAL
1719 help
1720 kexec is a system call that implements the ability to shutdown your
1721 current kernel, and to start another kernel. It is like a reboot
David Sterba3dde6ad2007-05-09 07:12:20 +02001722 but it is independent of the system firmware. And like a reboot
Atsushi Nemotoea6e9422007-01-16 23:29:11 +09001723 you can start any kernel with it, not just Linux.
1724
1725 The name comes from the similiarity to the exec system call.
1726
1727 It is an ongoing process to be certain the hardware in a machine
1728 is properly shutdown, so do not be surprised if this code does not
1729 initially work for you. It may help to enable device hotplugging
1730 support. As of this writing the exact hardware interface is
1731 strongly in flux, so no good recommendation can be made.
1732
1733config SECCOMP
1734 bool "Enable seccomp to safely compute untrusted bytecode"
1735 depends on PROC_FS && BROKEN
1736 default y
1737 help
1738 This kernel feature is useful for number crunching applications
1739 that may need to compute untrusted bytecode during their
1740 execution. By using pipes or other transports made available to
1741 the process as file descriptors supporting the read/write
1742 syscalls, it's possible to isolate those applications in
1743 their own address space using seccomp. Once seccomp is
1744 enabled via /proc/<pid>/seccomp, it cannot be disabled
1745 and the task is only allowed to execute a few safe syscalls
1746 defined by each seccomp mode.
1747
1748 If unsure, say Y. Only embedded should say N here.
1749
Ralf Baechle5e83d432005-10-29 19:32:41 +01001750endmenu
1751
Linus Torvalds1da177e2005-04-16 15:20:36 -07001752config RWSEM_GENERIC_SPINLOCK
1753 bool
1754 default y
1755
Atsushi Nemoto1df0f0f2006-09-26 23:44:01 +09001756config LOCKDEP_SUPPORT
1757 bool
1758 default y
1759
1760config STACKTRACE_SUPPORT
1761 bool
1762 default y
1763
Ralf Baechleb6c35392005-11-25 11:35:40 +00001764source "init/Kconfig"
1765
Linus Torvalds1da177e2005-04-16 15:20:36 -07001766menu "Bus options (PCI, PCMCIA, EISA, ISA, TC)"
1767
Ralf Baechle5e83d432005-10-29 19:32:41 +01001768config HW_HAS_EISA
1769 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001770config HW_HAS_PCI
1771 bool
1772
1773config PCI
1774 bool "Support for PCI controller"
1775 depends on HW_HAS_PCI
1776 help
1777 Find out whether you have a PCI motherboard. PCI is the name of a
1778 bus system, i.e. the way the CPU talks to the other stuff inside
1779 your box. Other bus systems are ISA, EISA, or VESA. If you have PCI,
1780 say Y, otherwise N.
1781
1782 The PCI-HOWTO, available from
1783 <http://www.tldp.org/docs.html#howto>, contains valuable
1784 information about which PCI hardware does work under Linux and which
1785 doesn't.
1786
1787config PCI_DOMAINS
1788 bool
1789 depends on PCI
1790
1791source "drivers/pci/Kconfig"
1792
1793#
1794# ISA support is now enabled via select. Too many systems still have the one
1795# or other ISA chip on the board that users don't know about so don't expect
1796# users to choose the right thing ...
1797#
1798config ISA
1799 bool
1800
1801config EISA
1802 bool "EISA support"
Ralf Baechle5e83d432005-10-29 19:32:41 +01001803 depends on HW_HAS_EISA
Linus Torvalds1da177e2005-04-16 15:20:36 -07001804 select ISA
Ralf Baechleaa414df2006-11-30 01:14:51 +00001805 select GENERIC_ISA_DMA
Linus Torvalds1da177e2005-04-16 15:20:36 -07001806 ---help---
1807 The Extended Industry Standard Architecture (EISA) bus was
1808 developed as an open alternative to the IBM MicroChannel bus.
1809
1810 The EISA bus provided some of the features of the IBM MicroChannel
1811 bus while maintaining backward compatibility with cards made for
1812 the older ISA bus. The EISA bus saw limited use between 1988 and
1813 1995 when it was made obsolete by the PCI bus.
1814
1815 Say Y here if you are building a kernel for an EISA-based machine.
1816
1817 Otherwise, say N.
1818
1819source "drivers/eisa/Kconfig"
1820
1821config TC
1822 bool "TURBOchannel support"
1823 depends on MACH_DECSTATION
1824 help
1825 TurboChannel is a DEC (now Compaq (now HP)) bus for Alpha and MIPS
1826 processors. Documentation on writing device drivers for TurboChannel
1827 is available at:
1828 <http://www.cs.arizona.edu/computer.help/policy/DIGITAL_unix/AA-PS3HD-TET1_html/TITLE.html>.
1829
1830#config ACCESSBUS
1831# bool "Access.Bus support"
1832# depends on TC
1833
1834config MMU
1835 bool
1836 default y
1837
Michael Neulinge5c6c8e2006-03-14 00:11:50 -05001838config I8253
1839 bool
1840
Linus Torvalds1da177e2005-04-16 15:20:36 -07001841source "drivers/pcmcia/Kconfig"
1842
1843source "drivers/pci/hotplug/Kconfig"
1844
1845endmenu
1846
1847menu "Executable file formats"
1848
1849source "fs/Kconfig.binfmt"
1850
1851config TRAD_SIGNALS
1852 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001853
1854config BUILD_ELF64
1855 bool "Use 64-bit ELF format for building"
Ralf Baechle875d43e2005-09-03 15:56:16 -07001856 depends on 64BIT
Linus Torvalds1da177e2005-04-16 15:20:36 -07001857 help
1858 A 64-bit kernel is usually built using the 64-bit ELF binary object
1859 format as it's one that allows arbitrary 64-bit constructs. For
1860 kernels that are loaded within the KSEG compatibility segments the
1861 32-bit ELF format can optionally be used resulting in a somewhat
1862 smaller binary, but this option is not explicitly supported by the
1863 toolchain and since binutils 2.14 it does not even work at all.
1864
1865 Say Y to use the 64-bit format or N to use the 32-bit one.
1866
1867 If unsure say Y.
1868
1869config BINFMT_IRIX
1870 bool "Include IRIX binary compatibility"
Ralf Baechle5e83d432005-10-29 19:32:41 +01001871 depends on CPU_BIG_ENDIAN && 32BIT && BROKEN
Linus Torvalds1da177e2005-04-16 15:20:36 -07001872
1873config MIPS32_COMPAT
1874 bool "Kernel support for Linux/MIPS 32-bit binary compatibility"
Ralf Baechle875d43e2005-09-03 15:56:16 -07001875 depends on 64BIT
Linus Torvalds1da177e2005-04-16 15:20:36 -07001876 help
1877 Select this option if you want Linux/MIPS 32-bit binary
1878 compatibility. Since all software available for Linux/MIPS is
1879 currently 32-bit you should say Y here.
1880
1881config COMPAT
1882 bool
1883 depends on MIPS32_COMPAT
1884 default y
1885
Atsushi Nemoto05e43962006-11-07 18:02:44 +09001886config SYSVIPC_COMPAT
1887 bool
1888 depends on COMPAT && SYSVIPC
1889 default y
1890
Linus Torvalds1da177e2005-04-16 15:20:36 -07001891config MIPS32_O32
1892 bool "Kernel support for o32 binaries"
1893 depends on MIPS32_COMPAT
1894 help
1895 Select this option if you want to run o32 binaries. These are pure
1896 32-bit binaries as used by the 32-bit Linux/MIPS port. Most of
1897 existing binaries are in this format.
1898
1899 If unsure, say Y.
1900
1901config MIPS32_N32
1902 bool "Kernel support for n32 binaries"
1903 depends on MIPS32_COMPAT
1904 help
1905 Select this option if you want to run n32 binaries. These are
1906 64-bit binaries using 32-bit quantities for addressing and certain
1907 data that would normally be 64-bit. They are used in special
1908 cases.
1909
1910 If unsure, say N.
1911
1912config BINFMT_ELF32
1913 bool
1914 default y if MIPS32_O32 || MIPS32_N32
1915
Ralf Baechle21162452007-02-09 17:08:58 +00001916endmenu
Linus Torvalds1da177e2005-04-16 15:20:36 -07001917
Ralf Baechle21162452007-02-09 17:08:58 +00001918menu "Power management options"
Rodolfo Giometti952fa952006-06-05 17:43:10 +02001919
Ralf Baechle21162452007-02-09 17:08:58 +00001920source "kernel/power/Kconfig"
Rodolfo Giometti952fa952006-06-05 17:43:10 +02001921
Linus Torvalds1da177e2005-04-16 15:20:36 -07001922endmenu
1923
Sam Ravnborgd5950b42005-07-11 21:03:49 -07001924source "net/Kconfig"
1925
Linus Torvalds1da177e2005-04-16 15:20:36 -07001926source "drivers/Kconfig"
1927
1928source "fs/Kconfig"
1929
Ralf Baechle5e83d432005-10-29 19:32:41 +01001930source "arch/mips/oprofile/Kconfig"
1931
Linus Torvalds1da177e2005-04-16 15:20:36 -07001932source "arch/mips/Kconfig.debug"
1933
1934source "security/Kconfig"
1935
1936source "crypto/Kconfig"
1937
1938source "lib/Kconfig"