Kconfig 42.8 KB
Newer Older
Linus Torvalds's avatar
Linus Torvalds committed
1 2 3 4 5 6
config MIPS
	bool
	default y
	# Horrible source of confusion.  Die, die, die ...
	select EMBEDDED

7 8 9 10
mainmenu "Linux/MIPS Kernel Configuration"

source "init/Kconfig"

Linus Torvalds's avatar
Linus Torvalds committed
11 12
menu "Machine selection"

13 14 15
choice
	prompt "System type"
	default SGI_IP22
Linus Torvalds's avatar
Linus Torvalds committed
16

17 18
config MIPS_MTX1
	bool "Support for 4G Systems MTX-1 board"
Linus Torvalds's avatar
Linus Torvalds committed
19
	select DMA_NONCOHERENT
20 21 22
	select HW_HAS_PCI
	select SOC_AU1500
	select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds's avatar
Linus Torvalds committed
23

24 25 26
config MIPS_BOSPORUS
	bool "AMD Alchemy Bosporus board"
	select SOC_AU1500
Linus Torvalds's avatar
Linus Torvalds committed
27
	select DMA_NONCOHERENT
28
	select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds's avatar
Linus Torvalds committed
29

30 31 32
config MIPS_PB1000
	bool "AMD Alchemy PB1000 board"
	select SOC_AU1000
Linus Torvalds's avatar
Linus Torvalds committed
33
	select DMA_NONCOHERENT
34 35 36
	select HW_HAS_PCI
	select SWAP_IO_SPACE
	select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds's avatar
Linus Torvalds committed
37

38 39 40
config MIPS_PB1100
	bool "AMD Alchemy PB1100 board"
	select SOC_AU1100
Linus Torvalds's avatar
Linus Torvalds committed
41 42
	select DMA_NONCOHERENT
	select HW_HAS_PCI
43 44
	select SWAP_IO_SPACE
	select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds's avatar
Linus Torvalds committed
45

46 47 48 49 50 51
config MIPS_PB1500
	bool "AMD Alchemy PB1500 board"
	select SOC_AU1500
	select DMA_NONCOHERENT
	select HW_HAS_PCI
	select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds's avatar
Linus Torvalds committed
52

53 54 55
config MIPS_PB1550
	bool "AMD Alchemy PB1550 board"
	select SOC_AU1550
Linus Torvalds's avatar
Linus Torvalds committed
56
	select DMA_NONCOHERENT
57 58 59
	select HW_HAS_PCI
	select MIPS_DISABLE_OBSOLETE_IDE
	select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds's avatar
Linus Torvalds committed
60

61 62 63
config MIPS_PB1200
	bool "AMD Alchemy PB1200 board"
	select SOC_AU1200
Linus Torvalds's avatar
Linus Torvalds committed
64
	select DMA_NONCOHERENT
65 66
	select MIPS_DISABLE_OBSOLETE_IDE
	select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds's avatar
Linus Torvalds committed
67

68 69 70
config MIPS_DB1000
	bool "AMD Alchemy DB1000 board"
	select SOC_AU1000
Linus Torvalds's avatar
Linus Torvalds committed
71
	select DMA_NONCOHERENT
72
	select HW_HAS_PCI
73
	select SYS_SUPPORTS_LITTLE_ENDIAN
74

75 76 77
config MIPS_DB1100
	bool "AMD Alchemy DB1100 board"
	select SOC_AU1100
Linus Torvalds's avatar
Linus Torvalds committed
78
	select DMA_NONCOHERENT
79
	select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds's avatar
Linus Torvalds committed
80

81 82 83
config MIPS_DB1500
	bool "AMD Alchemy DB1500 board"
	select SOC_AU1500
Linus Torvalds's avatar
Linus Torvalds committed
84
	select DMA_NONCOHERENT
85
	select HW_HAS_PCI
86 87 88
	select MIPS_DISABLE_OBSOLETE_IDE
	select SYS_SUPPORTS_BIG_ENDIAN
	select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds's avatar
Linus Torvalds committed
89

90 91 92 93 94 95 96
config MIPS_DB1550
	bool "AMD Alchemy DB1550 board"
	select SOC_AU1550
	select HW_HAS_PCI
	select DMA_NONCOHERENT
	select MIPS_DISABLE_OBSOLETE_IDE
	select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds's avatar
Linus Torvalds committed
97

98 99 100 101 102 103
config MIPS_DB1200
	bool "AMD Alchemy DB1200 board"
	select SOC_AU1200
	select DMA_COHERENT
	select MIPS_DISABLE_OBSOLETE_IDE
	select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds's avatar
Linus Torvalds committed
104

105 106
config MIPS_MIRAGE
	bool "AMD Alchemy Mirage board"
Linus Torvalds's avatar
Linus Torvalds committed
107
	select DMA_NONCOHERENT
108 109
	select SOC_AU1500
	select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds's avatar
Linus Torvalds committed
110 111

config MIPS_COBALT
112
	bool "Support for Cobalt Server"
Linus Torvalds's avatar
Linus Torvalds committed
113 114 115 116
	select DMA_NONCOHERENT
	select HW_HAS_PCI
	select I8259
	select IRQ_CPU
117
	select MIPS_GT64111
118 119
	select SYS_SUPPORTS_32BIT_KERNEL
	select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
120
	select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds's avatar
Linus Torvalds committed
121 122 123 124 125

config MACH_DECSTATION
	bool "Support for DECstations"
	select BOOT_ELF32
	select DMA_NONCOHERENT
126
	select EARLY_PRINTK
Linus Torvalds's avatar
Linus Torvalds committed
127
	select IRQ_CPU
128 129
	select SYS_SUPPORTS_32BIT_KERNEL
	select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
130 131
	select SYS_SUPPORTS_LITTLE_ENDIAN
	help
Linus Torvalds's avatar
Linus Torvalds committed
132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151
	  This enables support for DEC's MIPS based workstations.  For details
	  see the Linux/MIPS FAQ on <http://www.linux-mips.org/> and the
	  DECstation porting pages on <http://decstation.unix-ag.org/>.

	  If you have one of the following DECstation Models you definitely
	  want to choose R4xx0 for the CPU Type:

	  	DECstation 5000/50
	  	DECstation 5000/150
	  	DECstation 5000/260
	  	DECsystem 5900/260

	  otherwise choose R3000.

config MIPS_EV64120
	bool "Support for Galileo EV64120 Evaluation board (EXPERIMENTAL)"
	depends on EXPERIMENTAL
	select DMA_NONCOHERENT
	select HW_HAS_PCI
	select MIPS_GT64120
152 153
	select SYS_SUPPORTS_32BIT_KERNEL
	select SYS_SUPPORTS_64BIT_KERNEL
154
	select SYS_SUPPORTS_BIG_ENDIAN
Linus Torvalds's avatar
Linus Torvalds committed
155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170
	help
	  This is an evaluation board based on the Galileo GT-64120
	  single-chip system controller that contains a MIPS R5000 compatible
	  core running at 75/100MHz.  Their website is located at
	  <http://www.marvell.com/>.  Say Y here if you wish to build a
	  kernel for this platform.

config MIPS_EV96100
	bool "Support for Galileo EV96100 Evaluation board (EXPERIMENTAL)"
	depends on EXPERIMENTAL
	select DMA_NONCOHERENT
	select HW_HAS_PCI
	select IRQ_CPU
	select MIPS_GT96100
	select RM7000_CPU_SCACHE
	select SWAP_IO_SPACE
171
	select SYS_SUPPORTS_32BIT_KERNEL
172 173
	select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
	select SYS_SUPPORTS_BIG_ENDIAN
Linus Torvalds's avatar
Linus Torvalds committed
174 175 176 177 178 179 180 181 182 183
	help
	  This is an evaluation board based on the Galileo GT-96100 LAN/WAN
	  communications controllers containing a MIPS R5000 compatible core
	  running at 83MHz. Their website is <http://www.marvell.com/>. Say Y
	  here if you wish to build a kernel for this platform.

config MIPS_IVR
	bool "Support for Globespan IVR board"
	select DMA_NONCOHERENT
	select HW_HAS_PCI
184
	select ITE_BOARD_GEN
185 186
	select SYS_SUPPORTS_32BIT_KERNEL
	select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
187
	select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds's avatar
Linus Torvalds committed
188 189 190 191 192 193 194 195 196 197 198
	help
	  This is an evaluation board built by Globespan to showcase thir
	  iVR (Internet Video Recorder) design. It utilizes a QED RM5231
	  R5000 MIPS core. More information can be found out their website
	  located at <http://www.globespan.net/>. Say Y here if you wish to
	  build a kernel for this platform.

config MIPS_ITE8172
	bool "Support for ITE 8172G board"
	select DMA_NONCOHERENT
	select HW_HAS_PCI
199
	select ITE_BOARD_GEN
200 201
	select SYS_SUPPORTS_32BIT_KERNEL
	select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
202
	select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds's avatar
Linus Torvalds committed
203 204 205 206 207 208 209
	help
	  Ths is an evaluation board made by ITE <http://www.ite.com.tw/>
	  with ATX form factor that utilizes a MIPS R5000 to work with its
	  ITE8172G companion internet appliance chip. The MIPS core can be
	  either a NEC Vr5432 or QED RM5231. Say Y here if you wish to build
	  a kernel for this platform.

210 211 212 213 214 215 216 217 218 219
config MACH_JAZZ
	bool "Support for the Jazz family of machines"
	select ARC
	select ARC32
	select ARCH_MAY_HAVE_PC_FDC
	select GENERIC_ISA_DMA
	select I8259
	select ISA
	select SYS_SUPPORTS_32BIT_KERNEL
	select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
Linus Torvalds's avatar
Linus Torvalds committed
220
	help
221 222 223 224 225 226 227 228 229 230 231 232 233 234 235
	 This a family of machines based on the MIPS R4030 chipset which was
	 used by several vendors to build RISC/os and Windows NT workstations.
	 Members include the Acer PICA, MIPS Magnum 4000, MIPS Millenium and
	 Olivetti M700-10 workstations.

config LASAT
	bool "Support for LASAT Networks platforms"
	select DMA_NONCOHERENT
	select HW_HAS_PCI
	select MIPS_GT64120
	select MIPS_NILE4
	select R5000_CPU_SCACHE
	select SYS_SUPPORTS_32BIT_KERNEL
	select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
	select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds's avatar
Linus Torvalds committed
236 237 238 239 240

config MIPS_ATLAS
	bool "Support for MIPS Atlas board"
	select BOOT_ELF32
	select DMA_NONCOHERENT
241
	select IRQ_CPU
Linus Torvalds's avatar
Linus Torvalds committed
242
	select HW_HAS_PCI
243 244
	select MIPS_BOARDS_GEN
	select MIPS_BONITO64
Linus Torvalds's avatar
Linus Torvalds committed
245
	select MIPS_GT64120
246
	select MIPS_MSC
247
	select RM7000_CPU_SCACHE
Linus Torvalds's avatar
Linus Torvalds committed
248
	select SWAP_IO_SPACE
249 250
	select SYS_SUPPORTS_32BIT_KERNEL
	select SYS_SUPPORTS_64BIT_KERNEL
251 252
	select SYS_SUPPORTS_BIG_ENDIAN
	select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds's avatar
Linus Torvalds committed
253
	help
254
	  This enables support for the MIPS Technologies Atlas evaluation
Linus Torvalds's avatar
Linus Torvalds committed
255 256 257 258
	  board.

config MIPS_MALTA
	bool "Support for MIPS Malta board"
259
	select ARCH_MAY_HAVE_PC_FDC
Linus Torvalds's avatar
Linus Torvalds committed
260 261 262
	select BOOT_ELF32
	select HAVE_STD_PC_SERIAL_PORT
	select DMA_NONCOHERENT
263
	select IRQ_CPU
Linus Torvalds's avatar
Linus Torvalds committed
264 265 266
	select GENERIC_ISA_DMA
	select HW_HAS_PCI
	select I8259
267 268
	select MIPS_BOARDS_GEN
	select MIPS_BONITO64
Linus Torvalds's avatar
Linus Torvalds committed
269
	select MIPS_GT64120
270
	select MIPS_MSC
Linus Torvalds's avatar
Linus Torvalds committed
271
	select SWAP_IO_SPACE
272 273
	select SYS_SUPPORTS_32BIT_KERNEL
	select SYS_SUPPORTS_64BIT_KERNEL
274 275
	select SYS_SUPPORTS_BIG_ENDIAN
	select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds's avatar
Linus Torvalds committed
276
	help
277
	  This enables support for the MIPS Technologies Malta evaluation
Linus Torvalds's avatar
Linus Torvalds committed
278 279 280 281 282 283 284
	  board.

config MIPS_SEAD
	bool "Support for MIPS SEAD board (EXPERIMENTAL)"
	depends on EXPERIMENTAL
	select IRQ_CPU
	select DMA_NONCOHERENT
285
	select MIPS_BOARDS_GEN
286
	select SYS_SUPPORTS_32BIT_KERNEL
287 288 289
	select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
	select SYS_SUPPORTS_BIG_ENDIAN
	select SYS_SUPPORTS_LITTLE_ENDIAN
290 291 292
	help
	  This enables support for the MIPS Technologies SEAD evaluation
	  board.
Linus Torvalds's avatar
Linus Torvalds committed
293

294 295
config MIPS_SIM
	bool 'Support for MIPS simulator (MIPSsim)'
Linus Torvalds's avatar
Linus Torvalds committed
296 297
	select DMA_NONCOHERENT
	select IRQ_CPU
298
	select SYS_SUPPORTS_32BIT_KERNEL
299 300
	select SYS_SUPPORTS_BIG_ENDIAN
	select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds's avatar
Linus Torvalds committed
301
	help
302 303
	  This option enables support for MIPS Technologies MIPSsim software
	  emulator.
Linus Torvalds's avatar
Linus Torvalds committed
304

305 306 307
config MOMENCO_JAGUAR_ATX
	bool "Support for Momentum Jaguar board"
	select BOOT_ELF32
Linus Torvalds's avatar
Linus Torvalds committed
308 309 310 311
	select DMA_NONCOHERENT
	select HW_HAS_PCI
	select IRQ_CPU
	select IRQ_CPU_RM7K
312 313
	select IRQ_MV64340
	select LIMITED_DMA
Linus Torvalds's avatar
Linus Torvalds committed
314 315 316
	select PCI_MARVELL
	select RM7000_CPU_SCACHE
	select SWAP_IO_SPACE
317 318
	select SYS_SUPPORTS_32BIT_KERNEL
	select SYS_SUPPORTS_64BIT_KERNEL
319
	select SYS_SUPPORTS_BIG_ENDIAN
Linus Torvalds's avatar
Linus Torvalds committed
320
	help
321
	  The Jaguar ATX is a MIPS-based Single Board Computer (SBC) made by
Linus Torvalds's avatar
Linus Torvalds committed
322 323
	  Momentum Computer <http://www.momenco.com/>.

324 325
config MOMENCO_OCELOT
	bool "Support for Momentum Ocelot board"
Linus Torvalds's avatar
Linus Torvalds committed
326 327 328
	select DMA_NONCOHERENT
	select HW_HAS_PCI
	select IRQ_CPU
329 330
	select IRQ_CPU_RM7K
	select MIPS_GT64120
Linus Torvalds's avatar
Linus Torvalds committed
331 332
	select RM7000_CPU_SCACHE
	select SWAP_IO_SPACE
333 334
	select SYS_SUPPORTS_32BIT_KERNEL
	select SYS_SUPPORTS_64BIT_KERNEL
335
	select SYS_SUPPORTS_BIG_ENDIAN
Linus Torvalds's avatar
Linus Torvalds committed
336 337 338 339 340 341 342 343 344 345 346 347 348 349 350
	help
	  The Ocelot is a MIPS-based Single Board Computer (SBC) made by
	  Momentum Computer <http://www.momenco.com/>.

config MOMENCO_OCELOT_3
	bool "Support for Momentum Ocelot-3 board"
	select BOOT_ELF32
	select DMA_NONCOHERENT
	select HW_HAS_PCI
	select IRQ_CPU
	select IRQ_CPU_RM7K
	select IRQ_MV64340
	select PCI_MARVELL
	select RM7000_CPU_SCACHE
	select SWAP_IO_SPACE
351 352
	select SYS_SUPPORTS_32BIT_KERNEL
	select SYS_SUPPORTS_64BIT_KERNEL
353
	select SYS_SUPPORTS_BIG_ENDIAN
Linus Torvalds's avatar
Linus Torvalds committed
354 355 356 357
	help
	  The Ocelot-3 is based off Discovery III System Controller and
	  PMC-Sierra Rm79000 core.

358 359
config MOMENCO_OCELOT_C
	bool "Support for Momentum Ocelot-C board"
Linus Torvalds's avatar
Linus Torvalds committed
360 361 362 363 364 365 366
	select DMA_NONCOHERENT
	select HW_HAS_PCI
	select IRQ_CPU
	select IRQ_MV64340
	select PCI_MARVELL
	select RM7000_CPU_SCACHE
	select SWAP_IO_SPACE
367 368
	select SYS_SUPPORTS_32BIT_KERNEL
	select SYS_SUPPORTS_64BIT_KERNEL
369
	select SYS_SUPPORTS_BIG_ENDIAN
Linus Torvalds's avatar
Linus Torvalds committed
370
	help
371
	  The Ocelot is a MIPS-based Single Board Computer (SBC) made by
Linus Torvalds's avatar
Linus Torvalds committed
372 373
	  Momentum Computer <http://www.momenco.com/>.

374 375 376
config MOMENCO_OCELOT_G
	bool "Support for Momentum Ocelot-G board"
	select DMA_NONCOHERENT
Linus Torvalds's avatar
Linus Torvalds committed
377 378 379
	select HW_HAS_PCI
	select IRQ_CPU
	select IRQ_CPU_RM7K
380 381
	select PCI_MARVELL
	select RM7000_CPU_SCACHE
Linus Torvalds's avatar
Linus Torvalds committed
382
	select SWAP_IO_SPACE
383 384
	select SYS_SUPPORTS_32BIT_KERNEL
	select SYS_SUPPORTS_64BIT_KERNEL
385
	select SYS_SUPPORTS_BIG_ENDIAN
Linus Torvalds's avatar
Linus Torvalds committed
386
	help
387 388
	  The Ocelot is a MIPS-based Single Board Computer (SBC) made by
	  Momentum Computer <http://www.momenco.com/>.
Linus Torvalds's avatar
Linus Torvalds committed
389

390 391 392 393 394
config MIPS_XXS1500
	bool "Support for MyCable XXS1500 board"
	select DMA_NONCOHERENT
	select SOC_AU1500
	select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds's avatar
Linus Torvalds committed
395

396 397 398 399 400 401 402 403 404 405
config PNX8550_V2PCI
	bool "Support for Philips PNX8550 based Viper2-PCI board"
	select PNX8550
	select SYS_SUPPORTS_LITTLE_ENDIAN

config PNX8550_JBS
	bool "Support for Philips PNX8550 based JBS board"
	select PNX8550
	select SYS_SUPPORTS_LITTLE_ENDIAN

Linus Torvalds's avatar
Linus Torvalds committed
406 407 408
config DDB5074
	bool "Support for NEC DDB Vrc-5074 (EXPERIMENTAL)"
	depends on EXPERIMENTAL
409
	select DDB5XXX_COMMON
Linus Torvalds's avatar
Linus Torvalds committed
410 411 412 413 414 415
	select DMA_NONCOHERENT
	select HAVE_STD_PC_SERIAL_PORT
	select HW_HAS_PCI
	select IRQ_CPU
	select I8259
	select ISA
416
	select SYS_SUPPORTS_32BIT_KERNEL
417 418
	select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
	select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds's avatar
Linus Torvalds committed
419 420 421 422 423 424
	help
	  This enables support for the VR5000-based NEC DDB Vrc-5074
	  evaluation board.

config DDB5476
	bool "Support for NEC DDB Vrc-5476"
425
	select DDB5XXX_COMMON
Linus Torvalds's avatar
Linus Torvalds committed
426 427 428 429 430 431
	select DMA_NONCOHERENT
	select HAVE_STD_PC_SERIAL_PORT
	select HW_HAS_PCI
	select IRQ_CPU
	select I8259
	select ISA
432 433
	select SYS_SUPPORTS_32BIT_KERNEL
	select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
434
	select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds's avatar
Linus Torvalds committed
435 436 437 438 439 440 441 442 443 444
	help
	  This enables support for the R5432-based NEC DDB Vrc-5476
	  evaluation board.

	  Features : kernel debugging, serial terminal, NFS root fs, on-board
	  ether port USB, AC97, PCI, PCI VGA card & framebuffer console,
	  IDE controller, PS2 keyboard, PS2 mouse, etc.

config DDB5477
	bool "Support for NEC DDB Vrc-5477"
445
	select DDB5XXX_COMMON
Linus Torvalds's avatar
Linus Torvalds committed
446 447 448 449
	select DMA_NONCOHERENT
	select HW_HAS_PCI
	select I8259
	select IRQ_CPU
450 451
	select SYS_SUPPORTS_32BIT_KERNEL
	select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
452
	select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds's avatar
Linus Torvalds committed
453 454 455 456 457 458 459
	help
	  This enables support for the R5432-based NEC DDB Vrc-5477,
	  or Rockhopper/SolutionGear boards with R5432/R5500 CPUs.

	  Features : kernel debugging, serial terminal, NFS root fs, on-board
	  ether port USB, AC97, PCI, etc.

460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479
config MACH_VR41XX
	bool "Support for NEC VR4100 series based machines"
	select SYS_SUPPORTS_32BIT_KERNEL
	select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL

config PMC_YOSEMITE
	bool "Support for PMC-Sierra Yosemite eval board"
	select DMA_COHERENT
	select HW_HAS_PCI
	select IRQ_CPU
	select IRQ_CPU_RM7K
	select IRQ_CPU_RM9K
	select SWAP_IO_SPACE
	select SYS_SUPPORTS_32BIT_KERNEL
	select SYS_SUPPORTS_64BIT_KERNEL
	select SYS_SUPPORTS_BIG_ENDIAN
	select SYS_SUPPORTS_HIGHMEM
	help
	  Yosemite is an evaluation board for the RM9000x2 processor
	  manufactured by PMC-Sierra.
Linus Torvalds's avatar
Linus Torvalds committed
480

481 482 483 484 485 486 487 488 489 490 491
config QEMU
	bool "Support for Qemu"
	select DMA_COHERENT
	select GENERIC_ISA_DMA
	select HAVE_STD_PC_SERIAL_PORT
	select I8259
	select ISA
	select SWAP_IO_SPACE
	select SYS_SUPPORTS_32BIT_KERNEL
	select SYS_SUPPORTS_BIG_ENDIAN
	help
492 493 494 495 496 497
	  Qemu is a software emulator which among other architectures also
	  can simulate a MIPS32 4Kc system.  This patch adds support for the
	  system architecture that currently is being simulated by Qemu.  It
	  will eventually be removed again when Qemu has the capability to
	  simulate actual MIPS hardware platforms.  More information on Qemu
	  can be found at http://www.linux-mips.org/wiki/Qemu.
498

Linus Torvalds's avatar
Linus Torvalds committed
499 500 501 502 503 504
config SGI_IP22
	bool "Support for SGI IP22 (Indy/Indigo2)"
	select ARC
	select ARC32
	select BOOT_ELF32
	select DMA_NONCOHERENT
505
	select HW_HAS_EISA
Linus Torvalds's avatar
Linus Torvalds committed
506 507 508
	select IP22_CPU_SCACHE
	select IRQ_CPU
	select SWAP_IO_SPACE
509 510
	select SYS_SUPPORTS_32BIT_KERNEL
	select SYS_SUPPORTS_64BIT_KERNEL
511
	select SYS_SUPPORTS_BIG_ENDIAN
Linus Torvalds's avatar
Linus Torvalds committed
512 513 514 515 516 517 518 519 520
	help
	  This are the SGI Indy, Challenge S and Indigo2, as well as certain
	  OEM variants like the Tandem CMN B006S. To compile a Linux kernel
	  that runs on these, say Y here.

config SGI_IP27
	bool "Support for SGI IP27 (Origin200/2000)"
	select ARC
	select ARC64
521
	select BOOT_ELF64
Linus Torvalds's avatar
Linus Torvalds committed
522 523 524
	select DMA_IP27
	select HW_HAS_PCI
	select PCI_DOMAINS
525
	select SYS_SUPPORTS_64BIT_KERNEL
526
	select SYS_SUPPORTS_BIG_ENDIAN
Linus Torvalds's avatar
Linus Torvalds committed
527 528 529 530 531 532 533
	help
	  This are the SGI Origin 200, Origin 2000 and Onyx 2 Graphics
	  workstations.  To compile a Linux kernel that runs on these, say Y
	  here.

config SGI_IP32
	bool "Support for SGI IP32 (O2) (EXPERIMENTAL)"
534
	depends on EXPERIMENTAL
Linus Torvalds's avatar
Linus Torvalds committed
535 536 537 538 539 540 541 542 543
	select ARC
	select ARC32
	select BOOT_ELF32
	select OWN_DMA
	select DMA_IP32
	select DMA_NONCOHERENT
	select HW_HAS_PCI
	select R5000_CPU_SCACHE
	select RM7000_CPU_SCACHE
544
	select SYS_SUPPORTS_64BIT_KERNEL
545 546
	select SYS_SUPPORTS_BIG_ENDIAN
	help
547
	  If you want this kernel to run on SGI O2 workstation, say Y here.
Linus Torvalds's avatar
Linus Torvalds committed
548

Andrew Isaacson's avatar
Andrew Isaacson committed
549 550 551 552 553 554 555 556
config SIBYTE_BIGSUR
	bool "Support for Sibyte BigSur"
	select BOOT_ELF32
	select DMA_COHERENT
	select SIBYTE_BCM1x80
	select SWAP_IO_SPACE
	select SYS_SUPPORTS_BIG_ENDIAN
	select SYS_SUPPORTS_LITTLE_ENDIAN
Andrew Isaacson's avatar
Andrew Isaacson committed
557
	select PCI_DOMAINS
Andrew Isaacson's avatar
Andrew Isaacson committed
558

559 560 561
config SIBYTE_SWARM
	bool "Support for Sibyte BCM91250A-SWARM"
	select BOOT_ELF32
Linus Torvalds's avatar
Linus Torvalds committed
562
	select DMA_COHERENT
563 564
	select SIBYTE_SB1250
	select SWAP_IO_SPACE
565
	select SYS_SUPPORTS_BIG_ENDIAN
566 567
	select SYS_SUPPORTS_HIGHMEM
	select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds's avatar
Linus Torvalds committed
568

569 570 571 572 573 574 575 576 577
config SIBYTE_SENTOSA
	bool "Support for Sibyte BCM91250E-Sentosa"
	depends on EXPERIMENTAL
	select BOOT_ELF32
	select DMA_COHERENT
	select SIBYTE_SB1250
	select SWAP_IO_SPACE
	select SYS_SUPPORTS_BIG_ENDIAN
	select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds's avatar
Linus Torvalds committed
578

579 580 581 582 583 584 585 586 587
config SIBYTE_RHONE
	bool "Support for Sibyte BCM91125E-Rhone"
	depends on EXPERIMENTAL
	select BOOT_ELF32
	select DMA_COHERENT
	select SIBYTE_BCM1125H
	select SWAP_IO_SPACE
	select SYS_SUPPORTS_BIG_ENDIAN
	select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds's avatar
Linus Torvalds committed
588

589 590 591 592
config SIBYTE_CARMEL
	bool "Support for Sibyte BCM91120x-Carmel"
	depends on EXPERIMENTAL
	select BOOT_ELF32
Pete Popov's avatar
Pete Popov committed
593
	select DMA_COHERENT
594 595 596
	select SIBYTE_BCM1120
	select SWAP_IO_SPACE
	select SYS_SUPPORTS_BIG_ENDIAN
Pete Popov's avatar
Pete Popov committed
597 598
	select SYS_SUPPORTS_LITTLE_ENDIAN

599 600 601 602 603 604 605 606 607 608
config SIBYTE_PTSWARM
	bool "Support for Sibyte BCM91250PT-PTSWARM"
	depends on EXPERIMENTAL
	select BOOT_ELF32
	select DMA_COHERENT
	select SIBYTE_SB1250
	select SWAP_IO_SPACE
	select SYS_SUPPORTS_BIG_ENDIAN
	select SYS_SUPPORTS_HIGHMEM
	select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds's avatar
Linus Torvalds committed
609

610 611 612 613 614 615 616 617 618 619
config SIBYTE_LITTLESUR
	bool "Support for Sibyte BCM91250C2-LittleSur"
	depends on EXPERIMENTAL
	select BOOT_ELF32
	select DMA_COHERENT
	select SIBYTE_SB1250
	select SWAP_IO_SPACE
	select SYS_SUPPORTS_BIG_ENDIAN
	select SYS_SUPPORTS_HIGHMEM
	select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds's avatar
Linus Torvalds committed
620

621 622 623 624 625 626 627 628 629
config SIBYTE_CRHINE
	bool "Support for Sibyte BCM91120C-CRhine"
	depends on EXPERIMENTAL
	select BOOT_ELF32
	select DMA_COHERENT
	select SIBYTE_BCM1120
	select SWAP_IO_SPACE
	select SYS_SUPPORTS_BIG_ENDIAN
	select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds's avatar
Linus Torvalds committed
630

631 632 633 634 635 636 637 638 639 640
config SIBYTE_CRHONE
	bool "Support for Sibyte BCM91125C-CRhone"
	depends on EXPERIMENTAL
	select BOOT_ELF32
	select DMA_COHERENT
	select SIBYTE_BCM1125
	select SWAP_IO_SPACE
	select SYS_SUPPORTS_BIG_ENDIAN
	select SYS_SUPPORTS_HIGHMEM
	select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds's avatar
Linus Torvalds committed
641 642 643 644 645

config SNI_RM200_PCI
	bool "Support for SNI RM200 PCI"
	select ARC
	select ARC32
646
	select ARCH_MAY_HAVE_PC_FDC
Linus Torvalds's avatar
Linus Torvalds committed
647 648 649 650
	select BOOT_ELF32
	select DMA_NONCOHERENT
	select GENERIC_ISA_DMA
	select HAVE_STD_PC_SERIAL_PORT
651
	select HW_HAS_EISA
Linus Torvalds's avatar
Linus Torvalds committed
652 653 654
	select HW_HAS_PCI
	select I8259
	select ISA
655 656
	select SYS_SUPPORTS_32BIT_KERNEL
	select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
657
	select SYS_SUPPORTS_BIG_ENDIAN if EXPERIMENTAL
658
	select SYS_SUPPORTS_HIGHMEM
659
	select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds's avatar
Linus Torvalds committed
660 661 662 663 664 665
	help
	  The SNI RM200 PCI was a MIPS-based platform manufactured by Siemens
	  Nixdorf Informationssysteme (SNI), parent company of Pyramid
	  Technology and now in turn merged with Fujitsu.  Say Y here to
	  support this machine type.

666 667 668 669 670 671 672 673 674 675
config TOSHIBA_JMR3927
	bool "Support for Toshiba JMR-TX3927 board"
	select DMA_NONCOHERENT
	select HW_HAS_PCI
	select MIPS_TX3927
	select SWAP_IO_SPACE
	select SYS_SUPPORTS_32BIT_KERNEL
	select SYS_SUPPORTS_BIG_ENDIAN
	select TOSHIBA_BOARDS

Linus Torvalds's avatar
Linus Torvalds committed
676 677 678 679 680 681 682 683
config TOSHIBA_RBTX4927
	bool "Support for Toshiba TBTX49[23]7 board"
	select DMA_NONCOHERENT
	select HAS_TXX9_SERIAL
	select HW_HAS_PCI
	select I8259
	select ISA
	select SWAP_IO_SPACE
684 685
	select SYS_SUPPORTS_32BIT_KERNEL
	select SYS_SUPPORTS_64BIT_KERNEL
686 687
	select SYS_SUPPORTS_BIG_ENDIAN
	select TOSHIBA_BOARDS
Linus Torvalds's avatar
Linus Torvalds committed
688 689 690 691
	help
	  This Toshiba board is based on the TX4927 processor. Say Y here to
	  support this machine type

692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710
config TOSHIBA_RBTX4938
	bool "Support for Toshiba RBTX4938 board"
	select HAVE_STD_PC_SERIAL_PORT
	select DMA_NONCOHERENT
	select GENERIC_ISA_DMA
	select HAS_TXX9_SERIAL
	select HW_HAS_PCI
	select I8259
	select ISA
	select SWAP_IO_SPACE
	select SYS_SUPPORTS_32BIT_KERNEL
	select SYS_SUPPORTS_LITTLE_ENDIAN
	select SYS_SUPPORTS_BIG_ENDIAN
	select TOSHIBA_BOARDS
	help
	  This Toshiba board is based on the TX4938 processor. Say Y here to
	  support this machine type

endchoice
Linus Torvalds's avatar
Linus Torvalds committed
711

712 713 714 715 716 717 718
source "arch/mips/ddb5xxx/Kconfig"
source "arch/mips/gt64120/ev64120/Kconfig"
source "arch/mips/jazz/Kconfig"
source "arch/mips/ite-boards/Kconfig"
source "arch/mips/lasat/Kconfig"
source "arch/mips/momentum/Kconfig"
source "arch/mips/pmc-sierra/Kconfig"
719
source "arch/mips/sgi-ip27/Kconfig"
720
source "arch/mips/sibyte/Kconfig"
721
source "arch/mips/tx4927/Kconfig"
722
source "arch/mips/tx4938/Kconfig"
723
source "arch/mips/vr41xx/Kconfig"
724
source "arch/mips/philips/pnx8550/common/Kconfig"
725

726 727
endmenu

Linus Torvalds's avatar
Linus Torvalds committed
728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744
config RWSEM_GENERIC_SPINLOCK
	bool
	default y

config RWSEM_XCHGADD_ALGORITHM
	bool

config GENERIC_CALIBRATE_DELAY
	bool
	default y

#
# Select some configuration options automatically based on user selections.
#
config ARC
	bool

745 746 747
config ARCH_MAY_HAVE_PC_FDC
	bool

748
config DMA_COHERENT
Linus Torvalds's avatar
Linus Torvalds committed
749 750
	bool

751
config DMA_IP27
Linus Torvalds's avatar
Linus Torvalds committed
752 753
	bool

754 755 756 757 758 759 760 761 762
config DMA_IP32
	bool
	select DMA_NEED_PCI_MAP_STATE

config DMA_NONCOHERENT
	bool
	select DMA_NEED_PCI_MAP_STATE

config DMA_NEED_PCI_MAP_STATE
Linus Torvalds's avatar
Linus Torvalds committed
763 764
	bool

765 766 767
config OWN_DMA
	bool

Linus Torvalds's avatar
Linus Torvalds committed
768 769 770 771 772 773 774 775 776 777 778 779
config EARLY_PRINTK
	bool

config GENERIC_ISA_DMA
	bool

config I8259
	bool

config LIMITED_DMA
	bool
	select HIGHMEM
780
	select SYS_SUPPORTS_HIGHMEM
Linus Torvalds's avatar
Linus Torvalds committed
781 782 783 784 785 786 787 788 789 790 791 792 793

config MIPS_BONITO64
	bool

config MIPS_MSC
	bool

config MIPS_NILE4
	bool

config MIPS_DISABLE_OBSOLETE_IDE
	bool

794 795 796 797 798 799 800
#
# Endianess selection.  Suffiently obscure so many users don't know what to
# answer,so we try hard to limit the available choices.  Also the use of a
# choice statement should be more obvious to the user.
#
choice
	prompt "Endianess selection"
Linus Torvalds's avatar
Linus Torvalds committed
801 802
	help
	  Some MIPS machines can be configured for either little or big endian
803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823
	  byte order. These modes require different kernels and a different
	  Linux distribution.  In general there is one prefered byteorder for a
	  particular system but some systems are just as commonly used in the
	  one or the other endianess.

config CPU_BIG_ENDIAN
	bool "Big endian"
	depends on SYS_SUPPORTS_BIG_ENDIAN

config CPU_LITTLE_ENDIAN
	bool "Little endian"
	depends on SYS_SUPPORTS_LITTLE_ENDIAN
	help

endchoice

config SYS_SUPPORTS_BIG_ENDIAN
	bool

config SYS_SUPPORTS_LITTLE_ENDIAN
	bool
Linus Torvalds's avatar
Linus Torvalds committed
824 825 826 827 828 829 830

config IRQ_CPU
	bool

config IRQ_CPU_RM7K
	bool

831 832 833
config IRQ_CPU_RM9K
	bool

Linus Torvalds's avatar
Linus Torvalds committed
834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857
config IRQ_MV64340
	bool

config DDB5XXX_COMMON
	bool

config MIPS_BOARDS_GEN
	bool

config MIPS_GT64111
	bool

config MIPS_GT64120
	bool

config MIPS_TX3927
	bool
	select HAS_TXX9_SERIAL

config PCI_MARVELL
	bool

config ITE_BOARD_GEN
	bool
858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881

config SOC_AU1000
	bool
	select SOC_AU1X00

config SOC_AU1100
	bool
	select SOC_AU1X00

config SOC_AU1500
	bool
	select SOC_AU1X00

config SOC_AU1550
	bool
	select SOC_AU1X00

config SOC_AU1200
	bool
	select SOC_AU1X00

config SOC_AU1X00
	bool
	select SYS_SUPPORTS_32BIT_KERNEL
Linus Torvalds's avatar
Linus Torvalds committed
882

883 884 885 886 887 888 889 890 891 892
config PNX8550
	bool
	select SOC_PNX8550

config SOC_PNX8550
	bool
	select SYS_SUPPORTS_32BIT_KERNEL
	select DMA_NONCOHERENT
	select HW_HAS_PCI

Linus Torvalds's avatar
Linus Torvalds committed
893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917
config SWAP_IO_SPACE
	bool

#
# Unfortunately not all GT64120 systems run the chip at the same clock.
# As the user for the clock rate and try to minimize the available options.
#
choice
	prompt "Galileo Chip Clock"
	#default SYSCLK_83 if MIPS_EV64120
	depends on MIPS_EV64120 || MOMENCO_OCELOT || MOMENCO_OCELOT_G
	default SYSCLK_83 if MIPS_EV64120
	default SYSCLK_100 if MOMENCO_OCELOT || MOMENCO_OCELOT_G

config SYSCLK_75
	bool "75" if MIPS_EV64120

config SYSCLK_83
	bool "83.3" if MIPS_EV64120

config SYSCLK_100
	bool "100" if MIPS_EV64120 || MOMENCO_OCELOT || MOMENCO_OCELOT_G

endchoice

918 919 920
config ARC32
	bool

Linus Torvalds's avatar
Linus Torvalds committed
921 922 923 924 925 926 927
config AU1X00_USB_DEVICE
	bool
	depends on MIPS_PB1500 || MIPS_PB1100 || MIPS_PB1000
	default n

config MIPS_GT96100
	bool
928
	select MIPS_GT64120
Linus Torvalds's avatar
Linus Torvalds committed
929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980

config IT8172_CIR
	bool
	depends on MIPS_ITE8172 || MIPS_IVR
	default y

config IT8712
	bool
	depends on MIPS_ITE8172
	default y

config BOOT_ELF32
	bool

config MIPS_L1_CACHE_SHIFT
	int
	default "4" if MACH_DECSTATION
	default "7" if SGI_IP27
	default "5"

config HAVE_STD_PC_SERIAL_PORT
	bool

config ARC_CONSOLE
	bool "ARC console support"
	depends on SGI_IP22 || SNI_RM200_PCI

config ARC_MEMORY
	bool
	depends on MACH_JAZZ || SNI_RM200_PCI || SGI_IP32
	default y

config ARC_PROMLIB
	bool
	depends on MACH_JAZZ || SNI_RM200_PCI || SGI_IP22 || SGI_IP32
	default y

config ARC64
	bool

config BOOT_ELF64
	bool

config TOSHIBA_BOARDS
	bool

menu "CPU selection"

choice
	prompt "CPU type"
	default CPU_R4X00

981 982 983
config CPU_MIPS32_R1
	bool "MIPS32 Release 1"
	select CPU_HAS_PREFETCH
984
	select CPU_SUPPORTS_32BIT_KERNEL
Ralf Baechle's avatar
Ralf Baechle committed
985
	help
986
	  Choose this option to build a kernel for release 1 or later of the
Ralf Baechle's avatar
Ralf Baechle committed
987 988 989 990 991 992 993 994 995 996 997 998
	  MIPS32 architecture.  Most modern embedded systems with a 32-bit
	  MIPS processor are based on a MIPS32 processor.  If you know the
	  specific type of processor in your system, choose those that one
	  otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
	  Release 2 of the MIPS32 architecture is available since several
	  years so chances are you even have a MIPS32 Release 2 processor
	  in which case you should choose CPU_MIPS32_R2 instead for better
	  performance.

config CPU_MIPS32_R2
	bool "MIPS32 Release 2"
	select CPU_HAS_PREFETCH
999
	select CPU_SUPPORTS_32BIT_KERNEL
1000
	help
1001
	  Choose this option to build a kernel for release 2 or later of the
1002 1003 1004 1005 1006 1007 1008
	  MIPS32 architecture.  Most modern embedded systems with a 32-bit
	  MIPS processor are based on a MIPS32 processor.  If you know the
	  specific type of processor in your system, choose those that one
	  otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.

config CPU_MIPS64_R1
	bool "MIPS64 Release 1"
1009
	select CPU_HAS_PREFETCH
1010 1011
	select CPU_SUPPORTS_32BIT_KERNEL
	select CPU_SUPPORTS_64BIT_KERNEL
1012 1013 1014 1015 1016 1017
	help
	  Choose this option to build a kernel for release 1 or later of the
	  MIPS64 architecture.  Many modern embedded systems with a 64-bit
	  MIPS processor are based on a MIPS64 processor.  If you know the
	  specific type of processor in your system, choose those that one
	  otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
Ralf Baechle's avatar
Ralf Baechle committed
1018 1019 1020 1021 1022 1023 1024
	  Release 2 of the MIPS64 architecture is available since several
	  years so chances are you even have a MIPS64 Release 2 processor
	  in which case you should choose CPU_MIPS64_R2 instead for better
	  performance.

config CPU_MIPS64_R2
	bool "MIPS64 Release 2"
1025
	select CPU_HAS_PREFETCH
Ralf Baechle's avatar
Ralf Baechle committed
1026 1027 1028 1029 1030 1031 1032 1033
	select CPU_SUPPORTS_32BIT_KERNEL
	select CPU_SUPPORTS_64BIT_KERNEL
	help
	  Choose this option to build a kernel for release 2 or later of the
	  MIPS64 architecture.  Many modern embedded systems with a 64-bit
	  MIPS processor are based on a MIPS64 processor.  If you know the
	  specific type of processor in your system, choose those that one
	  otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
Linus Torvalds's avatar
Linus Torvalds committed
1034 1035 1036

config CPU_R3000
	bool "R3000"
1037
	select CPU_SUPPORTS_32BIT_KERNEL
1038
	select CPU_SUPPORTS_HIGHMEM
Linus Torvalds's avatar
Linus Torvalds committed
1039 1040 1041 1042 1043 1044 1045 1046 1047 1048
	help
	  Please make sure to pick the right CPU type. Linux/MIPS is not
	  designed to be generic, i.e. Kernels compiled for R3000 CPUs will
	  *not* work on R4000 machines and vice versa.  However, since most
	  of the supported machines have an R4000 (or similar) CPU, R4x00
	  might be a safe bet.  If the resulting kernel does not work,
	  try to recompile with R3000.

config CPU_TX39XX
	bool "R39XX"
1049
	select CPU_SUPPORTS_32BIT_KERNEL
Linus Torvalds's avatar
Linus Torvalds committed
1050 1051 1052

config CPU_VR41XX
	bool "R41xx"
1053 1054
	select CPU_SUPPORTS_32BIT_KERNEL
	select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds's avatar
Linus Torvalds committed
1055
	help
1056
	  The options selects support for the NEC VR4100 series of processors.
Linus Torvalds's avatar
Linus Torvalds committed
1057 1058 1059 1060 1061 1062
	  Only choose this option if you have one of these processors as a
	  kernel built with this option will not run on any other type of
	  processor or vice versa.

config CPU_R4300
	bool "R4300"
1063 1064
	select CPU_SUPPORTS_32BIT_KERNEL
	select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds's avatar
Linus Torvalds committed
1065 1066 1067 1068 1069
	help
	  MIPS Technologies R4300-series processors.

config CPU_R4X00
	bool "R4x00"
1070 1071
	select CPU_SUPPORTS_32BIT_KERNEL
	select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds's avatar
Linus Torvalds committed
1072 1073 1074 1075 1076 1077
	help
	  MIPS Technologies R4000-series processors other than 4300, including
	  the R4000, R4400, R4600, and 4700.

config CPU_TX49XX
	bool "R49XX"
1078 1079
	select CPU_SUPPORTS_32BIT_KERNEL
	select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds's avatar
Linus Torvalds committed
1080 1081 1082

config CPU_R5000
	bool "R5000"
1083 1084
	select CPU_SUPPORTS_32BIT_KERNEL
	select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds's avatar
Linus Torvalds committed
1085 1086 1087 1088 1089
	help
	  MIPS Technologies R5000-series processors other than the Nevada.

config CPU_R5432
	bool "R5432"
1090 1091
	select CPU_SUPPORTS_32BIT_KERNEL
	select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds's avatar
Linus Torvalds committed
1092 1093 1094

config CPU_R6000
	bool "R6000"
1095 1096
	depends on EXPERIMENTAL
	select CPU_SUPPORTS_32BIT_KERNEL
Linus Torvalds's avatar
Linus Torvalds committed
1097 1098 1099 1100 1101 1102
	help
	  MIPS Technologies R6000 and R6000A series processors.  Note these
	  processors are extremly rare and the support for them is incomplete.

config CPU_NEVADA
	bool "RM52xx"
1103 1104
	select CPU_SUPPORTS_32BIT_KERNEL
	select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds's avatar
Linus Torvalds committed
1105 1106 1107 1108 1109
	help
	  QED / PMC-Sierra RM52xx-series ("Nevada") processors.

config CPU_R8000
	bool "R8000"
1110
	depends on EXPERIMENTAL
1111
	select CPU_HAS_PREFETCH
1112
	select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds's avatar
Linus Torvalds committed
1113 1114 1115 1116 1117 1118
	help
	  MIPS Technologies R8000 processors.  Note these processors are
	  uncommon and the support for them is incomplete.

config CPU_R10000
	bool "R10000"
1119
	select CPU_HAS_PREFETCH
1120 1121
	select CPU_SUPPORTS_32BIT_KERNEL
	select CPU_SUPPORTS_64BIT_KERNEL
1122
	select CPU_SUPPORTS_HIGHMEM
Linus Torvalds's avatar
Linus Torvalds committed
1123 1124 1125 1126 1127
	help
	  MIPS Technologies R10000-series processors.

config CPU_RM7000
	bool "RM7000"
1128
	select CPU_HAS_PREFETCH
1129 1130
	select CPU_SUPPORTS_32BIT_KERNEL
	select CPU_SUPPORTS_64BIT_KERNEL
1131
	select CPU_SUPPORTS_HIGHMEM
Linus Torvalds's avatar
Linus Torvalds committed
1132 1133 1134

config CPU_RM9000
	bool "RM9000"
1135
	select CPU_HAS_PREFETCH
1136 1137
	select CPU_SUPPORTS_32BIT_KERNEL
	select CPU_SUPPORTS_64BIT_KERNEL
1138
	select CPU_SUPPORTS_HIGHMEM
Linus Torvalds's avatar
Linus Torvalds committed
1139 1140 1141

config CPU_SB1
	bool "SB1"
1142 1143
	select CPU_SUPPORTS_32BIT_KERNEL
	select CPU_SUPPORTS_64BIT_KERNEL
1144
	select CPU_SUPPORTS_HIGHMEM
Linus Torvalds's avatar
Linus Torvalds committed
1145 1146 1147

endchoice

1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205
endmenu

#
# These two indicate any levelof the MIPS32 and MIPS64 architecture
#
config CPU_MIPS32
	bool
	default y if CPU_MIPS32_R1 || CPU_MIPS32_R2

config CPU_MIPS64
	bool
	default y if CPU_MIPS64_R1 || CPU_MIPS64_R2

#
# These two indicate the revision of the architecture, either 32 bot 64 bit.
#
config CPU_MIPSR1
	bool
	default y if CPU_MIPS32_R1 || CPU_MIPS64_R1

config CPU_MIPSR2
	bool
	default y if CPU_MIPS32_R2 || CPU_MIPS64_R2

config SYS_SUPPORTS_32BIT_KERNEL
	bool
config SYS_SUPPORTS_64BIT_KERNEL
	bool
config CPU_SUPPORTS_32BIT_KERNEL
	bool
config CPU_SUPPORTS_64BIT_KERNEL
	bool

menu "Kernel type"

choice

	prompt "Kernel code model"
	help
	  You should only select this option if you have a workload that
	  actually benefits from 64-bit processing or if your machine has
	  large memory.  You will only be presented a single option in this
	  menu if your system does not support both 32-bit and 64-bit kernels.

config 32BIT
	bool "32-bit kernel"
	depends on CPU_SUPPORTS_32BIT_KERNEL && SYS_SUPPORTS_32BIT_KERNEL
	select TRAD_SIGNALS
	help
	  Select this option if you want to build a 32-bit kernel.
config 64BIT
	bool "64-bit kernel"
	depends on CPU_SUPPORTS_64BIT_KERNEL && SYS_SUPPORTS_64BIT_KERNEL
	help
	  Select this option if you want to build a 64-bit kernel.

endchoice

Linus Torvalds's avatar
Linus Torvalds committed
1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273
choice
	prompt "Kernel page size"
	default PAGE_SIZE_4KB

config PAGE_SIZE_4KB
	bool "4kB"
	help
	 This option select the standard 4kB Linux page size.  On some
	 R3000-family processors this is the only available page size.  Using
	 4kB page size will minimize memory consumption and is therefore
	 recommended for low memory systems.

config PAGE_SIZE_8KB
	bool "8kB"
	depends on EXPERIMENTAL && CPU_R8000
	help
	  Using 8kB page size will result in higher performance kernel at
	  the price of higher memory consumption.  This option is available
	  only on the R8000 processor.  Not that at the time of this writing
	  this option is still high experimental; there are also issues with
	  compatibility of user applications.

config PAGE_SIZE_16KB
	bool "16kB"
	depends on EXPERIMENTAL && !CPU_R3000 && !CPU_TX39XX
	help
	  Using 16kB page size will result in higher performance kernel at
	  the price of higher memory consumption.  This option is available on
	  all non-R3000 family processor.  Not that at the time of this
	  writing this option is still high experimental; there are also
	  issues with compatibility of user applications.

config PAGE_SIZE_64KB
	bool "64kB"
	depends on EXPERIMENTAL && !CPU_R3000 && !CPU_TX39XX
	help
	  Using 64kB page size will result in higher performance kernel at
	  the price of higher memory consumption.  This option is available on
	  all non-R3000 family processor.  Not that at the time of this
	  writing this option is still high experimental; there are also
	  issues with compatibility of user applications.

endchoice

config BOARD_SCACHE
	bool

config IP22_CPU_SCACHE
	bool
	select BOARD_SCACHE

config R5000_CPU_SCACHE
	bool
	select BOARD_SCACHE

config RM7000_CPU_SCACHE
	bool
	select BOARD_SCACHE

config SIBYTE_DMA_PAGEOPS
	bool "Use DMA to clear/copy pages"
	depends on CPU_SB1
	help
	  Instead of using the CPU to zero and copy pages, use a Data Mover
	  channel.  These DMA channels are otherwise unused by the standard
	  SiByte Linux port.  Seems to give a small performance benefit.

config CPU_HAS_PREFETCH
1274
	bool
Linus Torvalds's avatar
Linus Torvalds committed
1275

1276 1277 1278
config MIPS_MT
	bool "Enable MIPS MT"

1279 1280 1281 1282 1283 1284 1285 1286
choice
	prompt "MIPS MT options"
	depends on MIPS_MT

config MIPS_MT_SMP
	bool "Use 1 TC on each available VPE for SMP"
	select SMP

1287 1288 1289 1290 1291 1292 1293
config MIPS_VPE_LOADER
	bool "VPE loader support."
	depends on MIPS_MT
	help
	  Includes a loader for loading an elf relocatable object
	  onto another VPE and running it.

1294 1295
endchoice

1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307
config MIPS_VPE_LOADER_TOM
	bool "Load VPE program into memory hidden from linux"
	depends on MIPS_VPE_LOADER
	default y
	help
	  The loader can use memory that is present but has been hidden from
	  Linux using the kernel command line option "mem=xxMB". It's up to
	  you to ensure the amount you put in the option and the space your
	  program requires is less or equal to the amount physically present.

# this should possibly be in drivers/char, but it is rather cpu related. Hmmm
config MIPS_VPE_APSP_API
1308 1309 1310
	bool "Enable support for AP/SP API (RTLX)"
	depends on MIPS_VPE_LOADER
	help
1311

Linus Torvalds's avatar
Linus Torvalds committed
1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328
config SB1_PASS_1_WORKAROUNDS
	bool
	depends on CPU_SB1_PASS_1
	default y

config SB1_PASS_2_WORKAROUNDS
	bool
	depends on CPU_SB1 && (CPU_SB1_PASS_2_2 || CPU_SB1_PASS_2)
	default y

config SB1_PASS_2_1_WORKAROUNDS
	bool
	depends on CPU_SB1 && CPU_SB1_PASS_2
	default y

config 64BIT_PHYS_ADDR
	bool "Support for 64-bit physical address space"
1329
	depends on (CPU_R4X00 || CPU_R5000 || CPU_RM7000 || CPU_RM9000 || CPU_R10000 || CPU_SB1 || CPU_MIPS32_R1 || CPU_MIPS64_R1) && 32BIT
Linus Torvalds's avatar
Linus Torvalds committed
1330 1331 1332

config CPU_ADVANCED
	bool "Override CPU Options"
1333
	depends on 32BIT
Linus Torvalds's avatar
Linus Torvalds committed
1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351
	help
	  Saying yes here allows you to select support for various features
	  your CPU may or may not have.  Most people should say N here.

config CPU_HAS_LLSC
	bool "ll/sc Instructions available" if CPU_ADVANCED
	default y if !CPU_ADVANCED && !CPU_R3000 && !CPU_VR41XX && !CPU_TX39XX
	help
	  MIPS R4000 series and later provide the Load Linked (ll)
	  and Store Conditional (sc) instructions. More information is
	  available at <http://www.go-ecs.com/mips/miptek1.htm>.

	  Say Y here if your CPU has the ll and sc instructions.  Say Y here
	  for better performance, N if you don't know.  You must say Y here
	  for multiprocessor machines.

config CPU_HAS_LLDSCD
	bool "lld/scd Instructions available" if CPU_ADVANCED
1352
	default y if !CPU_ADVANCED && !CPU_R3000 && !CPU_VR41XX && !CPU_TX39XX && !CPU_MIPS32_R1
Linus Torvalds's avatar
Linus Torvalds committed
1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365
	help
	  Say Y here if your CPU has the lld and scd instructions, the 64-bit
	  equivalents of ll and sc.  Say Y here for better performance, N if
	  you don't know.  You must say Y here for multiprocessor machines.

config CPU_HAS_WB
	bool "Writeback Buffer available" if CPU_ADVANCED
	default y if !CPU_ADVANCED && CPU_R3000 && MACH_DECSTATION
	help
	  Say N here for slightly better performance.  You must say Y here for
	  machines which require flushing of write buffers in software.  Saying
	  Y is the safe option; N may result in kernel malfunction and crashes.

1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394
menu "MIPSR2 Interrupt handling"
	depends on CPU_MIPSR2 && CPU_ADVANCED

config CPU_MIPSR2_IRQ_VI
	bool "Vectored interrupt mode"
	help
	   Vectored interrupt mode allowing faster dispatching of interrupts.
	   The board support code needs to be written to take advantage of this
	   mode.  Compatibility code is included to allow the kernel to run on
	   a CPU that does not support vectored interrupts.  It's safe to
	   say Y here.

config CPU_MIPSR2_IRQ_EI
	bool "External interrupt controller mode"
	help
	   Extended interrupt mode takes advantage of an external interrupt
	   controller to allow fast dispatching from many possible interrupt
	   sources. Say N unless you know that external interrupt support is
	   required.

config CPU_MIPSR2_SRS
	bool "Make shadow set registers available for interrupt handlers"
	depends on CPU_MIPSR2_IRQ_VI || CPU_MIPSR2_IRQ_EI
	help
	   Allow the kernel to use shadow register sets for fast interrupts.
	   Interrupt handlers must be specially written to use shadow sets.
	   Say N unless you know that shadow register set upport is needed.
endmenu

Linus Torvalds's avatar
Linus Torvalds committed
1395 1396 1397 1398 1399
config CPU_HAS_SYNC
	bool
	depends on !CPU_R3000
	default y

1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410
#
# Use the generic interrupt handling code in kernel/irq/:
#
config GENERIC_HARDIRQS
	bool
	default y

config GENERIC_IRQ_PROBE
	bool
	default y

Linus Torvalds's avatar
Linus Torvalds committed
1411 1412 1413 1414 1415 1416 1417 1418 1419
#
# - Highmem only makes sense for the 32-bit kernel.
# - The current highmem code will only work properly on physically indexed
#   caches such as R3000, SB1, R7000 or those that look like they're virtually
#   indexed such as R4000/R4400 SC and MC versions or R10000.  So for the
#   moment we protect the user and offer the highmem option only on machines
#   where it's known to be safe.  This will not offer highmem on a few systems
#   such as MIPS32 and MIPS64 CPUs which may have virtual and physically
#   indexed CPUs but we're playing safe.