blob: 0772b5c5bc7202e24f4bb74f32f0f6a41cf25cf2 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001config MIPS
2 bool
3 default y
Yoichi Yuasaf8ac0422009-06-04 00:16:04 +09004 select HAVE_GENERIC_DMA_COHERENT
Sam Ravnborgec7748b2008-02-09 10:46:40 +01005 select HAVE_IDE
Mathieu Desnoyers42d4b832008-02-02 15:10:34 -05006 select HAVE_OPROFILE
Deng-Cheng Zhu91f01732011-01-21 16:19:17 +08007 select HAVE_IRQ_WORK
Deng-Cheng Zhu7f788d22010-10-12 19:37:21 +08008 select HAVE_PERF_EVENTS
9 select PERF_USE_VMALLOC
Jason Wessel88547002008-07-29 15:58:53 -050010 select HAVE_ARCH_KGDB
Mark Brown7563bbf2012-04-15 10:52:54 +010011 select ARCH_HAVE_CUSTOM_GPIO_H
Wu Zhangjind2bb07622009-11-20 20:34:29 +080012 select HAVE_FUNCTION_TRACER
Wu Zhangjin69a7d1b2009-11-20 20:34:30 +080013 select HAVE_FUNCTION_TRACE_MCOUNT_TEST
Wu Zhangjin538f1952009-11-20 20:34:32 +080014 select HAVE_DYNAMIC_FTRACE
15 select HAVE_FTRACE_MCOUNT_RECORD
Wu Zhangjin64575f92010-10-27 18:59:09 +080016 select HAVE_C_RECORDMCOUNT
Wu Zhangjin29c5d342009-11-20 20:34:34 +080017 select HAVE_FUNCTION_GRAPH_TRACER
David Daneyc1bf2072010-08-03 11:22:20 -070018 select HAVE_KPROBES
19 select HAVE_KRETPROBES
Catalin Marinasb69ec422012-10-08 16:28:11 -070020 select HAVE_DEBUG_KMEMLEAK
David Daneye26d1962012-01-10 15:10:22 -080021 select ARCH_BINFMT_ELF_RANDOMIZE_PIE
Ralf Baechle970d0322012-10-18 13:54:15 +020022 select HAVE_ARCH_TRANSPARENT_HUGEPAGE
Wu Zhangjin21a41fa2009-11-10 00:06:11 +080023 select RTC_LIB if !MACH_LOONGSON
Deng-Cheng Zhu2b789202010-06-09 12:35:25 +080024 select GENERIC_ATOMIC64 if !64BIT
Catalin Marinas74634492012-07-30 14:41:09 -070025 select ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE
David Daney48e1fd52010-10-01 13:27:32 -070026 select HAVE_DMA_ATTRS
27 select HAVE_DMA_API_DEBUG
David Daney3bd27e32010-11-05 15:12:48 -070028 select HAVE_GENERIC_HARDIRQS
29 select GENERIC_IRQ_PROBE
Thomas Gleixnerf8396c12011-03-23 21:09:05 +000030 select GENERIC_IRQ_SHOW
David Daney94bb0c12010-12-28 13:26:23 -080031 select HAVE_ARCH_JUMP_LABEL
Will Deaconc1d7e012012-07-30 14:42:46 -070032 select ARCH_WANT_IPC_PARSE_VERSION
Thomas Gleixner0f462e32011-07-23 12:41:25 +000033 select IRQ_FORCED_THREADING
Tejun Heo9d15ffc2011-12-08 10:22:09 -080034 select HAVE_MEMBLOCK
35 select HAVE_MEMBLOCK_NODE_MAP
36 select ARCH_DISCARD_MEMBLOCK
Thomas Gleixner360014a2012-04-20 13:05:51 +000037 select GENERIC_SMP_IDLE_THREAD
David Daney4b054492012-04-19 14:59:58 -070038 select BUILDTIME_EXTABLE_SORT
Anna-Maria Gleixnercde17942012-05-18 16:45:50 +000039 select GENERIC_CLOCKEVENTS
40 select GENERIC_CMOS_UPDATE
David Howells786d35d2012-09-28 14:31:03 +093041 select HAVE_MOD_ARCH_SPECIFIC
Joshua Kinard2f12fb22012-12-27 18:46:46 +000042 select MODULES_USE_ELF_REL if MODULES
43 select MODULES_USE_ELF_RELA if MODULES && 64BIT
Al Viro50150d22012-12-27 12:11:46 -050044 select CLONE_BACKWARDS
Al Viroea536ad2012-12-23 03:13:40 -050045 select GENERIC_SIGALTSTACK
Al Viroaa584802012-12-25 18:55:27 -050046 select GENERIC_COMPAT_RT_SIGACTION
Al Viroea5d83d2012-12-25 15:49:15 -050047 select GENERIC_COMPAT_RT_SIGQUEUEINFO
Al Viro056a0602012-12-25 13:55:50 -050048 select GENERIC_COMPAT_RT_SIGPROCMASK
Al Viro45cb66f2012-12-25 15:00:46 -050049 select GENERIC_COMPAT_RT_SIGPENDING
Linus Torvalds1da177e2005-04-16 15:20:36 -070050
Linus Torvalds1da177e2005-04-16 15:20:36 -070051menu "Machine selection"
52
Christoph Lameter5ac6da62007-02-10 01:43:14 -080053config ZONE_DMA
54 bool
Christoph Lameter5ac6da62007-02-10 01:43:14 -080055
Ralf Baechle5e83d432005-10-29 19:32:41 +010056choice
57 prompt "System type"
58 default SGI_IP22
Linus Torvalds1da177e2005-04-16 15:20:36 -070059
Manuel Lauss42a4f172010-07-15 21:45:04 +020060config MIPS_ALCHEMY
Yoichi Yuasac3543e22007-05-11 20:44:30 +090061 bool "Alchemy processor based machines"
Manuel Lauss42a4f172010-07-15 21:45:04 +020062 select 64BIT_PHYS_ADDR
Ralf Baechlef772cdb2012-11-30 17:27:27 +010063 select CEVT_R4K
Steven J. Hilld7ea3352012-11-14 23:34:17 -060064 select CSRC_R4K
Manuel Lauss42a4f172010-07-15 21:45:04 +020065 select IRQ_CPU
66 select SYS_HAS_CPU_MIPS32_R1
67 select SYS_SUPPORTS_32BIT_KERNEL
68 select SYS_SUPPORTS_APM_EMULATION
69 select GENERIC_GPIO
70 select ARCH_WANT_OPTIONAL_GPIOLIB
Wu Zhangjin1b93b3c2009-10-14 18:12:16 +080071 select SYS_SUPPORTS_ZBOOT
Manuel Lauss3766386032011-08-12 11:39:45 +020072 select USB_ARCH_HAS_OHCI
73 select USB_ARCH_HAS_EHCI
Linus Torvalds1da177e2005-04-16 15:20:36 -070074
Florian Fainelli7ca5dc12009-06-24 11:12:57 +020075config AR7
76 bool "Texas Instruments AR7"
77 select BOOT_ELF32
78 select DMA_NONCOHERENT
79 select CEVT_R4K
80 select CSRC_R4K
81 select IRQ_CPU
82 select NO_EXCEPT_FILL
83 select SWAP_IO_SPACE
84 select SYS_HAS_CPU_MIPS32_R1
85 select SYS_HAS_EARLY_PRINTK
86 select SYS_SUPPORTS_32BIT_KERNEL
87 select SYS_SUPPORTS_LITTLE_ENDIAN
Wu Zhangjin1b93b3c2009-10-14 18:12:16 +080088 select SYS_SUPPORTS_ZBOOT_UART16550
Florian Fainelli5f3c9092010-01-03 21:16:51 +010089 select ARCH_REQUIRE_GPIOLIB
Florian Fainelli7ca5dc12009-06-24 11:12:57 +020090 select VLYNQ
Yoichi Yuasa8551fb62012-08-01 15:38:00 +090091 select HAVE_CLK
Florian Fainelli7ca5dc12009-06-24 11:12:57 +020092 help
93 Support for the Texas Instruments AR7 System-on-a-Chip
94 family: TNETD7100, 7200 and 7300.
95
Gabor Juhosd4a67d92011-01-04 21:28:14 +010096config ATH79
97 bool "Atheros AR71XX/AR724X/AR913X based boards"
Gabor Juhos6eae43c2011-01-04 21:28:15 +010098 select ARCH_REQUIRE_GPIOLIB
Gabor Juhosd4a67d92011-01-04 21:28:14 +010099 select BOOT_RAW
100 select CEVT_R4K
101 select CSRC_R4K
102 select DMA_NONCOHERENT
Gabor Juhos94638062012-08-04 18:01:26 +0200103 select HAVE_CLK
Gabor Juhosd4a67d92011-01-04 21:28:14 +0100104 select IRQ_CPU
Gabor Juhos0aabf1a2011-01-04 21:28:16 +0100105 select MIPS_MACHINE
Gabor Juhosd4a67d92011-01-04 21:28:14 +0100106 select SYS_HAS_CPU_MIPS32_R2
107 select SYS_HAS_EARLY_PRINTK
108 select SYS_SUPPORTS_32BIT_KERNEL
109 select SYS_SUPPORTS_BIG_ENDIAN
110 help
111 Support for the Atheros AR71XX/AR724X/AR913X SoCs.
112
Aurelien Jarno1c0c13e2007-09-25 15:40:12 +0200113config BCM47XX
Florian Fainellic6193662010-03-25 11:42:41 +0100114 bool "Broadcom BCM47XX based boards"
Hauke Mehrtens2da4c742012-11-20 22:24:34 +0000115 select ARCH_WANT_OPTIONAL_GPIOLIB
Ralf Baechle42f77542007-10-18 17:48:11 +0100116 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000117 select CSRC_R4K
Aurelien Jarno1c0c13e2007-09-25 15:40:12 +0200118 select DMA_NONCOHERENT
Ralf Baechle0e2794b2012-11-15 20:48:50 +0100119 select FW_CFE
Aurelien Jarno1c0c13e2007-09-25 15:40:12 +0200120 select HW_HAS_PCI
121 select IRQ_CPU
Aurelien Jarno1c0c13e2007-09-25 15:40:12 +0200122 select SYS_SUPPORTS_32BIT_KERNEL
123 select SYS_SUPPORTS_LITTLE_ENDIAN
Aurelien Jarno25e5fb92007-09-25 15:41:24 +0200124 select SYS_HAS_EARLY_PRINTK
Aurelien Jarno1c0c13e2007-09-25 15:40:12 +0200125 help
126 Support for BCM47XX based boards
127
Maxime Bizone7300d02009-08-18 13:23:37 +0100128config BCM63XX
129 bool "Broadcom BCM63XX based boards"
130 select CEVT_R4K
131 select CSRC_R4K
132 select DMA_NONCOHERENT
133 select IRQ_CPU
134 select SYS_HAS_CPU_MIPS32_R1
135 select SYS_SUPPORTS_32BIT_KERNEL
136 select SYS_SUPPORTS_BIG_ENDIAN
137 select SYS_HAS_EARLY_PRINTK
138 select SWAP_IO_SPACE
139 select ARCH_REQUIRE_GPIOLIB
Yoichi Yuasa3e82eee2012-08-01 15:39:52 +0900140 select HAVE_CLK
Maxime Bizone7300d02009-08-18 13:23:37 +0100141 help
142 Support for BCM63XX based boards
143
Linus Torvalds1da177e2005-04-16 15:20:36 -0700144config MIPS_COBALT
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200145 bool "Cobalt Server"
Ralf Baechle42f77542007-10-18 17:48:11 +0100146 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000147 select CSRC_R4K
Yoichi Yuasa1097c6a2007-10-22 19:43:15 +0900148 select CEVT_GT641XX
Linus Torvalds1da177e2005-04-16 15:20:36 -0700149 select DMA_NONCOHERENT
150 select HW_HAS_PCI
Ralf Baechled865bea2007-10-11 23:46:10 +0100151 select I8253
Linus Torvalds1da177e2005-04-16 15:20:36 -0700152 select I8259
153 select IRQ_CPU
Yoichi Yuasad5ab1a62007-09-13 23:51:26 +0900154 select IRQ_GT641XX
Yoichi Yuasa252161e2007-03-14 21:51:26 +0900155 select PCI_GT64XXX_PCI0
Yoichi Yuasae25bfc92009-06-02 23:17:07 +0900156 select PCI
Ralf Baechle7cf80532005-10-20 22:33:09 +0100157 select SYS_HAS_CPU_NEVADA
Yoichi Yuasa0a22e0d2007-03-02 12:42:33 +0900158 select SYS_HAS_EARLY_PRINTK
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700159 select SYS_SUPPORTS_32BIT_KERNEL
Florian Fainelli0e8774b2008-01-15 19:42:57 +0100160 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100161 select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700162
163config MACH_DECSTATION
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200164 bool "DECstations"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700165 select BOOT_ELF32
Yoichi Yuasa6457d9f2008-04-25 12:11:44 +0900166 select CEVT_DS1287
Ralf Baechle42f77542007-10-18 17:48:11 +0100167 select CEVT_R4K
Yoichi Yuasa42474172008-04-24 09:48:40 +0900168 select CSRC_IOASIC
Ralf Baechle940f6b42007-11-24 22:33:28 +0000169 select CSRC_R4K
Maciej W. Rozycki20d60d92007-10-23 12:43:11 +0100170 select CPU_DADDI_WORKAROUNDS if 64BIT
171 select CPU_R4000_WORKAROUNDS if 64BIT
172 select CPU_R4400_WORKAROUNDS if 64BIT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700173 select DMA_NONCOHERENT
Maciej W. Rozyckid388d682007-05-29 15:08:07 +0100174 select NO_IOPORT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700175 select IRQ_CPU
Ralf Baechle7cf80532005-10-20 22:33:09 +0100176 select SYS_HAS_CPU_R3000
177 select SYS_HAS_CPU_R4X00
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700178 select SYS_SUPPORTS_32BIT_KERNEL
179 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100180 select SYS_SUPPORTS_LITTLE_ENDIAN
Atsushi Nemoto1723b4a2006-06-20 00:19:13 +0900181 select SYS_SUPPORTS_128HZ
182 select SYS_SUPPORTS_256HZ
183 select SYS_SUPPORTS_1024HZ
Ralf Baechle5e83d432005-10-29 19:32:41 +0100184 help
Linus Torvalds1da177e2005-04-16 15:20:36 -0700185 This enables support for DEC's MIPS based workstations. For details
186 see the Linux/MIPS FAQ on <http://www.linux-mips.org/> and the
187 DECstation porting pages on <http://decstation.unix-ag.org/>.
188
189 If you have one of the following DECstation Models you definitely
190 want to choose R4xx0 for the CPU Type:
191
Ralf Baechle93088162007-08-29 14:21:45 +0100192 DECstation 5000/50
193 DECstation 5000/150
194 DECstation 5000/260
195 DECsystem 5900/260
Linus Torvalds1da177e2005-04-16 15:20:36 -0700196
197 otherwise choose R3000.
198
Ralf Baechle5e83d432005-10-29 19:32:41 +0100199config MACH_JAZZ
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200200 bool "Jazz family of machines"
Ralf Baechle0e2794b2012-11-15 20:48:50 +0100201 select FW_ARC
202 select FW_ARC32
Ralf Baechle5e83d432005-10-29 19:32:41 +0100203 select ARCH_MAY_HAVE_PC_FDC
Ralf Baechle42f77542007-10-18 17:48:11 +0100204 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000205 select CSRC_R4K
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +0100206 select DEFAULT_SGI_PARTITION if CPU_BIG_ENDIAN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100207 select GENERIC_ISA_DMA
Ralf Baechle8a118c32011-06-01 19:05:10 +0100208 select HAVE_PCSPKR_PLATFORM
Thomas Bogendoerferea202c62007-08-25 11:01:50 +0200209 select IRQ_CPU
Ralf Baechled865bea2007-10-11 23:46:10 +0100210 select I8253
Ralf Baechle5e83d432005-10-29 19:32:41 +0100211 select I8259
212 select ISA
Ralf Baechle7cf80532005-10-20 22:33:09 +0100213 select SYS_HAS_CPU_R4X00
Ralf Baechle5e83d432005-10-29 19:32:41 +0100214 select SYS_SUPPORTS_32BIT_KERNEL
215 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
Atsushi Nemoto1723b4a2006-06-20 00:19:13 +0900216 select SYS_SUPPORTS_100HZ
Linus Torvalds1da177e2005-04-16 15:20:36 -0700217 help
Ralf Baechle5e83d432005-10-29 19:32:41 +0100218 This a family of machines based on the MIPS R4030 chipset which was
219 used by several vendors to build RISC/os and Windows NT workstations.
Matt LaPlante692105b2009-01-26 11:12:25 +0100220 Members include the Acer PICA, MIPS Magnum 4000, MIPS Millennium and
Ralf Baechle5e83d432005-10-29 19:32:41 +0100221 Olivetti M700-10 workstations.
222
Lars-Peter Clausen5ebabe52010-06-19 04:08:19 +0000223config MACH_JZ4740
224 bool "Ingenic JZ4740 based machines"
225 select SYS_HAS_CPU_MIPS32_R1
226 select SYS_SUPPORTS_32BIT_KERNEL
227 select SYS_SUPPORTS_LITTLE_ENDIAN
Lluís Batlle i Rossellf9c9aff2012-03-30 16:48:05 +0200228 select SYS_SUPPORTS_ZBOOT_UART16550
Lars-Peter Clausen5ebabe52010-06-19 04:08:19 +0000229 select DMA_NONCOHERENT
230 select IRQ_CPU
231 select GENERIC_GPIO
232 select ARCH_REQUIRE_GPIOLIB
233 select SYS_HAS_EARLY_PRINTK
234 select HAVE_PWM
Maurus Cuelenaereab5330e2011-03-01 00:20:01 +0100235 select HAVE_CLK
Lars-Peter Clausen83bc7692011-09-24 02:29:46 +0200236 select GENERIC_IRQ_CHIP
Lars-Peter Clausen5ebabe52010-06-19 04:08:19 +0000237
John Crispin171bb2f2011-03-30 09:27:47 +0200238config LANTIQ
239 bool "Lantiq based platforms"
240 select DMA_NONCOHERENT
241 select IRQ_CPU
242 select CEVT_R4K
243 select CSRC_R4K
244 select SYS_HAS_CPU_MIPS32_R1
245 select SYS_HAS_CPU_MIPS32_R2
246 select SYS_SUPPORTS_BIG_ENDIAN
247 select SYS_SUPPORTS_32BIT_KERNEL
248 select SYS_SUPPORTS_MULTITHREADING
249 select SYS_HAS_EARLY_PRINTK
250 select ARCH_REQUIRE_GPIOLIB
251 select SWAP_IO_SPACE
252 select BOOT_RAW
John Crispin287e3f32012-04-17 15:53:19 +0200253 select HAVE_MACH_CLKDEV
254 select CLKDEV_LOOKUP
John Crispina0392222012-04-13 20:56:13 +0200255 select USE_OF
John Crispin3f8c50c2012-08-28 12:44:59 +0200256 select PINCTRL
257 select PINCTRL_LANTIQ
John Crispin171bb2f2011-03-30 09:27:47 +0200258
Brian Murphy1f21d2b2007-08-21 22:34:16 +0200259config LASAT
260 bool "LASAT Networks platforms"
Ralf Baechle42f77542007-10-18 17:48:11 +0100261 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000262 select CSRC_R4K
Brian Murphy1f21d2b2007-08-21 22:34:16 +0200263 select DMA_NONCOHERENT
264 select SYS_HAS_EARLY_PRINTK
265 select HW_HAS_PCI
Ralf Baechlea5ccfe5c12007-10-14 23:49:33 +0100266 select IRQ_CPU
Brian Murphy1f21d2b2007-08-21 22:34:16 +0200267 select PCI_GT64XXX_PCI0
268 select MIPS_NILE4
269 select R5000_CPU_SCACHE
270 select SYS_HAS_CPU_R5000
271 select SYS_SUPPORTS_32BIT_KERNEL
272 select SYS_SUPPORTS_64BIT_KERNEL if BROKEN
273 select SYS_SUPPORTS_LITTLE_ENDIAN
Brian Murphy1f21d2b2007-08-21 22:34:16 +0200274
Wu Zhangjin85749d22009-07-02 23:26:45 +0800275config MACH_LOONGSON
276 bool "Loongson family of machines"
Wu Zhangjinc7e8c662010-01-04 17:16:46 +0800277 select SYS_SUPPORTS_ZBOOT
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900278 help
Wu Zhangjin85749d22009-07-02 23:26:45 +0800279 This enables the support of Loongson family of machines.
280
281 Loongson is a family of general-purpose MIPS-compatible CPUs.
282 developed at Institute of Computing Technology (ICT),
283 Chinese Academy of Sciences (CAS) in the People's Republic
284 of China. The chief architect is Professor Weiwu Hu.
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900285
Kelvin Cheungca585cf2012-07-25 16:17:24 +0200286config MACH_LOONGSON1
287 bool "Loongson 1 family of machines"
288 select SYS_SUPPORTS_ZBOOT
289 help
290 This enables support for the Loongson 1 based machines.
291
292 Loongson 1 is a family of 32-bit MIPS-compatible SoCs developed by
293 the ICT (Institute of Computing Technology) and the Chinese Academy
294 of Sciences.
295
Linus Torvalds1da177e2005-04-16 15:20:36 -0700296config MIPS_MALTA
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200297 bool "MIPS Malta board"
Ralf Baechle61ed242d2005-09-15 08:52:34 +0000298 select ARCH_MAY_HAVE_PC_FDC
Linus Torvalds1da177e2005-04-16 15:20:36 -0700299 select BOOT_ELF32
Ralf Baechlefa71c962008-01-29 10:15:00 +0000300 select BOOT_RAW
Ralf Baechle42f77542007-10-18 17:48:11 +0100301 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000302 select CSRC_R4K
Linus Torvalds1da177e2005-04-16 15:20:36 -0700303 select DMA_NONCOHERENT
304 select GENERIC_ISA_DMA
Ralf Baechle8a118c32011-06-01 19:05:10 +0100305 select HAVE_PCSPKR_PLATFORM
Ralf Baechleaa414df2006-11-30 01:14:51 +0000306 select IRQ_CPU
Ralf Baechle39b8d522008-04-28 17:14:26 +0100307 select IRQ_GIC
Linus Torvalds1da177e2005-04-16 15:20:36 -0700308 select HW_HAS_PCI
Ralf Baechled865bea2007-10-11 23:46:10 +0100309 select I8253
Linus Torvalds1da177e2005-04-16 15:20:36 -0700310 select I8259
Ralf Baechle5e83d432005-10-29 19:32:41 +0100311 select MIPS_BOARDS_GEN
312 select MIPS_BONITO64
Chris Dearman9318c512006-06-20 17:15:20 +0100313 select MIPS_CPU_SCACHE
Yoichi Yuasa252161e2007-03-14 21:51:26 +0900314 select PCI_GT64XXX_PCI0
Ralf Baechle5e83d432005-10-29 19:32:41 +0100315 select MIPS_MSC
Linus Torvalds1da177e2005-04-16 15:20:36 -0700316 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100317 select SYS_HAS_CPU_MIPS32_R1
318 select SYS_HAS_CPU_MIPS32_R2
319 select SYS_HAS_CPU_MIPS64_R1
Leonid Yegoshin5d9fbed2012-07-19 09:11:15 +0200320 select SYS_HAS_CPU_MIPS64_R2
Ralf Baechle7cf80532005-10-20 22:33:09 +0100321 select SYS_HAS_CPU_NEVADA
322 select SYS_HAS_CPU_RM7000
Ralf Baechle36a88532007-03-01 11:56:43 +0000323 select SYS_HAS_EARLY_PRINTK
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700324 select SYS_SUPPORTS_32BIT_KERNEL
325 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100326 select SYS_SUPPORTS_BIG_ENDIAN
327 select SYS_SUPPORTS_LITTLE_ENDIAN
Tim Anderson03650702009-06-17 16:22:53 -0700328 select SYS_SUPPORTS_MIPS_CMP
Ralf Baechlef41ae0b2006-06-05 17:24:46 +0100329 select SYS_SUPPORTS_MULTITHREADING
Franck Bui-Huu9693a852007-02-02 17:41:47 +0100330 select SYS_SUPPORTS_SMARTMIPS
Wu Zhangjin1b93b3c2009-10-14 18:12:16 +0800331 select SYS_SUPPORTS_ZBOOT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700332 help
Maciej W. Rozyckif638d192005-02-02 22:23:46 +0000333 This enables support for the MIPS Technologies Malta evaluation
Linus Torvalds1da177e2005-04-16 15:20:36 -0700334 board.
335
Steven J. Hillec47b272012-05-11 02:46:20 +0000336config MIPS_SEAD3
337 bool "MIPS SEAD3 board"
338 select BOOT_ELF32
339 select BOOT_RAW
340 select CEVT_R4K
341 select CSRC_R4K
342 select CPU_MIPSR2_IRQ_VI
343 select CPU_MIPSR2_IRQ_EI
344 select DMA_NONCOHERENT
345 select IRQ_CPU
346 select IRQ_GIC
347 select MIPS_BOARDS_GEN
348 select MIPS_CPU_SCACHE
349 select MIPS_MSC
350 select SYS_HAS_CPU_MIPS32_R1
351 select SYS_HAS_CPU_MIPS32_R2
352 select SYS_HAS_CPU_MIPS64_R1
353 select SYS_HAS_EARLY_PRINTK
354 select SYS_SUPPORTS_32BIT_KERNEL
355 select SYS_SUPPORTS_64BIT_KERNEL
356 select SYS_SUPPORTS_BIG_ENDIAN
357 select SYS_SUPPORTS_LITTLE_ENDIAN
358 select SYS_SUPPORTS_SMARTMIPS
359 select USB_ARCH_HAS_EHCI
360 select USB_EHCI_BIG_ENDIAN_DESC
361 select USB_EHCI_BIG_ENDIAN_MMIO
362 help
363 This enables support for the MIPS Technologies SEAD3 evaluation
364 board.
365
Ralf Baechlea83860c2009-03-13 21:17:57 +0100366config NEC_MARKEINS
367 bool "NEC EMMA2RH Mark-eins board"
368 select SOC_EMMA2RH
369 select HW_HAS_PCI
370 help
371 This enables support for the NEC Electronics Mark-eins boards.
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900372
Ralf Baechle5e83d432005-10-29 19:32:41 +0100373config MACH_VR41XX
Yoichi Yuasa74142d62007-04-26 19:45:09 +0900374 bool "NEC VR4100 series based machines"
Ralf Baechle42f77542007-10-18 17:48:11 +0100375 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000376 select CSRC_R4K
Ralf Baechle7cf80532005-10-20 22:33:09 +0100377 select SYS_HAS_CPU_VR41XX
Yoichi Yuasa27fdd322009-06-29 11:11:05 +0900378 select ARCH_REQUIRE_GPIOLIB
Ralf Baechle5e83d432005-10-29 19:32:41 +0100379
Daniel Lairdedb63102008-06-16 15:49:21 +0100380config NXP_STB220
381 bool "NXP STB220 board"
382 select SOC_PNX833X
383 help
384 Support for NXP Semiconductors STB220 Development Board.
385
386config NXP_STB225
387 bool "NXP 225 board"
388 select SOC_PNX833X
389 select SOC_PNX8335
390 help
391 Support for NXP Semiconductors STB225 Development Board.
392
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900393config PNX8550_JBS
Daniel Lairda92b0582008-03-06 09:07:18 +0000394 bool "NXP PNX8550 based JBS board"
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900395 select PNX8550
396 select SYS_SUPPORTS_LITTLE_ENDIAN
397
398config PNX8550_STB810
Daniel Lairda92b0582008-03-06 09:07:18 +0000399 bool "NXP PNX8550 based STB810 board"
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900400 select PNX8550
401 select SYS_SUPPORTS_LITTLE_ENDIAN
402
Marc St-Jean9267a302007-06-14 15:55:31 -0600403config PMC_MSP
404 bool "PMC-Sierra MSP chipsets"
405 depends on EXPERIMENTAL
Anoop P A39d30c12010-11-18 13:42:28 +0530406 select CEVT_R4K
407 select CSRC_R4K
Marc St-Jean9267a302007-06-14 15:55:31 -0600408 select DMA_NONCOHERENT
409 select SWAP_IO_SPACE
410 select NO_EXCEPT_FILL
411 select BOOT_RAW
412 select SYS_HAS_CPU_MIPS32_R1
413 select SYS_HAS_CPU_MIPS32_R2
414 select SYS_SUPPORTS_32BIT_KERNEL
415 select SYS_SUPPORTS_BIG_ENDIAN
Marc St-Jean9267a302007-06-14 15:55:31 -0600416 select IRQ_CPU
417 select SERIAL_8250
418 select SERIAL_8250_CONSOLE
419 help
420 This adds support for the PMC-Sierra family of Multi-Service
421 Processor System-On-A-Chips. These parts include a number
422 of integrated peripherals, interfaces and DSPs in addition to
423 a variety of MIPS cores.
424
David VomLehna3a0f8c2009-08-30 17:15:11 -0700425config POWERTV
426 bool "Cisco PowerTV"
427 select BOOT_ELF32
428 select CEVT_R4K
429 select CPU_MIPSR2_IRQ_VI
430 select CPU_MIPSR2_IRQ_EI
431 select CSRC_POWERTV
432 select DMA_NONCOHERENT
433 select HW_HAS_PCI
434 select SYS_HAS_EARLY_PRINTK
435 select SYS_HAS_CPU_MIPS32_R2
436 select SYS_SUPPORTS_32BIT_KERNEL
437 select SYS_SUPPORTS_BIG_ENDIAN
438 select SYS_SUPPORTS_HIGHMEM
439 select USB_OHCI_LITTLE_ENDIAN
440 help
441 This enables support for the Cisco PowerTV Platform.
442
Linus Torvalds1da177e2005-04-16 15:20:36 -0700443config SGI_IP22
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200444 bool "SGI IP22 (Indy/Indigo2)"
Ralf Baechle0e2794b2012-11-15 20:48:50 +0100445 select FW_ARC
446 select FW_ARC32
Linus Torvalds1da177e2005-04-16 15:20:36 -0700447 select BOOT_ELF32
Ralf Baechle42f77542007-10-18 17:48:11 +0100448 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000449 select CSRC_R4K
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +0100450 select DEFAULT_SGI_PARTITION
Linus Torvalds1da177e2005-04-16 15:20:36 -0700451 select DMA_NONCOHERENT
Ralf Baechle5e83d432005-10-29 19:32:41 +0100452 select HW_HAS_EISA
Ralf Baechled865bea2007-10-11 23:46:10 +0100453 select I8253
Thomas Bogendoerfer68de4802007-11-23 20:34:16 +0100454 select I8259
Linus Torvalds1da177e2005-04-16 15:20:36 -0700455 select IP22_CPU_SCACHE
456 select IRQ_CPU
Ralf Baechleaa414df2006-11-30 01:14:51 +0000457 select GENERIC_ISA_DMA_SUPPORT_BROKEN
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +0100458 select SGI_HAS_I8042
459 select SGI_HAS_INDYDOG
Thomas Bogendoerfer36e5c212008-07-16 14:06:15 +0200460 select SGI_HAS_HAL2
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +0100461 select SGI_HAS_SEEQ
462 select SGI_HAS_WD93
463 select SGI_HAS_ZILOG
Linus Torvalds1da177e2005-04-16 15:20:36 -0700464 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100465 select SYS_HAS_CPU_R4X00
466 select SYS_HAS_CPU_R5000
Martin Michlmayr2b5e63f2009-11-19 16:40:09 +0000467 #
468 # Disable EARLY_PRINTK for now since it leads to overwritten prom
469 # memory during early boot on some machines.
470 #
471 # See http://www.linux-mips.org/cgi-bin/mesg.cgi?a=linux-mips&i=20091119164009.GA15038%40deprecation.cyrius.com
472 # for a more details discussion
473 #
474 # select SYS_HAS_EARLY_PRINTK
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700475 select SYS_SUPPORTS_32BIT_KERNEL
476 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100477 select SYS_SUPPORTS_BIG_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700478 help
479 This are the SGI Indy, Challenge S and Indigo2, as well as certain
480 OEM variants like the Tandem CMN B006S. To compile a Linux kernel
481 that runs on these, say Y here.
482
483config SGI_IP27
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200484 bool "SGI IP27 (Origin200/2000)"
Ralf Baechle0e2794b2012-11-15 20:48:50 +0100485 select FW_ARC
486 select FW_ARC64
Ralf Baechle5e83d432005-10-29 19:32:41 +0100487 select BOOT_ELF64
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +0100488 select DEFAULT_SGI_PARTITION
Ralf Baechle634286f2009-01-28 17:48:40 +0000489 select DMA_COHERENT
Ralf Baechle36a88532007-03-01 11:56:43 +0000490 select SYS_HAS_EARLY_PRINTK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700491 select HW_HAS_PCI
Ralf Baechle130e2fb2007-02-06 16:53:15 +0000492 select NR_CPUS_DEFAULT_64
Ralf Baechle7cf80532005-10-20 22:33:09 +0100493 select SYS_HAS_CPU_R10000
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700494 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100495 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechled8cb4e12006-06-11 23:03:08 +0100496 select SYS_SUPPORTS_NUMA
Ralf Baechle1a5c5de2006-11-02 17:23:33 +0000497 select SYS_SUPPORTS_SMP
Linus Torvalds1da177e2005-04-16 15:20:36 -0700498 help
499 This are the SGI Origin 200, Origin 2000 and Onyx 2 Graphics
500 workstations. To compile a Linux kernel that runs on these, say Y
501 here.
502
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +0100503config SGI_IP28
504 bool "SGI IP28 (Indigo2 R10k) (EXPERIMENTAL)"
505 depends on EXPERIMENTAL
Ralf Baechle0e2794b2012-11-15 20:48:50 +0100506 select FW_ARC
507 select FW_ARC64
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +0100508 select BOOT_ELF64
509 select CEVT_R4K
510 select CSRC_R4K
511 select DEFAULT_SGI_PARTITION
512 select DMA_NONCOHERENT
513 select GENERIC_ISA_DMA_SUPPORT_BROKEN
514 select IRQ_CPU
515 select HW_HAS_EISA
516 select I8253
517 select I8259
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +0100518 select SGI_HAS_I8042
519 select SGI_HAS_INDYDOG
Thomas Bogendoerfer5b438c42008-07-10 20:29:55 +0200520 select SGI_HAS_HAL2
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +0100521 select SGI_HAS_SEEQ
522 select SGI_HAS_WD93
523 select SGI_HAS_ZILOG
524 select SWAP_IO_SPACE
525 select SYS_HAS_CPU_R10000
Martin Michlmayr2b5e63f2009-11-19 16:40:09 +0000526 #
527 # Disable EARLY_PRINTK for now since it leads to overwritten prom
528 # memory during early boot on some machines.
529 #
530 # See http://www.linux-mips.org/cgi-bin/mesg.cgi?a=linux-mips&i=20091119164009.GA15038%40deprecation.cyrius.com
531 # for a more details discussion
532 #
533 # select SYS_HAS_EARLY_PRINTK
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +0100534 select SYS_SUPPORTS_64BIT_KERNEL
535 select SYS_SUPPORTS_BIG_ENDIAN
536 help
537 This is the SGI Indigo2 with R10000 processor. To compile a Linux
538 kernel that runs on these, say Y here.
539
Linus Torvalds1da177e2005-04-16 15:20:36 -0700540config SGI_IP32
Ralf Baechlecfd2afc2007-07-10 17:33:00 +0100541 bool "SGI IP32 (O2)"
Ralf Baechle0e2794b2012-11-15 20:48:50 +0100542 select FW_ARC
543 select FW_ARC32
Linus Torvalds1da177e2005-04-16 15:20:36 -0700544 select BOOT_ELF32
Ralf Baechle42f77542007-10-18 17:48:11 +0100545 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000546 select CSRC_R4K
Linus Torvalds1da177e2005-04-16 15:20:36 -0700547 select DMA_NONCOHERENT
548 select HW_HAS_PCI
Ralf Baechledd67b152007-10-14 14:02:26 +0100549 select IRQ_CPU
Linus Torvalds1da177e2005-04-16 15:20:36 -0700550 select R5000_CPU_SCACHE
551 select RM7000_CPU_SCACHE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100552 select SYS_HAS_CPU_R5000
553 select SYS_HAS_CPU_R10000 if BROKEN
554 select SYS_HAS_CPU_RM7000
Ralf Baechledd2f18f2006-01-19 14:55:42 +0000555 select SYS_HAS_CPU_NEVADA
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700556 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100557 select SYS_SUPPORTS_BIG_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700558 help
559 If you want this kernel to run on SGI O2 workstation, say Y here.
560
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900561config SIBYTE_CRHINE
562 bool "Sibyte BCM91120C-CRhine"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100563 depends on EXPERIMENTAL
564 select BOOT_ELF32
565 select DMA_COHERENT
566 select SIBYTE_BCM1120
567 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100568 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100569 select SYS_SUPPORTS_BIG_ENDIAN
570 select SYS_SUPPORTS_LITTLE_ENDIAN
571
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900572config SIBYTE_CARMEL
573 bool "Sibyte BCM91120x-Carmel"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100574 depends on EXPERIMENTAL
575 select BOOT_ELF32
576 select DMA_COHERENT
577 select SIBYTE_BCM1120
578 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100579 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100580 select SYS_SUPPORTS_BIG_ENDIAN
581 select SYS_SUPPORTS_LITTLE_ENDIAN
582
583config SIBYTE_CRHONE
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200584 bool "Sibyte BCM91125C-CRhone"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100585 depends on EXPERIMENTAL
586 select BOOT_ELF32
587 select DMA_COHERENT
588 select SIBYTE_BCM1125
589 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100590 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100591 select SYS_SUPPORTS_BIG_ENDIAN
592 select SYS_SUPPORTS_HIGHMEM
593 select SYS_SUPPORTS_LITTLE_ENDIAN
594
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900595config SIBYTE_RHONE
596 bool "Sibyte BCM91125E-Rhone"
597 depends on EXPERIMENTAL
598 select BOOT_ELF32
599 select DMA_COHERENT
600 select SIBYTE_BCM1125H
601 select SWAP_IO_SPACE
602 select SYS_HAS_CPU_SB1
603 select SYS_SUPPORTS_BIG_ENDIAN
604 select SYS_SUPPORTS_LITTLE_ENDIAN
605
606config SIBYTE_SWARM
607 bool "Sibyte BCM91250A-SWARM"
608 select BOOT_ELF32
609 select DMA_COHERENT
Sebastian Andrzej Siewiorfcf3ca42010-04-18 15:26:36 +0200610 select HAVE_PATA_PLATFORM
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900611 select NR_CPUS_DEFAULT_2
612 select SIBYTE_SB1250
613 select SWAP_IO_SPACE
614 select SYS_HAS_CPU_SB1
615 select SYS_SUPPORTS_BIG_ENDIAN
616 select SYS_SUPPORTS_HIGHMEM
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900617 select SYS_SUPPORTS_LITTLE_ENDIAN
Ralf Baechlecce335a2007-11-03 02:05:43 +0000618 select ZONE_DMA32 if 64BIT
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900619
620config SIBYTE_LITTLESUR
621 bool "Sibyte BCM91250C2-LittleSur"
622 depends on EXPERIMENTAL
623 select BOOT_ELF32
624 select DMA_COHERENT
Sebastian Andrzej Siewiorfcf3ca42010-04-18 15:26:36 +0200625 select HAVE_PATA_PLATFORM
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900626 select NR_CPUS_DEFAULT_2
627 select SIBYTE_SB1250
628 select SWAP_IO_SPACE
629 select SYS_HAS_CPU_SB1
630 select SYS_SUPPORTS_BIG_ENDIAN
631 select SYS_SUPPORTS_HIGHMEM
632 select SYS_SUPPORTS_LITTLE_ENDIAN
633
634config SIBYTE_SENTOSA
635 bool "Sibyte BCM91250E-Sentosa"
636 depends on EXPERIMENTAL
637 select BOOT_ELF32
638 select DMA_COHERENT
639 select NR_CPUS_DEFAULT_2
640 select SIBYTE_SB1250
641 select SWAP_IO_SPACE
642 select SYS_HAS_CPU_SB1
643 select SYS_SUPPORTS_BIG_ENDIAN
644 select SYS_SUPPORTS_LITTLE_ENDIAN
645
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900646config SIBYTE_BIGSUR
647 bool "Sibyte BCM91480B-BigSur"
648 select BOOT_ELF32
649 select DMA_COHERENT
650 select NR_CPUS_DEFAULT_4
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900651 select SIBYTE_BCM1x80
652 select SWAP_IO_SPACE
653 select SYS_HAS_CPU_SB1
654 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechle651194f2007-11-01 21:55:39 +0000655 select SYS_SUPPORTS_HIGHMEM
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900656 select SYS_SUPPORTS_LITTLE_ENDIAN
Ralf Baechlecce335a2007-11-03 02:05:43 +0000657 select ZONE_DMA32 if 64BIT
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900658
Thomas Bogendoerfer14b36af2006-12-05 17:05:44 +0100659config SNI_RM
660 bool "SNI RM200/300/400"
Ralf Baechle0e2794b2012-11-15 20:48:50 +0100661 select FW_ARC if CPU_LITTLE_ENDIAN
662 select FW_ARC32 if CPU_LITTLE_ENDIAN
Thomas Bogendoerfer231a35d2008-01-04 23:31:07 +0100663 select SNIPROM if CPU_BIG_ENDIAN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100664 select ARCH_MAY_HAVE_PC_FDC
665 select BOOT_ELF32
Ralf Baechle42f77542007-10-18 17:48:11 +0100666 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000667 select CSRC_R4K
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +0100668 select DEFAULT_SGI_PARTITION if CPU_BIG_ENDIAN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100669 select DMA_NONCOHERENT
670 select GENERIC_ISA_DMA
Ralf Baechle8a118c32011-06-01 19:05:10 +0100671 select HAVE_PCSPKR_PLATFORM
Ralf Baechle5e83d432005-10-29 19:32:41 +0100672 select HW_HAS_EISA
673 select HW_HAS_PCI
Thomas Bogendoerferc066a322006-12-28 18:22:32 +0100674 select IRQ_CPU
Ralf Baechled865bea2007-10-11 23:46:10 +0100675 select I8253
Ralf Baechle5e83d432005-10-29 19:32:41 +0100676 select I8259
677 select ISA
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200678 select SWAP_IO_SPACE if CPU_BIG_ENDIAN
Ralf Baechle7cf80532005-10-20 22:33:09 +0100679 select SYS_HAS_CPU_R4X00
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200680 select SYS_HAS_CPU_R5000
Thomas Bogendoerferc066a322006-12-28 18:22:32 +0100681 select SYS_HAS_CPU_R10000
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200682 select R5000_CPU_SCACHE
Ralf Baechle36a88532007-03-01 11:56:43 +0000683 select SYS_HAS_EARLY_PRINTK
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700684 select SYS_SUPPORTS_32BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100685 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200686 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100687 select SYS_SUPPORTS_HIGHMEM
688 select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700689 help
Thomas Bogendoerfer14b36af2006-12-05 17:05:44 +0100690 The SNI RM200/300/400 are MIPS-based machines manufactured by
691 Siemens Nixdorf Informationssysteme (SNI), parent company of Pyramid
Ralf Baechle5e83d432005-10-29 19:32:41 +0100692 Technology and now in turn merged with Fujitsu. Say Y here to
693 support this machine type.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700694
Atsushi Nemotoedcaf1a2008-07-11 23:27:54 +0900695config MACH_TX39XX
696 bool "Toshiba TX39 series based machines"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100697
Atsushi Nemotoedcaf1a2008-07-11 23:27:54 +0900698config MACH_TX49XX
699 bool "Toshiba TX49 series based machines"
Ralf Baechle23fbee92005-07-25 22:45:45 +0000700
Ralf Baechle73b43902008-07-16 16:12:25 +0100701config MIKROTIK_RB532
702 bool "Mikrotik RB532 boards"
703 select CEVT_R4K
704 select CSRC_R4K
705 select DMA_NONCOHERENT
Ralf Baechle73b43902008-07-16 16:12:25 +0100706 select HW_HAS_PCI
707 select IRQ_CPU
708 select SYS_HAS_CPU_MIPS32_R1
709 select SYS_SUPPORTS_32BIT_KERNEL
710 select SYS_SUPPORTS_LITTLE_ENDIAN
711 select SWAP_IO_SPACE
712 select BOOT_RAW
Florian Fainellid888e252008-08-23 18:54:34 +0200713 select ARCH_REQUIRE_GPIOLIB
Ralf Baechle73b43902008-07-16 16:12:25 +0100714 help
715 Support the Mikrotik(tm) RouterBoard 532 series,
716 based on the IDT RC32434 SoC.
717
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900718config WR_PPMC
719 bool "Wind River PPMC board"
Ralf Baechle42f77542007-10-18 17:48:11 +0100720 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000721 select CSRC_R4K
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900722 select IRQ_CPU
723 select BOOT_ELF32
724 select DMA_NONCOHERENT
725 select HW_HAS_PCI
726 select PCI_GT64XXX_PCI0
727 select SWAP_IO_SPACE
728 select SYS_HAS_CPU_MIPS32_R1
729 select SYS_HAS_CPU_MIPS32_R2
730 select SYS_HAS_CPU_MIPS64_R1
731 select SYS_HAS_CPU_NEVADA
732 select SYS_HAS_CPU_RM7000
733 select SYS_SUPPORTS_32BIT_KERNEL
734 select SYS_SUPPORTS_64BIT_KERNEL
735 select SYS_SUPPORTS_BIG_ENDIAN
736 select SYS_SUPPORTS_LITTLE_ENDIAN
737 help
738 This enables support for the Wind River MIPS32 4KC PPMC evaluation
739 board, which is based on GT64120 bridge chip.
740
David Daneya86c7f72008-12-11 15:33:38 -0800741config CAVIUM_OCTEON_SIMULATOR
Yoichi Yuasac9d89d92009-06-02 23:15:10 +0900742 bool "Cavium Networks Octeon Simulator"
David Daneya86c7f72008-12-11 15:33:38 -0800743 select CEVT_R4K
744 select 64BIT_PHYS_ADDR
745 select DMA_COHERENT
746 select SYS_SUPPORTS_64BIT_KERNEL
747 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechle773cb772009-06-23 10:36:38 +0100748 select SYS_SUPPORTS_HOTPLUG_CPU
David Daney5e683382009-02-02 11:30:59 -0800749 select SYS_HAS_CPU_CAVIUM_OCTEON
David Daney465aaed2011-08-20 08:44:00 -0700750 select HOLES_IN_ZONE
David Daneya86c7f72008-12-11 15:33:38 -0800751 help
752 The Octeon simulator is software performance model of the Cavium
753 Octeon Processor. It supports simulating Octeon processors on x86
754 hardware.
755
756config CAVIUM_OCTEON_REFERENCE_BOARD
Yoichi Yuasac9d89d92009-06-02 23:15:10 +0900757 bool "Cavium Networks Octeon reference board"
David Daneya86c7f72008-12-11 15:33:38 -0800758 select CEVT_R4K
759 select 64BIT_PHYS_ADDR
760 select DMA_COHERENT
761 select SYS_SUPPORTS_64BIT_KERNEL
762 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechlef65aad42012-10-17 00:39:09 +0200763 select EDAC_SUPPORT
Ralf Baechle773cb772009-06-23 10:36:38 +0100764 select SYS_SUPPORTS_HOTPLUG_CPU
David Daneya86c7f72008-12-11 15:33:38 -0800765 select SYS_HAS_EARLY_PRINTK
David Daney5e683382009-02-02 11:30:59 -0800766 select SYS_HAS_CPU_CAVIUM_OCTEON
David Daneya86c7f72008-12-11 15:33:38 -0800767 select SWAP_IO_SPACE
David Daneye8635b42009-04-23 17:44:38 -0700768 select HW_HAS_PCI
769 select ARCH_SUPPORTS_MSI
David Daneyf00e0012010-10-01 13:27:30 -0700770 select ZONE_DMA32
David Daney340fbb82010-10-08 14:47:53 -0700771 select USB_ARCH_HAS_OHCI
772 select USB_ARCH_HAS_EHCI
David Daney465aaed2011-08-20 08:44:00 -0700773 select HOLES_IN_ZONE
David Daneya86c7f72008-12-11 15:33:38 -0800774 help
775 This option supports all of the Octeon reference boards from Cavium
776 Networks. It builds a kernel that dynamically determines the Octeon
777 CPU type and supports all known board reference implementations.
778 Some of the supported boards are:
779 EBT3000
780 EBH3000
781 EBH3100
782 Thunder
783 Kodama
784 Hikari
785 Say Y here for most Octeon reference boards.
786
Jayachandran C7f058e82011-05-07 01:36:57 +0530787config NLM_XLR_BOARD
788 bool "Netlogic XLR/XLS based systems"
789 depends on EXPERIMENTAL
790 select BOOT_ELF32
791 select NLM_COMMON
Jayachandran C7f058e82011-05-07 01:36:57 +0530792 select SYS_HAS_CPU_XLR
793 select SYS_SUPPORTS_SMP
794 select HW_HAS_PCI
795 select SWAP_IO_SPACE
796 select SYS_SUPPORTS_32BIT_KERNEL
797 select SYS_SUPPORTS_64BIT_KERNEL
798 select 64BIT_PHYS_ADDR
799 select SYS_SUPPORTS_BIG_ENDIAN
800 select SYS_SUPPORTS_HIGHMEM
801 select DMA_COHERENT
802 select NR_CPUS_DEFAULT_32
803 select CEVT_R4K
804 select CSRC_R4K
805 select IRQ_CPU
Ganesan Ramalingamf32671a2011-08-23 13:36:10 +0530806 select ARCH_SUPPORTS_MSI
Jayachandran Cb97215f2012-10-31 12:01:33 +0000807 select ZONE_DMA32 if 64BIT
Jayachandran C7f058e82011-05-07 01:36:57 +0530808 select SYNC_R4K
809 select SYS_HAS_EARLY_PRINTK
Jayachandran Cf35574a2012-07-24 17:28:53 +0200810 select USB_ARCH_HAS_OHCI if USB_SUPPORT
811 select USB_ARCH_HAS_EHCI if USB_SUPPORT
Jayachandran C7f058e82011-05-07 01:36:57 +0530812 help
813 Support for systems based on Netlogic XLR and XLS processors.
814 Say Y here if you have a XLR or XLS based board.
815
Jayachandran C1c773ea2011-11-16 00:21:28 +0000816config NLM_XLP_BOARD
817 bool "Netlogic XLP based systems"
818 depends on EXPERIMENTAL
819 select BOOT_ELF32
820 select NLM_COMMON
821 select SYS_HAS_CPU_XLP
822 select SYS_SUPPORTS_SMP
823 select HW_HAS_PCI
Jayachandran C1c773ea2011-11-16 00:21:28 +0000824 select SYS_SUPPORTS_32BIT_KERNEL
825 select SYS_SUPPORTS_64BIT_KERNEL
826 select 64BIT_PHYS_ADDR
827 select SYS_SUPPORTS_BIG_ENDIAN
828 select SYS_SUPPORTS_LITTLE_ENDIAN
829 select SYS_SUPPORTS_HIGHMEM
830 select DMA_COHERENT
831 select NR_CPUS_DEFAULT_32
832 select CEVT_R4K
833 select CSRC_R4K
834 select IRQ_CPU
Jayachandran Cb97215f2012-10-31 12:01:33 +0000835 select ZONE_DMA32 if 64BIT
Jayachandran C1c773ea2011-11-16 00:21:28 +0000836 select SYNC_R4K
837 select SYS_HAS_EARLY_PRINTK
Jayachandran C2f6528e2012-07-13 21:53:22 +0530838 select USE_OF
Jayachandran C1c773ea2011-11-16 00:21:28 +0000839 help
840 This board is based on Netlogic XLP Processor.
841 Say Y here if you have a XLP based board.
842
Linus Torvalds1da177e2005-04-16 15:20:36 -0700843endchoice
844
Ralf Baechlee8c7c482008-09-16 19:12:16 +0200845source "arch/mips/alchemy/Kconfig"
Gabor Juhosd4a67d92011-01-04 21:28:14 +0100846source "arch/mips/ath79/Kconfig"
Hauke Mehrtensa656ffc2011-07-23 01:20:13 +0200847source "arch/mips/bcm47xx/Kconfig"
Maxime Bizone7300d02009-08-18 13:23:37 +0100848source "arch/mips/bcm63xx/Kconfig"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100849source "arch/mips/jazz/Kconfig"
Lars-Peter Clausen5ebabe52010-06-19 04:08:19 +0000850source "arch/mips/jz4740/Kconfig"
John Crispin8ec6d932011-03-30 09:27:48 +0200851source "arch/mips/lantiq/Kconfig"
Brian Murphy1f21d2b2007-08-21 22:34:16 +0200852source "arch/mips/lasat/Kconfig"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100853source "arch/mips/pmc-sierra/Kconfig"
David VomLehna3a0f8c2009-08-30 17:15:11 -0700854source "arch/mips/powertv/Kconfig"
Ralf Baechle29c48692005-02-07 01:27:14 +0000855source "arch/mips/sgi-ip27/Kconfig"
Ralf Baechle38b18f722005-02-03 14:28:23 +0000856source "arch/mips/sibyte/Kconfig"
Atsushi Nemoto22b1d702008-07-11 00:31:36 +0900857source "arch/mips/txx9/Kconfig"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100858source "arch/mips/vr41xx/Kconfig"
David Daneya86c7f72008-12-11 15:33:38 -0800859source "arch/mips/cavium-octeon/Kconfig"
Wu Zhangjin85749d22009-07-02 23:26:45 +0800860source "arch/mips/loongson/Kconfig"
Kelvin Cheungca585cf2012-07-25 16:17:24 +0200861source "arch/mips/loongson1/Kconfig"
Jayachandran C7f058e82011-05-07 01:36:57 +0530862source "arch/mips/netlogic/Kconfig"
Ralf Baechle38b18f722005-02-03 14:28:23 +0000863
Ralf Baechle5e83d432005-10-29 19:32:41 +0100864endmenu
865
Linus Torvalds1da177e2005-04-16 15:20:36 -0700866config RWSEM_GENERIC_SPINLOCK
867 bool
868 default y
869
870config RWSEM_XCHGADD_ALGORITHM
871 bool
872
David Howellsf0d1b0b2006-12-08 02:37:49 -0800873config ARCH_HAS_ILOG2_U32
874 bool
875 default n
876
877config ARCH_HAS_ILOG2_U64
878 bool
879 default n
880
Akinobu Mita3c9ee7e2006-03-26 01:39:30 -0800881config GENERIC_HWEIGHT
882 bool
883 default y
884
Linus Torvalds1da177e2005-04-16 15:20:36 -0700885config GENERIC_CALIBRATE_DELAY
886 bool
887 default y
888
Ingo Molnarae1e9132008-11-11 09:05:16 +0100889config SCHED_OMIT_FRAME_POINTER
Atsushi Nemoto1cc89032006-04-04 13:11:45 +0900890 bool
891 default y
892
Linus Torvalds1da177e2005-04-16 15:20:36 -0700893#
894# Select some configuration options automatically based on user selections.
895#
Ralf Baechle0e2794b2012-11-15 20:48:50 +0100896config FW_ARC
Linus Torvalds1da177e2005-04-16 15:20:36 -0700897 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700898
Ralf Baechle61ed242d2005-09-15 08:52:34 +0000899config ARCH_MAY_HAVE_PC_FDC
900 bool
901
Marc St-Jean9267a302007-06-14 15:55:31 -0600902config BOOT_RAW
903 bool
904
Ralf Baechle217dd112007-11-01 01:57:55 +0000905config CEVT_BCM1480
906 bool
907
Yoichi Yuasa6457d9f2008-04-25 12:11:44 +0900908config CEVT_DS1287
909 bool
910
Yoichi Yuasa1097c6a2007-10-22 19:43:15 +0900911config CEVT_GT641XX
912 bool
913
Ralf Baechle42f77542007-10-18 17:48:11 +0100914config CEVT_R4K
915 bool
916
Ralf Baechle217dd112007-11-01 01:57:55 +0000917config CEVT_SB1250
918 bool
919
Atsushi Nemoto229f7732007-10-25 01:34:09 +0900920config CEVT_TXX9
921 bool
922
Ralf Baechle217dd112007-11-01 01:57:55 +0000923config CSRC_BCM1480
924 bool
925
Yoichi Yuasa42474172008-04-24 09:48:40 +0900926config CSRC_IOASIC
927 bool
928
David VomLehna3a0f8c2009-08-30 17:15:11 -0700929config CSRC_POWERTV
930 bool
931
Ralf Baechle940f6b42007-11-24 22:33:28 +0000932config CSRC_R4K
933 bool
934
Ralf Baechle217dd112007-11-01 01:57:55 +0000935config CSRC_SB1250
936 bool
937
Atsushi Nemotoa9aec7f2008-04-05 00:55:41 +0900938config GPIO_TXX9
939 select GENERIC_GPIO
Michael Buesch7444a722008-07-25 01:46:11 -0700940 select ARCH_REQUIRE_GPIOLIB
Atsushi Nemotoa9aec7f2008-04-05 00:55:41 +0900941 bool
942
Ralf Baechle0e2794b2012-11-15 20:48:50 +0100943config FW_CFE
Aurelien Jarnodf78b5c2007-09-05 08:58:26 +0200944 bool
945
FUJITA Tomonori4bafad92010-09-03 09:49:12 +0900946config ARCH_DMA_ADDR_T_64BIT
947 def_bool (HIGHMEM && 64BIT_PHYS_ADDR) || 64BIT
948
Ralf Baechle4ce588c2005-09-03 15:56:19 -0700949config DMA_COHERENT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700950 bool
951
Ralf Baechle4ce588c2005-09-03 15:56:19 -0700952config DMA_NONCOHERENT
953 bool
FUJITA Tomonorie1e02b32010-03-10 15:23:25 -0800954 select NEED_DMA_MAP_STATE
Ralf Baechle4ce588c2005-09-03 15:56:19 -0700955
FUJITA Tomonorie1e02b32010-03-10 15:23:25 -0800956config NEED_DMA_MAP_STATE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700957 bool
958
Ralf Baechle36a88532007-03-01 11:56:43 +0000959config SYS_HAS_EARLY_PRINTK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700960 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700961
Ralf Baechledbb74542007-08-07 14:52:17 +0100962config HOTPLUG_CPU
Ralf Baechle1b2bc752009-06-23 10:00:31 +0100963 bool "Support for hot-pluggable CPUs"
964 depends on SMP && HOTPLUG && SYS_SUPPORTS_HOTPLUG_CPU
965 help
966 Say Y here to allow turning CPUs off and on. CPUs can be
967 controlled through /sys/devices/system/cpu.
968 (Note: power management support will enable this option
969 automatically on SMP systems. )
970 Say N if you want to disable CPU hotplug.
971
972config SYS_SUPPORTS_HOTPLUG_CPU
Ralf Baechledbb74542007-08-07 14:52:17 +0100973 bool
Ralf Baechledbb74542007-08-07 14:52:17 +0100974
Linus Torvalds1da177e2005-04-16 15:20:36 -0700975config I8259
976 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700977
Linus Torvalds1da177e2005-04-16 15:20:36 -0700978config MIPS_BONITO64
979 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700980
981config MIPS_MSC
982 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700983
Brian Murphy1f21d2b2007-08-21 22:34:16 +0200984config MIPS_NILE4
985 bool
986
Linus Torvalds1da177e2005-04-16 15:20:36 -0700987config MIPS_DISABLE_OBSOLETE_IDE
988 bool
989
Ralf Baechle39b8d522008-04-28 17:14:26 +0100990config SYNC_R4K
991 bool
992
Gabor Juhos487d70d2010-11-23 16:06:25 +0100993config MIPS_MACHINE
994 def_bool n
995
Maciej W. Rozyckid388d682007-05-29 15:08:07 +0100996config NO_IOPORT
997 def_bool n
998
Ralf Baechle8313da32007-08-24 16:48:30 +0100999config GENERIC_ISA_DMA
1000 bool
1001 select ZONE_DMA if GENERIC_ISA_DMA_SUPPORT_BROKEN=n
Namhyung Kima35bee82010-10-18 12:55:21 +09001002 select ISA_DMA_API
Ralf Baechle8313da32007-08-24 16:48:30 +01001003
Ralf Baechleaa414df2006-11-30 01:14:51 +00001004config GENERIC_ISA_DMA_SUPPORT_BROKEN
1005 bool
Ralf Baechle8313da32007-08-24 16:48:30 +01001006 select GENERIC_ISA_DMA
Ralf Baechleaa414df2006-11-30 01:14:51 +00001007
Namhyung Kima35bee82010-10-18 12:55:21 +09001008config ISA_DMA_API
1009 bool
1010
Yoichi Yuasa09663332007-05-22 00:05:58 +09001011config GENERIC_GPIO
1012 bool
1013
David Daney465aaed2011-08-20 08:44:00 -07001014config HOLES_IN_ZONE
1015 bool
1016
Ralf Baechle5e83d432005-10-29 19:32:41 +01001017#
Masanari Iida6b2aac42012-04-14 00:14:11 +09001018# Endianness selection. Sufficiently obscure so many users don't know what to
Ralf Baechle5e83d432005-10-29 19:32:41 +01001019# answer,so we try hard to limit the available choices. Also the use of a
1020# choice statement should be more obvious to the user.
1021#
1022choice
Masanari Iida6b2aac42012-04-14 00:14:11 +09001023 prompt "Endianness selection"
Linus Torvalds1da177e2005-04-16 15:20:36 -07001024 help
1025 Some MIPS machines can be configured for either little or big endian
Ralf Baechle5e83d432005-10-29 19:32:41 +01001026 byte order. These modes require different kernels and a different
Matt LaPlante3cb2fcc2006-11-30 05:22:59 +01001027 Linux distribution. In general there is one preferred byteorder for a
Ralf Baechle5e83d432005-10-29 19:32:41 +01001028 particular system but some systems are just as commonly used in the
David Sterba3dde6ad2007-05-09 07:12:20 +02001029 one or the other endianness.
Ralf Baechle5e83d432005-10-29 19:32:41 +01001030
1031config CPU_BIG_ENDIAN
1032 bool "Big endian"
1033 depends on SYS_SUPPORTS_BIG_ENDIAN
1034
1035config CPU_LITTLE_ENDIAN
1036 bool "Little endian"
1037 depends on SYS_SUPPORTS_LITTLE_ENDIAN
1038 help
1039
1040endchoice
1041
David Daney22b07632010-07-23 18:41:43 -07001042config EXPORT_UASM
1043 bool
1044
Ralf Baechle21162452007-02-09 17:08:58 +00001045config SYS_SUPPORTS_APM_EMULATION
1046 bool
1047
Ralf Baechle5e83d432005-10-29 19:32:41 +01001048config SYS_SUPPORTS_BIG_ENDIAN
1049 bool
1050
1051config SYS_SUPPORTS_LITTLE_ENDIAN
1052 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001053
David Daney9cffd1542009-05-27 17:47:46 -07001054config SYS_SUPPORTS_HUGETLBFS
1055 bool
1056 depends on CPU_SUPPORTS_HUGEPAGES && 64BIT
1057 default y
1058
David Daneyaa1762f2012-10-17 00:48:10 +02001059config MIPS_HUGE_TLB_SUPPORT
1060 def_bool HUGETLB_PAGE || TRANSPARENT_HUGEPAGE
1061
Linus Torvalds1da177e2005-04-16 15:20:36 -07001062config IRQ_CPU
1063 bool
1064
1065config IRQ_CPU_RM7K
1066 bool
1067
Marc St-Jean9267a302007-06-14 15:55:31 -06001068config IRQ_MSP_SLP
1069 bool
1070
1071config IRQ_MSP_CIC
1072 bool
1073
Atsushi Nemoto8420fd02007-08-02 23:35:53 +09001074config IRQ_TXX9
1075 bool
1076
Yoichi Yuasad5ab1a62007-09-13 23:51:26 +09001077config IRQ_GT641XX
1078 bool
1079
Ralf Baechle39b8d522008-04-28 17:14:26 +01001080config IRQ_GIC
1081 bool
1082
Linus Torvalds1da177e2005-04-16 15:20:36 -07001083config MIPS_BOARDS_GEN
1084 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001085
Yoichi Yuasa252161e2007-03-14 21:51:26 +09001086config PCI_GT64XXX_PCI0
Linus Torvalds1da177e2005-04-16 15:20:36 -07001087 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001088
Marc St-Jean9267a302007-06-14 15:55:31 -06001089config NO_EXCEPT_FILL
1090 bool
1091
Ralf Baechlea83860c2009-03-13 21:17:57 +01001092config SOC_EMMA2RH
1093 bool
1094 select CEVT_R4K
1095 select CSRC_R4K
1096 select DMA_NONCOHERENT
1097 select IRQ_CPU
1098 select SWAP_IO_SPACE
1099 select SYS_HAS_CPU_R5500
1100 select SYS_SUPPORTS_32BIT_KERNEL
1101 select SYS_SUPPORTS_64BIT_KERNEL
1102 select SYS_SUPPORTS_BIG_ENDIAN
1103
Daniel Lairdedb63102008-06-16 15:49:21 +01001104config SOC_PNX833X
1105 bool
1106 select CEVT_R4K
1107 select CSRC_R4K
1108 select IRQ_CPU
1109 select DMA_NONCOHERENT
1110 select SYS_HAS_CPU_MIPS32_R2
1111 select SYS_SUPPORTS_32BIT_KERNEL
1112 select SYS_SUPPORTS_LITTLE_ENDIAN
1113 select SYS_SUPPORTS_BIG_ENDIAN
Daniel Lairdedb63102008-06-16 15:49:21 +01001114 select GENERIC_GPIO
1115 select CPU_MIPSR2_IRQ_VI
1116
1117config SOC_PNX8335
1118 bool
1119 select SOC_PNX833X
1120
Pete Popovbdf21b12005-07-14 17:47:57 +00001121config PNX8550
1122 bool
1123 select SOC_PNX8550
1124
1125config SOC_PNX8550
1126 bool
Pete Popovbdf21b12005-07-14 17:47:57 +00001127 select DMA_NONCOHERENT
1128 select HW_HAS_PCI
Ralf Baechleb8c2a772005-10-31 13:08:37 +00001129 select SYS_HAS_CPU_MIPS32_R1
Ralf Baechle36a88532007-03-01 11:56:43 +00001130 select SYS_HAS_EARLY_PRINTK
Ralf Baechle7cf80532005-10-20 22:33:09 +01001131 select SYS_SUPPORTS_32BIT_KERNEL
Florian Fainelli4ead1682007-05-22 21:44:42 +02001132 select GENERIC_GPIO
Pete Popovbdf21b12005-07-14 17:47:57 +00001133
Linus Torvalds1da177e2005-04-16 15:20:36 -07001134config SWAP_IO_SPACE
1135 bool
1136
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +01001137config SGI_HAS_INDYDOG
1138 bool
1139
Thomas Bogendoerfer5b438c42008-07-10 20:29:55 +02001140config SGI_HAS_HAL2
1141 bool
1142
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +01001143config SGI_HAS_SEEQ
1144 bool
1145
1146config SGI_HAS_WD93
1147 bool
1148
1149config SGI_HAS_ZILOG
1150 bool
1151
1152config SGI_HAS_I8042
1153 bool
1154
1155config DEFAULT_SGI_PARTITION
1156 bool
1157
Ralf Baechle0e2794b2012-11-15 20:48:50 +01001158config FW_ARC32
Ralf Baechle5e83d432005-10-29 19:32:41 +01001159 bool
1160
Thomas Bogendoerfer231a35d2008-01-04 23:31:07 +01001161config SNIPROM
1162 bool
1163
Linus Torvalds1da177e2005-04-16 15:20:36 -07001164config BOOT_ELF32
1165 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001166
1167config MIPS_L1_CACHE_SHIFT
1168 int
Ralf Baechlec7088752009-10-12 22:30:06 +02001169 default "4" if MACH_DECSTATION || MIKROTIK_RB532 || PMC_MSP4200_EVAL
Ralf Baechle0db2b742009-10-13 16:54:01 +02001170 default "6" if MIPS_CPU_SCACHE
David Daneya86c7f72008-12-11 15:33:38 -08001171 default "7" if SGI_IP22 || SGI_IP27 || SGI_IP28 || SNI_RM || CPU_CAVIUM_OCTEON
Linus Torvalds1da177e2005-04-16 15:20:36 -07001172 default "5"
1173
Linus Torvalds1da177e2005-04-16 15:20:36 -07001174config HAVE_STD_PC_SERIAL_PORT
1175 bool
1176
Linus Torvalds1da177e2005-04-16 15:20:36 -07001177config ARC_CONSOLE
1178 bool "ARC console support"
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +01001179 depends on SGI_IP22 || SGI_IP28 || (SNI_RM && CPU_LITTLE_ENDIAN)
Linus Torvalds1da177e2005-04-16 15:20:36 -07001180
1181config ARC_MEMORY
1182 bool
Thomas Bogendoerfer14b36af2006-12-05 17:05:44 +01001183 depends on MACH_JAZZ || SNI_RM || SGI_IP32
Linus Torvalds1da177e2005-04-16 15:20:36 -07001184 default y
1185
1186config ARC_PROMLIB
1187 bool
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +01001188 depends on MACH_JAZZ || SNI_RM || SGI_IP22 || SGI_IP28 || SGI_IP32
Linus Torvalds1da177e2005-04-16 15:20:36 -07001189 default y
1190
Ralf Baechle0e2794b2012-11-15 20:48:50 +01001191config FW_ARC64
Linus Torvalds1da177e2005-04-16 15:20:36 -07001192 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001193
1194config BOOT_ELF64
1195 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001196
Linus Torvalds1da177e2005-04-16 15:20:36 -07001197menu "CPU selection"
1198
1199choice
1200 prompt "CPU type"
1201 default CPU_R4X00
1202
Wu Zhangjin3702bba2009-07-02 23:27:41 +08001203config CPU_LOONGSON2E
1204 bool "Loongson 2E"
1205 depends on SYS_HAS_CPU_LOONGSON2E
1206 select CPU_LOONGSON2
Fuxin Zhang2a21c732007-06-06 14:52:43 +08001207 help
1208 The Loongson 2E processor implements the MIPS III instruction set
1209 with many extensions.
1210
Lucas De Marchi25985ed2011-03-30 22:57:33 -03001211 It has an internal FPGA northbridge, which is compatible to
Wu Zhangjin6f7a2512009-11-06 18:45:05 +08001212 bonito64.
1213
1214config CPU_LOONGSON2F
1215 bool "Loongson 2F"
1216 depends on SYS_HAS_CPU_LOONGSON2F
1217 select CPU_LOONGSON2
Arnaud Patardc197da92010-04-29 11:58:54 +02001218 select GENERIC_GPIO
1219 select ARCH_REQUIRE_GPIOLIB
Wu Zhangjin6f7a2512009-11-06 18:45:05 +08001220 help
1221 The Loongson 2F processor implements the MIPS III instruction set
1222 with many extensions.
1223
1224 Loongson2F have built-in DDR2 and PCIX controller. The PCIX controller
1225 have a similar programming interface with FPGA northbridge used in
1226 Loongson2E.
1227
Kelvin Cheungca585cf2012-07-25 16:17:24 +02001228config CPU_LOONGSON1B
1229 bool "Loongson 1B"
1230 depends on SYS_HAS_CPU_LOONGSON1B
1231 select CPU_LOONGSON1
1232 help
1233 The Loongson 1B is a 32-bit SoC, which implements the MIPS32
1234 release 2 instruction set.
1235
Ralf Baechle6e760c82005-07-06 12:08:11 +00001236config CPU_MIPS32_R1
1237 bool "MIPS32 Release 1"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001238 depends on SYS_HAS_CPU_MIPS32_R1
Ralf Baechle6e760c82005-07-06 12:08:11 +00001239 select CPU_HAS_PREFETCH
Ralf Baechle797798c2005-08-10 15:17:11 +00001240 select CPU_SUPPORTS_32BIT_KERNEL
Ralf Baechleec28f302006-03-05 00:45:33 +00001241 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle6e760c82005-07-06 12:08:11 +00001242 help
Ralf Baechle5e83d432005-10-29 19:32:41 +01001243 Choose this option to build a kernel for release 1 or later of the
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +00001244 MIPS32 architecture. Most modern embedded systems with a 32-bit
1245 MIPS processor are based on a MIPS32 processor. If you know the
1246 specific type of processor in your system, choose those that one
1247 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
1248 Release 2 of the MIPS32 architecture is available since several
1249 years so chances are you even have a MIPS32 Release 2 processor
1250 in which case you should choose CPU_MIPS32_R2 instead for better
1251 performance.
1252
1253config CPU_MIPS32_R2
1254 bool "MIPS32 Release 2"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001255 depends on SYS_HAS_CPU_MIPS32_R2
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +00001256 select CPU_HAS_PREFETCH
Ralf Baechle797798c2005-08-10 15:17:11 +00001257 select CPU_SUPPORTS_32BIT_KERNEL
Ralf Baechleec28f302006-03-05 00:45:33 +00001258 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +00001259 help
Ralf Baechle5e83d432005-10-29 19:32:41 +01001260 Choose this option to build a kernel for release 2 or later of the
Ralf Baechle6e760c82005-07-06 12:08:11 +00001261 MIPS32 architecture. Most modern embedded systems with a 32-bit
1262 MIPS processor are based on a MIPS32 processor. If you know the
1263 specific type of processor in your system, choose those that one
1264 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001265
Ralf Baechle6e760c82005-07-06 12:08:11 +00001266config CPU_MIPS64_R1
1267 bool "MIPS64 Release 1"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001268 depends on SYS_HAS_CPU_MIPS64_R1
Ralf Baechle797798c2005-08-10 15:17:11 +00001269 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001270 select CPU_SUPPORTS_32BIT_KERNEL
1271 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechleec28f302006-03-05 00:45:33 +00001272 select CPU_SUPPORTS_HIGHMEM
David Daney9cffd1542009-05-27 17:47:46 -07001273 select CPU_SUPPORTS_HUGEPAGES
Ralf Baechle6e760c82005-07-06 12:08:11 +00001274 help
1275 Choose this option to build a kernel for release 1 or later of the
1276 MIPS64 architecture. Many modern embedded systems with a 64-bit
1277 MIPS processor are based on a MIPS64 processor. If you know the
1278 specific type of processor in your system, choose those that one
1279 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +00001280 Release 2 of the MIPS64 architecture is available since several
1281 years so chances are you even have a MIPS64 Release 2 processor
1282 in which case you should choose CPU_MIPS64_R2 instead for better
1283 performance.
1284
1285config CPU_MIPS64_R2
1286 bool "MIPS64 Release 2"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001287 depends on SYS_HAS_CPU_MIPS64_R2
Ralf Baechle797798c2005-08-10 15:17:11 +00001288 select CPU_HAS_PREFETCH
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +00001289 select CPU_SUPPORTS_32BIT_KERNEL
1290 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechleec28f302006-03-05 00:45:33 +00001291 select CPU_SUPPORTS_HIGHMEM
David Daney9cffd1542009-05-27 17:47:46 -07001292 select CPU_SUPPORTS_HUGEPAGES
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +00001293 help
1294 Choose this option to build a kernel for release 2 or later of the
1295 MIPS64 architecture. Many modern embedded systems with a 64-bit
1296 MIPS processor are based on a MIPS64 processor. If you know the
1297 specific type of processor in your system, choose those that one
1298 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001299
1300config CPU_R3000
1301 bool "R3000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001302 depends on SYS_HAS_CPU_R3000
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001303 select CPU_HAS_WB
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001304 select CPU_SUPPORTS_32BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +00001305 select CPU_SUPPORTS_HIGHMEM
Linus Torvalds1da177e2005-04-16 15:20:36 -07001306 help
1307 Please make sure to pick the right CPU type. Linux/MIPS is not
1308 designed to be generic, i.e. Kernels compiled for R3000 CPUs will
1309 *not* work on R4000 machines and vice versa. However, since most
1310 of the supported machines have an R4000 (or similar) CPU, R4x00
1311 might be a safe bet. If the resulting kernel does not work,
1312 try to recompile with R3000.
1313
1314config CPU_TX39XX
1315 bool "R39XX"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001316 depends on SYS_HAS_CPU_TX39XX
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001317 select CPU_SUPPORTS_32BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001318
1319config CPU_VR41XX
1320 bool "R41xx"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001321 depends on SYS_HAS_CPU_VR41XX
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001322 select CPU_SUPPORTS_32BIT_KERNEL
1323 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001324 help
Ralf Baechle5e83d432005-10-29 19:32:41 +01001325 The options selects support for the NEC VR4100 series of processors.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001326 Only choose this option if you have one of these processors as a
1327 kernel built with this option will not run on any other type of
1328 processor or vice versa.
1329
1330config CPU_R4300
1331 bool "R4300"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001332 depends on SYS_HAS_CPU_R4300
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001333 select CPU_SUPPORTS_32BIT_KERNEL
1334 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001335 help
1336 MIPS Technologies R4300-series processors.
1337
1338config CPU_R4X00
1339 bool "R4x00"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001340 depends on SYS_HAS_CPU_R4X00
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001341 select CPU_SUPPORTS_32BIT_KERNEL
1342 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle970d0322012-10-18 13:54:15 +02001343 select CPU_SUPPORTS_HUGEPAGES
Linus Torvalds1da177e2005-04-16 15:20:36 -07001344 help
1345 MIPS Technologies R4000-series processors other than 4300, including
1346 the R4000, R4400, R4600, and 4700.
1347
1348config CPU_TX49XX
1349 bool "R49XX"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001350 depends on SYS_HAS_CPU_TX49XX
Atsushi Nemotode862b42006-03-17 12:59:22 +09001351 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001352 select CPU_SUPPORTS_32BIT_KERNEL
1353 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle970d0322012-10-18 13:54:15 +02001354 select CPU_SUPPORTS_HUGEPAGES
Linus Torvalds1da177e2005-04-16 15:20:36 -07001355
1356config CPU_R5000
1357 bool "R5000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001358 depends on SYS_HAS_CPU_R5000
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001359 select CPU_SUPPORTS_32BIT_KERNEL
1360 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle970d0322012-10-18 13:54:15 +02001361 select CPU_SUPPORTS_HUGEPAGES
Linus Torvalds1da177e2005-04-16 15:20:36 -07001362 help
1363 MIPS Technologies R5000-series processors other than the Nevada.
1364
1365config CPU_R5432
1366 bool "R5432"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001367 depends on SYS_HAS_CPU_R5432
Ralf Baechle5e83d432005-10-29 19:32:41 +01001368 select CPU_SUPPORTS_32BIT_KERNEL
1369 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle970d0322012-10-18 13:54:15 +02001370 select CPU_SUPPORTS_HUGEPAGES
Linus Torvalds1da177e2005-04-16 15:20:36 -07001371
Shinya Kuribayashi542c1022008-10-24 01:27:57 +09001372config CPU_R5500
1373 bool "R5500"
1374 depends on SYS_HAS_CPU_R5500
Shinya Kuribayashi542c1022008-10-24 01:27:57 +09001375 select CPU_SUPPORTS_32BIT_KERNEL
1376 select CPU_SUPPORTS_64BIT_KERNEL
David Daney9cffd1542009-05-27 17:47:46 -07001377 select CPU_SUPPORTS_HUGEPAGES
Shinya Kuribayashi542c1022008-10-24 01:27:57 +09001378 help
1379 NEC VR5500 and VR5500A series processors implement 64-bit MIPS IV
1380 instruction set.
1381
Linus Torvalds1da177e2005-04-16 15:20:36 -07001382config CPU_R6000
1383 bool "R6000"
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001384 depends on EXPERIMENTAL
Ralf Baechle7cf80532005-10-20 22:33:09 +01001385 depends on SYS_HAS_CPU_R6000
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001386 select CPU_SUPPORTS_32BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001387 help
1388 MIPS Technologies R6000 and R6000A series processors. Note these
Chris Dearmanc09b47d2006-06-20 17:15:20 +01001389 processors are extremely rare and the support for them is incomplete.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001390
1391config CPU_NEVADA
1392 bool "RM52xx"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001393 depends on SYS_HAS_CPU_NEVADA
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001394 select CPU_SUPPORTS_32BIT_KERNEL
1395 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle970d0322012-10-18 13:54:15 +02001396 select CPU_SUPPORTS_HUGEPAGES
Linus Torvalds1da177e2005-04-16 15:20:36 -07001397 help
1398 QED / PMC-Sierra RM52xx-series ("Nevada") processors.
1399
1400config CPU_R8000
1401 bool "R8000"
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001402 depends on EXPERIMENTAL
Ralf Baechle7cf80532005-10-20 22:33:09 +01001403 depends on SYS_HAS_CPU_R8000
Ralf Baechle5e83d432005-10-29 19:32:41 +01001404 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001405 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001406 help
1407 MIPS Technologies R8000 processors. Note these processors are
1408 uncommon and the support for them is incomplete.
1409
1410config CPU_R10000
1411 bool "R10000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001412 depends on SYS_HAS_CPU_R10000
Ralf Baechle5e83d432005-10-29 19:32:41 +01001413 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001414 select CPU_SUPPORTS_32BIT_KERNEL
1415 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +00001416 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle970d0322012-10-18 13:54:15 +02001417 select CPU_SUPPORTS_HUGEPAGES
Linus Torvalds1da177e2005-04-16 15:20:36 -07001418 help
1419 MIPS Technologies R10000-series processors.
1420
1421config CPU_RM7000
1422 bool "RM7000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001423 depends on SYS_HAS_CPU_RM7000
Ralf Baechle5e83d432005-10-29 19:32:41 +01001424 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001425 select CPU_SUPPORTS_32BIT_KERNEL
1426 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +00001427 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle970d0322012-10-18 13:54:15 +02001428 select CPU_SUPPORTS_HUGEPAGES
Linus Torvalds1da177e2005-04-16 15:20:36 -07001429
1430config CPU_SB1
1431 bool "SB1"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001432 depends on SYS_HAS_CPU_SB1
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001433 select CPU_SUPPORTS_32BIT_KERNEL
1434 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +00001435 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle970d0322012-10-18 13:54:15 +02001436 select CPU_SUPPORTS_HUGEPAGES
Ralf Baechle0004a9d2006-10-31 03:45:07 +00001437 select WEAK_ORDERING
Linus Torvalds1da177e2005-04-16 15:20:36 -07001438
David Daneya86c7f72008-12-11 15:33:38 -08001439config CPU_CAVIUM_OCTEON
1440 bool "Cavium Octeon processor"
David Daney5e683382009-02-02 11:30:59 -08001441 depends on SYS_HAS_CPU_CAVIUM_OCTEON
Yoichi Yuasa7ee91de2012-07-19 09:11:15 +02001442 select ARCH_SPARSEMEM_ENABLE
David Daneya86c7f72008-12-11 15:33:38 -08001443 select CPU_HAS_PREFETCH
1444 select CPU_SUPPORTS_64BIT_KERNEL
1445 select SYS_SUPPORTS_SMP
1446 select NR_CPUS_DEFAULT_16
1447 select WEAK_ORDERING
David Daneya86c7f72008-12-11 15:33:38 -08001448 select CPU_SUPPORTS_HIGHMEM
David Daney9cffd1542009-05-27 17:47:46 -07001449 select CPU_SUPPORTS_HUGEPAGES
David Daney7ed18152012-07-05 18:12:38 +02001450 select LIBFDT
1451 select USE_OF
David Daneya86c7f72008-12-11 15:33:38 -08001452 help
1453 The Cavium Octeon processor is a highly integrated chip containing
1454 many ethernet hardware widgets for networking tasks. The processor
1455 can have up to 16 Mips64v2 cores and 8 integrated gigabit ethernets.
1456 Full details can be found at http://www.caviumnetworks.com.
1457
Kevin Cernekeec1c0c462010-10-17 10:56:53 -07001458config CPU_BMIPS3300
1459 bool "BMIPS3300"
1460 depends on SYS_HAS_CPU_BMIPS3300
Kevin Cernekee1bbb6c12011-11-10 22:30:24 -08001461 select CPU_BMIPS
Kevin Cernekeec1c0c462010-10-17 10:56:53 -07001462 help
1463 Broadcom BMIPS3300 processors.
1464
1465config CPU_BMIPS4350
1466 bool "BMIPS4350"
1467 depends on SYS_HAS_CPU_BMIPS4350
Kevin Cernekee1bbb6c12011-11-10 22:30:24 -08001468 select CPU_BMIPS
Kevin Cernekeec1c0c462010-10-17 10:56:53 -07001469 select SYS_SUPPORTS_SMP
1470 select SYS_SUPPORTS_HOTPLUG_CPU
Kevin Cernekeec1c0c462010-10-17 10:56:53 -07001471 help
1472 Broadcom BMIPS4350 ("VIPER") processors.
1473
1474config CPU_BMIPS4380
1475 bool "BMIPS4380"
1476 depends on SYS_HAS_CPU_BMIPS4380
Kevin Cernekee1bbb6c12011-11-10 22:30:24 -08001477 select CPU_BMIPS
Kevin Cernekeec1c0c462010-10-17 10:56:53 -07001478 select SYS_SUPPORTS_SMP
1479 select SYS_SUPPORTS_HOTPLUG_CPU
Kevin Cernekeec1c0c462010-10-17 10:56:53 -07001480 help
1481 Broadcom BMIPS4380 processors.
1482
1483config CPU_BMIPS5000
1484 bool "BMIPS5000"
1485 depends on SYS_HAS_CPU_BMIPS5000
Kevin Cernekee1bbb6c12011-11-10 22:30:24 -08001486 select CPU_BMIPS
Kevin Cernekeec1c0c462010-10-17 10:56:53 -07001487 select CPU_SUPPORTS_HIGHMEM
Kevin Cernekee1bbb6c12011-11-10 22:30:24 -08001488 select MIPS_CPU_SCACHE
Kevin Cernekeec1c0c462010-10-17 10:56:53 -07001489 select SYS_SUPPORTS_SMP
1490 select SYS_SUPPORTS_HOTPLUG_CPU
Kevin Cernekeec1c0c462010-10-17 10:56:53 -07001491 help
1492 Broadcom BMIPS5000 processors.
1493
Jayachandran C7f058e82011-05-07 01:36:57 +05301494config CPU_XLR
1495 bool "Netlogic XLR SoC"
1496 depends on SYS_HAS_CPU_XLR
1497 select CPU_SUPPORTS_32BIT_KERNEL
1498 select CPU_SUPPORTS_64BIT_KERNEL
1499 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle970d0322012-10-18 13:54:15 +02001500 select CPU_SUPPORTS_HUGEPAGES
Jayachandran C7f058e82011-05-07 01:36:57 +05301501 select WEAK_ORDERING
1502 select WEAK_REORDERING_BEYOND_LLSC
Jayachandran C7f058e82011-05-07 01:36:57 +05301503 help
1504 Netlogic Microsystems XLR/XLS processors.
Jayachandran C1c773ea2011-11-16 00:21:28 +00001505
1506config CPU_XLP
1507 bool "Netlogic XLP SoC"
1508 depends on SYS_HAS_CPU_XLP
1509 select CPU_SUPPORTS_32BIT_KERNEL
1510 select CPU_SUPPORTS_64BIT_KERNEL
1511 select CPU_SUPPORTS_HIGHMEM
1512 select CPU_HAS_LLSC
1513 select WEAK_ORDERING
1514 select WEAK_REORDERING_BEYOND_LLSC
1515 select CPU_HAS_PREFETCH
Jayachandran Cd6504842012-10-31 12:01:29 +00001516 select CPU_MIPSR2
Jayachandran C1c773ea2011-11-16 00:21:28 +00001517 help
1518 Netlogic Microsystems XLP processors.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001519endchoice
1520
Wu Zhangjin622844b2010-04-10 20:04:42 +08001521if CPU_LOONGSON2F
1522config CPU_NOP_WORKAROUNDS
1523 bool
1524
1525config CPU_JUMP_WORKAROUNDS
1526 bool
1527
1528config CPU_LOONGSON2F_WORKAROUNDS
1529 bool "Loongson 2F Workarounds"
1530 default y
1531 select CPU_NOP_WORKAROUNDS
1532 select CPU_JUMP_WORKAROUNDS
1533 help
1534 Loongson 2F01 / 2F02 processors have the NOP & JUMP issues which
1535 require workarounds. Without workarounds the system may hang
1536 unexpectedly. For more information please refer to the gas
1537 -mfix-loongson2f-nop and -mfix-loongson2f-jump options.
1538
1539 Loongson 2F03 and later have fixed these issues and no workarounds
1540 are needed. The workarounds have no significant side effect on them
1541 but may decrease the performance of the system so this option should
1542 be disabled unless the kernel is intended to be run on 2F01 or 2F02
1543 systems.
1544
1545 If unsure, please say Y.
1546endif # CPU_LOONGSON2F
1547
Wu Zhangjin1b93b3c2009-10-14 18:12:16 +08001548config SYS_SUPPORTS_ZBOOT
1549 bool
1550 select HAVE_KERNEL_GZIP
1551 select HAVE_KERNEL_BZIP2
1552 select HAVE_KERNEL_LZMA
Wu Zhangjinfe1d45e2010-01-15 20:34:46 +08001553 select HAVE_KERNEL_LZO
Wu Zhangjin1b93b3c2009-10-14 18:12:16 +08001554
1555config SYS_SUPPORTS_ZBOOT_UART16550
1556 bool
1557 select SYS_SUPPORTS_ZBOOT
1558
Wu Zhangjin3702bba2009-07-02 23:27:41 +08001559config CPU_LOONGSON2
1560 bool
1561 select CPU_SUPPORTS_32BIT_KERNEL
1562 select CPU_SUPPORTS_64BIT_KERNEL
1563 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle970d0322012-10-18 13:54:15 +02001564 select CPU_SUPPORTS_HUGEPAGES
Wu Zhangjin3702bba2009-07-02 23:27:41 +08001565
Kelvin Cheungca585cf2012-07-25 16:17:24 +02001566config CPU_LOONGSON1
1567 bool
1568 select CPU_MIPS32
1569 select CPU_MIPSR2
1570 select CPU_HAS_PREFETCH
1571 select CPU_SUPPORTS_32BIT_KERNEL
1572 select CPU_SUPPORTS_HIGHMEM
1573
Kevin Cernekee1bbb6c12011-11-10 22:30:24 -08001574config CPU_BMIPS
1575 bool
1576 select CPU_MIPS32
1577 select CPU_SUPPORTS_32BIT_KERNEL
1578 select DMA_NONCOHERENT
1579 select IRQ_CPU
1580 select SWAP_IO_SPACE
1581 select WEAK_ORDERING
1582
Wu Zhangjin3702bba2009-07-02 23:27:41 +08001583config SYS_HAS_CPU_LOONGSON2E
Fuxin Zhang2a21c732007-06-06 14:52:43 +08001584 bool
1585
Wu Zhangjin6f7a2512009-11-06 18:45:05 +08001586config SYS_HAS_CPU_LOONGSON2F
1587 bool
Wu Zhangjin55045ff2009-11-11 13:39:12 +08001588 select CPU_SUPPORTS_CPUFREQ
1589 select CPU_SUPPORTS_ADDRWINCFG if 64BIT
Wu Zhangjin22f1fdf2009-11-11 13:59:23 +08001590 select CPU_SUPPORTS_UNCACHED_ACCELERATED
Wu Zhangjin6f7a2512009-11-06 18:45:05 +08001591
Kelvin Cheungca585cf2012-07-25 16:17:24 +02001592config SYS_HAS_CPU_LOONGSON1B
1593 bool
1594
Ralf Baechle7cf80532005-10-20 22:33:09 +01001595config SYS_HAS_CPU_MIPS32_R1
1596 bool
1597
1598config SYS_HAS_CPU_MIPS32_R2
1599 bool
1600
1601config SYS_HAS_CPU_MIPS64_R1
1602 bool
1603
1604config SYS_HAS_CPU_MIPS64_R2
1605 bool
1606
1607config SYS_HAS_CPU_R3000
1608 bool
1609
1610config SYS_HAS_CPU_TX39XX
1611 bool
1612
1613config SYS_HAS_CPU_VR41XX
1614 bool
1615
1616config SYS_HAS_CPU_R4300
1617 bool
1618
1619config SYS_HAS_CPU_R4X00
1620 bool
1621
1622config SYS_HAS_CPU_TX49XX
1623 bool
1624
1625config SYS_HAS_CPU_R5000
1626 bool
1627
1628config SYS_HAS_CPU_R5432
1629 bool
1630
Shinya Kuribayashi542c1022008-10-24 01:27:57 +09001631config SYS_HAS_CPU_R5500
1632 bool
1633
Ralf Baechle7cf80532005-10-20 22:33:09 +01001634config SYS_HAS_CPU_R6000
1635 bool
1636
1637config SYS_HAS_CPU_NEVADA
1638 bool
1639
1640config SYS_HAS_CPU_R8000
1641 bool
1642
1643config SYS_HAS_CPU_R10000
1644 bool
1645
1646config SYS_HAS_CPU_RM7000
1647 bool
1648
Ralf Baechle7cf80532005-10-20 22:33:09 +01001649config SYS_HAS_CPU_SB1
1650 bool
1651
David Daney5e683382009-02-02 11:30:59 -08001652config SYS_HAS_CPU_CAVIUM_OCTEON
1653 bool
1654
Kevin Cernekeec1c0c462010-10-17 10:56:53 -07001655config SYS_HAS_CPU_BMIPS3300
1656 bool
1657
1658config SYS_HAS_CPU_BMIPS4350
1659 bool
1660
1661config SYS_HAS_CPU_BMIPS4380
1662 bool
1663
1664config SYS_HAS_CPU_BMIPS5000
1665 bool
1666
Jayachandran C7f058e82011-05-07 01:36:57 +05301667config SYS_HAS_CPU_XLR
1668 bool
1669
Jayachandran C1c773ea2011-11-16 00:21:28 +00001670config SYS_HAS_CPU_XLP
1671 bool
1672
Ralf Baechle17099b12007-07-14 13:24:05 +01001673#
1674# CPU may reorder R->R, R->W, W->R, W->W
1675# Reordering beyond LL and SC is handled in WEAK_REORDERING_BEYOND_LLSC
1676#
Ralf Baechle0004a9d2006-10-31 03:45:07 +00001677config WEAK_ORDERING
1678 bool
Ralf Baechle17099b12007-07-14 13:24:05 +01001679
1680#
1681# CPU may reorder reads and writes beyond LL/SC
1682# CPU may reorder R->LL, R->LL, W->LL, W->LL, R->SC, R->SC, W->SC, W->SC
1683#
1684config WEAK_REORDERING_BEYOND_LLSC
1685 bool
Ralf Baechle5e83d432005-10-29 19:32:41 +01001686endmenu
1687
1688#
Chris Dearmanc09b47d2006-06-20 17:15:20 +01001689# These two indicate any level of the MIPS32 and MIPS64 architecture
Ralf Baechle5e83d432005-10-29 19:32:41 +01001690#
1691config CPU_MIPS32
1692 bool
1693 default y if CPU_MIPS32_R1 || CPU_MIPS32_R2
1694
1695config CPU_MIPS64
1696 bool
1697 default y if CPU_MIPS64_R1 || CPU_MIPS64_R2
1698
1699#
Chris Dearmanc09b47d2006-06-20 17:15:20 +01001700# These two indicate the revision of the architecture, either Release 1 or Release 2
Ralf Baechle5e83d432005-10-29 19:32:41 +01001701#
1702config CPU_MIPSR1
1703 bool
1704 default y if CPU_MIPS32_R1 || CPU_MIPS64_R1
1705
1706config CPU_MIPSR2
1707 bool
David Daneya86c7f72008-12-11 15:33:38 -08001708 default y if CPU_MIPS32_R2 || CPU_MIPS64_R2 || CPU_CAVIUM_OCTEON
Ralf Baechle5e83d432005-10-29 19:32:41 +01001709
1710config SYS_SUPPORTS_32BIT_KERNEL
1711 bool
1712config SYS_SUPPORTS_64BIT_KERNEL
1713 bool
1714config CPU_SUPPORTS_32BIT_KERNEL
1715 bool
1716config CPU_SUPPORTS_64BIT_KERNEL
1717 bool
Wu Zhangjin55045ff2009-11-11 13:39:12 +08001718config CPU_SUPPORTS_CPUFREQ
1719 bool
1720config CPU_SUPPORTS_ADDRWINCFG
1721 bool
David Daney9cffd1542009-05-27 17:47:46 -07001722config CPU_SUPPORTS_HUGEPAGES
1723 bool
Wu Zhangjin22f1fdf2009-11-11 13:59:23 +08001724config CPU_SUPPORTS_UNCACHED_ACCELERATED
1725 bool
David Daney82622282009-10-14 12:16:56 -07001726config MIPS_PGD_C0_CONTEXT
1727 bool
Jayachandran Cd6504842012-10-31 12:01:29 +00001728 default y if 64BIT && CPU_MIPSR2 && !CPU_XLP
Ralf Baechle5e83d432005-10-29 19:32:41 +01001729
David Daney8192c9e2008-09-23 00:04:26 -07001730#
1731# Set to y for ptrace access to watch registers.
1732#
1733config HARDWARE_WATCHPOINTS
1734 bool
David Daneyf8394902009-01-05 15:29:14 -08001735 default y if CPU_MIPSR1 || CPU_MIPSR2
David Daney8192c9e2008-09-23 00:04:26 -07001736
Ralf Baechle5e83d432005-10-29 19:32:41 +01001737menu "Kernel type"
1738
1739choice
Ralf Baechle5e83d432005-10-29 19:32:41 +01001740 prompt "Kernel code model"
1741 help
1742 You should only select this option if you have a workload that
1743 actually benefits from 64-bit processing or if your machine has
1744 large memory. You will only be presented a single option in this
1745 menu if your system does not support both 32-bit and 64-bit kernels.
1746
1747config 32BIT
1748 bool "32-bit kernel"
1749 depends on CPU_SUPPORTS_32BIT_KERNEL && SYS_SUPPORTS_32BIT_KERNEL
1750 select TRAD_SIGNALS
1751 help
1752 Select this option if you want to build a 32-bit kernel.
1753config 64BIT
1754 bool "64-bit kernel"
1755 depends on CPU_SUPPORTS_64BIT_KERNEL && SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechledbda6ac2009-02-08 16:00:26 +00001756 select HAVE_SYSCALL_WRAPPERS
Ralf Baechle5e83d432005-10-29 19:32:41 +01001757 help
1758 Select this option if you want to build a 64-bit kernel.
1759
1760endchoice
1761
Linus Torvalds1da177e2005-04-16 15:20:36 -07001762choice
1763 prompt "Kernel page size"
1764 default PAGE_SIZE_4KB
1765
1766config PAGE_SIZE_4KB
1767 bool "4kB"
Wu Zhangjin315fe622009-12-01 14:55:25 +08001768 depends on !CPU_LOONGSON2
Linus Torvalds1da177e2005-04-16 15:20:36 -07001769 help
1770 This option select the standard 4kB Linux page size. On some
1771 R3000-family processors this is the only available page size. Using
1772 4kB page size will minimize memory consumption and is therefore
1773 recommended for low memory systems.
1774
1775config PAGE_SIZE_8KB
1776 bool "8kB"
Ralf Baechlec52399b2009-04-02 14:07:10 +02001777 depends on (EXPERIMENTAL && CPU_R8000) || CPU_CAVIUM_OCTEON
Linus Torvalds1da177e2005-04-16 15:20:36 -07001778 help
1779 Using 8kB page size will result in higher performance kernel at
1780 the price of higher memory consumption. This option is available
Ralf Baechlec52399b2009-04-02 14:07:10 +02001781 only on R8000 and cnMIPS processors. Note that you will need a
1782 suitable Linux distribution to support this.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001783
1784config PAGE_SIZE_16KB
1785 bool "16kB"
Ralf Baechle714bfad2006-05-17 14:04:30 +01001786 depends on !CPU_R3000 && !CPU_TX39XX
Linus Torvalds1da177e2005-04-16 15:20:36 -07001787 help
1788 Using 16kB page size will result in higher performance kernel at
1789 the price of higher memory consumption. This option is available on
Ralf Baechle714bfad2006-05-17 14:04:30 +01001790 all non-R3000 family processors. Note that you will need a suitable
1791 Linux distribution to support this.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001792
Ralf Baechlec52399b2009-04-02 14:07:10 +02001793config PAGE_SIZE_32KB
1794 bool "32kB"
1795 depends on CPU_CAVIUM_OCTEON
1796 help
1797 Using 32kB page size will result in higher performance kernel at
1798 the price of higher memory consumption. This option is available
1799 only on cnMIPS cores. Note that you will need a suitable Linux
1800 distribution to support this.
1801
Linus Torvalds1da177e2005-04-16 15:20:36 -07001802config PAGE_SIZE_64KB
1803 bool "64kB"
1804 depends on EXPERIMENTAL && !CPU_R3000 && !CPU_TX39XX
1805 help
1806 Using 64kB page size will result in higher performance kernel at
1807 the price of higher memory consumption. This option is available on
1808 all non-R3000 family processor. Not that at the time of this
Ralf Baechle714bfad2006-05-17 14:04:30 +01001809 writing this option is still high experimental.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001810
1811endchoice
1812
David Daneyc9bace72010-10-11 14:52:45 -07001813config FORCE_MAX_ZONEORDER
1814 int "Maximum zone order"
David Daney85f993b2012-05-04 11:09:35 -07001815 range 14 64 if HUGETLB_PAGE && PAGE_SIZE_64KB
1816 default "14" if HUGETLB_PAGE && PAGE_SIZE_64KB
1817 range 13 64 if HUGETLB_PAGE && PAGE_SIZE_32KB
1818 default "13" if HUGETLB_PAGE && PAGE_SIZE_32KB
1819 range 12 64 if HUGETLB_PAGE && PAGE_SIZE_16KB
1820 default "12" if HUGETLB_PAGE && PAGE_SIZE_16KB
David Daneyc9bace72010-10-11 14:52:45 -07001821 range 11 64
1822 default "11"
1823 help
1824 The kernel memory allocator divides physically contiguous memory
1825 blocks into "zones", where each zone is a power of two number of
1826 pages. This option selects the largest power of two that the kernel
1827 keeps in the memory allocator. If you need to allocate very large
1828 blocks of physically contiguous memory, then you may need to
1829 increase this value.
1830
1831 This config option is actually maximum order plus one. For example,
1832 a value of 11 means that the largest free memory block is 2^10 pages.
1833
1834 The page size is not necessarily 4KB. Keep this in mind
1835 when choosing a value for this option.
1836
Linus Torvalds1da177e2005-04-16 15:20:36 -07001837config BOARD_SCACHE
1838 bool
1839
1840config IP22_CPU_SCACHE
1841 bool
1842 select BOARD_SCACHE
1843
Chris Dearman9318c512006-06-20 17:15:20 +01001844#
1845# Support for a MIPS32 / MIPS64 style S-caches
1846#
1847config MIPS_CPU_SCACHE
1848 bool
1849 select BOARD_SCACHE
1850
Linus Torvalds1da177e2005-04-16 15:20:36 -07001851config R5000_CPU_SCACHE
1852 bool
1853 select BOARD_SCACHE
1854
1855config RM7000_CPU_SCACHE
1856 bool
1857 select BOARD_SCACHE
1858
1859config SIBYTE_DMA_PAGEOPS
1860 bool "Use DMA to clear/copy pages"
1861 depends on CPU_SB1
1862 help
1863 Instead of using the CPU to zero and copy pages, use a Data Mover
1864 channel. These DMA channels are otherwise unused by the standard
1865 SiByte Linux port. Seems to give a small performance benefit.
1866
1867config CPU_HAS_PREFETCH
Ralf Baechlec8094b52005-08-05 14:28:54 +00001868 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001869
Florian Fainelli3165c842012-01-31 18:18:43 +01001870config CPU_GENERIC_DUMP_TLB
1871 bool
1872 default y if !(CPU_R3000 || CPU_R6000 || CPU_R8000 || CPU_TX39XX)
1873
Florian Fainelli91405eb2012-01-31 18:18:44 +01001874config CPU_R4K_FPU
1875 bool
1876 default y if !(CPU_R3000 || CPU_R6000 || CPU_TX39XX || CPU_CAVIUM_OCTEON)
1877
Florian Fainelli62cedc42012-01-31 18:18:45 +01001878config CPU_R4K_CACHE_TLB
1879 bool
1880 default y if !(CPU_R3000 || CPU_R8000 || CPU_SB1 || CPU_TX39XX || CPU_CAVIUM_OCTEON)
1881
Ralf Baechle340ee4b2005-08-17 17:44:08 +00001882choice
1883 prompt "MIPS MT options"
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001884
1885config MIPS_MT_DISABLED
1886 bool "Disable multithreading support."
1887 help
1888 Use this option if your workload can't take advantage of
1889 MIPS hardware multithreading support. On systems that don't have
1890 the option of an MT-enabled processor this option will be the only
1891 option in this menu.
Ralf Baechle340ee4b2005-08-17 17:44:08 +00001892
Ralf Baechle59d6ab82006-10-06 17:36:20 +01001893config MIPS_MT_SMP
1894 bool "Use 1 TC on each available VPE for SMP"
1895 depends on SYS_SUPPORTS_MULTITHREADING
1896 select CPU_MIPSR2_IRQ_VI
Chris Dearmand725cf32007-05-08 14:05:39 +01001897 select CPU_MIPSR2_IRQ_EI
Ralf Baechle59d6ab82006-10-06 17:36:20 +01001898 select MIPS_MT
Ralf Baechlef510aa32007-03-16 21:58:37 +00001899 select NR_CPUS_DEFAULT_2
Ralf Baechle59d6ab82006-10-06 17:36:20 +01001900 select SMP
Ralf Baechle0ab7aef2007-03-02 20:42:04 +00001901 select SYS_SUPPORTS_SCHED_SMT if SMP
Ralf Baechle59d6ab82006-10-06 17:36:20 +01001902 select SYS_SUPPORTS_SMP
Ralf Baechle87353d82007-11-19 12:23:51 +00001903 select SMP_UP
Al Cooper399aaa22012-07-13 16:44:53 -04001904 select MIPS_PERF_SHARED_TC_COUNTERS
Ralf Baechle59d6ab82006-10-06 17:36:20 +01001905 help
Ralf Baechle25f12b32010-09-16 11:40:41 +01001906 This is a kernel model which is known a VSMP but lately has been
1907 marketesed into SMVP.
1908 Virtual SMP uses the processor's VPEs to implement virtual
1909 processors. In currently available configuration of the 34K processor
1910 this allows for a dual processor. Both processors will share the same
1911 primary caches; each will obtain the half of the TLB for it's own
1912 exclusive use. For a layman this model can be described as similar to
1913 what Intel calls Hyperthreading.
1914
1915 For further information see http://www.linux-mips.org/wiki/34K#VSMP
Ralf Baechle59d6ab82006-10-06 17:36:20 +01001916
Ralf Baechle41c594a2006-04-05 09:45:45 +01001917config MIPS_MT_SMTC
1918 bool "SMTC: Use all TCs on all VPEs for SMP"
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001919 depends on CPU_MIPS32_R2
1920 #depends on CPU_MIPS64_R2 # once there is hardware ...
1921 depends on SYS_SUPPORTS_MULTITHREADING
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001922 select CPU_MIPSR2_IRQ_VI
Chris Dearmand725cf32007-05-08 14:05:39 +01001923 select CPU_MIPSR2_IRQ_EI
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001924 select MIPS_MT
Ralf Baechle130e2fb2007-02-06 16:53:15 +00001925 select NR_CPUS_DEFAULT_8
Ralf Baechle41c594a2006-04-05 09:45:45 +01001926 select SMP
Ralf Baechle73b76c72006-08-15 19:36:40 +01001927 select SYS_SUPPORTS_SMP
Ralf Baechle87353d82007-11-19 12:23:51 +00001928 select SMP_UP
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001929 help
1930 This is a kernel model which is known a SMTC or lately has been
1931 marketesed into SMVP.
Ralf Baechle25f12b32010-09-16 11:40:41 +01001932 is presenting the available TC's of the core as processors to Linux.
1933 On currently available 34K processors this means a Linux system will
1934 see up to 5 processors. The implementation of the SMTC kernel differs
1935 significantly from VSMP and cannot efficiently coexist in the same
1936 kernel binary so the choice between VSMP and SMTC is a compile time
1937 decision.
1938
1939 For further information see http://www.linux-mips.org/wiki/34K#SMTC
Ralf Baechle41c594a2006-04-05 09:45:45 +01001940
Ralf Baechle340ee4b2005-08-17 17:44:08 +00001941endchoice
1942
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001943config MIPS_MT
1944 bool
1945
Ralf Baechle0ab7aef2007-03-02 20:42:04 +00001946config SCHED_SMT
1947 bool "SMT (multithreading) scheduler support"
1948 depends on SYS_SUPPORTS_SCHED_SMT
1949 default n
1950 help
1951 SMT scheduler support improves the CPU scheduler's decision making
1952 when dealing with MIPS MT enabled cores at a cost of slightly
1953 increased overhead in some places. If unsure say N here.
1954
1955config SYS_SUPPORTS_SCHED_SMT
1956 bool
1957
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001958config SYS_SUPPORTS_MULTITHREADING
1959 bool
1960
Ralf Baechlef088fc82006-04-05 09:45:47 +01001961config MIPS_MT_FPAFF
1962 bool "Dynamic FPU affinity for FP-intensive threads"
Ralf Baechlef088fc82006-04-05 09:45:47 +01001963 default y
Ralf Baechle07cc0c92007-07-27 19:31:10 +01001964 depends on MIPS_MT_SMP || MIPS_MT_SMTC
1965
1966config MIPS_VPE_LOADER
1967 bool "VPE loader support."
1968 depends on SYS_SUPPORTS_MULTITHREADING
1969 select CPU_MIPSR2_IRQ_VI
1970 select CPU_MIPSR2_IRQ_EI
Ralf Baechle07cc0c92007-07-27 19:31:10 +01001971 select MIPS_MT
1972 help
1973 Includes a loader for loading an elf relocatable object
1974 onto another VPE and running it.
Ralf Baechlef088fc82006-04-05 09:45:47 +01001975
Kevin D. Kissell0db34212007-07-12 16:21:08 +01001976config MIPS_MT_SMTC_IM_BACKSTOP
1977 bool "Use per-TC register bits as backstop for inhibited IM bits"
1978 depends on MIPS_MT_SMTC
Kevin D. Kissell8531a352008-09-09 21:48:52 +02001979 default n
Kevin D. Kissell0db34212007-07-12 16:21:08 +01001980 help
1981 To support multiple TC microthreads acting as "CPUs" within
1982 a VPE, VPE-wide interrupt mask bits must be specially manipulated
1983 during interrupt handling. To support legacy drivers and interrupt
1984 controller management code, SMTC has a "backstop" to track and
1985 if necessary restore the interrupt mask. This has some performance
Kevin D. Kissell8531a352008-09-09 21:48:52 +02001986 impact on interrupt service overhead.
Kevin D. Kissell0db34212007-07-12 16:21:08 +01001987
Kevin D. Kissellf571eff2007-08-03 19:38:03 +02001988config MIPS_MT_SMTC_IRQAFF
1989 bool "Support IRQ affinity API"
1990 depends on MIPS_MT_SMTC
1991 default n
1992 help
1993 Enables SMP IRQ affinity API (/proc/irq/*/smp_affinity, etc.)
1994 for SMTC Linux kernel. Requires platform support, of which
1995 an example can be found in the MIPS kernel i8259 and Malta
Kevin D. Kissell8531a352008-09-09 21:48:52 +02001996 platform code. Adds some overhead to interrupt dispatch, and
1997 should be used only if you know what you are doing.
Kevin D. Kissellf571eff2007-08-03 19:38:03 +02001998
Ralf Baechlee01402b2005-07-14 15:57:16 +00001999config MIPS_VPE_LOADER_TOM
2000 bool "Load VPE program into memory hidden from linux"
2001 depends on MIPS_VPE_LOADER
2002 default y
2003 help
2004 The loader can use memory that is present but has been hidden from
2005 Linux using the kernel command line option "mem=xxMB". It's up to
2006 you to ensure the amount you put in the option and the space your
2007 program requires is less or equal to the amount physically present.
2008
2009# this should possibly be in drivers/char, but it is rather cpu related. Hmmm
2010config MIPS_VPE_APSP_API
Ralf Baechle5e83d432005-10-29 19:32:41 +01002011 bool "Enable support for AP/SP API (RTLX)"
2012 depends on MIPS_VPE_LOADER
2013 help
Ralf Baechlee01402b2005-07-14 15:57:16 +00002014
Ralf Baechle4a16ff42008-10-04 00:06:29 +01002015config MIPS_CMP
2016 bool "MIPS CMP framework support"
2017 depends on SYS_SUPPORTS_MIPS_CMP
Tim Andersoneb9b5142009-06-17 16:40:34 -07002018 select SYNC_R4K
Ralf Baechle4a16ff42008-10-04 00:06:29 +01002019 select SYS_SUPPORTS_SMP
2020 select SYS_SUPPORTS_SCHED_SMT if SMP
2021 select WEAK_ORDERING
2022 default n
2023 help
2024 This is a placeholder option for the GCMP work. It will need to
2025 be handled differently...
2026
Linus Torvalds1da177e2005-04-16 15:20:36 -07002027config SB1_PASS_1_WORKAROUNDS
2028 bool
2029 depends on CPU_SB1_PASS_1
2030 default y
2031
2032config SB1_PASS_2_WORKAROUNDS
2033 bool
2034 depends on CPU_SB1 && (CPU_SB1_PASS_2_2 || CPU_SB1_PASS_2)
2035 default y
2036
2037config SB1_PASS_2_1_WORKAROUNDS
2038 bool
2039 depends on CPU_SB1 && CPU_SB1_PASS_2
2040 default y
2041
2042config 64BIT_PHYS_ADDR
Ralf Baechled806cb22007-08-02 00:36:08 +01002043 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07002044
pascal@pabr.org60ec6572010-01-03 13:39:12 +01002045config ARCH_PHYS_ADDR_T_64BIT
2046 def_bool 64BIT_PHYS_ADDR
2047
Franck Bui-Huu9693a852007-02-02 17:41:47 +01002048config CPU_HAS_SMARTMIPS
2049 depends on SYS_SUPPORTS_SMARTMIPS
2050 bool "Support for the SmartMIPS ASE"
2051 help
2052 SmartMIPS is a extension of the MIPS32 architecture aimed at
2053 increased security at both hardware and software level for
2054 smartcards. Enabling this option will allow proper use of the
2055 SmartMIPS instructions by Linux applications. However a kernel with
2056 this option will not work on a MIPS core without SmartMIPS core. If
2057 you don't know you probably don't have SmartMIPS and should say N
2058 here.
2059
Linus Torvalds1da177e2005-04-16 15:20:36 -07002060config CPU_HAS_WB
Ralf Baechlef7062dd2006-04-24 14:58:53 +01002061 bool
Ralf Baechlee01402b2005-07-14 15:57:16 +00002062
Kevin Cernekeedf0ac8a2011-11-16 01:25:45 +00002063config XKS01
2064 bool
2065
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01002066#
2067# Vectored interrupt mode is an R2 feature
2068#
Ralf Baechlee01402b2005-07-14 15:57:16 +00002069config CPU_MIPSR2_IRQ_VI
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01002070 bool
Ralf Baechlee01402b2005-07-14 15:57:16 +00002071
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01002072#
2073# Extended interrupt mode is an R2 feature
2074#
Ralf Baechlee01402b2005-07-14 15:57:16 +00002075config CPU_MIPSR2_IRQ_EI
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01002076 bool
Ralf Baechlee01402b2005-07-14 15:57:16 +00002077
Linus Torvalds1da177e2005-04-16 15:20:36 -07002078config CPU_HAS_SYNC
2079 bool
2080 depends on !CPU_R3000
2081 default y
2082
2083#
Maciej W. Rozycki20d60d92007-10-23 12:43:11 +01002084# CPU non-features
2085#
2086config CPU_DADDI_WORKAROUNDS
2087 bool
2088
2089config CPU_R4000_WORKAROUNDS
2090 bool
2091 select CPU_R4400_WORKAROUNDS
2092
2093config CPU_R4400_WORKAROUNDS
2094 bool
2095
2096#
Linus Torvalds1da177e2005-04-16 15:20:36 -07002097# - Highmem only makes sense for the 32-bit kernel.
2098# - The current highmem code will only work properly on physically indexed
2099# caches such as R3000, SB1, R7000 or those that look like they're virtually
2100# indexed such as R4000/R4400 SC and MC versions or R10000. So for the
2101# moment we protect the user and offer the highmem option only on machines
2102# where it's known to be safe. This will not offer highmem on a few systems
2103# such as MIPS32 and MIPS64 CPUs which may have virtual and physically
2104# indexed CPUs but we're playing safe.
Ralf Baechle797798c2005-08-10 15:17:11 +00002105# - We use SYS_SUPPORTS_HIGHMEM to offer highmem only for systems where we
2106# know they might have memory configurations that could make use of highmem
2107# support.
Linus Torvalds1da177e2005-04-16 15:20:36 -07002108#
2109config HIGHMEM
2110 bool "High Memory Support"
Ralf Baechle797798c2005-08-10 15:17:11 +00002111 depends on 32BIT && CPU_SUPPORTS_HIGHMEM && SYS_SUPPORTS_HIGHMEM
2112
2113config CPU_SUPPORTS_HIGHMEM
2114 bool
2115
2116config SYS_SUPPORTS_HIGHMEM
2117 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07002118
Franck Bui-Huu9693a852007-02-02 17:41:47 +01002119config SYS_SUPPORTS_SMARTMIPS
2120 bool
2121
Yoichi Yuasab4819b52005-06-25 14:54:31 -07002122config ARCH_FLATMEM_ENABLE
2123 def_bool y
Wu Zhangjinf133f222009-12-01 14:55:42 +08002124 depends on !NUMA && !CPU_LOONGSON2
Yoichi Yuasab4819b52005-06-25 14:54:31 -07002125
Ralf Baechled8cb4e12006-06-11 23:03:08 +01002126config ARCH_DISCONTIGMEM_ENABLE
2127 bool
2128 default y if SGI_IP27
2129 help
David Sterba3dde6ad2007-05-09 07:12:20 +02002130 Say Y to support efficient handling of discontiguous physical memory,
Ralf Baechled8cb4e12006-06-11 23:03:08 +01002131 for architectures which are either NUMA (Non-Uniform Memory Access)
2132 or have huge holes in the physical address space for other reasons.
2133 See <file:Documentation/vm/numa> for more.
2134
Atsushi Nemotob1c6cd42006-07-03 00:09:47 +09002135config ARCH_SPARSEMEM_ENABLE
2136 bool
Atsushi Nemoto7de58fa2006-07-05 01:22:44 +09002137 select SPARSEMEM_STATIC
Atsushi Nemoto31473742006-07-03 00:09:47 +09002138
Ralf Baechled8cb4e12006-06-11 23:03:08 +01002139config NUMA
2140 bool "NUMA Support"
2141 depends on SYS_SUPPORTS_NUMA
2142 help
2143 Say Y to compile the kernel to support NUMA (Non-Uniform Memory
2144 Access). This option improves performance on systems with more
2145 than two nodes; on two node systems it is generally better to
2146 leave it disabled; on single node systems disable this option
2147 disabled.
2148
2149config SYS_SUPPORTS_NUMA
2150 bool
2151
Yasunori Gotoc80d79d2006-04-10 22:53:53 -07002152config NODES_SHIFT
2153 int
2154 default "6"
2155 depends on NEED_MULTIPLE_NODES
2156
Deng-Cheng Zhu14f70012010-10-12 19:37:22 +08002157config HW_PERF_EVENTS
2158 bool "Enable hardware performance counter support for perf events"
Zi Shen Lim4be3d2f2012-10-31 12:01:28 +00002159 depends on PERF_EVENTS && !MIPS_MT_SMTC && OPROFILE=n && (CPU_MIPS32 || CPU_MIPS64 || CPU_R10000 || CPU_SB1 || CPU_CAVIUM_OCTEON || CPU_XLP)
Deng-Cheng Zhu14f70012010-10-12 19:37:22 +08002160 default y
2161 help
2162 Enable hardware performance counter support for perf events. If
2163 disabled, perf events will use software events only.
2164
Yoichi Yuasab4819b52005-06-25 14:54:31 -07002165source "mm/Kconfig"
2166
Linus Torvalds1da177e2005-04-16 15:20:36 -07002167config SMP
2168 bool "Multi-Processing support"
Ralf Baechlee73ea272006-06-04 11:51:46 +01002169 depends on SYS_SUPPORTS_SMP
Ralf Baechleb4b30a52006-08-03 17:34:24 +01002170 select IRQ_PER_CPU
Jens Axboe2f304c02008-06-17 10:45:23 +02002171 select USE_GENERIC_SMP_HELPERS
Ralf Baechlee73ea272006-06-04 11:51:46 +01002172 help
Linus Torvalds1da177e2005-04-16 15:20:36 -07002173 This enables support for systems with more than one CPU. If you have
2174 a system with only one CPU, like most personal computers, say N. If
2175 you have a system with more than one CPU, say Y.
2176
2177 If you say N here, the kernel will run on single and multiprocessor
2178 machines, but will use only one CPU of a multiprocessor machine. If
2179 you say Y here, the kernel will run on many, but not all,
2180 singleprocessor machines. On a singleprocessor machine, the kernel
2181 will run faster if you say N here.
2182
2183 People using multiprocessor machines who say Y here should also say
2184 Y to "Enhanced Real Time Clock Support", below.
2185
Adrian Bunk03502fa2008-02-03 15:50:21 +02002186 See also the SMP-HOWTO available at
2187 <http://www.tldp.org/docs.html#howto>.
Linus Torvalds1da177e2005-04-16 15:20:36 -07002188
2189 If you don't know what to do here, say N.
2190
Ralf Baechle87353d82007-11-19 12:23:51 +00002191config SMP_UP
2192 bool
2193
Ralf Baechle4a16ff42008-10-04 00:06:29 +01002194config SYS_SUPPORTS_MIPS_CMP
2195 bool
2196
Ralf Baechlee73ea272006-06-04 11:51:46 +01002197config SYS_SUPPORTS_SMP
2198 bool
2199
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09002200config NR_CPUS_DEFAULT_1
2201 bool
2202
Ralf Baechle130e2fb2007-02-06 16:53:15 +00002203config NR_CPUS_DEFAULT_2
2204 bool
2205
2206config NR_CPUS_DEFAULT_4
2207 bool
2208
2209config NR_CPUS_DEFAULT_8
2210 bool
2211
2212config NR_CPUS_DEFAULT_16
2213 bool
2214
2215config NR_CPUS_DEFAULT_32
2216 bool
2217
2218config NR_CPUS_DEFAULT_64
2219 bool
2220
Linus Torvalds1da177e2005-04-16 15:20:36 -07002221config NR_CPUS
2222 int "Maximum number of CPUs (2-64)"
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09002223 range 1 64 if NR_CPUS_DEFAULT_1
Linus Torvalds1da177e2005-04-16 15:20:36 -07002224 depends on SMP
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09002225 default "1" if NR_CPUS_DEFAULT_1
Ralf Baechle130e2fb2007-02-06 16:53:15 +00002226 default "2" if NR_CPUS_DEFAULT_2
2227 default "4" if NR_CPUS_DEFAULT_4
2228 default "8" if NR_CPUS_DEFAULT_8
2229 default "16" if NR_CPUS_DEFAULT_16
2230 default "32" if NR_CPUS_DEFAULT_32
2231 default "64" if NR_CPUS_DEFAULT_64
Linus Torvalds1da177e2005-04-16 15:20:36 -07002232 help
2233 This allows you to specify the maximum number of CPUs which this
2234 kernel will support. The maximum supported value is 32 for 32-bit
2235 kernel and 64 for 64-bit kernels; the minimum value which makes
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09002236 sense is 1 for Qemu (useful only for kernel debugging purposes)
2237 and 2 for all others.
Linus Torvalds1da177e2005-04-16 15:20:36 -07002238
2239 This is purely to save memory - each supported CPU adds
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09002240 approximately eight kilobytes to the kernel image. For best
2241 performance should round up your number of processors to the next
2242 power of two.
Linus Torvalds1da177e2005-04-16 15:20:36 -07002243
Al Cooper399aaa22012-07-13 16:44:53 -04002244config MIPS_PERF_SHARED_TC_COUNTERS
2245 bool
2246
Atsushi Nemoto1723b4a2006-06-20 00:19:13 +09002247#
2248# Timer Interrupt Frequency Configuration
2249#
2250
2251choice
2252 prompt "Timer frequency"
2253 default HZ_250
2254 help
2255 Allows the configuration of the timer frequency.
2256
2257 config HZ_48
Ralf Baechle0f873582008-02-25 16:55:29 +00002258 bool "48 HZ" if SYS_SUPPORTS_48HZ || SYS_SUPPORTS_ARBIT_HZ
Atsushi Nemoto1723b4a2006-06-20 00:19:13 +09002259
2260 config HZ_100
2261 bool "100 HZ" if SYS_SUPPORTS_100HZ || SYS_SUPPORTS_ARBIT_HZ
2262
2263 config HZ_128
2264 bool "128 HZ" if SYS_SUPPORTS_128HZ || SYS_SUPPORTS_ARBIT_HZ
2265
2266 config HZ_250
2267 bool "250 HZ" if SYS_SUPPORTS_250HZ || SYS_SUPPORTS_ARBIT_HZ
2268
2269 config HZ_256
2270 bool "256 HZ" if SYS_SUPPORTS_256HZ || SYS_SUPPORTS_ARBIT_HZ
2271
2272 config HZ_1000
2273 bool "1000 HZ" if SYS_SUPPORTS_1000HZ || SYS_SUPPORTS_ARBIT_HZ
2274
2275 config HZ_1024
2276 bool "1024 HZ" if SYS_SUPPORTS_1024HZ || SYS_SUPPORTS_ARBIT_HZ
2277
2278endchoice
2279
2280config SYS_SUPPORTS_48HZ
2281 bool
2282
2283config SYS_SUPPORTS_100HZ
2284 bool
2285
2286config SYS_SUPPORTS_128HZ
2287 bool
2288
2289config SYS_SUPPORTS_250HZ
2290 bool
2291
2292config SYS_SUPPORTS_256HZ
2293 bool
2294
2295config SYS_SUPPORTS_1000HZ
2296 bool
2297
2298config SYS_SUPPORTS_1024HZ
2299 bool
2300
2301config SYS_SUPPORTS_ARBIT_HZ
2302 bool
2303 default y if !SYS_SUPPORTS_48HZ && !SYS_SUPPORTS_100HZ && \
2304 !SYS_SUPPORTS_128HZ && !SYS_SUPPORTS_250HZ && \
2305 !SYS_SUPPORTS_256HZ && !SYS_SUPPORTS_1000HZ && \
2306 !SYS_SUPPORTS_1024HZ
2307
2308config HZ
2309 int
2310 default 48 if HZ_48
2311 default 100 if HZ_100
2312 default 128 if HZ_128
2313 default 250 if HZ_250
2314 default 256 if HZ_256
2315 default 1000 if HZ_1000
2316 default 1024 if HZ_1024
2317
Ralf Baechlee80de852005-07-11 20:45:51 +00002318source "kernel/Kconfig.preempt"
Linus Torvalds1da177e2005-04-16 15:20:36 -07002319
Atsushi Nemotoea6e9422007-01-16 23:29:11 +09002320config KEXEC
2321 bool "Kexec system call (EXPERIMENTAL)"
2322 depends on EXPERIMENTAL
2323 help
2324 kexec is a system call that implements the ability to shutdown your
2325 current kernel, and to start another kernel. It is like a reboot
David Sterba3dde6ad2007-05-09 07:12:20 +02002326 but it is independent of the system firmware. And like a reboot
Atsushi Nemotoea6e9422007-01-16 23:29:11 +09002327 you can start any kernel with it, not just Linux.
2328
Matt LaPlante01dd2fb2007-10-20 01:34:40 +02002329 The name comes from the similarity to the exec system call.
Atsushi Nemotoea6e9422007-01-16 23:29:11 +09002330
2331 It is an ongoing process to be certain the hardware in a machine
2332 is properly shutdown, so do not be surprised if this code does not
2333 initially work for you. It may help to enable device hotplugging
2334 support. As of this writing the exact hardware interface is
2335 strongly in flux, so no good recommendation can be made.
2336
Ralf Baechle7aa1c8f2012-10-11 18:14:58 +02002337config CRASH_DUMP
2338 bool "Kernel crash dumps"
2339 help
2340 Generate crash dump after being started by kexec.
2341 This should be normally only set in special crash dump kernels
2342 which are loaded in the main kernel with kexec-tools into
2343 a specially reserved region and then later executed after
2344 a crash by kdump/kexec. The crash dump kernel must be compiled
2345 to a memory address not used by the main kernel or firmware using
2346 PHYSICAL_START.
2347
2348config PHYSICAL_START
2349 hex "Physical address where the kernel is loaded"
2350 default "0xffffffff84000000" if 64BIT
2351 default "0x84000000" if 32BIT
2352 depends on CRASH_DUMP
2353 help
2354 This gives the CKSEG0 or KSEG0 address where the kernel is loaded.
2355 If you plan to use kernel for capturing the crash dump change
2356 this value to start of the reserved region (the "X" value as
2357 specified in the "crashkernel=YM@XM" command line boot parameter
2358 passed to the panic-ed kernel).
2359
Atsushi Nemotoea6e9422007-01-16 23:29:11 +09002360config SECCOMP
2361 bool "Enable seccomp to safely compute untrusted bytecode"
Ralf Baechle293c5bd2007-07-25 16:19:33 +01002362 depends on PROC_FS
Atsushi Nemotoea6e9422007-01-16 23:29:11 +09002363 default y
2364 help
2365 This kernel feature is useful for number crunching applications
2366 that may need to compute untrusted bytecode during their
2367 execution. By using pipes or other transports made available to
2368 the process as file descriptors supporting the read/write
2369 syscalls, it's possible to isolate those applications in
2370 their own address space using seccomp. Once seccomp is
2371 enabled via /proc/<pid>/seccomp, it cannot be disabled
2372 and the task is only allowed to execute a few safe syscalls
2373 defined by each seccomp mode.
2374
2375 If unsure, say Y. Only embedded should say N here.
2376
Dezhong Diaof2ffa5a2010-10-13 00:52:46 -06002377config USE_OF
Jonas Gorski0b3e06f2012-09-18 11:28:54 +02002378 bool
Dezhong Diaof2ffa5a2010-10-13 00:52:46 -06002379 select OF
Stephen Neuendorffere6ce1322010-11-18 15:54:56 -08002380 select OF_EARLY_FLATTREE
Grant Likelyabd23632012-02-24 08:07:06 -07002381 select IRQ_DOMAIN
Dezhong Diaof2ffa5a2010-10-13 00:52:46 -06002382
Ralf Baechle5e83d432005-10-29 19:32:41 +01002383endmenu
2384
Atsushi Nemoto1df0f0f2006-09-26 23:44:01 +09002385config LOCKDEP_SUPPORT
2386 bool
2387 default y
2388
2389config STACKTRACE_SUPPORT
2390 bool
2391 default y
2392
Ralf Baechleb6c35392005-11-25 11:35:40 +00002393source "init/Kconfig"
2394
Matt Helsleydc52ddc2008-10-18 20:27:21 -07002395source "kernel/Kconfig.freezer"
2396
Linus Torvalds1da177e2005-04-16 15:20:36 -07002397menu "Bus options (PCI, PCMCIA, EISA, ISA, TC)"
2398
Ralf Baechle5e83d432005-10-29 19:32:41 +01002399config HW_HAS_EISA
2400 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07002401config HW_HAS_PCI
2402 bool
2403
2404config PCI
2405 bool "Support for PCI controller"
2406 depends on HW_HAS_PCI
Ralf Baechleabb4ae42007-10-11 23:46:03 +01002407 select PCI_DOMAINS
Michael S. Tsirkineab90292011-11-24 21:10:12 +02002408 select GENERIC_PCI_IOMAP
Michael S. Tsirkin0f3b3952012-01-30 00:23:38 +02002409 select NO_GENERIC_PCI_IOPORT_MAP
Linus Torvalds1da177e2005-04-16 15:20:36 -07002410 help
2411 Find out whether you have a PCI motherboard. PCI is the name of a
2412 bus system, i.e. the way the CPU talks to the other stuff inside
2413 your box. Other bus systems are ISA, EISA, or VESA. If you have PCI,
2414 say Y, otherwise N.
2415
Linus Torvalds1da177e2005-04-16 15:20:36 -07002416config PCI_DOMAINS
2417 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07002418
2419source "drivers/pci/Kconfig"
2420
Jonas Gorski3f787ca2012-07-24 16:33:14 +02002421source "drivers/pci/pcie/Kconfig"
2422
Linus Torvalds1da177e2005-04-16 15:20:36 -07002423#
2424# ISA support is now enabled via select. Too many systems still have the one
2425# or other ISA chip on the board that users don't know about so don't expect
2426# users to choose the right thing ...
2427#
2428config ISA
2429 bool
2430
2431config EISA
2432 bool "EISA support"
Ralf Baechle5e83d432005-10-29 19:32:41 +01002433 depends on HW_HAS_EISA
Linus Torvalds1da177e2005-04-16 15:20:36 -07002434 select ISA
Ralf Baechleaa414df2006-11-30 01:14:51 +00002435 select GENERIC_ISA_DMA
Linus Torvalds1da177e2005-04-16 15:20:36 -07002436 ---help---
2437 The Extended Industry Standard Architecture (EISA) bus was
2438 developed as an open alternative to the IBM MicroChannel bus.
2439
2440 The EISA bus provided some of the features of the IBM MicroChannel
2441 bus while maintaining backward compatibility with cards made for
2442 the older ISA bus. The EISA bus saw limited use between 1988 and
2443 1995 when it was made obsolete by the PCI bus.
2444
2445 Say Y here if you are building a kernel for an EISA-based machine.
2446
2447 Otherwise, say N.
2448
2449source "drivers/eisa/Kconfig"
2450
2451config TC
2452 bool "TURBOchannel support"
2453 depends on MACH_DECSTATION
2454 help
Justin P. Mattock50a23e62010-10-16 10:36:23 -07002455 TURBOchannel is a DEC (now Compaq (now HP)) bus for Alpha and MIPS
2456 processors. TURBOchannel programming specifications are available
2457 at:
2458 <ftp://ftp.hp.com/pub/alphaserver/archive/triadd/>
2459 and:
2460 <http://www.computer-refuge.org/classiccmp/ftp.digital.com/pub/DEC/TriAdd/>
2461 Linux driver support status is documented at:
2462 <http://www.linux-mips.org/wiki/DECstation>
Linus Torvalds1da177e2005-04-16 15:20:36 -07002463
Linus Torvalds1da177e2005-04-16 15:20:36 -07002464config MMU
2465 bool
2466 default y
2467
Ralf Baechled865bea2007-10-11 23:46:10 +01002468config I8253
2469 bool
Russell King798778b2011-05-08 19:03:03 +01002470 select CLKSRC_I8253
Thomas Gleixner2d026122011-06-09 13:08:27 +00002471 select CLKEVT_I8253
Wu Zhangjin9726b432009-11-17 01:32:58 +08002472 select MIPS_EXTERNAL_TIMER
Ralf Baechled865bea2007-10-11 23:46:10 +01002473
Ralf Baechlecce335a2007-11-03 02:05:43 +00002474config ZONE_DMA32
2475 bool
2476
Linus Torvalds1da177e2005-04-16 15:20:36 -07002477source "drivers/pcmcia/Kconfig"
2478
2479source "drivers/pci/hotplug/Kconfig"
2480
Alexandre Bounine388b78a2011-03-23 16:43:03 -07002481config RAPIDIO
2482 bool "RapidIO support"
2483 depends on PCI
2484 default n
2485 help
2486 If you say Y here, the kernel will include drivers and
2487 infrastructure code to support RapidIO interconnect devices.
2488
2489source "drivers/rapidio/Kconfig"
2490
Linus Torvalds1da177e2005-04-16 15:20:36 -07002491endmenu
2492
2493menu "Executable file formats"
2494
2495source "fs/Kconfig.binfmt"
2496
2497config TRAD_SIGNALS
2498 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07002499
Linus Torvalds1da177e2005-04-16 15:20:36 -07002500config MIPS32_COMPAT
2501 bool "Kernel support for Linux/MIPS 32-bit binary compatibility"
Ralf Baechle875d43e2005-09-03 15:56:16 -07002502 depends on 64BIT
Linus Torvalds1da177e2005-04-16 15:20:36 -07002503 help
2504 Select this option if you want Linux/MIPS 32-bit binary
2505 compatibility. Since all software available for Linux/MIPS is
2506 currently 32-bit you should say Y here.
2507
2508config COMPAT
2509 bool
2510 depends on MIPS32_COMPAT
Chris Metcalf48b25c42012-03-15 13:13:38 -04002511 select ARCH_WANT_OLD_COMPAT_IPC
Linus Torvalds1da177e2005-04-16 15:20:36 -07002512 default y
2513
Atsushi Nemoto05e43962006-11-07 18:02:44 +09002514config SYSVIPC_COMPAT
2515 bool
2516 depends on COMPAT && SYSVIPC
2517 default y
2518
Linus Torvalds1da177e2005-04-16 15:20:36 -07002519config MIPS32_O32
2520 bool "Kernel support for o32 binaries"
2521 depends on MIPS32_COMPAT
2522 help
2523 Select this option if you want to run o32 binaries. These are pure
2524 32-bit binaries as used by the 32-bit Linux/MIPS port. Most of
2525 existing binaries are in this format.
2526
2527 If unsure, say Y.
2528
2529config MIPS32_N32
2530 bool "Kernel support for n32 binaries"
2531 depends on MIPS32_COMPAT
2532 help
2533 Select this option if you want to run n32 binaries. These are
2534 64-bit binaries using 32-bit quantities for addressing and certain
2535 data that would normally be 64-bit. They are used in special
2536 cases.
2537
2538 If unsure, say N.
2539
2540config BINFMT_ELF32
2541 bool
2542 default y if MIPS32_O32 || MIPS32_N32
2543
Ralf Baechle21162452007-02-09 17:08:58 +00002544endmenu
Linus Torvalds1da177e2005-04-16 15:20:36 -07002545
Ralf Baechle21162452007-02-09 17:08:58 +00002546menu "Power management options"
Rodolfo Giometti952fa952006-06-05 17:43:10 +02002547
Wu Zhangjin363c55c2009-06-04 20:27:10 +08002548config ARCH_HIBERNATION_POSSIBLE
2549 def_bool y
Ralf Baechle3f5b3e12009-07-02 11:48:07 +01002550 depends on SYS_SUPPORTS_HOTPLUG_CPU || !SMP
Wu Zhangjin363c55c2009-06-04 20:27:10 +08002551
Johannes Bergf4cb5702007-12-08 02:14:00 +01002552config ARCH_SUSPEND_POSSIBLE
2553 def_bool y
Ralf Baechle3f5b3e12009-07-02 11:48:07 +01002554 depends on SYS_SUPPORTS_HOTPLUG_CPU || !SMP
Johannes Bergf4cb5702007-12-08 02:14:00 +01002555
Ralf Baechle21162452007-02-09 17:08:58 +00002556source "kernel/power/Kconfig"
Rodolfo Giometti952fa952006-06-05 17:43:10 +02002557
Linus Torvalds1da177e2005-04-16 15:20:36 -07002558endmenu
2559
Wu Zhangjin9726b432009-11-17 01:32:58 +08002560source "arch/mips/kernel/cpufreq/Kconfig"
2561
Sam Ravnborgd5950b42005-07-11 21:03:49 -07002562source "net/Kconfig"
2563
Linus Torvalds1da177e2005-04-16 15:20:36 -07002564source "drivers/Kconfig"
2565
Ralf Baechle98cdee02012-11-15 10:35:42 +01002566source "drivers/firmware/Kconfig"
2567
Linus Torvalds1da177e2005-04-16 15:20:36 -07002568source "fs/Kconfig"
2569
2570source "arch/mips/Kconfig.debug"
2571
2572source "security/Kconfig"
2573
2574source "crypto/Kconfig"
2575
2576source "lib/Kconfig"