blob: 4c6ba7b30a68e4956708db406994d3603a9eb8b3 [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
Ralf Baechle90b02342007-10-11 23:46:09 +01006 select RTC_LIB
Linus Torvalds1da177e2005-04-16 15:20:36 -07007
Linus Torvalds1da177e2005-04-16 15:20:36 -07008mainmenu "Linux/MIPS Kernel Configuration"
9
Linus Torvalds1da177e2005-04-16 15:20:36 -070010menu "Machine selection"
11
Christoph Lameter5ac6da62007-02-10 01:43:14 -080012config ZONE_DMA
13 bool
Christoph Lameter5ac6da62007-02-10 01:43:14 -080014
Ralf Baechle5e83d432005-10-29 19:32:41 +010015choice
16 prompt "System type"
17 default SGI_IP22
Linus Torvalds1da177e2005-04-16 15:20:36 -070018
Yoichi Yuasac3543e22007-05-11 20:44:30 +090019config MACH_ALCHEMY
20 bool "Alchemy processor based machines"
Linus Torvalds1da177e2005-04-16 15:20:36 -070021
Ralf Baechle35189fa2006-06-18 16:39:46 +010022config BASLER_EXCITE
Thomas Koellerbe915892007-02-23 01:40:34 +010023 bool "Basler eXcite smart camera"
Ralf Baechle42f77542007-10-18 17:48:11 +010024 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +000025 select CSRC_R4K
Ralf Baechle35189fa2006-06-18 16:39:46 +010026 select DMA_COHERENT
27 select HW_HAS_PCI
28 select IRQ_CPU
29 select IRQ_CPU_RM7K
30 select IRQ_CPU_RM9K
thomas@koeller.dyndns.org663c3d92006-08-27 13:51:48 +020031 select MIPS_RM9122
Ralf Baechle35189fa2006-06-18 16:39:46 +010032 select SYS_HAS_CPU_RM9000
33 select SYS_SUPPORTS_32BIT_KERNEL
Ralf Baechle35189fa2006-06-18 16:39:46 +010034 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechlecc801072007-02-17 02:58:39 +000035 select SYS_SUPPORTS_KGDB
Ralf Baechle35189fa2006-06-18 16:39:46 +010036 help
37 The eXcite is a smart camera platform manufactured by
Thomas Koellerbe915892007-02-23 01:40:34 +010038 Basler Vision Technologies AG.
Ralf Baechle35189fa2006-06-18 16:39:46 +010039
40config BASLER_EXCITE_PROTOTYPE
41 bool "Support for pre-release units"
42 depends on BASLER_EXCITE
43 default n
44 help
45 Pre-series (prototype) units are different from later ones in
46 some ways. Select this option if you have one of these. Please
47 note that a kernel built with this option selected will not be
48 able to run on normal units.
49
Aurelien Jarno1c0c13e2007-09-25 15:40:12 +020050config BCM47XX
51 bool "BCM47XX based boards"
Ralf Baechle42f77542007-10-18 17:48:11 +010052 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +000053 select CSRC_R4K
Aurelien Jarno1c0c13e2007-09-25 15:40:12 +020054 select DMA_NONCOHERENT
55 select HW_HAS_PCI
56 select IRQ_CPU
57 select SYS_HAS_CPU_MIPS32_R1
58 select SYS_SUPPORTS_32BIT_KERNEL
59 select SYS_SUPPORTS_LITTLE_ENDIAN
60 select SSB
61 select SSB_DRIVER_MIPS
62 select GENERIC_GPIO
Aurelien Jarno25e5fb92007-09-25 15:41:24 +020063 select SYS_HAS_EARLY_PRINTK
64 select CFE
Aurelien Jarno1c0c13e2007-09-25 15:40:12 +020065 help
66 Support for BCM47XX based boards
67
Linus Torvalds1da177e2005-04-16 15:20:36 -070068config MIPS_COBALT
Martin Michlmayr3fa986f2006-05-09 23:34:53 +020069 bool "Cobalt Server"
Ralf Baechle42f77542007-10-18 17:48:11 +010070 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +000071 select CSRC_R4K
Yoichi Yuasa1097c6a2007-10-22 19:43:15 +090072 select CEVT_GT641XX
Linus Torvalds1da177e2005-04-16 15:20:36 -070073 select DMA_NONCOHERENT
74 select HW_HAS_PCI
Ralf Baechled865bea2007-10-11 23:46:10 +010075 select I8253
Linus Torvalds1da177e2005-04-16 15:20:36 -070076 select I8259
77 select IRQ_CPU
Yoichi Yuasad5ab1a62007-09-13 23:51:26 +090078 select IRQ_GT641XX
Yoichi Yuasa252161e2007-03-14 21:51:26 +090079 select PCI_GT64XXX_PCI0
Ralf Baechle7cf80532005-10-20 22:33:09 +010080 select SYS_HAS_CPU_NEVADA
Yoichi Yuasa0a22e0d2007-03-02 12:42:33 +090081 select SYS_HAS_EARLY_PRINTK
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -070082 select SYS_SUPPORTS_32BIT_KERNEL
83 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
Ralf Baechle5e83d432005-10-29 19:32:41 +010084 select SYS_SUPPORTS_LITTLE_ENDIAN
Atsushi Nemoto9fd32cf2006-12-08 01:55:07 +090085 select GENERIC_HARDIRQS_NO__DO_IRQ
Linus Torvalds1da177e2005-04-16 15:20:36 -070086
87config MACH_DECSTATION
Martin Michlmayr3fa986f2006-05-09 23:34:53 +020088 bool "DECstations"
Linus Torvalds1da177e2005-04-16 15:20:36 -070089 select BOOT_ELF32
Ralf Baechle42f77542007-10-18 17:48:11 +010090 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +000091 select CSRC_R4K
Linus Torvalds1da177e2005-04-16 15:20:36 -070092 select DMA_NONCOHERENT
Maciej W. Rozyckid388d682007-05-29 15:08:07 +010093 select NO_IOPORT
Linus Torvalds1da177e2005-04-16 15:20:36 -070094 select IRQ_CPU
Ralf Baechle7cf80532005-10-20 22:33:09 +010095 select SYS_HAS_CPU_R3000
96 select SYS_HAS_CPU_R4X00
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -070097 select SYS_SUPPORTS_32BIT_KERNEL
98 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
Ralf Baechle5e83d432005-10-29 19:32:41 +010099 select SYS_SUPPORTS_LITTLE_ENDIAN
Atsushi Nemoto1723b4a2006-06-20 00:19:13 +0900100 select SYS_SUPPORTS_128HZ
101 select SYS_SUPPORTS_256HZ
102 select SYS_SUPPORTS_1024HZ
Ralf Baechle5e83d432005-10-29 19:32:41 +0100103 help
Linus Torvalds1da177e2005-04-16 15:20:36 -0700104 This enables support for DEC's MIPS based workstations. For details
105 see the Linux/MIPS FAQ on <http://www.linux-mips.org/> and the
106 DECstation porting pages on <http://decstation.unix-ag.org/>.
107
108 If you have one of the following DECstation Models you definitely
109 want to choose R4xx0 for the CPU Type:
110
Ralf Baechle93088162007-08-29 14:21:45 +0100111 DECstation 5000/50
112 DECstation 5000/150
113 DECstation 5000/260
114 DECsystem 5900/260
Linus Torvalds1da177e2005-04-16 15:20:36 -0700115
116 otherwise choose R3000.
117
Ralf Baechle5e83d432005-10-29 19:32:41 +0100118config MACH_JAZZ
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200119 bool "Jazz family of machines"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100120 select ARC
121 select ARC32
122 select ARCH_MAY_HAVE_PC_FDC
Ralf Baechle42f77542007-10-18 17:48:11 +0100123 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000124 select CSRC_R4K
Ralf Baechle5e83d432005-10-29 19:32:41 +0100125 select GENERIC_ISA_DMA
Thomas Bogendoerferea202c62007-08-25 11:01:50 +0200126 select IRQ_CPU
Ralf Baechled865bea2007-10-11 23:46:10 +0100127 select I8253
Ralf Baechle5e83d432005-10-29 19:32:41 +0100128 select I8259
129 select ISA
Ralf Baechlede61b542007-07-12 17:41:23 +0100130 select PCSPEAKER
Ralf Baechle7cf80532005-10-20 22:33:09 +0100131 select SYS_HAS_CPU_R4X00
Ralf Baechle5e83d432005-10-29 19:32:41 +0100132 select SYS_SUPPORTS_32BIT_KERNEL
133 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
Atsushi Nemoto1723b4a2006-06-20 00:19:13 +0900134 select SYS_SUPPORTS_100HZ
Atsushi Nemoto9fd32cf2006-12-08 01:55:07 +0900135 select GENERIC_HARDIRQS_NO__DO_IRQ
Linus Torvalds1da177e2005-04-16 15:20:36 -0700136 help
Ralf Baechle5e83d432005-10-29 19:32:41 +0100137 This a family of machines based on the MIPS R4030 chipset which was
138 used by several vendors to build RISC/os and Windows NT workstations.
139 Members include the Acer PICA, MIPS Magnum 4000, MIPS Millenium and
140 Olivetti M700-10 workstations.
141
Brian Murphy1f21d2b2007-08-21 22:34:16 +0200142config LASAT
143 bool "LASAT Networks platforms"
Ralf Baechle42f77542007-10-18 17:48:11 +0100144 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000145 select CSRC_R4K
Brian Murphy1f21d2b2007-08-21 22:34:16 +0200146 select DMA_NONCOHERENT
147 select SYS_HAS_EARLY_PRINTK
148 select HW_HAS_PCI
Ralf Baechlea5ccfe5c12007-10-14 23:49:33 +0100149 select IRQ_CPU
Brian Murphy1f21d2b2007-08-21 22:34:16 +0200150 select PCI_GT64XXX_PCI0
151 select MIPS_NILE4
152 select R5000_CPU_SCACHE
153 select SYS_HAS_CPU_R5000
154 select SYS_SUPPORTS_32BIT_KERNEL
155 select SYS_SUPPORTS_64BIT_KERNEL if BROKEN
156 select SYS_SUPPORTS_LITTLE_ENDIAN
157 select GENERIC_HARDIRQS_NO__DO_IRQ
158
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900159config LEMOTE_FULONG
160 bool "Lemote Fulong mini-PC"
161 select ARCH_SPARSEMEM_ENABLE
Ralf Baechle42f77542007-10-18 17:48:11 +0100162 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000163 select CSRC_R4K
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900164 select SYS_HAS_CPU_LOONGSON2
165 select DMA_NONCOHERENT
166 select BOOT_ELF32
167 select BOARD_SCACHE
168 select HAVE_STD_PC_SERIAL_PORT
169 select HW_HAS_PCI
170 select I8259
171 select ISA
172 select IRQ_CPU
173 select SYS_SUPPORTS_32BIT_KERNEL
174 select SYS_SUPPORTS_64BIT_KERNEL
175 select SYS_SUPPORTS_LITTLE_ENDIAN
176 select SYS_SUPPORTS_HIGHMEM
177 select SYS_HAS_EARLY_PRINTK
178 select GENERIC_HARDIRQS_NO__DO_IRQ
Ralf Baechle23dd6d32007-08-24 16:49:23 +0100179 select GENERIC_ISA_DMA_SUPPORT_BROKEN
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900180 select CPU_HAS_WB
181 help
182 Lemote Fulong mini-PC board based on the Chinese Loongson-2E CPU and
183 an FPGA northbridge
184
Linus Torvalds1da177e2005-04-16 15:20:36 -0700185config MIPS_ATLAS
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200186 bool "MIPS Atlas board"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700187 select BOOT_ELF32
Ralf Baechle42f77542007-10-18 17:48:11 +0100188 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000189 select CSRC_R4K
Linus Torvalds1da177e2005-04-16 15:20:36 -0700190 select DMA_NONCOHERENT
Ralf Baechle36a88532007-03-01 11:56:43 +0000191 select SYS_HAS_EARLY_PRINTK
Ralf Baechle5e83d432005-10-29 19:32:41 +0100192 select IRQ_CPU
Linus Torvalds1da177e2005-04-16 15:20:36 -0700193 select HW_HAS_PCI
Ralf Baechle5e83d432005-10-29 19:32:41 +0100194 select MIPS_BOARDS_GEN
195 select MIPS_BONITO64
Yoichi Yuasa252161e2007-03-14 21:51:26 +0900196 select PCI_GT64XXX_PCI0
Ralf Baechle5e83d432005-10-29 19:32:41 +0100197 select MIPS_MSC
Maciej W. Rozyckif4b7cdb2005-02-12 04:31:49 +0000198 select RM7000_CPU_SCACHE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700199 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100200 select SYS_HAS_CPU_MIPS32_R1
201 select SYS_HAS_CPU_MIPS32_R2
202 select SYS_HAS_CPU_MIPS64_R1
203 select SYS_HAS_CPU_NEVADA
204 select SYS_HAS_CPU_RM7000
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700205 select SYS_SUPPORTS_32BIT_KERNEL
206 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100207 select SYS_SUPPORTS_BIG_ENDIAN
208 select SYS_SUPPORTS_LITTLE_ENDIAN
Ralf Baechlef41ae0b2006-06-05 17:24:46 +0100209 select SYS_SUPPORTS_MULTITHREADING if EXPERIMENTAL
Franck Bui-Huu9693a852007-02-02 17:41:47 +0100210 select SYS_SUPPORTS_SMARTMIPS
Franck Bui-Huue77c2322006-12-01 18:22:27 +0100211 select GENERIC_HARDIRQS_NO__DO_IRQ
Linus Torvalds1da177e2005-04-16 15:20:36 -0700212 help
Maciej W. Rozyckif638d192005-02-02 22:23:46 +0000213 This enables support for the MIPS Technologies Atlas evaluation
Linus Torvalds1da177e2005-04-16 15:20:36 -0700214 board.
215
216config MIPS_MALTA
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200217 bool "MIPS Malta board"
Ralf Baechle61ed242d2005-09-15 08:52:34 +0000218 select ARCH_MAY_HAVE_PC_FDC
Linus Torvalds1da177e2005-04-16 15:20:36 -0700219 select BOOT_ELF32
Ralf Baechle42f77542007-10-18 17:48:11 +0100220 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000221 select CSRC_R4K
Linus Torvalds1da177e2005-04-16 15:20:36 -0700222 select DMA_NONCOHERENT
223 select GENERIC_ISA_DMA
Ralf Baechleaa414df2006-11-30 01:14:51 +0000224 select IRQ_CPU
Linus Torvalds1da177e2005-04-16 15:20:36 -0700225 select HW_HAS_PCI
Ralf Baechled865bea2007-10-11 23:46:10 +0100226 select I8253
Linus Torvalds1da177e2005-04-16 15:20:36 -0700227 select I8259
Ralf Baechle5e83d432005-10-29 19:32:41 +0100228 select MIPS_BOARDS_GEN
229 select MIPS_BONITO64
Chris Dearman9318c512006-06-20 17:15:20 +0100230 select MIPS_CPU_SCACHE
Yoichi Yuasa252161e2007-03-14 21:51:26 +0900231 select PCI_GT64XXX_PCI0
Ralf Baechle5e83d432005-10-29 19:32:41 +0100232 select MIPS_MSC
Linus Torvalds1da177e2005-04-16 15:20:36 -0700233 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100234 select SYS_HAS_CPU_MIPS32_R1
235 select SYS_HAS_CPU_MIPS32_R2
236 select SYS_HAS_CPU_MIPS64_R1
237 select SYS_HAS_CPU_NEVADA
238 select SYS_HAS_CPU_RM7000
Ralf Baechle36a88532007-03-01 11:56:43 +0000239 select SYS_HAS_EARLY_PRINTK
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700240 select SYS_SUPPORTS_32BIT_KERNEL
241 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100242 select SYS_SUPPORTS_BIG_ENDIAN
243 select SYS_SUPPORTS_LITTLE_ENDIAN
Ralf Baechlef41ae0b2006-06-05 17:24:46 +0100244 select SYS_SUPPORTS_MULTITHREADING
Franck Bui-Huu9693a852007-02-02 17:41:47 +0100245 select SYS_SUPPORTS_SMARTMIPS
Linus Torvalds1da177e2005-04-16 15:20:36 -0700246 help
Maciej W. Rozyckif638d192005-02-02 22:23:46 +0000247 This enables support for the MIPS Technologies Malta evaluation
Linus Torvalds1da177e2005-04-16 15:20:36 -0700248 board.
249
250config MIPS_SEAD
Ralf Baechled98cc842007-08-06 10:02:07 +0100251 bool "MIPS SEAD board"
Ralf Baechle42f77542007-10-18 17:48:11 +0100252 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000253 select CSRC_R4K
Linus Torvalds1da177e2005-04-16 15:20:36 -0700254 select IRQ_CPU
255 select DMA_NONCOHERENT
Ralf Baechle36a88532007-03-01 11:56:43 +0000256 select SYS_HAS_EARLY_PRINTK
Ralf Baechle5e83d432005-10-29 19:32:41 +0100257 select MIPS_BOARDS_GEN
Ralf Baechle7cf80532005-10-20 22:33:09 +0100258 select SYS_HAS_CPU_MIPS32_R1
259 select SYS_HAS_CPU_MIPS32_R2
260 select SYS_HAS_CPU_MIPS64_R1
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700261 select SYS_SUPPORTS_32BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100262 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
263 select SYS_SUPPORTS_BIG_ENDIAN
264 select SYS_SUPPORTS_LITTLE_ENDIAN
Franck Bui-Huu9693a852007-02-02 17:41:47 +0100265 select SYS_SUPPORTS_SMARTMIPS
Maciej W. Rozyckif638d192005-02-02 22:23:46 +0000266 help
267 This enables support for the MIPS Technologies SEAD evaluation
268 board.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700269
Ralf Baechlec78cbf42005-09-30 13:59:37 +0100270config MIPS_SIM
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200271 bool 'MIPS simulator (MIPSsim)'
Ralf Baechle42f77542007-10-18 17:48:11 +0100272 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000273 select CSRC_R4K
Ralf Baechlec78cbf42005-09-30 13:59:37 +0100274 select DMA_NONCOHERENT
Ralf Baechle36a88532007-03-01 11:56:43 +0000275 select SYS_HAS_EARLY_PRINTK
Ralf Baechlec78cbf42005-09-30 13:59:37 +0100276 select IRQ_CPU
Marc St-Jean9267a302007-06-14 15:55:31 -0600277 select BOOT_RAW
Ralf Baechle7cf80532005-10-20 22:33:09 +0100278 select SYS_HAS_CPU_MIPS32_R1
279 select SYS_HAS_CPU_MIPS32_R2
Ralf Baechle36a88532007-03-01 11:56:43 +0000280 select SYS_HAS_EARLY_PRINTK
Ralf Baechlec78cbf42005-09-30 13:59:37 +0100281 select SYS_SUPPORTS_32BIT_KERNEL
282 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechlef6e23732007-07-10 17:32:56 +0100283 select SYS_SUPPORTS_MULTITHREADING
Ralf Baechlec78cbf42005-09-30 13:59:37 +0100284 select SYS_SUPPORTS_LITTLE_ENDIAN
285 help
286 This option enables support for MIPS Technologies MIPSsim software
287 emulator.
288
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900289config MARKEINS
290 bool "NEC EMMA2RH Mark-eins"
Ralf Baechle42f77542007-10-18 17:48:11 +0100291 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000292 select CSRC_R4K
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900293 select DMA_NONCOHERENT
294 select HW_HAS_PCI
295 select IRQ_CPU
296 select SWAP_IO_SPACE
297 select SYS_SUPPORTS_32BIT_KERNEL
298 select SYS_SUPPORTS_BIG_ENDIAN
299 select SYS_SUPPORTS_LITTLE_ENDIAN
300 select SYS_HAS_CPU_R5000
301 help
302 This enables support for the R5432-based NEC Mark-eins
303 boards with R5500 CPU.
304
Ralf Baechle5e83d432005-10-29 19:32:41 +0100305config MACH_VR41XX
Yoichi Yuasa74142d62007-04-26 19:45:09 +0900306 bool "NEC VR4100 series based machines"
Ralf Baechle42f77542007-10-18 17:48:11 +0100307 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000308 select CSRC_R4K
Ralf Baechle7cf80532005-10-20 22:33:09 +0100309 select SYS_HAS_CPU_VR41XX
Atsushi Nemoto9fd32cf2006-12-08 01:55:07 +0900310 select GENERIC_HARDIRQS_NO__DO_IRQ
Ralf Baechle5e83d432005-10-29 19:32:41 +0100311
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900312config PNX8550_JBS
313 bool "Philips PNX8550 based JBS board"
314 select PNX8550
315 select SYS_SUPPORTS_LITTLE_ENDIAN
316
317config PNX8550_STB810
318 bool "Philips PNX8550 based STB810 board"
319 select PNX8550
320 select SYS_SUPPORTS_LITTLE_ENDIAN
321
Marc St-Jean9267a302007-06-14 15:55:31 -0600322config PMC_MSP
323 bool "PMC-Sierra MSP chipsets"
324 depends on EXPERIMENTAL
325 select DMA_NONCOHERENT
326 select SWAP_IO_SPACE
327 select NO_EXCEPT_FILL
328 select BOOT_RAW
329 select SYS_HAS_CPU_MIPS32_R1
330 select SYS_HAS_CPU_MIPS32_R2
331 select SYS_SUPPORTS_32BIT_KERNEL
332 select SYS_SUPPORTS_BIG_ENDIAN
333 select SYS_SUPPORTS_KGDB
334 select IRQ_CPU
335 select SERIAL_8250
336 select SERIAL_8250_CONSOLE
337 help
338 This adds support for the PMC-Sierra family of Multi-Service
339 Processor System-On-A-Chips. These parts include a number
340 of integrated peripherals, interfaces and DSPs in addition to
341 a variety of MIPS cores.
342
Ralf Baechle5e83d432005-10-29 19:32:41 +0100343config PMC_YOSEMITE
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200344 bool "PMC-Sierra Yosemite eval board"
Ralf Baechle42f77542007-10-18 17:48:11 +0100345 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000346 select CSRC_R4K
Ralf Baechle5e83d432005-10-29 19:32:41 +0100347 select DMA_COHERENT
348 select HW_HAS_PCI
349 select IRQ_CPU
350 select IRQ_CPU_RM7K
351 select IRQ_CPU_RM9K
352 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100353 select SYS_HAS_CPU_RM9000
Ralf Baechle36a88532007-03-01 11:56:43 +0000354 select SYS_HAS_EARLY_PRINTK
Ralf Baechle5e83d432005-10-29 19:32:41 +0100355 select SYS_SUPPORTS_32BIT_KERNEL
356 select SYS_SUPPORTS_64BIT_KERNEL
357 select SYS_SUPPORTS_BIG_ENDIAN
358 select SYS_SUPPORTS_HIGHMEM
Ralf Baechlecc801072007-02-17 02:58:39 +0000359 select SYS_SUPPORTS_KGDB
Ralf Baechlee73ea272006-06-04 11:51:46 +0100360 select SYS_SUPPORTS_SMP
Ralf Baechle5e83d432005-10-29 19:32:41 +0100361 help
362 Yosemite is an evaluation board for the RM9000x2 processor
363 manufactured by PMC-Sierra.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700364
Ralf Baechle07119622005-09-03 15:56:11 -0700365config QEMU
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200366 bool "Qemu"
Ralf Baechle42f77542007-10-18 17:48:11 +0100367 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000368 select CSRC_R4K
Ralf Baechle07119622005-09-03 15:56:11 -0700369 select DMA_COHERENT
370 select GENERIC_ISA_DMA
371 select HAVE_STD_PC_SERIAL_PORT
Ralf Baechled865bea2007-10-11 23:46:10 +0100372 select I8253
Ralf Baechle07119622005-09-03 15:56:11 -0700373 select I8259
Ralf Baechle7bcf7712007-10-11 23:46:09 +0100374 select IRQ_CPU
Ralf Baechle07119622005-09-03 15:56:11 -0700375 select ISA
Ralf Baechlede61b542007-07-12 17:41:23 +0100376 select PCSPEAKER
Ralf Baechle07119622005-09-03 15:56:11 -0700377 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100378 select SYS_HAS_CPU_MIPS32_R1
Ralf Baechlea57c2282007-11-04 04:49:44 +0000379 select SYS_HAS_EARLY_PRINTK
Ralf Baechle07119622005-09-03 15:56:11 -0700380 select SYS_SUPPORTS_32BIT_KERNEL
381 select SYS_SUPPORTS_BIG_ENDIAN
Aurelien Jarnoc8cc9612006-09-27 23:07:25 +0200382 select SYS_SUPPORTS_LITTLE_ENDIAN
Atsushi Nemoto9fd32cf2006-12-08 01:55:07 +0900383 select GENERIC_HARDIRQS_NO__DO_IRQ
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +0900384 select NR_CPUS_DEFAULT_1
385 select SYS_SUPPORTS_SMP
Ralf Baechle07119622005-09-03 15:56:11 -0700386 help
Ralf Baechle5e83d432005-10-29 19:32:41 +0100387 Qemu is a software emulator which among other architectures also
388 can simulate a MIPS32 4Kc system. This patch adds support for the
389 system architecture that currently is being simulated by Qemu. It
390 will eventually be removed again when Qemu has the capability to
391 simulate actual MIPS hardware platforms. More information on Qemu
392 can be found at http://www.linux-mips.org/wiki/Qemu.
Ralf Baechle07119622005-09-03 15:56:11 -0700393
Linus Torvalds1da177e2005-04-16 15:20:36 -0700394config SGI_IP22
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200395 bool "SGI IP22 (Indy/Indigo2)"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700396 select ARC
397 select ARC32
398 select BOOT_ELF32
Ralf Baechle42f77542007-10-18 17:48:11 +0100399 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000400 select CSRC_R4K
Linus Torvalds1da177e2005-04-16 15:20:36 -0700401 select DMA_NONCOHERENT
Ralf Baechle5e83d432005-10-29 19:32:41 +0100402 select HW_HAS_EISA
Ralf Baechled865bea2007-10-11 23:46:10 +0100403 select I8253
Linus Torvalds1da177e2005-04-16 15:20:36 -0700404 select IP22_CPU_SCACHE
405 select IRQ_CPU
Ralf Baechleaa414df2006-11-30 01:14:51 +0000406 select GENERIC_ISA_DMA_SUPPORT_BROKEN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700407 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100408 select SYS_HAS_CPU_R4X00
409 select SYS_HAS_CPU_R5000
Ralf Baechle36a88532007-03-01 11:56:43 +0000410 select SYS_HAS_EARLY_PRINTK
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700411 select SYS_SUPPORTS_32BIT_KERNEL
412 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100413 select SYS_SUPPORTS_BIG_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700414 help
415 This are the SGI Indy, Challenge S and Indigo2, as well as certain
416 OEM variants like the Tandem CMN B006S. To compile a Linux kernel
417 that runs on these, say Y here.
418
419config SGI_IP27
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200420 bool "SGI IP27 (Origin200/2000)"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700421 select ARC
422 select ARC64
Ralf Baechle5e83d432005-10-29 19:32:41 +0100423 select BOOT_ELF64
Linus Torvalds1da177e2005-04-16 15:20:36 -0700424 select DMA_IP27
Ralf Baechle36a88532007-03-01 11:56:43 +0000425 select SYS_HAS_EARLY_PRINTK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700426 select HW_HAS_PCI
Ralf Baechle130e2fb2007-02-06 16:53:15 +0000427 select NR_CPUS_DEFAULT_64
Ralf Baechle7cf80532005-10-20 22:33:09 +0100428 select SYS_HAS_CPU_R10000
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
Ralf Baechlecc801072007-02-17 02:58:39 +0000431 select SYS_SUPPORTS_KGDB
Ralf Baechled8cb4e12006-06-11 23:03:08 +0100432 select SYS_SUPPORTS_NUMA
Ralf Baechle1a5c5de2006-11-02 17:23:33 +0000433 select SYS_SUPPORTS_SMP
Franck Bui-Huue77c2322006-12-01 18:22:27 +0100434 select GENERIC_HARDIRQS_NO__DO_IRQ
Linus Torvalds1da177e2005-04-16 15:20:36 -0700435 help
436 This are the SGI Origin 200, Origin 2000 and Onyx 2 Graphics
437 workstations. To compile a Linux kernel that runs on these, say Y
438 here.
439
Linus Torvalds1da177e2005-04-16 15:20:36 -0700440config SGI_IP32
Ralf Baechlecfd2afc2007-07-10 17:33:00 +0100441 bool "SGI IP32 (O2)"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700442 select ARC
443 select ARC32
444 select BOOT_ELF32
Ralf Baechle42f77542007-10-18 17:48:11 +0100445 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000446 select CSRC_R4K
Linus Torvalds1da177e2005-04-16 15:20:36 -0700447 select DMA_NONCOHERENT
448 select HW_HAS_PCI
Ralf Baechledd67b152007-10-14 14:02:26 +0100449 select IRQ_CPU
Linus Torvalds1da177e2005-04-16 15:20:36 -0700450 select R5000_CPU_SCACHE
451 select RM7000_CPU_SCACHE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100452 select SYS_HAS_CPU_R5000
453 select SYS_HAS_CPU_R10000 if BROKEN
454 select SYS_HAS_CPU_RM7000
Ralf Baechledd2f18f2006-01-19 14:55:42 +0000455 select SYS_HAS_CPU_NEVADA
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700456 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100457 select SYS_SUPPORTS_BIG_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700458 help
459 If you want this kernel to run on SGI O2 workstation, say Y here.
460
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900461config SIBYTE_CRHINE
462 bool "Sibyte BCM91120C-CRhine"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100463 depends on EXPERIMENTAL
464 select BOOT_ELF32
465 select DMA_COHERENT
466 select SIBYTE_BCM1120
467 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100468 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100469 select SYS_SUPPORTS_BIG_ENDIAN
470 select SYS_SUPPORTS_LITTLE_ENDIAN
471
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900472config SIBYTE_CARMEL
473 bool "Sibyte BCM91120x-Carmel"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100474 depends on EXPERIMENTAL
475 select BOOT_ELF32
476 select DMA_COHERENT
477 select SIBYTE_BCM1120
478 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100479 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100480 select SYS_SUPPORTS_BIG_ENDIAN
481 select SYS_SUPPORTS_LITTLE_ENDIAN
482
483config SIBYTE_CRHONE
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200484 bool "Sibyte BCM91125C-CRhone"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100485 depends on EXPERIMENTAL
486 select BOOT_ELF32
487 select DMA_COHERENT
488 select SIBYTE_BCM1125
489 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100490 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100491 select SYS_SUPPORTS_BIG_ENDIAN
492 select SYS_SUPPORTS_HIGHMEM
493 select SYS_SUPPORTS_LITTLE_ENDIAN
494
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900495config SIBYTE_RHONE
496 bool "Sibyte BCM91125E-Rhone"
497 depends on EXPERIMENTAL
498 select BOOT_ELF32
499 select DMA_COHERENT
500 select SIBYTE_BCM1125H
501 select SWAP_IO_SPACE
502 select SYS_HAS_CPU_SB1
503 select SYS_SUPPORTS_BIG_ENDIAN
504 select SYS_SUPPORTS_LITTLE_ENDIAN
505
506config SIBYTE_SWARM
507 bool "Sibyte BCM91250A-SWARM"
508 select BOOT_ELF32
509 select DMA_COHERENT
510 select NR_CPUS_DEFAULT_2
511 select SIBYTE_SB1250
512 select SWAP_IO_SPACE
513 select SYS_HAS_CPU_SB1
514 select SYS_SUPPORTS_BIG_ENDIAN
515 select SYS_SUPPORTS_HIGHMEM
516 select SYS_SUPPORTS_KGDB
517 select SYS_SUPPORTS_LITTLE_ENDIAN
Ralf Baechlecce335a2007-11-03 02:05:43 +0000518 select ZONE_DMA32 if 64BIT
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900519
520config SIBYTE_LITTLESUR
521 bool "Sibyte BCM91250C2-LittleSur"
522 depends on EXPERIMENTAL
523 select BOOT_ELF32
524 select DMA_COHERENT
525 select NR_CPUS_DEFAULT_2
526 select SIBYTE_SB1250
527 select SWAP_IO_SPACE
528 select SYS_HAS_CPU_SB1
529 select SYS_SUPPORTS_BIG_ENDIAN
530 select SYS_SUPPORTS_HIGHMEM
531 select SYS_SUPPORTS_LITTLE_ENDIAN
532
533config SIBYTE_SENTOSA
534 bool "Sibyte BCM91250E-Sentosa"
535 depends on EXPERIMENTAL
536 select BOOT_ELF32
537 select DMA_COHERENT
538 select NR_CPUS_DEFAULT_2
539 select SIBYTE_SB1250
540 select SWAP_IO_SPACE
541 select SYS_HAS_CPU_SB1
542 select SYS_SUPPORTS_BIG_ENDIAN
543 select SYS_SUPPORTS_LITTLE_ENDIAN
544
545config SIBYTE_PTSWARM
546 bool "Sibyte BCM91250PT-PTSWARM"
547 depends on EXPERIMENTAL
548 select BOOT_ELF32
549 select DMA_COHERENT
550 select NR_CPUS_DEFAULT_2
551 select SIBYTE_SB1250
552 select SWAP_IO_SPACE
553 select SYS_HAS_CPU_SB1
554 select SYS_SUPPORTS_BIG_ENDIAN
555 select SYS_SUPPORTS_HIGHMEM
556 select SYS_SUPPORTS_LITTLE_ENDIAN
557
558config SIBYTE_BIGSUR
559 bool "Sibyte BCM91480B-BigSur"
560 select BOOT_ELF32
561 select DMA_COHERENT
562 select NR_CPUS_DEFAULT_4
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900563 select SIBYTE_BCM1x80
564 select SWAP_IO_SPACE
565 select SYS_HAS_CPU_SB1
566 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechle651194f2007-11-01 21:55:39 +0000567 select SYS_SUPPORTS_HIGHMEM
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900568 select SYS_SUPPORTS_LITTLE_ENDIAN
Ralf Baechlecce335a2007-11-03 02:05:43 +0000569 select ZONE_DMA32 if 64BIT
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900570
Thomas Bogendoerfer14b36af2006-12-05 17:05:44 +0100571config SNI_RM
572 bool "SNI RM200/300/400"
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200573 select ARC if CPU_LITTLE_ENDIAN
574 select ARC32 if CPU_LITTLE_ENDIAN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100575 select ARCH_MAY_HAVE_PC_FDC
576 select BOOT_ELF32
Ralf Baechle42f77542007-10-18 17:48:11 +0100577 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000578 select CSRC_R4K
Ralf Baechle5e83d432005-10-29 19:32:41 +0100579 select DMA_NONCOHERENT
580 select GENERIC_ISA_DMA
Ralf Baechle5e83d432005-10-29 19:32:41 +0100581 select HW_HAS_EISA
582 select HW_HAS_PCI
Thomas Bogendoerferc066a322006-12-28 18:22:32 +0100583 select IRQ_CPU
Ralf Baechled865bea2007-10-11 23:46:10 +0100584 select I8253
Ralf Baechle5e83d432005-10-29 19:32:41 +0100585 select I8259
586 select ISA
Ralf Baechlede61b542007-07-12 17:41:23 +0100587 select PCSPEAKER
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200588 select SWAP_IO_SPACE if CPU_BIG_ENDIAN
Ralf Baechle7cf80532005-10-20 22:33:09 +0100589 select SYS_HAS_CPU_R4X00
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200590 select SYS_HAS_CPU_R5000
Thomas Bogendoerferc066a322006-12-28 18:22:32 +0100591 select SYS_HAS_CPU_R10000
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200592 select R5000_CPU_SCACHE
Ralf Baechle36a88532007-03-01 11:56:43 +0000593 select SYS_HAS_EARLY_PRINTK
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700594 select SYS_SUPPORTS_32BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100595 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200596 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100597 select SYS_SUPPORTS_HIGHMEM
598 select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700599 help
Thomas Bogendoerfer14b36af2006-12-05 17:05:44 +0100600 The SNI RM200/300/400 are MIPS-based machines manufactured by
601 Siemens Nixdorf Informationssysteme (SNI), parent company of Pyramid
Ralf Baechle5e83d432005-10-29 19:32:41 +0100602 Technology and now in turn merged with Fujitsu. Say Y here to
603 support this machine type.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700604
Ralf Baechle5e83d432005-10-29 19:32:41 +0100605config TOSHIBA_JMR3927
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200606 bool "Toshiba JMR-TX3927 board"
Atsushi Nemoto229f7732007-10-25 01:34:09 +0900607 select CEVT_TXX9
Ralf Baechle5e83d432005-10-29 19:32:41 +0100608 select DMA_NONCOHERENT
609 select HW_HAS_PCI
610 select MIPS_TX3927
Atsushi Nemotoc87abd72007-08-02 23:36:02 +0900611 select IRQ_TXX9
Ralf Baechle5e83d432005-10-29 19:32:41 +0100612 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100613 select SYS_HAS_CPU_TX39XX
Ralf Baechle5e83d432005-10-29 19:32:41 +0100614 select SYS_SUPPORTS_32BIT_KERNEL
Sergei Shtylyov6a2603a2007-02-07 20:39:05 +0300615 select SYS_SUPPORTS_LITTLE_ENDIAN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100616 select SYS_SUPPORTS_BIG_ENDIAN
Atsushi Nemoto21274352007-03-15 00:58:28 +0900617 select GENERIC_HARDIRQS_NO__DO_IRQ
Ralf Baechle5e83d432005-10-29 19:32:41 +0100618
619config TOSHIBA_RBTX4927
Yoichi Yuasa08a91282007-07-27 15:20:24 +0900620 bool "Toshiba RBTX49[23]7 board"
Ralf Baechle42f77542007-10-18 17:48:11 +0100621 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000622 select CSRC_R4K
Atsushi Nemoto229f7732007-10-25 01:34:09 +0900623 select CEVT_TXX9
Ralf Baechle5e83d432005-10-29 19:32:41 +0100624 select DMA_NONCOHERENT
625 select HAS_TXX9_SERIAL
626 select HW_HAS_PCI
Atsushi Nemotoc87abd72007-08-02 23:36:02 +0900627 select IRQ_CPU
628 select IRQ_TXX9
629 select I8259 if TOSHIBA_FPCIB0
Ralf Baechle5e83d432005-10-29 19:32:41 +0100630 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100631 select SYS_HAS_CPU_TX49XX
Ralf Baechle5e83d432005-10-29 19:32:41 +0100632 select SYS_SUPPORTS_32BIT_KERNEL
633 select SYS_SUPPORTS_64BIT_KERNEL
Sergei Shtylyov6a2603a2007-02-07 20:39:05 +0300634 select SYS_SUPPORTS_LITTLE_ENDIAN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100635 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechlecc801072007-02-17 02:58:39 +0000636 select SYS_SUPPORTS_KGDB
Atsushi Nemoto9fd32cf2006-12-08 01:55:07 +0900637 select GENERIC_HARDIRQS_NO__DO_IRQ
Ralf Baechle5e83d432005-10-29 19:32:41 +0100638 help
639 This Toshiba board is based on the TX4927 processor. Say Y here to
640 support this machine type
Linus Torvalds1da177e2005-04-16 15:20:36 -0700641
Ralf Baechle23fbee92005-07-25 22:45:45 +0000642config TOSHIBA_RBTX4938
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200643 bool "Toshiba RBTX4938 board"
Ralf Baechle42f77542007-10-18 17:48:11 +0100644 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000645 select CSRC_R4K
Atsushi Nemoto229f7732007-10-25 01:34:09 +0900646 select CEVT_TXX9
Ralf Baechle23fbee92005-07-25 22:45:45 +0000647 select DMA_NONCOHERENT
Ralf Baechle23fbee92005-07-25 22:45:45 +0000648 select HAS_TXX9_SERIAL
649 select HW_HAS_PCI
Atsushi Nemotoc87abd72007-08-02 23:36:02 +0900650 select IRQ_CPU
651 select IRQ_TXX9
Ralf Baechle23fbee92005-07-25 22:45:45 +0000652 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100653 select SYS_HAS_CPU_TX49XX
Ralf Baechle23fbee92005-07-25 22:45:45 +0000654 select SYS_SUPPORTS_32BIT_KERNEL
655 select SYS_SUPPORTS_LITTLE_ENDIAN
656 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechlecc801072007-02-17 02:58:39 +0000657 select SYS_SUPPORTS_KGDB
Atsushi Nemoto9fd32cf2006-12-08 01:55:07 +0900658 select GENERIC_HARDIRQS_NO__DO_IRQ
Atsushi Nemoto3896b052007-06-22 23:21:55 +0900659 select GENERIC_GPIO
Ralf Baechle23fbee92005-07-25 22:45:45 +0000660 help
661 This Toshiba board is based on the TX4938 processor. Say Y here to
662 support this machine type
663
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900664config WR_PPMC
665 bool "Wind River PPMC board"
Ralf Baechle42f77542007-10-18 17:48:11 +0100666 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000667 select CSRC_R4K
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900668 select IRQ_CPU
669 select BOOT_ELF32
670 select DMA_NONCOHERENT
671 select HW_HAS_PCI
672 select PCI_GT64XXX_PCI0
673 select SWAP_IO_SPACE
674 select SYS_HAS_CPU_MIPS32_R1
675 select SYS_HAS_CPU_MIPS32_R2
676 select SYS_HAS_CPU_MIPS64_R1
677 select SYS_HAS_CPU_NEVADA
678 select SYS_HAS_CPU_RM7000
679 select SYS_SUPPORTS_32BIT_KERNEL
680 select SYS_SUPPORTS_64BIT_KERNEL
681 select SYS_SUPPORTS_BIG_ENDIAN
682 select SYS_SUPPORTS_LITTLE_ENDIAN
683 help
684 This enables support for the Wind River MIPS32 4KC PPMC evaluation
685 board, which is based on GT64120 bridge chip.
686
Linus Torvalds1da177e2005-04-16 15:20:36 -0700687endchoice
688
Yoichi Yuasac3543e22007-05-11 20:44:30 +0900689source "arch/mips/au1000/Kconfig"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100690source "arch/mips/jazz/Kconfig"
Brian Murphy1f21d2b2007-08-21 22:34:16 +0200691source "arch/mips/lasat/Kconfig"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100692source "arch/mips/pmc-sierra/Kconfig"
Ralf Baechle29c48692005-02-07 01:27:14 +0000693source "arch/mips/sgi-ip27/Kconfig"
Ralf Baechle38b18f722005-02-03 14:28:23 +0000694source "arch/mips/sibyte/Kconfig"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100695source "arch/mips/tx4927/Kconfig"
Ralf Baechle23fbee92005-07-25 22:45:45 +0000696source "arch/mips/tx4938/Kconfig"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100697source "arch/mips/vr41xx/Kconfig"
Ralf Baechle38b18f722005-02-03 14:28:23 +0000698
Ralf Baechle5e83d432005-10-29 19:32:41 +0100699endmenu
700
Linus Torvalds1da177e2005-04-16 15:20:36 -0700701config RWSEM_GENERIC_SPINLOCK
702 bool
703 default y
704
705config RWSEM_XCHGADD_ALGORITHM
706 bool
707
David Howellsf0d1b0b2006-12-08 02:37:49 -0800708config ARCH_HAS_ILOG2_U32
709 bool
710 default n
711
712config ARCH_HAS_ILOG2_U64
713 bool
714 default n
715
Akinobu Mita3c9ee7e2006-03-26 01:39:30 -0800716config GENERIC_FIND_NEXT_BIT
717 bool
718 default y
719
720config GENERIC_HWEIGHT
721 bool
722 default y
723
Linus Torvalds1da177e2005-04-16 15:20:36 -0700724config GENERIC_CALIBRATE_DELAY
725 bool
726 default y
727
Ralf Baechle7bcf7712007-10-11 23:46:09 +0100728config GENERIC_CLOCKEVENTS
729 bool
730 default y
731
Ralf Baechle8db02012006-10-02 16:54:48 +0100732config GENERIC_TIME
733 bool
734 default y
735
Ralf Baechlef5ff0a22007-08-13 15:26:12 +0100736config GENERIC_CMOS_UPDATE
737 bool
738 default y
739
Atsushi Nemoto1cc89032006-04-04 13:11:45 +0900740config SCHED_NO_NO_OMIT_FRAME_POINTER
741 bool
742 default y
743
Franck Bui-Huue77c2322006-12-01 18:22:27 +0100744config GENERIC_HARDIRQS_NO__DO_IRQ
745 bool
746 default n
747
Linus Torvalds1da177e2005-04-16 15:20:36 -0700748#
749# Select some configuration options automatically based on user selections.
750#
751config ARC
752 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700753
Ralf Baechle61ed242d2005-09-15 08:52:34 +0000754config ARCH_MAY_HAVE_PC_FDC
755 bool
756
Marc St-Jean9267a302007-06-14 15:55:31 -0600757config BOOT_RAW
758 bool
759
Ralf Baechle217dd112007-11-01 01:57:55 +0000760config CEVT_BCM1480
761 bool
762
Yoichi Yuasa1097c6a2007-10-22 19:43:15 +0900763config CEVT_GT641XX
764 bool
765
Ralf Baechle42f77542007-10-18 17:48:11 +0100766config CEVT_R4K
767 bool
768
Ralf Baechle217dd112007-11-01 01:57:55 +0000769config CEVT_SB1250
770 bool
771
Atsushi Nemoto229f7732007-10-25 01:34:09 +0900772config CEVT_TXX9
773 bool
774
Ralf Baechle217dd112007-11-01 01:57:55 +0000775config CSRC_BCM1480
776 bool
777
Ralf Baechle940f6b42007-11-24 22:33:28 +0000778config CSRC_R4K
779 bool
780
Ralf Baechle217dd112007-11-01 01:57:55 +0000781config CSRC_SB1250
782 bool
783
Aurelien Jarnodf78b5c2007-09-05 08:58:26 +0200784config CFE
785 bool
786
Ralf Baechle4ce588c2005-09-03 15:56:19 -0700787config DMA_COHERENT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700788 bool
789
Ralf Baechle4ce588c2005-09-03 15:56:19 -0700790config DMA_IP27
Linus Torvalds1da177e2005-04-16 15:20:36 -0700791 bool
792
Ralf Baechle4ce588c2005-09-03 15:56:19 -0700793config DMA_IP32
794 bool
795 select DMA_NEED_PCI_MAP_STATE
796
797config DMA_NONCOHERENT
798 bool
799 select DMA_NEED_PCI_MAP_STATE
800
801config DMA_NEED_PCI_MAP_STATE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700802 bool
803
804config EARLY_PRINTK
Ralf Baechle36a88532007-03-01 11:56:43 +0000805 bool "Early printk" if EMBEDDED && DEBUG_KERNEL
806 depends on SYS_HAS_EARLY_PRINTK
807 default y
808 help
809 This option enables special console drivers which allow the kernel
810 to print messages very early in the bootup process.
811
812 This is useful for kernel debugging when your machine crashes very
Robert P. J. Day490dcc42007-05-20 12:11:07 -0400813 early before the console code is initialized. For normal operation,
814 it is not recommended because it looks ugly on some machines and
815 doesn't cooperate with an X server. You should normally say N here,
Ralf Baechle36a88532007-03-01 11:56:43 +0000816 unless you want to debug such a crash.
817
818config SYS_HAS_EARLY_PRINTK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700819 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700820
Ralf Baechledbb74542007-08-07 14:52:17 +0100821config HOTPLUG_CPU
822 bool
823 default n
824
Linus Torvalds1da177e2005-04-16 15:20:36 -0700825config I8259
826 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700827
Linus Torvalds1da177e2005-04-16 15:20:36 -0700828config MIPS_BONITO64
829 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700830
831config MIPS_MSC
832 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700833
Brian Murphy1f21d2b2007-08-21 22:34:16 +0200834config MIPS_NILE4
835 bool
836
Linus Torvalds1da177e2005-04-16 15:20:36 -0700837config MIPS_DISABLE_OBSOLETE_IDE
838 bool
839
Maciej W. Rozyckid388d682007-05-29 15:08:07 +0100840config NO_IOPORT
841 def_bool n
842
Ralf Baechle8313da32007-08-24 16:48:30 +0100843config GENERIC_ISA_DMA
844 bool
845 select ZONE_DMA if GENERIC_ISA_DMA_SUPPORT_BROKEN=n
846
Ralf Baechleaa414df2006-11-30 01:14:51 +0000847config GENERIC_ISA_DMA_SUPPORT_BROKEN
848 bool
Ralf Baechle8313da32007-08-24 16:48:30 +0100849 select GENERIC_ISA_DMA
Ralf Baechleaa414df2006-11-30 01:14:51 +0000850
Yoichi Yuasa09663332007-05-22 00:05:58 +0900851config GENERIC_GPIO
852 bool
853
Ralf Baechle5e83d432005-10-29 19:32:41 +0100854#
Matt LaPlante3cb2fcc2006-11-30 05:22:59 +0100855# Endianess selection. Sufficiently obscure so many users don't know what to
Ralf Baechle5e83d432005-10-29 19:32:41 +0100856# answer,so we try hard to limit the available choices. Also the use of a
857# choice statement should be more obvious to the user.
858#
859choice
860 prompt "Endianess selection"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700861 help
862 Some MIPS machines can be configured for either little or big endian
Ralf Baechle5e83d432005-10-29 19:32:41 +0100863 byte order. These modes require different kernels and a different
Matt LaPlante3cb2fcc2006-11-30 05:22:59 +0100864 Linux distribution. In general there is one preferred byteorder for a
Ralf Baechle5e83d432005-10-29 19:32:41 +0100865 particular system but some systems are just as commonly used in the
David Sterba3dde6ad2007-05-09 07:12:20 +0200866 one or the other endianness.
Ralf Baechle5e83d432005-10-29 19:32:41 +0100867
868config CPU_BIG_ENDIAN
869 bool "Big endian"
870 depends on SYS_SUPPORTS_BIG_ENDIAN
871
872config CPU_LITTLE_ENDIAN
873 bool "Little endian"
874 depends on SYS_SUPPORTS_LITTLE_ENDIAN
875 help
876
877endchoice
878
Ralf Baechle21162452007-02-09 17:08:58 +0000879config SYS_SUPPORTS_APM_EMULATION
880 bool
881
Ralf Baechle5e83d432005-10-29 19:32:41 +0100882config SYS_SUPPORTS_BIG_ENDIAN
883 bool
884
885config SYS_SUPPORTS_LITTLE_ENDIAN
886 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700887
888config IRQ_CPU
889 bool
890
891config IRQ_CPU_RM7K
892 bool
893
Ralf Baechle5e83d432005-10-29 19:32:41 +0100894config IRQ_CPU_RM9K
895 bool
896
Marc St-Jean9267a302007-06-14 15:55:31 -0600897config IRQ_MSP_SLP
898 bool
899
900config IRQ_MSP_CIC
901 bool
902
Atsushi Nemoto8420fd02007-08-02 23:35:53 +0900903config IRQ_TXX9
904 bool
905
Yoichi Yuasad5ab1a62007-09-13 23:51:26 +0900906config IRQ_GT641XX
907 bool
908
Linus Torvalds1da177e2005-04-16 15:20:36 -0700909config MIPS_BOARDS_GEN
910 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700911
Yoichi Yuasa252161e2007-03-14 21:51:26 +0900912config PCI_GT64XXX_PCI0
Linus Torvalds1da177e2005-04-16 15:20:36 -0700913 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700914
Marc St-Jean9267a302007-06-14 15:55:31 -0600915config NO_EXCEPT_FILL
916 bool
917
Linus Torvalds1da177e2005-04-16 15:20:36 -0700918config MIPS_TX3927
919 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700920 select HAS_TXX9_SERIAL
Linus Torvalds1da177e2005-04-16 15:20:36 -0700921
thomas@koeller.dyndns.org663c3d92006-08-27 13:51:48 +0200922config MIPS_RM9122
923 bool
924 select SERIAL_RM9000
thomas@koeller.dyndns.org663c3d92006-08-27 13:51:48 +0200925
Pete Popovbdf21b12005-07-14 17:47:57 +0000926config PNX8550
927 bool
928 select SOC_PNX8550
929
930config SOC_PNX8550
931 bool
Pete Popovbdf21b12005-07-14 17:47:57 +0000932 select DMA_NONCOHERENT
933 select HW_HAS_PCI
Ralf Baechleb8c2a772005-10-31 13:08:37 +0000934 select SYS_HAS_CPU_MIPS32_R1
Ralf Baechle36a88532007-03-01 11:56:43 +0000935 select SYS_HAS_EARLY_PRINTK
Ralf Baechle7cf80532005-10-20 22:33:09 +0100936 select SYS_SUPPORTS_32BIT_KERNEL
Franck Bui-Huue77c2322006-12-01 18:22:27 +0100937 select GENERIC_HARDIRQS_NO__DO_IRQ
Ralf Baechlecc801072007-02-17 02:58:39 +0000938 select SYS_SUPPORTS_KGDB
Florian Fainelli4ead1682007-05-22 21:44:42 +0200939 select GENERIC_GPIO
Pete Popovbdf21b12005-07-14 17:47:57 +0000940
Linus Torvalds1da177e2005-04-16 15:20:36 -0700941config SWAP_IO_SPACE
942 bool
943
dmitry pervushin355c4712006-05-21 14:53:06 +0400944config EMMA2RH
945 bool
946 depends on MARKEINS
947 default y
948
thomas@koeller.dyndns.org663c3d92006-08-27 13:51:48 +0200949config SERIAL_RM9000
950 bool
951
Ralf Baechle5e83d432005-10-29 19:32:41 +0100952config ARC32
953 bool
954
Linus Torvalds1da177e2005-04-16 15:20:36 -0700955config BOOT_ELF32
956 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700957
958config MIPS_L1_CACHE_SHIFT
959 int
Thomas Bogendoerfer06cf5582007-06-20 23:36:47 +0200960 default "4" if MACH_DECSTATION
961 default "7" if SGI_IP27 || SNI_RM
Marc St-Jean9267a302007-06-14 15:55:31 -0600962 default "4" if PMC_MSP4200_EVAL
Linus Torvalds1da177e2005-04-16 15:20:36 -0700963 default "5"
964
Linus Torvalds1da177e2005-04-16 15:20:36 -0700965config HAVE_STD_PC_SERIAL_PORT
966 bool
967
Linus Torvalds1da177e2005-04-16 15:20:36 -0700968config ARC_CONSOLE
969 bool "ARC console support"
Ralf Baechle36a88532007-03-01 11:56:43 +0000970 depends on SGI_IP22 || (SNI_RM && CPU_LITTLE_ENDIAN)
Linus Torvalds1da177e2005-04-16 15:20:36 -0700971
972config ARC_MEMORY
973 bool
Thomas Bogendoerfer14b36af2006-12-05 17:05:44 +0100974 depends on MACH_JAZZ || SNI_RM || SGI_IP32
Linus Torvalds1da177e2005-04-16 15:20:36 -0700975 default y
976
977config ARC_PROMLIB
978 bool
Thomas Bogendoerfer14b36af2006-12-05 17:05:44 +0100979 depends on MACH_JAZZ || SNI_RM || SGI_IP22 || SGI_IP32
Linus Torvalds1da177e2005-04-16 15:20:36 -0700980 default y
981
982config ARC64
983 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700984
985config BOOT_ELF64
986 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700987
Linus Torvalds1da177e2005-04-16 15:20:36 -0700988menu "CPU selection"
989
Ralf Baechle7bcf7712007-10-11 23:46:09 +0100990source "kernel/time/Kconfig"
991
Linus Torvalds1da177e2005-04-16 15:20:36 -0700992choice
993 prompt "CPU type"
994 default CPU_R4X00
995
Fuxin Zhang2a21c732007-06-06 14:52:43 +0800996config CPU_LOONGSON2
997 bool "Loongson 2"
998 depends on SYS_HAS_CPU_LOONGSON2
999 select CPU_SUPPORTS_32BIT_KERNEL
1000 select CPU_SUPPORTS_64BIT_KERNEL
1001 select CPU_SUPPORTS_HIGHMEM
1002 help
1003 The Loongson 2E processor implements the MIPS III instruction set
1004 with many extensions.
1005
Ralf Baechle6e760c82005-07-06 12:08:11 +00001006config CPU_MIPS32_R1
1007 bool "MIPS32 Release 1"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001008 depends on SYS_HAS_CPU_MIPS32_R1
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001009 select CPU_HAS_LLSC
Ralf Baechle6e760c82005-07-06 12:08:11 +00001010 select CPU_HAS_PREFETCH
Ralf Baechle797798c2005-08-10 15:17:11 +00001011 select CPU_SUPPORTS_32BIT_KERNEL
Ralf Baechleec28f302006-03-05 00:45:33 +00001012 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle6e760c82005-07-06 12:08:11 +00001013 help
Ralf Baechle5e83d432005-10-29 19:32:41 +01001014 Choose this option to build a kernel for release 1 or later of the
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +00001015 MIPS32 architecture. Most modern embedded systems with a 32-bit
1016 MIPS processor are based on a MIPS32 processor. If you know the
1017 specific type of processor in your system, choose those that one
1018 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
1019 Release 2 of the MIPS32 architecture is available since several
1020 years so chances are you even have a MIPS32 Release 2 processor
1021 in which case you should choose CPU_MIPS32_R2 instead for better
1022 performance.
1023
1024config CPU_MIPS32_R2
1025 bool "MIPS32 Release 2"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001026 depends on SYS_HAS_CPU_MIPS32_R2
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001027 select CPU_HAS_LLSC
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +00001028 select CPU_HAS_PREFETCH
Ralf Baechle797798c2005-08-10 15:17:11 +00001029 select CPU_SUPPORTS_32BIT_KERNEL
Ralf Baechleec28f302006-03-05 00:45:33 +00001030 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +00001031 help
Ralf Baechle5e83d432005-10-29 19:32:41 +01001032 Choose this option to build a kernel for release 2 or later of the
Ralf Baechle6e760c82005-07-06 12:08:11 +00001033 MIPS32 architecture. Most modern embedded systems with a 32-bit
1034 MIPS processor are based on a MIPS32 processor. If you know the
1035 specific type of processor in your system, choose those that one
1036 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001037
Ralf Baechle6e760c82005-07-06 12:08:11 +00001038config CPU_MIPS64_R1
1039 bool "MIPS64 Release 1"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001040 depends on SYS_HAS_CPU_MIPS64_R1
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001041 select CPU_HAS_LLSC
Ralf Baechle797798c2005-08-10 15:17:11 +00001042 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001043 select CPU_SUPPORTS_32BIT_KERNEL
1044 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechleec28f302006-03-05 00:45:33 +00001045 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle6e760c82005-07-06 12:08:11 +00001046 help
1047 Choose this option to build a kernel for release 1 or later of the
1048 MIPS64 architecture. Many modern embedded systems with a 64-bit
1049 MIPS processor are based on a MIPS64 processor. If you know the
1050 specific type of processor in your system, choose those that one
1051 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +00001052 Release 2 of the MIPS64 architecture is available since several
1053 years so chances are you even have a MIPS64 Release 2 processor
1054 in which case you should choose CPU_MIPS64_R2 instead for better
1055 performance.
1056
1057config CPU_MIPS64_R2
1058 bool "MIPS64 Release 2"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001059 depends on SYS_HAS_CPU_MIPS64_R2
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001060 select CPU_HAS_LLSC
Ralf Baechle797798c2005-08-10 15:17:11 +00001061 select CPU_HAS_PREFETCH
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +00001062 select CPU_SUPPORTS_32BIT_KERNEL
1063 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechleec28f302006-03-05 00:45:33 +00001064 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +00001065 help
1066 Choose this option to build a kernel for release 2 or later of the
1067 MIPS64 architecture. Many modern embedded systems with a 64-bit
1068 MIPS processor are based on a MIPS64 processor. If you know the
1069 specific type of processor in your system, choose those that one
1070 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001071
1072config CPU_R3000
1073 bool "R3000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001074 depends on SYS_HAS_CPU_R3000
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001075 select CPU_HAS_WB
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001076 select CPU_SUPPORTS_32BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +00001077 select CPU_SUPPORTS_HIGHMEM
Linus Torvalds1da177e2005-04-16 15:20:36 -07001078 help
1079 Please make sure to pick the right CPU type. Linux/MIPS is not
1080 designed to be generic, i.e. Kernels compiled for R3000 CPUs will
1081 *not* work on R4000 machines and vice versa. However, since most
1082 of the supported machines have an R4000 (or similar) CPU, R4x00
1083 might be a safe bet. If the resulting kernel does not work,
1084 try to recompile with R3000.
1085
1086config CPU_TX39XX
1087 bool "R39XX"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001088 depends on SYS_HAS_CPU_TX39XX
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001089 select CPU_SUPPORTS_32BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001090
1091config CPU_VR41XX
1092 bool "R41xx"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001093 depends on SYS_HAS_CPU_VR41XX
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001094 select CPU_SUPPORTS_32BIT_KERNEL
1095 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001096 help
Ralf Baechle5e83d432005-10-29 19:32:41 +01001097 The options selects support for the NEC VR4100 series of processors.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001098 Only choose this option if you have one of these processors as a
1099 kernel built with this option will not run on any other type of
1100 processor or vice versa.
1101
1102config CPU_R4300
1103 bool "R4300"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001104 depends on SYS_HAS_CPU_R4300
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001105 select CPU_HAS_LLSC
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001106 select CPU_SUPPORTS_32BIT_KERNEL
1107 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001108 help
1109 MIPS Technologies R4300-series processors.
1110
1111config CPU_R4X00
1112 bool "R4x00"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001113 depends on SYS_HAS_CPU_R4X00
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001114 select CPU_HAS_LLSC
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001115 select CPU_SUPPORTS_32BIT_KERNEL
1116 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001117 help
1118 MIPS Technologies R4000-series processors other than 4300, including
1119 the R4000, R4400, R4600, and 4700.
1120
1121config CPU_TX49XX
1122 bool "R49XX"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001123 depends on SYS_HAS_CPU_TX49XX
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001124 select CPU_HAS_LLSC
Atsushi Nemotode862b42006-03-17 12:59:22 +09001125 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001126 select CPU_SUPPORTS_32BIT_KERNEL
1127 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001128
1129config CPU_R5000
1130 bool "R5000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001131 depends on SYS_HAS_CPU_R5000
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001132 select CPU_HAS_LLSC
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001133 select CPU_SUPPORTS_32BIT_KERNEL
1134 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001135 help
1136 MIPS Technologies R5000-series processors other than the Nevada.
1137
1138config CPU_R5432
1139 bool "R5432"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001140 depends on SYS_HAS_CPU_R5432
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001141 select CPU_HAS_LLSC
Ralf Baechle5e83d432005-10-29 19:32:41 +01001142 select CPU_SUPPORTS_32BIT_KERNEL
1143 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001144
1145config CPU_R6000
1146 bool "R6000"
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001147 depends on EXPERIMENTAL
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001148 select CPU_HAS_LLSC
Ralf Baechle7cf80532005-10-20 22:33:09 +01001149 depends on SYS_HAS_CPU_R6000
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001150 select CPU_SUPPORTS_32BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001151 help
1152 MIPS Technologies R6000 and R6000A series processors. Note these
Chris Dearmanc09b47d2006-06-20 17:15:20 +01001153 processors are extremely rare and the support for them is incomplete.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001154
1155config CPU_NEVADA
1156 bool "RM52xx"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001157 depends on SYS_HAS_CPU_NEVADA
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001158 select CPU_HAS_LLSC
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001159 select CPU_SUPPORTS_32BIT_KERNEL
1160 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001161 help
1162 QED / PMC-Sierra RM52xx-series ("Nevada") processors.
1163
1164config CPU_R8000
1165 bool "R8000"
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001166 depends on EXPERIMENTAL
Ralf Baechle7cf80532005-10-20 22:33:09 +01001167 depends on SYS_HAS_CPU_R8000
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001168 select CPU_HAS_LLSC
Ralf Baechle5e83d432005-10-29 19:32:41 +01001169 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001170 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001171 help
1172 MIPS Technologies R8000 processors. Note these processors are
1173 uncommon and the support for them is incomplete.
1174
1175config CPU_R10000
1176 bool "R10000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001177 depends on SYS_HAS_CPU_R10000
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001178 select CPU_HAS_LLSC
Ralf Baechle5e83d432005-10-29 19:32:41 +01001179 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001180 select CPU_SUPPORTS_32BIT_KERNEL
1181 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +00001182 select CPU_SUPPORTS_HIGHMEM
Linus Torvalds1da177e2005-04-16 15:20:36 -07001183 help
1184 MIPS Technologies R10000-series processors.
1185
1186config CPU_RM7000
1187 bool "RM7000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001188 depends on SYS_HAS_CPU_RM7000
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001189 select CPU_HAS_LLSC
Ralf Baechle5e83d432005-10-29 19:32:41 +01001190 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001191 select CPU_SUPPORTS_32BIT_KERNEL
1192 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +00001193 select CPU_SUPPORTS_HIGHMEM
Linus Torvalds1da177e2005-04-16 15:20:36 -07001194
1195config CPU_RM9000
1196 bool "RM9000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001197 depends on SYS_HAS_CPU_RM9000
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001198 select CPU_HAS_LLSC
Ralf Baechle5e83d432005-10-29 19:32:41 +01001199 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001200 select CPU_SUPPORTS_32BIT_KERNEL
1201 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +00001202 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle0004a9d2006-10-31 03:45:07 +00001203 select WEAK_ORDERING
Linus Torvalds1da177e2005-04-16 15:20:36 -07001204
1205config CPU_SB1
1206 bool "SB1"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001207 depends on SYS_HAS_CPU_SB1
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001208 select CPU_HAS_LLSC
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001209 select CPU_SUPPORTS_32BIT_KERNEL
1210 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +00001211 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle0004a9d2006-10-31 03:45:07 +00001212 select WEAK_ORDERING
Linus Torvalds1da177e2005-04-16 15:20:36 -07001213
1214endchoice
1215
Fuxin Zhang2a21c732007-06-06 14:52:43 +08001216config SYS_HAS_CPU_LOONGSON2
1217 bool
1218
Ralf Baechle7cf80532005-10-20 22:33:09 +01001219config SYS_HAS_CPU_MIPS32_R1
1220 bool
1221
1222config SYS_HAS_CPU_MIPS32_R2
1223 bool
1224
1225config SYS_HAS_CPU_MIPS64_R1
1226 bool
1227
1228config SYS_HAS_CPU_MIPS64_R2
1229 bool
1230
1231config SYS_HAS_CPU_R3000
1232 bool
1233
1234config SYS_HAS_CPU_TX39XX
1235 bool
1236
1237config SYS_HAS_CPU_VR41XX
1238 bool
1239
1240config SYS_HAS_CPU_R4300
1241 bool
1242
1243config SYS_HAS_CPU_R4X00
1244 bool
1245
1246config SYS_HAS_CPU_TX49XX
1247 bool
1248
1249config SYS_HAS_CPU_R5000
1250 bool
1251
1252config SYS_HAS_CPU_R5432
1253 bool
1254
1255config SYS_HAS_CPU_R6000
1256 bool
1257
1258config SYS_HAS_CPU_NEVADA
1259 bool
1260
1261config SYS_HAS_CPU_R8000
1262 bool
1263
1264config SYS_HAS_CPU_R10000
1265 bool
1266
1267config SYS_HAS_CPU_RM7000
1268 bool
1269
1270config SYS_HAS_CPU_RM9000
1271 bool
1272
1273config SYS_HAS_CPU_SB1
1274 bool
1275
Ralf Baechle17099b12007-07-14 13:24:05 +01001276#
1277# CPU may reorder R->R, R->W, W->R, W->W
1278# Reordering beyond LL and SC is handled in WEAK_REORDERING_BEYOND_LLSC
1279#
Ralf Baechle0004a9d2006-10-31 03:45:07 +00001280config WEAK_ORDERING
1281 bool
Ralf Baechle17099b12007-07-14 13:24:05 +01001282
1283#
1284# CPU may reorder reads and writes beyond LL/SC
1285# CPU may reorder R->LL, R->LL, W->LL, W->LL, R->SC, R->SC, W->SC, W->SC
1286#
1287config WEAK_REORDERING_BEYOND_LLSC
1288 bool
Ralf Baechle5e83d432005-10-29 19:32:41 +01001289endmenu
1290
1291#
Chris Dearmanc09b47d2006-06-20 17:15:20 +01001292# These two indicate any level of the MIPS32 and MIPS64 architecture
Ralf Baechle5e83d432005-10-29 19:32:41 +01001293#
1294config CPU_MIPS32
1295 bool
1296 default y if CPU_MIPS32_R1 || CPU_MIPS32_R2
1297
1298config CPU_MIPS64
1299 bool
1300 default y if CPU_MIPS64_R1 || CPU_MIPS64_R2
1301
1302#
Chris Dearmanc09b47d2006-06-20 17:15:20 +01001303# These two indicate the revision of the architecture, either Release 1 or Release 2
Ralf Baechle5e83d432005-10-29 19:32:41 +01001304#
1305config CPU_MIPSR1
1306 bool
1307 default y if CPU_MIPS32_R1 || CPU_MIPS64_R1
1308
1309config CPU_MIPSR2
1310 bool
1311 default y if CPU_MIPS32_R2 || CPU_MIPS64_R2
1312
1313config SYS_SUPPORTS_32BIT_KERNEL
1314 bool
1315config SYS_SUPPORTS_64BIT_KERNEL
1316 bool
1317config CPU_SUPPORTS_32BIT_KERNEL
1318 bool
1319config CPU_SUPPORTS_64BIT_KERNEL
1320 bool
1321
1322menu "Kernel type"
1323
1324choice
1325
1326 prompt "Kernel code model"
1327 help
1328 You should only select this option if you have a workload that
1329 actually benefits from 64-bit processing or if your machine has
1330 large memory. You will only be presented a single option in this
1331 menu if your system does not support both 32-bit and 64-bit kernels.
1332
1333config 32BIT
1334 bool "32-bit kernel"
1335 depends on CPU_SUPPORTS_32BIT_KERNEL && SYS_SUPPORTS_32BIT_KERNEL
1336 select TRAD_SIGNALS
1337 help
1338 Select this option if you want to build a 32-bit kernel.
1339config 64BIT
1340 bool "64-bit kernel"
1341 depends on CPU_SUPPORTS_64BIT_KERNEL && SYS_SUPPORTS_64BIT_KERNEL
1342 help
1343 Select this option if you want to build a 64-bit kernel.
1344
1345endchoice
1346
Linus Torvalds1da177e2005-04-16 15:20:36 -07001347choice
1348 prompt "Kernel page size"
1349 default PAGE_SIZE_4KB
1350
1351config PAGE_SIZE_4KB
1352 bool "4kB"
1353 help
1354 This option select the standard 4kB Linux page size. On some
1355 R3000-family processors this is the only available page size. Using
1356 4kB page size will minimize memory consumption and is therefore
1357 recommended for low memory systems.
1358
1359config PAGE_SIZE_8KB
1360 bool "8kB"
1361 depends on EXPERIMENTAL && CPU_R8000
1362 help
1363 Using 8kB page size will result in higher performance kernel at
1364 the price of higher memory consumption. This option is available
1365 only on the R8000 processor. Not that at the time of this writing
1366 this option is still high experimental; there are also issues with
1367 compatibility of user applications.
1368
1369config PAGE_SIZE_16KB
1370 bool "16kB"
Ralf Baechle714bfad2006-05-17 14:04:30 +01001371 depends on !CPU_R3000 && !CPU_TX39XX
Linus Torvalds1da177e2005-04-16 15:20:36 -07001372 help
1373 Using 16kB page size will result in higher performance kernel at
1374 the price of higher memory consumption. This option is available on
Ralf Baechle714bfad2006-05-17 14:04:30 +01001375 all non-R3000 family processors. Note that you will need a suitable
1376 Linux distribution to support this.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001377
1378config PAGE_SIZE_64KB
1379 bool "64kB"
1380 depends on EXPERIMENTAL && !CPU_R3000 && !CPU_TX39XX
1381 help
1382 Using 64kB page size will result in higher performance kernel at
1383 the price of higher memory consumption. This option is available on
1384 all non-R3000 family processor. Not that at the time of this
Ralf Baechle714bfad2006-05-17 14:04:30 +01001385 writing this option is still high experimental.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001386
1387endchoice
1388
1389config BOARD_SCACHE
1390 bool
1391
1392config IP22_CPU_SCACHE
1393 bool
1394 select BOARD_SCACHE
1395
Chris Dearman9318c512006-06-20 17:15:20 +01001396#
1397# Support for a MIPS32 / MIPS64 style S-caches
1398#
1399config MIPS_CPU_SCACHE
1400 bool
1401 select BOARD_SCACHE
1402
Linus Torvalds1da177e2005-04-16 15:20:36 -07001403config R5000_CPU_SCACHE
1404 bool
1405 select BOARD_SCACHE
1406
1407config RM7000_CPU_SCACHE
1408 bool
1409 select BOARD_SCACHE
1410
1411config SIBYTE_DMA_PAGEOPS
1412 bool "Use DMA to clear/copy pages"
1413 depends on CPU_SB1
1414 help
1415 Instead of using the CPU to zero and copy pages, use a Data Mover
1416 channel. These DMA channels are otherwise unused by the standard
1417 SiByte Linux port. Seems to give a small performance benefit.
1418
1419config CPU_HAS_PREFETCH
Ralf Baechlec8094b52005-08-05 14:28:54 +00001420 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001421
Ralf Baechle340ee4b2005-08-17 17:44:08 +00001422choice
1423 prompt "MIPS MT options"
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001424
1425config MIPS_MT_DISABLED
1426 bool "Disable multithreading support."
1427 help
1428 Use this option if your workload can't take advantage of
1429 MIPS hardware multithreading support. On systems that don't have
1430 the option of an MT-enabled processor this option will be the only
1431 option in this menu.
Ralf Baechle340ee4b2005-08-17 17:44:08 +00001432
Ralf Baechle59d6ab82006-10-06 17:36:20 +01001433config MIPS_MT_SMP
1434 bool "Use 1 TC on each available VPE for SMP"
1435 depends on SYS_SUPPORTS_MULTITHREADING
1436 select CPU_MIPSR2_IRQ_VI
Chris Dearmand725cf32007-05-08 14:05:39 +01001437 select CPU_MIPSR2_IRQ_EI
Ralf Baechle59d6ab82006-10-06 17:36:20 +01001438 select MIPS_MT
Ralf Baechlef510aa32007-03-16 21:58:37 +00001439 select NR_CPUS_DEFAULT_2
Ralf Baechle59d6ab82006-10-06 17:36:20 +01001440 select SMP
1441 select SYS_SUPPORTS_SMP
1442 help
1443 This is a kernel model which is also known a VSMP or lately
1444 has been marketesed into SMVP.
1445
Ralf Baechle41c594a2006-04-05 09:45:45 +01001446config MIPS_MT_SMTC
1447 bool "SMTC: Use all TCs on all VPEs for SMP"
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001448 depends on CPU_MIPS32_R2
1449 #depends on CPU_MIPS64_R2 # once there is hardware ...
1450 depends on SYS_SUPPORTS_MULTITHREADING
Ralf Baechleea580402007-10-11 23:46:09 +01001451 select GENERIC_CLOCKEVENTS_BROADCAST
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001452 select CPU_MIPSR2_IRQ_VI
Chris Dearmand725cf32007-05-08 14:05:39 +01001453 select CPU_MIPSR2_IRQ_EI
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001454 select MIPS_MT
Ralf Baechle130e2fb2007-02-06 16:53:15 +00001455 select NR_CPUS_DEFAULT_8
Ralf Baechle41c594a2006-04-05 09:45:45 +01001456 select SMP
Ralf Baechle73b76c72006-08-15 19:36:40 +01001457 select SYS_SUPPORTS_SMP
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001458 help
1459 This is a kernel model which is known a SMTC or lately has been
1460 marketesed into SMVP.
Ralf Baechle41c594a2006-04-05 09:45:45 +01001461
Ralf Baechle340ee4b2005-08-17 17:44:08 +00001462endchoice
1463
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001464config MIPS_MT
1465 bool
1466
1467config SYS_SUPPORTS_MULTITHREADING
1468 bool
1469
Ralf Baechlef088fc82006-04-05 09:45:47 +01001470config MIPS_MT_FPAFF
1471 bool "Dynamic FPU affinity for FP-intensive threads"
Ralf Baechlef088fc82006-04-05 09:45:47 +01001472 default y
Ralf Baechle07cc0c92007-07-27 19:31:10 +01001473 depends on MIPS_MT_SMP || MIPS_MT_SMTC
1474
1475config MIPS_VPE_LOADER
1476 bool "VPE loader support."
1477 depends on SYS_SUPPORTS_MULTITHREADING
1478 select CPU_MIPSR2_IRQ_VI
1479 select CPU_MIPSR2_IRQ_EI
Ralf Baechle07cc0c92007-07-27 19:31:10 +01001480 select MIPS_MT
1481 help
1482 Includes a loader for loading an elf relocatable object
1483 onto another VPE and running it.
Ralf Baechlef088fc82006-04-05 09:45:47 +01001484
Ralf Baechleac8be952007-01-20 00:18:01 +00001485config MIPS_MT_SMTC_INSTANT_REPLAY
1486 bool "Low-latency Dispatch of Deferred SMTC IPIs"
Ralf Baechle619af722007-03-26 15:13:57 +01001487 depends on MIPS_MT_SMTC && !PREEMPT
Ralf Baechleac8be952007-01-20 00:18:01 +00001488 default y
1489 help
1490 SMTC pseudo-interrupts between TCs are deferred and queued
1491 if the target TC is interrupt-inhibited (IXMT). In the first
1492 SMTC prototypes, these queued IPIs were serviced on return
1493 to user mode, or on entry into the kernel idle loop. The
1494 INSTANT_REPLAY option dispatches them as part of local_irq_restore()
1495 processing, which adds runtime overhead (hence the option to turn
1496 it off), but ensures that IPIs are handled promptly even under
1497 heavy I/O interrupt load.
1498
Kevin D. Kissell0db34212007-07-12 16:21:08 +01001499config MIPS_MT_SMTC_IM_BACKSTOP
1500 bool "Use per-TC register bits as backstop for inhibited IM bits"
1501 depends on MIPS_MT_SMTC
1502 default y
1503 help
1504 To support multiple TC microthreads acting as "CPUs" within
1505 a VPE, VPE-wide interrupt mask bits must be specially manipulated
1506 during interrupt handling. To support legacy drivers and interrupt
1507 controller management code, SMTC has a "backstop" to track and
1508 if necessary restore the interrupt mask. This has some performance
1509 impact on interrupt service overhead. Disable it only if you know
1510 what you are doing.
1511
Kevin D. Kissellf571eff2007-08-03 19:38:03 +02001512config MIPS_MT_SMTC_IRQAFF
1513 bool "Support IRQ affinity API"
1514 depends on MIPS_MT_SMTC
1515 default n
1516 help
1517 Enables SMP IRQ affinity API (/proc/irq/*/smp_affinity, etc.)
1518 for SMTC Linux kernel. Requires platform support, of which
1519 an example can be found in the MIPS kernel i8259 and Malta
1520 platform code. It is recommended that MIPS_MT_SMTC_INSTANT_REPLAY
1521 be enabled if MIPS_MT_SMTC_IRQAFF is used. Adds overhead to
1522 interrupt dispatch, and should be used only if you know what
1523 you are doing.
1524
Ralf Baechlee01402b2005-07-14 15:57:16 +00001525config MIPS_VPE_LOADER_TOM
1526 bool "Load VPE program into memory hidden from linux"
1527 depends on MIPS_VPE_LOADER
1528 default y
1529 help
1530 The loader can use memory that is present but has been hidden from
1531 Linux using the kernel command line option "mem=xxMB". It's up to
1532 you to ensure the amount you put in the option and the space your
1533 program requires is less or equal to the amount physically present.
1534
1535# this should possibly be in drivers/char, but it is rather cpu related. Hmmm
1536config MIPS_VPE_APSP_API
Ralf Baechle5e83d432005-10-29 19:32:41 +01001537 bool "Enable support for AP/SP API (RTLX)"
1538 depends on MIPS_VPE_LOADER
1539 help
Ralf Baechlee01402b2005-07-14 15:57:16 +00001540
Ralf Baechle26009902006-04-05 09:45:45 +01001541config MIPS_APSP_KSPD
1542 bool "Enable KSPD"
1543 depends on MIPS_VPE_APSP_API
1544 default y
1545 help
1546 KSPD is a kernel daemon that accepts syscall requests from the SP
1547 side, actions them and returns the results. It also handles the
1548 "exit" syscall notifying other kernel modules the SP program is
1549 exiting. You probably want to say yes here.
1550
Linus Torvalds1da177e2005-04-16 15:20:36 -07001551config SB1_PASS_1_WORKAROUNDS
1552 bool
1553 depends on CPU_SB1_PASS_1
1554 default y
1555
1556config SB1_PASS_2_WORKAROUNDS
1557 bool
1558 depends on CPU_SB1 && (CPU_SB1_PASS_2_2 || CPU_SB1_PASS_2)
1559 default y
1560
1561config SB1_PASS_2_1_WORKAROUNDS
1562 bool
1563 depends on CPU_SB1 && CPU_SB1_PASS_2
1564 default y
1565
1566config 64BIT_PHYS_ADDR
Ralf Baechled806cb22007-08-02 00:36:08 +01001567 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001568
Linus Torvalds1da177e2005-04-16 15:20:36 -07001569config CPU_HAS_LLSC
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001570 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001571
Franck Bui-Huu9693a852007-02-02 17:41:47 +01001572config CPU_HAS_SMARTMIPS
1573 depends on SYS_SUPPORTS_SMARTMIPS
1574 bool "Support for the SmartMIPS ASE"
1575 help
1576 SmartMIPS is a extension of the MIPS32 architecture aimed at
1577 increased security at both hardware and software level for
1578 smartcards. Enabling this option will allow proper use of the
1579 SmartMIPS instructions by Linux applications. However a kernel with
1580 this option will not work on a MIPS core without SmartMIPS core. If
1581 you don't know you probably don't have SmartMIPS and should say N
1582 here.
1583
Linus Torvalds1da177e2005-04-16 15:20:36 -07001584config CPU_HAS_WB
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001585 bool
Ralf Baechlee01402b2005-07-14 15:57:16 +00001586
Fuxin Zhang2a21c732007-06-06 14:52:43 +08001587config 64BIT_CONTEXT
1588 bool "Save 64bit integer registers"
1589 depends on 32BIT && CPU_LOONGSON2
1590 help
1591 Loongson2 CPU is 64bit , when used in 32BIT mode, its integer
1592 registers can still be accessed as 64bit, mainly for multimedia
1593 instructions. We must have all 64bit save/restored to make sure
1594 those instructions to get correct result.
1595
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001596#
1597# Vectored interrupt mode is an R2 feature
1598#
Ralf Baechlee01402b2005-07-14 15:57:16 +00001599config CPU_MIPSR2_IRQ_VI
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001600 bool
Ralf Baechlee01402b2005-07-14 15:57:16 +00001601
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001602#
1603# Extended interrupt mode is an R2 feature
1604#
Ralf Baechlee01402b2005-07-14 15:57:16 +00001605config CPU_MIPSR2_IRQ_EI
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001606 bool
Ralf Baechlee01402b2005-07-14 15:57:16 +00001607
Linus Torvalds1da177e2005-04-16 15:20:36 -07001608config CPU_HAS_SYNC
1609 bool
1610 depends on !CPU_R3000
1611 default y
1612
Ralf Baechleea580402007-10-11 23:46:09 +01001613config GENERIC_CLOCKEVENTS_BROADCAST
1614 bool
1615
Linus Torvalds1da177e2005-04-16 15:20:36 -07001616#
Ralf Baechle797798c2005-08-10 15:17:11 +00001617# Use the generic interrupt handling code in kernel/irq/:
1618#
1619config GENERIC_HARDIRQS
1620 bool
1621 default y
1622
1623config GENERIC_IRQ_PROBE
1624 bool
1625 default y
1626
Ingo Molnar0d7012a2006-06-29 02:24:43 -07001627config IRQ_PER_CPU
Ingo Molnar0d7012a2006-06-29 02:24:43 -07001628 bool
Ingo Molnar0d7012a2006-06-29 02:24:43 -07001629
Ralf Baechle797798c2005-08-10 15:17:11 +00001630#
Linus Torvalds1da177e2005-04-16 15:20:36 -07001631# - Highmem only makes sense for the 32-bit kernel.
1632# - The current highmem code will only work properly on physically indexed
1633# caches such as R3000, SB1, R7000 or those that look like they're virtually
1634# indexed such as R4000/R4400 SC and MC versions or R10000. So for the
1635# moment we protect the user and offer the highmem option only on machines
1636# where it's known to be safe. This will not offer highmem on a few systems
1637# such as MIPS32 and MIPS64 CPUs which may have virtual and physically
1638# indexed CPUs but we're playing safe.
Ralf Baechle797798c2005-08-10 15:17:11 +00001639# - We use SYS_SUPPORTS_HIGHMEM to offer highmem only for systems where we
1640# know they might have memory configurations that could make use of highmem
1641# support.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001642#
1643config HIGHMEM
1644 bool "High Memory Support"
Ralf Baechle797798c2005-08-10 15:17:11 +00001645 depends on 32BIT && CPU_SUPPORTS_HIGHMEM && SYS_SUPPORTS_HIGHMEM
1646
1647config CPU_SUPPORTS_HIGHMEM
1648 bool
1649
1650config SYS_SUPPORTS_HIGHMEM
1651 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001652
Franck Bui-Huu9693a852007-02-02 17:41:47 +01001653config SYS_SUPPORTS_SMARTMIPS
1654 bool
1655
Yoichi Yuasab4819b52005-06-25 14:54:31 -07001656config ARCH_FLATMEM_ENABLE
1657 def_bool y
1658 depends on !NUMA
1659
Ralf Baechled8cb4e12006-06-11 23:03:08 +01001660config ARCH_DISCONTIGMEM_ENABLE
1661 bool
1662 default y if SGI_IP27
1663 help
David Sterba3dde6ad2007-05-09 07:12:20 +02001664 Say Y to support efficient handling of discontiguous physical memory,
Ralf Baechled8cb4e12006-06-11 23:03:08 +01001665 for architectures which are either NUMA (Non-Uniform Memory Access)
1666 or have huge holes in the physical address space for other reasons.
1667 See <file:Documentation/vm/numa> for more.
1668
Ralf Baechlecce335a2007-11-03 02:05:43 +00001669config ARCH_POPULATES_NODE_MAP
1670 def_bool y
1671
Atsushi Nemotob1c6cd42006-07-03 00:09:47 +09001672config ARCH_SPARSEMEM_ENABLE
1673 bool
Atsushi Nemoto7de58fa2006-07-05 01:22:44 +09001674 select SPARSEMEM_STATIC
Atsushi Nemoto31473742006-07-03 00:09:47 +09001675
Ralf Baechled8cb4e12006-06-11 23:03:08 +01001676config NUMA
1677 bool "NUMA Support"
1678 depends on SYS_SUPPORTS_NUMA
1679 help
1680 Say Y to compile the kernel to support NUMA (Non-Uniform Memory
1681 Access). This option improves performance on systems with more
1682 than two nodes; on two node systems it is generally better to
1683 leave it disabled; on single node systems disable this option
1684 disabled.
1685
1686config SYS_SUPPORTS_NUMA
1687 bool
1688
Yasunori Gotoc80d79d2006-04-10 22:53:53 -07001689config NODES_SHIFT
1690 int
1691 default "6"
1692 depends on NEED_MULTIPLE_NODES
1693
Yoichi Yuasab4819b52005-06-25 14:54:31 -07001694source "mm/Kconfig"
1695
Linus Torvalds1da177e2005-04-16 15:20:36 -07001696config SMP
1697 bool "Multi-Processing support"
Ralf Baechlee73ea272006-06-04 11:51:46 +01001698 depends on SYS_SUPPORTS_SMP
Ralf Baechleb4b30a52006-08-03 17:34:24 +01001699 select IRQ_PER_CPU
Ralf Baechlee73ea272006-06-04 11:51:46 +01001700 help
Linus Torvalds1da177e2005-04-16 15:20:36 -07001701 This enables support for systems with more than one CPU. If you have
1702 a system with only one CPU, like most personal computers, say N. If
1703 you have a system with more than one CPU, say Y.
1704
1705 If you say N here, the kernel will run on single and multiprocessor
1706 machines, but will use only one CPU of a multiprocessor machine. If
1707 you say Y here, the kernel will run on many, but not all,
1708 singleprocessor machines. On a singleprocessor machine, the kernel
1709 will run faster if you say N here.
1710
1711 People using multiprocessor machines who say Y here should also say
1712 Y to "Enhanced Real Time Clock Support", below.
1713
1714 See also the <file:Documentation/smp.txt> and the SMP-HOWTO
1715 available at <http://www.tldp.org/docs.html#howto>.
1716
1717 If you don't know what to do here, say N.
1718
Ralf Baechlee73ea272006-06-04 11:51:46 +01001719config SYS_SUPPORTS_SMP
1720 bool
1721
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09001722config NR_CPUS_DEFAULT_1
1723 bool
1724
Ralf Baechle130e2fb2007-02-06 16:53:15 +00001725config NR_CPUS_DEFAULT_2
1726 bool
1727
1728config NR_CPUS_DEFAULT_4
1729 bool
1730
1731config NR_CPUS_DEFAULT_8
1732 bool
1733
1734config NR_CPUS_DEFAULT_16
1735 bool
1736
1737config NR_CPUS_DEFAULT_32
1738 bool
1739
1740config NR_CPUS_DEFAULT_64
1741 bool
1742
Linus Torvalds1da177e2005-04-16 15:20:36 -07001743config NR_CPUS
1744 int "Maximum number of CPUs (2-64)"
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09001745 range 1 64 if NR_CPUS_DEFAULT_1
Linus Torvalds1da177e2005-04-16 15:20:36 -07001746 depends on SMP
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09001747 default "1" if NR_CPUS_DEFAULT_1
Ralf Baechle130e2fb2007-02-06 16:53:15 +00001748 default "2" if NR_CPUS_DEFAULT_2
1749 default "4" if NR_CPUS_DEFAULT_4
1750 default "8" if NR_CPUS_DEFAULT_8
1751 default "16" if NR_CPUS_DEFAULT_16
1752 default "32" if NR_CPUS_DEFAULT_32
1753 default "64" if NR_CPUS_DEFAULT_64
Linus Torvalds1da177e2005-04-16 15:20:36 -07001754 help
1755 This allows you to specify the maximum number of CPUs which this
1756 kernel will support. The maximum supported value is 32 for 32-bit
1757 kernel and 64 for 64-bit kernels; the minimum value which makes
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09001758 sense is 1 for Qemu (useful only for kernel debugging purposes)
1759 and 2 for all others.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001760
1761 This is purely to save memory - each supported CPU adds
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09001762 approximately eight kilobytes to the kernel image. For best
1763 performance should round up your number of processors to the next
1764 power of two.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001765
Atsushi Nemoto1723b4a2006-06-20 00:19:13 +09001766#
1767# Timer Interrupt Frequency Configuration
1768#
1769
1770choice
1771 prompt "Timer frequency"
1772 default HZ_250
1773 help
1774 Allows the configuration of the timer frequency.
1775
1776 config HZ_48
1777 bool "48 HZ" if SYS_SUPPORTS_48HZ
1778
1779 config HZ_100
1780 bool "100 HZ" if SYS_SUPPORTS_100HZ || SYS_SUPPORTS_ARBIT_HZ
1781
1782 config HZ_128
1783 bool "128 HZ" if SYS_SUPPORTS_128HZ || SYS_SUPPORTS_ARBIT_HZ
1784
1785 config HZ_250
1786 bool "250 HZ" if SYS_SUPPORTS_250HZ || SYS_SUPPORTS_ARBIT_HZ
1787
1788 config HZ_256
1789 bool "256 HZ" if SYS_SUPPORTS_256HZ || SYS_SUPPORTS_ARBIT_HZ
1790
1791 config HZ_1000
1792 bool "1000 HZ" if SYS_SUPPORTS_1000HZ || SYS_SUPPORTS_ARBIT_HZ
1793
1794 config HZ_1024
1795 bool "1024 HZ" if SYS_SUPPORTS_1024HZ || SYS_SUPPORTS_ARBIT_HZ
1796
1797endchoice
1798
1799config SYS_SUPPORTS_48HZ
1800 bool
1801
1802config SYS_SUPPORTS_100HZ
1803 bool
1804
1805config SYS_SUPPORTS_128HZ
1806 bool
1807
1808config SYS_SUPPORTS_250HZ
1809 bool
1810
1811config SYS_SUPPORTS_256HZ
1812 bool
1813
1814config SYS_SUPPORTS_1000HZ
1815 bool
1816
1817config SYS_SUPPORTS_1024HZ
1818 bool
1819
1820config SYS_SUPPORTS_ARBIT_HZ
1821 bool
1822 default y if !SYS_SUPPORTS_48HZ && !SYS_SUPPORTS_100HZ && \
1823 !SYS_SUPPORTS_128HZ && !SYS_SUPPORTS_250HZ && \
1824 !SYS_SUPPORTS_256HZ && !SYS_SUPPORTS_1000HZ && \
1825 !SYS_SUPPORTS_1024HZ
1826
1827config HZ
1828 int
1829 default 48 if HZ_48
1830 default 100 if HZ_100
1831 default 128 if HZ_128
1832 default 250 if HZ_250
1833 default 256 if HZ_256
1834 default 1000 if HZ_1000
1835 default 1024 if HZ_1024
1836
Ralf Baechlee80de852005-07-11 20:45:51 +00001837source "kernel/Kconfig.preempt"
Linus Torvalds1da177e2005-04-16 15:20:36 -07001838
Linus Torvalds1da177e2005-04-16 15:20:36 -07001839config MIPS_INSANE_LARGE
1840 bool "Support for large 64-bit configurations"
Ralf Baechle875d43e2005-09-03 15:56:16 -07001841 depends on CPU_R10000 && 64BIT
Linus Torvalds1da177e2005-04-16 15:20:36 -07001842 help
1843 MIPS R10000 does support a 44 bit / 16TB address space as opposed to
1844 previous 64-bit processors which only supported 40 bit / 1TB. If you
1845 need processes of more than 1TB virtual address space, say Y here.
1846 This will result in additional memory usage, so it is not
1847 recommended for normal users.
1848
Atsushi Nemotoea6e9422007-01-16 23:29:11 +09001849config KEXEC
1850 bool "Kexec system call (EXPERIMENTAL)"
1851 depends on EXPERIMENTAL
1852 help
1853 kexec is a system call that implements the ability to shutdown your
1854 current kernel, and to start another kernel. It is like a reboot
David Sterba3dde6ad2007-05-09 07:12:20 +02001855 but it is independent of the system firmware. And like a reboot
Atsushi Nemotoea6e9422007-01-16 23:29:11 +09001856 you can start any kernel with it, not just Linux.
1857
Matt LaPlante01dd2fb2007-10-20 01:34:40 +02001858 The name comes from the similarity to the exec system call.
Atsushi Nemotoea6e9422007-01-16 23:29:11 +09001859
1860 It is an ongoing process to be certain the hardware in a machine
1861 is properly shutdown, so do not be surprised if this code does not
1862 initially work for you. It may help to enable device hotplugging
1863 support. As of this writing the exact hardware interface is
1864 strongly in flux, so no good recommendation can be made.
1865
1866config SECCOMP
1867 bool "Enable seccomp to safely compute untrusted bytecode"
Ralf Baechle293c5bd2007-07-25 16:19:33 +01001868 depends on PROC_FS
Atsushi Nemotoea6e9422007-01-16 23:29:11 +09001869 default y
1870 help
1871 This kernel feature is useful for number crunching applications
1872 that may need to compute untrusted bytecode during their
1873 execution. By using pipes or other transports made available to
1874 the process as file descriptors supporting the read/write
1875 syscalls, it's possible to isolate those applications in
1876 their own address space using seccomp. Once seccomp is
1877 enabled via /proc/<pid>/seccomp, it cannot be disabled
1878 and the task is only allowed to execute a few safe syscalls
1879 defined by each seccomp mode.
1880
1881 If unsure, say Y. Only embedded should say N here.
1882
Ralf Baechle5e83d432005-10-29 19:32:41 +01001883endmenu
1884
Linus Torvalds1da177e2005-04-16 15:20:36 -07001885config RWSEM_GENERIC_SPINLOCK
1886 bool
1887 default y
1888
Atsushi Nemoto1df0f0f2006-09-26 23:44:01 +09001889config LOCKDEP_SUPPORT
1890 bool
1891 default y
1892
1893config STACKTRACE_SUPPORT
1894 bool
1895 default y
1896
Ralf Baechleb6c35392005-11-25 11:35:40 +00001897source "init/Kconfig"
1898
Linus Torvalds1da177e2005-04-16 15:20:36 -07001899menu "Bus options (PCI, PCMCIA, EISA, ISA, TC)"
1900
Ralf Baechle5e83d432005-10-29 19:32:41 +01001901config HW_HAS_EISA
1902 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001903config HW_HAS_PCI
1904 bool
1905
1906config PCI
1907 bool "Support for PCI controller"
1908 depends on HW_HAS_PCI
Ralf Baechleabb4ae42007-10-11 23:46:03 +01001909 select PCI_DOMAINS
Linus Torvalds1da177e2005-04-16 15:20:36 -07001910 help
1911 Find out whether you have a PCI motherboard. PCI is the name of a
1912 bus system, i.e. the way the CPU talks to the other stuff inside
1913 your box. Other bus systems are ISA, EISA, or VESA. If you have PCI,
1914 say Y, otherwise N.
1915
1916 The PCI-HOWTO, available from
1917 <http://www.tldp.org/docs.html#howto>, contains valuable
1918 information about which PCI hardware does work under Linux and which
1919 doesn't.
1920
1921config PCI_DOMAINS
1922 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001923
1924source "drivers/pci/Kconfig"
1925
1926#
1927# ISA support is now enabled via select. Too many systems still have the one
1928# or other ISA chip on the board that users don't know about so don't expect
1929# users to choose the right thing ...
1930#
1931config ISA
1932 bool
1933
1934config EISA
1935 bool "EISA support"
Ralf Baechle5e83d432005-10-29 19:32:41 +01001936 depends on HW_HAS_EISA
Linus Torvalds1da177e2005-04-16 15:20:36 -07001937 select ISA
Ralf Baechleaa414df2006-11-30 01:14:51 +00001938 select GENERIC_ISA_DMA
Linus Torvalds1da177e2005-04-16 15:20:36 -07001939 ---help---
1940 The Extended Industry Standard Architecture (EISA) bus was
1941 developed as an open alternative to the IBM MicroChannel bus.
1942
1943 The EISA bus provided some of the features of the IBM MicroChannel
1944 bus while maintaining backward compatibility with cards made for
1945 the older ISA bus. The EISA bus saw limited use between 1988 and
1946 1995 when it was made obsolete by the PCI bus.
1947
1948 Say Y here if you are building a kernel for an EISA-based machine.
1949
1950 Otherwise, say N.
1951
1952source "drivers/eisa/Kconfig"
1953
1954config TC
1955 bool "TURBOchannel support"
1956 depends on MACH_DECSTATION
1957 help
1958 TurboChannel is a DEC (now Compaq (now HP)) bus for Alpha and MIPS
1959 processors. Documentation on writing device drivers for TurboChannel
1960 is available at:
1961 <http://www.cs.arizona.edu/computer.help/policy/DIGITAL_unix/AA-PS3HD-TET1_html/TITLE.html>.
1962
1963#config ACCESSBUS
1964# bool "Access.Bus support"
1965# depends on TC
1966
1967config MMU
1968 bool
1969 default y
1970
Ralf Baechled865bea2007-10-11 23:46:10 +01001971config I8253
1972 bool
1973
Ralf Baechlede61b542007-07-12 17:41:23 +01001974config PCSPEAKER
Michael Neulinge5c6c8e2006-03-14 00:11:50 -05001975 bool
1976
Ralf Baechlecce335a2007-11-03 02:05:43 +00001977config ZONE_DMA32
1978 bool
1979
Linus Torvalds1da177e2005-04-16 15:20:36 -07001980source "drivers/pcmcia/Kconfig"
1981
1982source "drivers/pci/hotplug/Kconfig"
1983
1984endmenu
1985
1986menu "Executable file formats"
1987
1988source "fs/Kconfig.binfmt"
1989
1990config TRAD_SIGNALS
1991 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001992
Linus Torvalds1da177e2005-04-16 15:20:36 -07001993config BINFMT_IRIX
1994 bool "Include IRIX binary compatibility"
Ralf Baechle5e83d432005-10-29 19:32:41 +01001995 depends on CPU_BIG_ENDIAN && 32BIT && BROKEN
Linus Torvalds1da177e2005-04-16 15:20:36 -07001996
1997config MIPS32_COMPAT
1998 bool "Kernel support for Linux/MIPS 32-bit binary compatibility"
Ralf Baechle875d43e2005-09-03 15:56:16 -07001999 depends on 64BIT
Linus Torvalds1da177e2005-04-16 15:20:36 -07002000 help
2001 Select this option if you want Linux/MIPS 32-bit binary
2002 compatibility. Since all software available for Linux/MIPS is
2003 currently 32-bit you should say Y here.
2004
2005config COMPAT
2006 bool
2007 depends on MIPS32_COMPAT
2008 default y
2009
Atsushi Nemoto05e43962006-11-07 18:02:44 +09002010config SYSVIPC_COMPAT
2011 bool
2012 depends on COMPAT && SYSVIPC
2013 default y
2014
Linus Torvalds1da177e2005-04-16 15:20:36 -07002015config MIPS32_O32
2016 bool "Kernel support for o32 binaries"
2017 depends on MIPS32_COMPAT
2018 help
2019 Select this option if you want to run o32 binaries. These are pure
2020 32-bit binaries as used by the 32-bit Linux/MIPS port. Most of
2021 existing binaries are in this format.
2022
2023 If unsure, say Y.
2024
2025config MIPS32_N32
2026 bool "Kernel support for n32 binaries"
2027 depends on MIPS32_COMPAT
2028 help
2029 Select this option if you want to run n32 binaries. These are
2030 64-bit binaries using 32-bit quantities for addressing and certain
2031 data that would normally be 64-bit. They are used in special
2032 cases.
2033
2034 If unsure, say N.
2035
2036config BINFMT_ELF32
2037 bool
2038 default y if MIPS32_O32 || MIPS32_N32
2039
Ralf Baechle21162452007-02-09 17:08:58 +00002040endmenu
Linus Torvalds1da177e2005-04-16 15:20:36 -07002041
Ralf Baechle21162452007-02-09 17:08:58 +00002042menu "Power management options"
Rodolfo Giometti952fa952006-06-05 17:43:10 +02002043
Ralf Baechle21162452007-02-09 17:08:58 +00002044source "kernel/power/Kconfig"
Rodolfo Giometti952fa952006-06-05 17:43:10 +02002045
Linus Torvalds1da177e2005-04-16 15:20:36 -07002046endmenu
2047
Sam Ravnborgd5950b42005-07-11 21:03:49 -07002048source "net/Kconfig"
2049
Linus Torvalds1da177e2005-04-16 15:20:36 -07002050source "drivers/Kconfig"
2051
2052source "fs/Kconfig"
2053
Mathieu Desnoyers09caded2007-10-18 23:41:05 -07002054source "kernel/Kconfig.instrumentation"
Ralf Baechle5e83d432005-10-29 19:32:41 +01002055
Linus Torvalds1da177e2005-04-16 15:20:36 -07002056source "arch/mips/Kconfig.debug"
2057
2058source "security/Kconfig"
2059
2060source "crypto/Kconfig"
2061
2062source "lib/Kconfig"