blob: 44e29b64b13984e6e8d91bd2553bc9ecd6e89a37 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001config MIPS
2 bool
3 default y
Yoichi Yuasaf8ac04252009-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 Zhu7f788d22010-10-12 19:37:21 +08007 select HAVE_PERF_EVENTS
8 select PERF_USE_VMALLOC
Jason Wessel88547002008-07-29 15:58:53 -05009 select HAVE_ARCH_KGDB
Mark Brown7563bbf2012-04-15 10:52:54 +010010 select ARCH_HAVE_CUSTOM_GPIO_H
Wu Zhangjind2bb07622009-11-20 20:34:29 +080011 select HAVE_FUNCTION_TRACER
Wu Zhangjin69a7d1b2009-11-20 20:34:30 +080012 select HAVE_FUNCTION_TRACE_MCOUNT_TEST
Wu Zhangjin538f1952009-11-20 20:34:32 +080013 select HAVE_DYNAMIC_FTRACE
14 select HAVE_FTRACE_MCOUNT_RECORD
Wu Zhangjin64575f92010-10-27 18:59:09 +080015 select HAVE_C_RECORDMCOUNT
Wu Zhangjin29c5d342009-11-20 20:34:34 +080016 select HAVE_FUNCTION_GRAPH_TRACER
David Daneyc1bf2072010-08-03 11:22:20 -070017 select HAVE_KPROBES
18 select HAVE_KRETPROBES
Catalin Marinasb69ec422012-10-08 16:28:11 -070019 select HAVE_DEBUG_KMEMLEAK
David Daneye26d1962012-01-10 15:10:22 -080020 select ARCH_BINFMT_ELF_RANDOMIZE_PIE
Ben Hutchings383c97b2013-03-04 04:17:21 +000021 select HAVE_ARCH_TRANSPARENT_HUGEPAGE if CPU_SUPPORTS_HUGEPAGES && 64BIT
Wu Zhangjin21a41fa2009-11-10 00:06:11 +080022 select RTC_LIB if !MACH_LOONGSON
Deng-Cheng Zhu2b789202010-06-09 12:35:25 +080023 select GENERIC_ATOMIC64 if !64BIT
Catalin Marinas74634492012-07-30 14:41:09 -070024 select ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE
David Daney48e1fd52010-10-01 13:27:32 -070025 select HAVE_DMA_ATTRS
26 select HAVE_DMA_API_DEBUG
David Daney3bd27e32010-11-05 15:12:48 -070027 select HAVE_GENERIC_HARDIRQS
28 select GENERIC_IRQ_PROBE
Thomas Gleixnerf8396c12011-03-23 21:09:05 +000029 select GENERIC_IRQ_SHOW
David Daney94bb0c12010-12-28 13:26:23 -080030 select HAVE_ARCH_JUMP_LABEL
Will Deaconc1d7e012012-07-30 14:42:46 -070031 select ARCH_WANT_IPC_PARSE_VERSION
Thomas Gleixner0f462e32011-07-23 12:41:25 +000032 select IRQ_FORCED_THREADING
Tejun Heo9d15ffc2011-12-08 10:22:09 -080033 select HAVE_MEMBLOCK
34 select HAVE_MEMBLOCK_NODE_MAP
35 select ARCH_DISCARD_MEMBLOCK
Thomas Gleixner360014a2012-04-20 13:05:51 +000036 select GENERIC_SMP_IDLE_THREAD
David Daney4b054492012-04-19 14:59:58 -070037 select BUILDTIME_EXTABLE_SORT
Anna-Maria Gleixnercde17942012-05-18 16:45:50 +000038 select GENERIC_CLOCKEVENTS
39 select GENERIC_CMOS_UPDATE
David Howells786d35d2012-09-28 14:31:03 +093040 select HAVE_MOD_ARCH_SPECIFIC
Stephen Rothwell4febd952013-03-07 15:48:16 +110041 select VIRT_TO_BUS
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
Linus Torvalds1da177e2005-04-16 15:20:36 -070045
Linus Torvalds1da177e2005-04-16 15:20:36 -070046menu "Machine selection"
47
Christoph Lameter5ac6da62007-02-10 01:43:14 -080048config ZONE_DMA
49 bool
Christoph Lameter5ac6da62007-02-10 01:43:14 -080050
Ralf Baechle5e83d432005-10-29 19:32:41 +010051choice
52 prompt "System type"
53 default SGI_IP22
Linus Torvalds1da177e2005-04-16 15:20:36 -070054
Manuel Lauss42a4f172010-07-15 21:45:04 +020055config MIPS_ALCHEMY
Yoichi Yuasac3543e22007-05-11 20:44:30 +090056 bool "Alchemy processor based machines"
Manuel Lauss42a4f172010-07-15 21:45:04 +020057 select 64BIT_PHYS_ADDR
Ralf Baechlef772cdb2012-11-30 17:27:27 +010058 select CEVT_R4K
Steven J. Hilld7ea3352012-11-14 23:34:17 -060059 select CSRC_R4K
Manuel Lauss42a4f172010-07-15 21:45:04 +020060 select IRQ_CPU
61 select SYS_HAS_CPU_MIPS32_R1
62 select SYS_SUPPORTS_32BIT_KERNEL
63 select SYS_SUPPORTS_APM_EMULATION
64 select GENERIC_GPIO
65 select ARCH_WANT_OPTIONAL_GPIOLIB
Wu Zhangjin1b93b3c2009-10-14 18:12:16 +080066 select SYS_SUPPORTS_ZBOOT
Manuel Lauss3766386032011-08-12 11:39:45 +020067 select USB_ARCH_HAS_OHCI
68 select USB_ARCH_HAS_EHCI
Linus Torvalds1da177e2005-04-16 15:20:36 -070069
Florian Fainelli7ca5dc12009-06-24 11:12:57 +020070config AR7
71 bool "Texas Instruments AR7"
72 select BOOT_ELF32
73 select DMA_NONCOHERENT
74 select CEVT_R4K
75 select CSRC_R4K
76 select IRQ_CPU
77 select NO_EXCEPT_FILL
78 select SWAP_IO_SPACE
79 select SYS_HAS_CPU_MIPS32_R1
80 select SYS_HAS_EARLY_PRINTK
81 select SYS_SUPPORTS_32BIT_KERNEL
82 select SYS_SUPPORTS_LITTLE_ENDIAN
Wu Zhangjin1b93b3c2009-10-14 18:12:16 +080083 select SYS_SUPPORTS_ZBOOT_UART16550
Florian Fainelli5f3c9092010-01-03 21:16:51 +010084 select ARCH_REQUIRE_GPIOLIB
Florian Fainelli7ca5dc12009-06-24 11:12:57 +020085 select VLYNQ
Yoichi Yuasa8551fb62012-08-01 15:38:00 +090086 select HAVE_CLK
Florian Fainelli7ca5dc12009-06-24 11:12:57 +020087 help
88 Support for the Texas Instruments AR7 System-on-a-Chip
89 family: TNETD7100, 7200 and 7300.
90
Gabor Juhosd4a67d92011-01-04 21:28:14 +010091config ATH79
92 bool "Atheros AR71XX/AR724X/AR913X based boards"
Gabor Juhos6eae43c2011-01-04 21:28:15 +010093 select ARCH_REQUIRE_GPIOLIB
Gabor Juhosd4a67d92011-01-04 21:28:14 +010094 select BOOT_RAW
95 select CEVT_R4K
96 select CSRC_R4K
97 select DMA_NONCOHERENT
Gabor Juhos94638062012-08-04 18:01:26 +020098 select HAVE_CLK
Gabor Juhosd4a67d92011-01-04 21:28:14 +010099 select IRQ_CPU
Gabor Juhos0aabf1a2011-01-04 21:28:16 +0100100 select MIPS_MACHINE
Gabor Juhosd4a67d92011-01-04 21:28:14 +0100101 select SYS_HAS_CPU_MIPS32_R2
102 select SYS_HAS_EARLY_PRINTK
103 select SYS_SUPPORTS_32BIT_KERNEL
104 select SYS_SUPPORTS_BIG_ENDIAN
105 help
106 Support for the Atheros AR71XX/AR724X/AR913X SoCs.
107
Aurelien Jarno1c0c13e2007-09-25 15:40:12 +0200108config BCM47XX
Florian Fainellic6193662010-03-25 11:42:41 +0100109 bool "Broadcom BCM47XX based boards"
Hauke Mehrtens2da4c742012-11-20 22:24:34 +0000110 select ARCH_WANT_OPTIONAL_GPIOLIB
Hauke Mehrtensfe08f8c2012-12-26 20:06:17 +0000111 select BOOT_RAW
Ralf Baechle42f77542007-10-18 17:48:11 +0100112 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000113 select CSRC_R4K
Aurelien Jarno1c0c13e2007-09-25 15:40:12 +0200114 select DMA_NONCOHERENT
Ralf Baechle0e2794b2012-11-15 20:48:50 +0100115 select FW_CFE
Aurelien Jarno1c0c13e2007-09-25 15:40:12 +0200116 select HW_HAS_PCI
117 select IRQ_CPU
Hauke Mehrtensdd54ded2012-12-26 20:06:18 +0000118 select NO_EXCEPT_FILL
Aurelien Jarno1c0c13e2007-09-25 15:40:12 +0200119 select SYS_SUPPORTS_32BIT_KERNEL
120 select SYS_SUPPORTS_LITTLE_ENDIAN
Aurelien Jarno25e5fb92007-09-25 15:41:24 +0200121 select SYS_HAS_EARLY_PRINTK
Aurelien Jarno1c0c13e2007-09-25 15:40:12 +0200122 help
123 Support for BCM47XX based boards
124
Maxime Bizone7300d02009-08-18 13:23:37 +0100125config BCM63XX
126 bool "Broadcom BCM63XX based boards"
127 select CEVT_R4K
128 select CSRC_R4K
129 select DMA_NONCOHERENT
130 select IRQ_CPU
131 select SYS_HAS_CPU_MIPS32_R1
132 select SYS_SUPPORTS_32BIT_KERNEL
133 select SYS_SUPPORTS_BIG_ENDIAN
134 select SYS_HAS_EARLY_PRINTK
135 select SWAP_IO_SPACE
136 select ARCH_REQUIRE_GPIOLIB
Yoichi Yuasa3e82eee2012-08-01 15:39:52 +0900137 select HAVE_CLK
Maxime Bizone7300d02009-08-18 13:23:37 +0100138 help
139 Support for BCM63XX based boards
140
Linus Torvalds1da177e2005-04-16 15:20:36 -0700141config MIPS_COBALT
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200142 bool "Cobalt Server"
Ralf Baechle42f77542007-10-18 17:48:11 +0100143 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000144 select CSRC_R4K
Yoichi Yuasa1097c6a2007-10-22 19:43:15 +0900145 select CEVT_GT641XX
Linus Torvalds1da177e2005-04-16 15:20:36 -0700146 select DMA_NONCOHERENT
147 select HW_HAS_PCI
Ralf Baechled865bea2007-10-11 23:46:10 +0100148 select I8253
Linus Torvalds1da177e2005-04-16 15:20:36 -0700149 select I8259
150 select IRQ_CPU
Yoichi Yuasad5ab1a62007-09-13 23:51:26 +0900151 select IRQ_GT641XX
Yoichi Yuasa252161e2007-03-14 21:51:26 +0900152 select PCI_GT64XXX_PCI0
Yoichi Yuasae25bfc92009-06-02 23:17:07 +0900153 select PCI
Ralf Baechle7cf80532005-10-20 22:33:09 +0100154 select SYS_HAS_CPU_NEVADA
Yoichi Yuasa0a22e0d2007-03-02 12:42:33 +0900155 select SYS_HAS_EARLY_PRINTK
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700156 select SYS_SUPPORTS_32BIT_KERNEL
Florian Fainelli0e8774b2008-01-15 19:42:57 +0100157 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100158 select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700159
160config MACH_DECSTATION
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200161 bool "DECstations"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700162 select BOOT_ELF32
Yoichi Yuasa6457d9f2008-04-25 12:11:44 +0900163 select CEVT_DS1287
Ralf Baechle42f77542007-10-18 17:48:11 +0100164 select CEVT_R4K
Yoichi Yuasa42474172008-04-24 09:48:40 +0900165 select CSRC_IOASIC
Ralf Baechle940f6b42007-11-24 22:33:28 +0000166 select CSRC_R4K
Maciej W. Rozycki20d60d92007-10-23 12:43:11 +0100167 select CPU_DADDI_WORKAROUNDS if 64BIT
168 select CPU_R4000_WORKAROUNDS if 64BIT
169 select CPU_R4400_WORKAROUNDS if 64BIT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700170 select DMA_NONCOHERENT
Maciej W. Rozyckid388d682007-05-29 15:08:07 +0100171 select NO_IOPORT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700172 select IRQ_CPU
Ralf Baechle7cf80532005-10-20 22:33:09 +0100173 select SYS_HAS_CPU_R3000
174 select SYS_HAS_CPU_R4X00
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700175 select SYS_SUPPORTS_32BIT_KERNEL
Kees Cook7d607172013-01-16 18:53:19 -0800176 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100177 select SYS_SUPPORTS_LITTLE_ENDIAN
Atsushi Nemoto1723b4a2006-06-20 00:19:13 +0900178 select SYS_SUPPORTS_128HZ
179 select SYS_SUPPORTS_256HZ
180 select SYS_SUPPORTS_1024HZ
Ralf Baechle5e83d432005-10-29 19:32:41 +0100181 help
Linus Torvalds1da177e2005-04-16 15:20:36 -0700182 This enables support for DEC's MIPS based workstations. For details
183 see the Linux/MIPS FAQ on <http://www.linux-mips.org/> and the
184 DECstation porting pages on <http://decstation.unix-ag.org/>.
185
186 If you have one of the following DECstation Models you definitely
187 want to choose R4xx0 for the CPU Type:
188
Ralf Baechle93088162007-08-29 14:21:45 +0100189 DECstation 5000/50
190 DECstation 5000/150
191 DECstation 5000/260
192 DECsystem 5900/260
Linus Torvalds1da177e2005-04-16 15:20:36 -0700193
194 otherwise choose R3000.
195
Ralf Baechle5e83d432005-10-29 19:32:41 +0100196config MACH_JAZZ
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200197 bool "Jazz family of machines"
Ralf Baechle0e2794b2012-11-15 20:48:50 +0100198 select FW_ARC
199 select FW_ARC32
Ralf Baechle5e83d432005-10-29 19:32:41 +0100200 select ARCH_MAY_HAVE_PC_FDC
Ralf Baechle42f77542007-10-18 17:48:11 +0100201 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000202 select CSRC_R4K
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +0100203 select DEFAULT_SGI_PARTITION if CPU_BIG_ENDIAN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100204 select GENERIC_ISA_DMA
Ralf Baechle8a118c32011-06-01 19:05:10 +0100205 select HAVE_PCSPKR_PLATFORM
Thomas Bogendoerferea202c62007-08-25 11:01:50 +0200206 select IRQ_CPU
Ralf Baechled865bea2007-10-11 23:46:10 +0100207 select I8253
Ralf Baechle5e83d432005-10-29 19:32:41 +0100208 select I8259
209 select ISA
Ralf Baechle7cf80532005-10-20 22:33:09 +0100210 select SYS_HAS_CPU_R4X00
Ralf Baechle5e83d432005-10-29 19:32:41 +0100211 select SYS_SUPPORTS_32BIT_KERNEL
Kees Cook7d607172013-01-16 18:53:19 -0800212 select SYS_SUPPORTS_64BIT_KERNEL
Atsushi Nemoto1723b4a2006-06-20 00:19:13 +0900213 select SYS_SUPPORTS_100HZ
Linus Torvalds1da177e2005-04-16 15:20:36 -0700214 help
Ralf Baechle5e83d432005-10-29 19:32:41 +0100215 This a family of machines based on the MIPS R4030 chipset which was
216 used by several vendors to build RISC/os and Windows NT workstations.
Matt LaPlante692105b2009-01-26 11:12:25 +0100217 Members include the Acer PICA, MIPS Magnum 4000, MIPS Millennium and
Ralf Baechle5e83d432005-10-29 19:32:41 +0100218 Olivetti M700-10 workstations.
219
Lars-Peter Clausen5ebabe52010-06-19 04:08:19 +0000220config MACH_JZ4740
221 bool "Ingenic JZ4740 based machines"
222 select SYS_HAS_CPU_MIPS32_R1
223 select SYS_SUPPORTS_32BIT_KERNEL
224 select SYS_SUPPORTS_LITTLE_ENDIAN
Lluís Batlle i Rossellf9c9aff2012-03-30 16:48:05 +0200225 select SYS_SUPPORTS_ZBOOT_UART16550
Lars-Peter Clausen5ebabe52010-06-19 04:08:19 +0000226 select DMA_NONCOHERENT
227 select IRQ_CPU
228 select GENERIC_GPIO
229 select ARCH_REQUIRE_GPIOLIB
230 select SYS_HAS_EARLY_PRINTK
231 select HAVE_PWM
Maurus Cuelenaereab5330e2011-03-01 00:20:01 +0100232 select HAVE_CLK
Lars-Peter Clausen83bc7692011-09-24 02:29:46 +0200233 select GENERIC_IRQ_CHIP
Lars-Peter Clausen5ebabe52010-06-19 04:08:19 +0000234
John Crispin171bb2f2011-03-30 09:27:47 +0200235config LANTIQ
236 bool "Lantiq based platforms"
237 select DMA_NONCOHERENT
238 select IRQ_CPU
239 select CEVT_R4K
240 select CSRC_R4K
241 select SYS_HAS_CPU_MIPS32_R1
242 select SYS_HAS_CPU_MIPS32_R2
243 select SYS_SUPPORTS_BIG_ENDIAN
244 select SYS_SUPPORTS_32BIT_KERNEL
245 select SYS_SUPPORTS_MULTITHREADING
246 select SYS_HAS_EARLY_PRINTK
247 select ARCH_REQUIRE_GPIOLIB
248 select SWAP_IO_SPACE
249 select BOOT_RAW
John Crispin287e3f32012-04-17 15:53:19 +0200250 select HAVE_MACH_CLKDEV
251 select CLKDEV_LOOKUP
John Crispina0392222012-04-13 20:56:13 +0200252 select USE_OF
John Crispin3f8c50c2012-08-28 12:44:59 +0200253 select PINCTRL
254 select PINCTRL_LANTIQ
John Crispin171bb2f2011-03-30 09:27:47 +0200255
Brian Murphy1f21d2b2007-08-21 22:34:16 +0200256config LASAT
257 bool "LASAT Networks platforms"
Ralf Baechle42f77542007-10-18 17:48:11 +0100258 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000259 select CSRC_R4K
Brian Murphy1f21d2b2007-08-21 22:34:16 +0200260 select DMA_NONCOHERENT
261 select SYS_HAS_EARLY_PRINTK
262 select HW_HAS_PCI
Ralf Baechlea5ccfe52007-10-14 23:49:33 +0100263 select IRQ_CPU
Brian Murphy1f21d2b2007-08-21 22:34:16 +0200264 select PCI_GT64XXX_PCI0
265 select MIPS_NILE4
266 select R5000_CPU_SCACHE
267 select SYS_HAS_CPU_R5000
268 select SYS_SUPPORTS_32BIT_KERNEL
269 select SYS_SUPPORTS_64BIT_KERNEL if BROKEN
270 select SYS_SUPPORTS_LITTLE_ENDIAN
Brian Murphy1f21d2b2007-08-21 22:34:16 +0200271
Wu Zhangjin85749d22009-07-02 23:26:45 +0800272config MACH_LOONGSON
273 bool "Loongson family of machines"
Wu Zhangjinc7e8c662010-01-04 17:16:46 +0800274 select SYS_SUPPORTS_ZBOOT
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900275 help
Wu Zhangjin85749d22009-07-02 23:26:45 +0800276 This enables the support of Loongson family of machines.
277
278 Loongson is a family of general-purpose MIPS-compatible CPUs.
279 developed at Institute of Computing Technology (ICT),
280 Chinese Academy of Sciences (CAS) in the People's Republic
281 of China. The chief architect is Professor Weiwu Hu.
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900282
Kelvin Cheungca585cf2012-07-25 16:17:24 +0200283config MACH_LOONGSON1
284 bool "Loongson 1 family of machines"
285 select SYS_SUPPORTS_ZBOOT
286 help
287 This enables support for the Loongson 1 based machines.
288
289 Loongson 1 is a family of 32-bit MIPS-compatible SoCs developed by
290 the ICT (Institute of Computing Technology) and the Chinese Academy
291 of Sciences.
292
Linus Torvalds1da177e2005-04-16 15:20:36 -0700293config MIPS_MALTA
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200294 bool "MIPS Malta board"
Ralf Baechle61ed2422005-09-15 08:52:34 +0000295 select ARCH_MAY_HAVE_PC_FDC
Linus Torvalds1da177e2005-04-16 15:20:36 -0700296 select BOOT_ELF32
Ralf Baechlefa71c962008-01-29 10:15:00 +0000297 select BOOT_RAW
Ralf Baechle42f77542007-10-18 17:48:11 +0100298 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000299 select CSRC_R4K
Steven J. Hill778eeb12012-12-07 03:51:04 +0000300 select CSRC_GIC
Linus Torvalds1da177e2005-04-16 15:20:36 -0700301 select DMA_NONCOHERENT
302 select GENERIC_ISA_DMA
Ralf Baechle8a118c32011-06-01 19:05:10 +0100303 select HAVE_PCSPKR_PLATFORM
Ralf Baechleaa414df2006-11-30 01:14:51 +0000304 select IRQ_CPU
Ralf Baechle39b8d522008-04-28 17:14:26 +0100305 select IRQ_GIC
Linus Torvalds1da177e2005-04-16 15:20:36 -0700306 select HW_HAS_PCI
Ralf Baechled865bea2007-10-11 23:46:10 +0100307 select I8253
Linus Torvalds1da177e2005-04-16 15:20:36 -0700308 select I8259
Ralf Baechle5e83d432005-10-29 19:32:41 +0100309 select MIPS_BOARDS_GEN
310 select MIPS_BONITO64
Chris Dearman9318c512006-06-20 17:15:20 +0100311 select MIPS_CPU_SCACHE
Yoichi Yuasa252161e2007-03-14 21:51:26 +0900312 select PCI_GT64XXX_PCI0
Ralf Baechle5e83d432005-10-29 19:32:41 +0100313 select MIPS_MSC
Linus Torvalds1da177e2005-04-16 15:20:36 -0700314 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100315 select SYS_HAS_CPU_MIPS32_R1
316 select SYS_HAS_CPU_MIPS32_R2
317 select SYS_HAS_CPU_MIPS64_R1
Leonid Yegoshin5d9fbed2012-07-19 09:11:15 +0200318 select SYS_HAS_CPU_MIPS64_R2
Ralf Baechle7cf80532005-10-20 22:33:09 +0100319 select SYS_HAS_CPU_NEVADA
320 select SYS_HAS_CPU_RM7000
Ralf Baechle36a88532007-03-01 11:56:43 +0000321 select SYS_HAS_EARLY_PRINTK
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700322 select SYS_SUPPORTS_32BIT_KERNEL
323 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100324 select SYS_SUPPORTS_BIG_ENDIAN
325 select SYS_SUPPORTS_LITTLE_ENDIAN
Tim Anderson03650702009-06-17 16:22:53 -0700326 select SYS_SUPPORTS_MIPS_CMP
Ralf Baechlef41ae0b2006-06-05 17:24:46 +0100327 select SYS_SUPPORTS_MULTITHREADING
Franck Bui-Huu9693a852007-02-02 17:41:47 +0100328 select SYS_SUPPORTS_SMARTMIPS
Wu Zhangjin1b93b3c2009-10-14 18:12:16 +0800329 select SYS_SUPPORTS_ZBOOT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700330 help
Maciej W. Rozyckif638d192005-02-02 22:23:46 +0000331 This enables support for the MIPS Technologies Malta evaluation
Linus Torvalds1da177e2005-04-16 15:20:36 -0700332 board.
333
Steven J. Hillec47b272012-05-11 02:46:20 +0000334config MIPS_SEAD3
335 bool "MIPS SEAD3 board"
336 select BOOT_ELF32
337 select BOOT_RAW
338 select CEVT_R4K
339 select CSRC_R4K
Steven J. Hilldfa762e2013-04-10 16:28:36 -0500340 select CSRC_GIC
Steven J. Hillec47b272012-05-11 02:46:20 +0000341 select CPU_MIPSR2_IRQ_VI
342 select CPU_MIPSR2_IRQ_EI
343 select DMA_NONCOHERENT
344 select IRQ_CPU
345 select IRQ_GIC
346 select MIPS_BOARDS_GEN
347 select MIPS_CPU_SCACHE
348 select MIPS_MSC
349 select SYS_HAS_CPU_MIPS32_R1
350 select SYS_HAS_CPU_MIPS32_R2
351 select SYS_HAS_CPU_MIPS64_R1
352 select SYS_HAS_EARLY_PRINTK
353 select SYS_SUPPORTS_32BIT_KERNEL
354 select SYS_SUPPORTS_64BIT_KERNEL
355 select SYS_SUPPORTS_BIG_ENDIAN
356 select SYS_SUPPORTS_LITTLE_ENDIAN
357 select SYS_SUPPORTS_SMARTMIPS
Steven J. Hilla6a48342013-02-05 16:52:02 -0600358 select SYS_SUPPORTS_MICROMIPS
Steven J. Hillec47b272012-05-11 02:46:20 +0000359 select USB_ARCH_HAS_EHCI
360 select USB_EHCI_BIG_ENDIAN_DESC
361 select USB_EHCI_BIG_ENDIAN_MMIO
Steven J. Hill9b731002013-01-17 11:37:03 -0600362 select USE_OF
Steven J. Hillec47b272012-05-11 02:46:20 +0000363 help
364 This enables support for the MIPS Technologies SEAD3 evaluation
365 board.
366
Ralf Baechlea83860c2009-03-13 21:17:57 +0100367config NEC_MARKEINS
368 bool "NEC EMMA2RH Mark-eins board"
369 select SOC_EMMA2RH
370 select HW_HAS_PCI
371 help
372 This enables support for the NEC Electronics Mark-eins boards.
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900373
Ralf Baechle5e83d432005-10-29 19:32:41 +0100374config MACH_VR41XX
Yoichi Yuasa74142d62007-04-26 19:45:09 +0900375 bool "NEC VR4100 series based machines"
Ralf Baechle42f77542007-10-18 17:48:11 +0100376 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000377 select CSRC_R4K
Ralf Baechle7cf80532005-10-20 22:33:09 +0100378 select SYS_HAS_CPU_VR41XX
Yoichi Yuasa27fdd322009-06-29 11:11:05 +0900379 select ARCH_REQUIRE_GPIOLIB
Ralf Baechle5e83d432005-10-29 19:32:41 +0100380
Daniel Lairdedb63102008-06-16 15:49:21 +0100381config NXP_STB220
382 bool "NXP STB220 board"
383 select SOC_PNX833X
384 help
385 Support for NXP Semiconductors STB220 Development Board.
386
387config NXP_STB225
388 bool "NXP 225 board"
389 select SOC_PNX833X
390 select SOC_PNX8335
391 help
392 Support for NXP Semiconductors STB225 Development Board.
393
Marc St-Jean9267a302007-06-14 15:55:31 -0600394config PMC_MSP
395 bool "PMC-Sierra MSP chipsets"
Anoop P A39d30c12010-11-18 13:42:28 +0530396 select CEVT_R4K
397 select CSRC_R4K
Marc St-Jean9267a302007-06-14 15:55:31 -0600398 select DMA_NONCOHERENT
399 select SWAP_IO_SPACE
400 select NO_EXCEPT_FILL
401 select BOOT_RAW
402 select SYS_HAS_CPU_MIPS32_R1
403 select SYS_HAS_CPU_MIPS32_R2
404 select SYS_SUPPORTS_32BIT_KERNEL
405 select SYS_SUPPORTS_BIG_ENDIAN
Marc St-Jean9267a302007-06-14 15:55:31 -0600406 select IRQ_CPU
407 select SERIAL_8250
408 select SERIAL_8250_CONSOLE
409 help
410 This adds support for the PMC-Sierra family of Multi-Service
411 Processor System-On-A-Chips. These parts include a number
412 of integrated peripherals, interfaces and DSPs in addition to
413 a variety of MIPS cores.
414
David VomLehna3a0f8c2009-08-30 17:15:11 -0700415config POWERTV
416 bool "Cisco PowerTV"
417 select BOOT_ELF32
418 select CEVT_R4K
419 select CPU_MIPSR2_IRQ_VI
420 select CPU_MIPSR2_IRQ_EI
421 select CSRC_POWERTV
422 select DMA_NONCOHERENT
423 select HW_HAS_PCI
424 select SYS_HAS_EARLY_PRINTK
425 select SYS_HAS_CPU_MIPS32_R2
426 select SYS_SUPPORTS_32BIT_KERNEL
427 select SYS_SUPPORTS_BIG_ENDIAN
428 select SYS_SUPPORTS_HIGHMEM
429 select USB_OHCI_LITTLE_ENDIAN
430 help
431 This enables support for the Cisco PowerTV Platform.
432
John Crispinae2b5bb2013-01-20 22:05:30 +0100433config RALINK
434 bool "Ralink based machines"
435 select CEVT_R4K
436 select CSRC_R4K
437 select BOOT_RAW
438 select DMA_NONCOHERENT
439 select IRQ_CPU
440 select USE_OF
441 select SYS_HAS_CPU_MIPS32_R1
442 select SYS_HAS_CPU_MIPS32_R2
443 select SYS_SUPPORTS_32BIT_KERNEL
444 select SYS_SUPPORTS_LITTLE_ENDIAN
445 select SYS_HAS_EARLY_PRINTK
446 select HAVE_MACH_CLKDEV
447 select CLKDEV_LOOKUP
448
Linus Torvalds1da177e2005-04-16 15:20:36 -0700449config SGI_IP22
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200450 bool "SGI IP22 (Indy/Indigo2)"
Ralf Baechle0e2794b2012-11-15 20:48:50 +0100451 select FW_ARC
452 select FW_ARC32
Linus Torvalds1da177e2005-04-16 15:20:36 -0700453 select BOOT_ELF32
Ralf Baechle42f77542007-10-18 17:48:11 +0100454 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000455 select CSRC_R4K
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +0100456 select DEFAULT_SGI_PARTITION
Linus Torvalds1da177e2005-04-16 15:20:36 -0700457 select DMA_NONCOHERENT
Ralf Baechle5e83d432005-10-29 19:32:41 +0100458 select HW_HAS_EISA
Ralf Baechled865bea2007-10-11 23:46:10 +0100459 select I8253
Thomas Bogendoerfer68de4802007-11-23 20:34:16 +0100460 select I8259
Linus Torvalds1da177e2005-04-16 15:20:36 -0700461 select IP22_CPU_SCACHE
462 select IRQ_CPU
Ralf Baechleaa414df2006-11-30 01:14:51 +0000463 select GENERIC_ISA_DMA_SUPPORT_BROKEN
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +0100464 select SGI_HAS_I8042
465 select SGI_HAS_INDYDOG
Thomas Bogendoerfer36e5c212008-07-16 14:06:15 +0200466 select SGI_HAS_HAL2
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +0100467 select SGI_HAS_SEEQ
468 select SGI_HAS_WD93
469 select SGI_HAS_ZILOG
Linus Torvalds1da177e2005-04-16 15:20:36 -0700470 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100471 select SYS_HAS_CPU_R4X00
472 select SYS_HAS_CPU_R5000
Martin Michlmayr2b5e63f2009-11-19 16:40:09 +0000473 #
474 # Disable EARLY_PRINTK for now since it leads to overwritten prom
475 # memory during early boot on some machines.
476 #
477 # See http://www.linux-mips.org/cgi-bin/mesg.cgi?a=linux-mips&i=20091119164009.GA15038%40deprecation.cyrius.com
478 # for a more details discussion
479 #
480 # select SYS_HAS_EARLY_PRINTK
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700481 select SYS_SUPPORTS_32BIT_KERNEL
482 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100483 select SYS_SUPPORTS_BIG_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700484 help
485 This are the SGI Indy, Challenge S and Indigo2, as well as certain
486 OEM variants like the Tandem CMN B006S. To compile a Linux kernel
487 that runs on these, say Y here.
488
489config SGI_IP27
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200490 bool "SGI IP27 (Origin200/2000)"
Ralf Baechle0e2794b2012-11-15 20:48:50 +0100491 select FW_ARC
492 select FW_ARC64
Ralf Baechle5e83d432005-10-29 19:32:41 +0100493 select BOOT_ELF64
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +0100494 select DEFAULT_SGI_PARTITION
Ralf Baechle634286f2009-01-28 17:48:40 +0000495 select DMA_COHERENT
Ralf Baechle36a88532007-03-01 11:56:43 +0000496 select SYS_HAS_EARLY_PRINTK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700497 select HW_HAS_PCI
Ralf Baechle130e2fb2007-02-06 16:53:15 +0000498 select NR_CPUS_DEFAULT_64
Ralf Baechle7cf80532005-10-20 22:33:09 +0100499 select SYS_HAS_CPU_R10000
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700500 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100501 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechled8cb4e12006-06-11 23:03:08 +0100502 select SYS_SUPPORTS_NUMA
Ralf Baechle1a5c5de2006-11-02 17:23:33 +0000503 select SYS_SUPPORTS_SMP
Linus Torvalds1da177e2005-04-16 15:20:36 -0700504 help
505 This are the SGI Origin 200, Origin 2000 and Onyx 2 Graphics
506 workstations. To compile a Linux kernel that runs on these, say Y
507 here.
508
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +0100509config SGI_IP28
Kees Cook7d607172013-01-16 18:53:19 -0800510 bool "SGI IP28 (Indigo2 R10k)"
Ralf Baechle0e2794b2012-11-15 20:48:50 +0100511 select FW_ARC
512 select FW_ARC64
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +0100513 select BOOT_ELF64
514 select CEVT_R4K
515 select CSRC_R4K
516 select DEFAULT_SGI_PARTITION
517 select DMA_NONCOHERENT
518 select GENERIC_ISA_DMA_SUPPORT_BROKEN
519 select IRQ_CPU
520 select HW_HAS_EISA
521 select I8253
522 select I8259
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +0100523 select SGI_HAS_I8042
524 select SGI_HAS_INDYDOG
Thomas Bogendoerfer5b438c42008-07-10 20:29:55 +0200525 select SGI_HAS_HAL2
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +0100526 select SGI_HAS_SEEQ
527 select SGI_HAS_WD93
528 select SGI_HAS_ZILOG
529 select SWAP_IO_SPACE
530 select SYS_HAS_CPU_R10000
Martin Michlmayr2b5e63f2009-11-19 16:40:09 +0000531 #
532 # Disable EARLY_PRINTK for now since it leads to overwritten prom
533 # memory during early boot on some machines.
534 #
535 # See http://www.linux-mips.org/cgi-bin/mesg.cgi?a=linux-mips&i=20091119164009.GA15038%40deprecation.cyrius.com
536 # for a more details discussion
537 #
538 # select SYS_HAS_EARLY_PRINTK
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +0100539 select SYS_SUPPORTS_64BIT_KERNEL
540 select SYS_SUPPORTS_BIG_ENDIAN
541 help
542 This is the SGI Indigo2 with R10000 processor. To compile a Linux
543 kernel that runs on these, say Y here.
544
Linus Torvalds1da177e2005-04-16 15:20:36 -0700545config SGI_IP32
Ralf Baechlecfd2afc2007-07-10 17:33:00 +0100546 bool "SGI IP32 (O2)"
Ralf Baechle0e2794b2012-11-15 20:48:50 +0100547 select FW_ARC
548 select FW_ARC32
Linus Torvalds1da177e2005-04-16 15:20:36 -0700549 select BOOT_ELF32
Ralf Baechle42f77542007-10-18 17:48:11 +0100550 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000551 select CSRC_R4K
Linus Torvalds1da177e2005-04-16 15:20:36 -0700552 select DMA_NONCOHERENT
553 select HW_HAS_PCI
Ralf Baechledd67b152007-10-14 14:02:26 +0100554 select IRQ_CPU
Linus Torvalds1da177e2005-04-16 15:20:36 -0700555 select R5000_CPU_SCACHE
556 select RM7000_CPU_SCACHE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100557 select SYS_HAS_CPU_R5000
558 select SYS_HAS_CPU_R10000 if BROKEN
559 select SYS_HAS_CPU_RM7000
Ralf Baechledd2f18f2006-01-19 14:55:42 +0000560 select SYS_HAS_CPU_NEVADA
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700561 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100562 select SYS_SUPPORTS_BIG_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700563 help
564 If you want this kernel to run on SGI O2 workstation, say Y here.
565
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900566config SIBYTE_CRHINE
567 bool "Sibyte BCM91120C-CRhine"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100568 select BOOT_ELF32
569 select DMA_COHERENT
570 select SIBYTE_BCM1120
571 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100572 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100573 select SYS_SUPPORTS_BIG_ENDIAN
574 select SYS_SUPPORTS_LITTLE_ENDIAN
575
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900576config SIBYTE_CARMEL
577 bool "Sibyte BCM91120x-Carmel"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100578 select BOOT_ELF32
579 select DMA_COHERENT
580 select SIBYTE_BCM1120
581 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100582 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100583 select SYS_SUPPORTS_BIG_ENDIAN
584 select SYS_SUPPORTS_LITTLE_ENDIAN
585
586config SIBYTE_CRHONE
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200587 bool "Sibyte BCM91125C-CRhone"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100588 select BOOT_ELF32
589 select DMA_COHERENT
590 select SIBYTE_BCM1125
591 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100592 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100593 select SYS_SUPPORTS_BIG_ENDIAN
594 select SYS_SUPPORTS_HIGHMEM
595 select SYS_SUPPORTS_LITTLE_ENDIAN
596
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900597config SIBYTE_RHONE
598 bool "Sibyte BCM91125E-Rhone"
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900599 select BOOT_ELF32
600 select DMA_COHERENT
601 select SIBYTE_BCM1125H
602 select SWAP_IO_SPACE
603 select SYS_HAS_CPU_SB1
604 select SYS_SUPPORTS_BIG_ENDIAN
605 select SYS_SUPPORTS_LITTLE_ENDIAN
606
607config SIBYTE_SWARM
608 bool "Sibyte BCM91250A-SWARM"
609 select BOOT_ELF32
610 select DMA_COHERENT
Sebastian Andrzej Siewiorfcf3ca42010-04-18 15:26:36 +0200611 select HAVE_PATA_PLATFORM
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900612 select NR_CPUS_DEFAULT_2
613 select SIBYTE_SB1250
614 select SWAP_IO_SPACE
615 select SYS_HAS_CPU_SB1
616 select SYS_SUPPORTS_BIG_ENDIAN
617 select SYS_SUPPORTS_HIGHMEM
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900618 select SYS_SUPPORTS_LITTLE_ENDIAN
Ralf Baechlecce335ae2007-11-03 02:05:43 +0000619 select ZONE_DMA32 if 64BIT
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900620
621config SIBYTE_LITTLESUR
622 bool "Sibyte BCM91250C2-LittleSur"
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900623 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"
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900636 select BOOT_ELF32
637 select DMA_COHERENT
638 select NR_CPUS_DEFAULT_2
639 select SIBYTE_SB1250
640 select SWAP_IO_SPACE
641 select SYS_HAS_CPU_SB1
642 select SYS_SUPPORTS_BIG_ENDIAN
643 select SYS_SUPPORTS_LITTLE_ENDIAN
644
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900645config SIBYTE_BIGSUR
646 bool "Sibyte BCM91480B-BigSur"
647 select BOOT_ELF32
648 select DMA_COHERENT
649 select NR_CPUS_DEFAULT_4
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900650 select SIBYTE_BCM1x80
651 select SWAP_IO_SPACE
652 select SYS_HAS_CPU_SB1
653 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechle651194f2007-11-01 21:55:39 +0000654 select SYS_SUPPORTS_HIGHMEM
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900655 select SYS_SUPPORTS_LITTLE_ENDIAN
Ralf Baechlecce335ae2007-11-03 02:05:43 +0000656 select ZONE_DMA32 if 64BIT
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900657
Thomas Bogendoerfer14b36af2006-12-05 17:05:44 +0100658config SNI_RM
659 bool "SNI RM200/300/400"
Ralf Baechle0e2794b2012-11-15 20:48:50 +0100660 select FW_ARC if CPU_LITTLE_ENDIAN
661 select FW_ARC32 if CPU_LITTLE_ENDIAN
Paul Bolleaaa9fad2013-03-25 09:39:54 +0000662 select FW_SNIPROM if CPU_BIG_ENDIAN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100663 select ARCH_MAY_HAVE_PC_FDC
664 select BOOT_ELF32
Ralf Baechle42f77542007-10-18 17:48:11 +0100665 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000666 select CSRC_R4K
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +0100667 select DEFAULT_SGI_PARTITION if CPU_BIG_ENDIAN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100668 select DMA_NONCOHERENT
669 select GENERIC_ISA_DMA
Ralf Baechle8a118c32011-06-01 19:05:10 +0100670 select HAVE_PCSPKR_PLATFORM
Ralf Baechle5e83d432005-10-29 19:32:41 +0100671 select HW_HAS_EISA
672 select HW_HAS_PCI
Thomas Bogendoerferc066a322006-12-28 18:22:32 +0100673 select IRQ_CPU
Ralf Baechled865bea2007-10-11 23:46:10 +0100674 select I8253
Ralf Baechle5e83d432005-10-29 19:32:41 +0100675 select I8259
676 select ISA
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200677 select SWAP_IO_SPACE if CPU_BIG_ENDIAN
Ralf Baechle7cf80532005-10-20 22:33:09 +0100678 select SYS_HAS_CPU_R4X00
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200679 select SYS_HAS_CPU_R5000
Thomas Bogendoerferc066a322006-12-28 18:22:32 +0100680 select SYS_HAS_CPU_R10000
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200681 select R5000_CPU_SCACHE
Ralf Baechle36a88532007-03-01 11:56:43 +0000682 select SYS_HAS_EARLY_PRINTK
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700683 select SYS_SUPPORTS_32BIT_KERNEL
Kees Cook7d607172013-01-16 18:53:19 -0800684 select SYS_SUPPORTS_64BIT_KERNEL
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200685 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100686 select SYS_SUPPORTS_HIGHMEM
687 select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700688 help
Thomas Bogendoerfer14b36af2006-12-05 17:05:44 +0100689 The SNI RM200/300/400 are MIPS-based machines manufactured by
690 Siemens Nixdorf Informationssysteme (SNI), parent company of Pyramid
Ralf Baechle5e83d432005-10-29 19:32:41 +0100691 Technology and now in turn merged with Fujitsu. Say Y here to
692 support this machine type.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700693
Atsushi Nemotoedcaf1a2008-07-11 23:27:54 +0900694config MACH_TX39XX
695 bool "Toshiba TX39 series based machines"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100696
Atsushi Nemotoedcaf1a2008-07-11 23:27:54 +0900697config MACH_TX49XX
698 bool "Toshiba TX49 series based machines"
Ralf Baechle23fbee92005-07-25 22:45:45 +0000699
Ralf Baechle73b43902008-07-16 16:12:25 +0100700config MIKROTIK_RB532
701 bool "Mikrotik RB532 boards"
702 select CEVT_R4K
703 select CSRC_R4K
704 select DMA_NONCOHERENT
Ralf Baechle73b43902008-07-16 16:12:25 +0100705 select HW_HAS_PCI
706 select IRQ_CPU
707 select SYS_HAS_CPU_MIPS32_R1
708 select SYS_SUPPORTS_32BIT_KERNEL
709 select SYS_SUPPORTS_LITTLE_ENDIAN
710 select SWAP_IO_SPACE
711 select BOOT_RAW
Florian Fainellid888e252008-08-23 18:54:34 +0200712 select ARCH_REQUIRE_GPIOLIB
Ralf Baechle73b43902008-07-16 16:12:25 +0100713 help
714 Support the Mikrotik(tm) RouterBoard 532 series,
715 based on the IDT RC32434 SoC.
716
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900717config WR_PPMC
718 bool "Wind River PPMC board"
Ralf Baechle42f77542007-10-18 17:48:11 +0100719 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000720 select CSRC_R4K
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900721 select IRQ_CPU
722 select BOOT_ELF32
723 select DMA_NONCOHERENT
724 select HW_HAS_PCI
725 select PCI_GT64XXX_PCI0
726 select SWAP_IO_SPACE
727 select SYS_HAS_CPU_MIPS32_R1
728 select SYS_HAS_CPU_MIPS32_R2
729 select SYS_HAS_CPU_MIPS64_R1
730 select SYS_HAS_CPU_NEVADA
731 select SYS_HAS_CPU_RM7000
732 select SYS_SUPPORTS_32BIT_KERNEL
733 select SYS_SUPPORTS_64BIT_KERNEL
734 select SYS_SUPPORTS_BIG_ENDIAN
735 select SYS_SUPPORTS_LITTLE_ENDIAN
736 help
737 This enables support for the Wind River MIPS32 4KC PPMC evaluation
738 board, which is based on GT64120 bridge chip.
739
David Daneya86c7f72008-12-11 15:33:38 -0800740config CAVIUM_OCTEON_SIMULATOR
Yoichi Yuasac9d89d92009-06-02 23:15:10 +0900741 bool "Cavium Networks Octeon Simulator"
David Daneya86c7f72008-12-11 15:33:38 -0800742 select CEVT_R4K
743 select 64BIT_PHYS_ADDR
744 select DMA_COHERENT
745 select SYS_SUPPORTS_64BIT_KERNEL
746 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechle773cb772009-06-23 10:36:38 +0100747 select SYS_SUPPORTS_HOTPLUG_CPU
David Daney5e683382009-02-02 11:30:59 -0800748 select SYS_HAS_CPU_CAVIUM_OCTEON
David Daney465aaed2011-08-20 08:44:00 -0700749 select HOLES_IN_ZONE
David Daneya86c7f72008-12-11 15:33:38 -0800750 help
751 The Octeon simulator is software performance model of the Cavium
752 Octeon Processor. It supports simulating Octeon processors on x86
753 hardware.
754
755config CAVIUM_OCTEON_REFERENCE_BOARD
Yoichi Yuasac9d89d92009-06-02 23:15:10 +0900756 bool "Cavium Networks Octeon reference board"
David Daneya86c7f72008-12-11 15:33:38 -0800757 select CEVT_R4K
758 select 64BIT_PHYS_ADDR
759 select DMA_COHERENT
760 select SYS_SUPPORTS_64BIT_KERNEL
761 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechlef65aad42012-10-17 00:39:09 +0200762 select EDAC_SUPPORT
Ralf Baechle773cb772009-06-23 10:36:38 +0100763 select SYS_SUPPORTS_HOTPLUG_CPU
David Daneya86c7f72008-12-11 15:33:38 -0800764 select SYS_HAS_EARLY_PRINTK
David Daney5e683382009-02-02 11:30:59 -0800765 select SYS_HAS_CPU_CAVIUM_OCTEON
David Daneya86c7f72008-12-11 15:33:38 -0800766 select SWAP_IO_SPACE
David Daneye8635b42009-04-23 17:44:38 -0700767 select HW_HAS_PCI
768 select ARCH_SUPPORTS_MSI
David Daneyf00e0012010-10-01 13:27:30 -0700769 select ZONE_DMA32
David Daney340fbb82010-10-08 14:47:53 -0700770 select USB_ARCH_HAS_OHCI
771 select USB_ARCH_HAS_EHCI
David Daney465aaed2011-08-20 08:44:00 -0700772 select HOLES_IN_ZONE
David Daneya86c7f72008-12-11 15:33:38 -0800773 help
774 This option supports all of the Octeon reference boards from Cavium
775 Networks. It builds a kernel that dynamically determines the Octeon
776 CPU type and supports all known board reference implementations.
777 Some of the supported boards are:
778 EBT3000
779 EBH3000
780 EBH3100
781 Thunder
782 Kodama
783 Hikari
784 Say Y here for most Octeon reference boards.
785
Jayachandran C7f058e82011-05-07 01:36:57 +0530786config NLM_XLR_BOARD
787 bool "Netlogic XLR/XLS based systems"
Jayachandran C7f058e82011-05-07 01:36:57 +0530788 select BOOT_ELF32
789 select NLM_COMMON
Jayachandran C7f058e82011-05-07 01:36:57 +0530790 select SYS_HAS_CPU_XLR
791 select SYS_SUPPORTS_SMP
792 select HW_HAS_PCI
793 select SWAP_IO_SPACE
794 select SYS_SUPPORTS_32BIT_KERNEL
795 select SYS_SUPPORTS_64BIT_KERNEL
796 select 64BIT_PHYS_ADDR
797 select SYS_SUPPORTS_BIG_ENDIAN
798 select SYS_SUPPORTS_HIGHMEM
799 select DMA_COHERENT
800 select NR_CPUS_DEFAULT_32
801 select CEVT_R4K
802 select CSRC_R4K
803 select IRQ_CPU
Ganesan Ramalingamf32671a2011-08-23 13:36:10 +0530804 select ARCH_SUPPORTS_MSI
Jayachandran Cb97215f2012-10-31 12:01:33 +0000805 select ZONE_DMA32 if 64BIT
Jayachandran C7f058e82011-05-07 01:36:57 +0530806 select SYNC_R4K
807 select SYS_HAS_EARLY_PRINTK
Jayachandran Cf35574a2012-07-24 17:28:53 +0200808 select USB_ARCH_HAS_OHCI if USB_SUPPORT
809 select USB_ARCH_HAS_EHCI if USB_SUPPORT
Jayachandran C7f058e82011-05-07 01:36:57 +0530810 help
811 Support for systems based on Netlogic XLR and XLS processors.
812 Say Y here if you have a XLR or XLS based board.
813
Jayachandran C1c773ea2011-11-16 00:21:28 +0000814config NLM_XLP_BOARD
815 bool "Netlogic XLP based systems"
Jayachandran C1c773ea2011-11-16 00:21:28 +0000816 select BOOT_ELF32
817 select NLM_COMMON
818 select SYS_HAS_CPU_XLP
819 select SYS_SUPPORTS_SMP
820 select HW_HAS_PCI
Jayachandran C1c773ea2011-11-16 00:21:28 +0000821 select SYS_SUPPORTS_32BIT_KERNEL
822 select SYS_SUPPORTS_64BIT_KERNEL
823 select 64BIT_PHYS_ADDR
824 select SYS_SUPPORTS_BIG_ENDIAN
825 select SYS_SUPPORTS_LITTLE_ENDIAN
826 select SYS_SUPPORTS_HIGHMEM
827 select DMA_COHERENT
828 select NR_CPUS_DEFAULT_32
829 select CEVT_R4K
830 select CSRC_R4K
831 select IRQ_CPU
Jayachandran Cb97215f2012-10-31 12:01:33 +0000832 select ZONE_DMA32 if 64BIT
Jayachandran C1c773ea2011-11-16 00:21:28 +0000833 select SYNC_R4K
834 select SYS_HAS_EARLY_PRINTK
Jayachandran C2f6528e2012-07-13 21:53:22 +0530835 select USE_OF
Jayachandran C1c773ea2011-11-16 00:21:28 +0000836 help
837 This board is based on Netlogic XLP Processor.
838 Say Y here if you have a XLP based board.
839
Linus Torvalds1da177e2005-04-16 15:20:36 -0700840endchoice
841
Ralf Baechlee8c7c482008-09-16 19:12:16 +0200842source "arch/mips/alchemy/Kconfig"
Gabor Juhosd4a67d92011-01-04 21:28:14 +0100843source "arch/mips/ath79/Kconfig"
Hauke Mehrtensa656ffc2011-07-23 01:20:13 +0200844source "arch/mips/bcm47xx/Kconfig"
Maxime Bizone7300d02009-08-18 13:23:37 +0100845source "arch/mips/bcm63xx/Kconfig"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100846source "arch/mips/jazz/Kconfig"
Lars-Peter Clausen5ebabe52010-06-19 04:08:19 +0000847source "arch/mips/jz4740/Kconfig"
John Crispin8ec6d932011-03-30 09:27:48 +0200848source "arch/mips/lantiq/Kconfig"
Brian Murphy1f21d2b2007-08-21 22:34:16 +0200849source "arch/mips/lasat/Kconfig"
Ralf Baechle0f3a05c2012-12-15 11:52:10 +0100850source "arch/mips/pmcs-msp71xx/Kconfig"
David VomLehna3a0f8c2009-08-30 17:15:11 -0700851source "arch/mips/powertv/Kconfig"
John Crispinae2b5bb2013-01-20 22:05:30 +0100852source "arch/mips/ralink/Kconfig"
Ralf Baechle29c48692005-02-07 01:27:14 +0000853source "arch/mips/sgi-ip27/Kconfig"
Ralf Baechle38b18f722005-02-03 14:28:23 +0000854source "arch/mips/sibyte/Kconfig"
Atsushi Nemoto22b1d702008-07-11 00:31:36 +0900855source "arch/mips/txx9/Kconfig"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100856source "arch/mips/vr41xx/Kconfig"
David Daneya86c7f72008-12-11 15:33:38 -0800857source "arch/mips/cavium-octeon/Kconfig"
Wu Zhangjin85749d22009-07-02 23:26:45 +0800858source "arch/mips/loongson/Kconfig"
Kelvin Cheungca585cf2012-07-25 16:17:24 +0200859source "arch/mips/loongson1/Kconfig"
Jayachandran C7f058e82011-05-07 01:36:57 +0530860source "arch/mips/netlogic/Kconfig"
Ralf Baechle38b18f722005-02-03 14:28:23 +0000861
Ralf Baechle5e83d432005-10-29 19:32:41 +0100862endmenu
863
Linus Torvalds1da177e2005-04-16 15:20:36 -0700864config RWSEM_GENERIC_SPINLOCK
865 bool
866 default y
867
868config RWSEM_XCHGADD_ALGORITHM
869 bool
870
David Howellsf0d1b0b2006-12-08 02:37:49 -0800871config ARCH_HAS_ILOG2_U32
872 bool
873 default n
874
875config ARCH_HAS_ILOG2_U64
876 bool
877 default n
878
Akinobu Mita3c9ee7e2006-03-26 01:39:30 -0800879config GENERIC_HWEIGHT
880 bool
881 default y
882
Linus Torvalds1da177e2005-04-16 15:20:36 -0700883config GENERIC_CALIBRATE_DELAY
884 bool
885 default y
886
Ingo Molnarae1e9132008-11-11 09:05:16 +0100887config SCHED_OMIT_FRAME_POINTER
Atsushi Nemoto1cc89032006-04-04 13:11:45 +0900888 bool
889 default y
890
Linus Torvalds1da177e2005-04-16 15:20:36 -0700891#
892# Select some configuration options automatically based on user selections.
893#
Ralf Baechle0e2794b2012-11-15 20:48:50 +0100894config FW_ARC
Linus Torvalds1da177e2005-04-16 15:20:36 -0700895 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700896
Ralf Baechle61ed2422005-09-15 08:52:34 +0000897config ARCH_MAY_HAVE_PC_FDC
898 bool
899
Marc St-Jean9267a302007-06-14 15:55:31 -0600900config BOOT_RAW
901 bool
902
Ralf Baechle217dd112007-11-01 01:57:55 +0000903config CEVT_BCM1480
904 bool
905
Yoichi Yuasa6457d9f2008-04-25 12:11:44 +0900906config CEVT_DS1287
907 bool
908
Yoichi Yuasa1097c6a2007-10-22 19:43:15 +0900909config CEVT_GT641XX
910 bool
911
Ralf Baechle42f77542007-10-18 17:48:11 +0100912config CEVT_R4K
913 bool
914
Raghu Gandham0ab2b7d2013-04-10 16:30:12 -0500915config CEVT_GIC
916 bool
917
Ralf Baechle217dd112007-11-01 01:57:55 +0000918config CEVT_SB1250
919 bool
920
Atsushi Nemoto229f7732007-10-25 01:34:09 +0900921config CEVT_TXX9
922 bool
923
Ralf Baechle217dd112007-11-01 01:57:55 +0000924config CSRC_BCM1480
925 bool
926
Yoichi Yuasa42474172008-04-24 09:48:40 +0900927config CSRC_IOASIC
928 bool
929
David VomLehna3a0f8c2009-08-30 17:15:11 -0700930config CSRC_POWERTV
931 bool
932
Ralf Baechle940f6b42007-11-24 22:33:28 +0000933config CSRC_R4K
934 bool
935
Steven J. Hill778eeb12012-12-07 03:51:04 +0000936config CSRC_GIC
937 bool
938
Ralf Baechle217dd112007-11-01 01:57:55 +0000939config CSRC_SB1250
940 bool
941
Atsushi Nemotoa9aec7f2008-04-05 00:55:41 +0900942config GPIO_TXX9
943 select GENERIC_GPIO
Michael Buesch7444a722008-07-25 01:46:11 -0700944 select ARCH_REQUIRE_GPIOLIB
Atsushi Nemotoa9aec7f2008-04-05 00:55:41 +0900945 bool
946
Ralf Baechle0e2794b2012-11-15 20:48:50 +0100947config FW_CFE
Aurelien Jarnodf78b5c2007-09-05 08:58:26 +0200948 bool
949
FUJITA Tomonori4bafad92010-09-03 09:49:12 +0900950config ARCH_DMA_ADDR_T_64BIT
951 def_bool (HIGHMEM && 64BIT_PHYS_ADDR) || 64BIT
952
Ralf Baechle4ce588c2005-09-03 15:56:19 -0700953config DMA_COHERENT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700954 bool
955
Ralf Baechle4ce588c2005-09-03 15:56:19 -0700956config DMA_NONCOHERENT
957 bool
FUJITA Tomonorie1e02b32010-03-10 15:23:25 -0800958 select NEED_DMA_MAP_STATE
Ralf Baechle4ce588c2005-09-03 15:56:19 -0700959
FUJITA Tomonorie1e02b32010-03-10 15:23:25 -0800960config NEED_DMA_MAP_STATE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700961 bool
962
Ralf Baechle36a88532007-03-01 11:56:43 +0000963config SYS_HAS_EARLY_PRINTK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700964 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700965
Ralf Baechledbb74542007-08-07 14:52:17 +0100966config HOTPLUG_CPU
Ralf Baechle1b2bc752009-06-23 10:00:31 +0100967 bool "Support for hot-pluggable CPUs"
968 depends on SMP && HOTPLUG && SYS_SUPPORTS_HOTPLUG_CPU
969 help
970 Say Y here to allow turning CPUs off and on. CPUs can be
971 controlled through /sys/devices/system/cpu.
972 (Note: power management support will enable this option
973 automatically on SMP systems. )
974 Say N if you want to disable CPU hotplug.
975
976config SYS_SUPPORTS_HOTPLUG_CPU
Ralf Baechledbb74542007-08-07 14:52:17 +0100977 bool
Ralf Baechledbb74542007-08-07 14:52:17 +0100978
Linus Torvalds1da177e2005-04-16 15:20:36 -0700979config I8259
980 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700981
Linus Torvalds1da177e2005-04-16 15:20:36 -0700982config MIPS_BONITO64
983 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700984
985config MIPS_MSC
986 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700987
Brian Murphy1f21d2b2007-08-21 22:34:16 +0200988config MIPS_NILE4
989 bool
990
Linus Torvalds1da177e2005-04-16 15:20:36 -0700991config MIPS_DISABLE_OBSOLETE_IDE
992 bool
993
Ralf Baechle39b8d522008-04-28 17:14:26 +0100994config SYNC_R4K
995 bool
996
Gabor Juhos487d70d2010-11-23 16:06:25 +0100997config MIPS_MACHINE
998 def_bool n
999
Maciej W. Rozyckid388d682007-05-29 15:08:07 +01001000config NO_IOPORT
1001 def_bool n
1002
Ralf Baechle8313da32007-08-24 16:48:30 +01001003config GENERIC_ISA_DMA
1004 bool
1005 select ZONE_DMA if GENERIC_ISA_DMA_SUPPORT_BROKEN=n
Namhyung Kima35bee82010-10-18 12:55:21 +09001006 select ISA_DMA_API
Ralf Baechle8313da32007-08-24 16:48:30 +01001007
Ralf Baechleaa414df2006-11-30 01:14:51 +00001008config GENERIC_ISA_DMA_SUPPORT_BROKEN
1009 bool
Ralf Baechle8313da32007-08-24 16:48:30 +01001010 select GENERIC_ISA_DMA
Ralf Baechleaa414df2006-11-30 01:14:51 +00001011
Namhyung Kima35bee82010-10-18 12:55:21 +09001012config ISA_DMA_API
1013 bool
1014
Yoichi Yuasa09663332007-05-22 00:05:58 +09001015config GENERIC_GPIO
1016 bool
1017
David Daney465aaed2011-08-20 08:44:00 -07001018config HOLES_IN_ZONE
1019 bool
1020
Ralf Baechle5e83d432005-10-29 19:32:41 +01001021#
Masanari Iida6b2aac42012-04-14 00:14:11 +09001022# Endianness selection. Sufficiently obscure so many users don't know what to
Ralf Baechle5e83d432005-10-29 19:32:41 +01001023# answer,so we try hard to limit the available choices. Also the use of a
1024# choice statement should be more obvious to the user.
1025#
1026choice
Masanari Iida6b2aac42012-04-14 00:14:11 +09001027 prompt "Endianness selection"
Linus Torvalds1da177e2005-04-16 15:20:36 -07001028 help
1029 Some MIPS machines can be configured for either little or big endian
Ralf Baechle5e83d432005-10-29 19:32:41 +01001030 byte order. These modes require different kernels and a different
Matt LaPlante3cb2fcc2006-11-30 05:22:59 +01001031 Linux distribution. In general there is one preferred byteorder for a
Ralf Baechle5e83d432005-10-29 19:32:41 +01001032 particular system but some systems are just as commonly used in the
David Sterba3dde6ad2007-05-09 07:12:20 +02001033 one or the other endianness.
Ralf Baechle5e83d432005-10-29 19:32:41 +01001034
1035config CPU_BIG_ENDIAN
1036 bool "Big endian"
1037 depends on SYS_SUPPORTS_BIG_ENDIAN
1038
1039config CPU_LITTLE_ENDIAN
1040 bool "Little endian"
1041 depends on SYS_SUPPORTS_LITTLE_ENDIAN
1042 help
1043
1044endchoice
1045
David Daney22b07632010-07-23 18:41:43 -07001046config EXPORT_UASM
1047 bool
1048
Ralf Baechle21162452007-02-09 17:08:58 +00001049config SYS_SUPPORTS_APM_EMULATION
1050 bool
1051
Ralf Baechle5e83d432005-10-29 19:32:41 +01001052config SYS_SUPPORTS_BIG_ENDIAN
1053 bool
1054
1055config SYS_SUPPORTS_LITTLE_ENDIAN
1056 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001057
David Daney9cffd152009-05-27 17:47:46 -07001058config SYS_SUPPORTS_HUGETLBFS
1059 bool
1060 depends on CPU_SUPPORTS_HUGEPAGES && 64BIT
1061 default y
1062
David Daneyaa1762f2012-10-17 00:48:10 +02001063config MIPS_HUGE_TLB_SUPPORT
1064 def_bool HUGETLB_PAGE || TRANSPARENT_HUGEPAGE
1065
Linus Torvalds1da177e2005-04-16 15:20:36 -07001066config IRQ_CPU
1067 bool
1068
1069config IRQ_CPU_RM7K
1070 bool
1071
Marc St-Jean9267a302007-06-14 15:55:31 -06001072config IRQ_MSP_SLP
1073 bool
1074
1075config IRQ_MSP_CIC
1076 bool
1077
Atsushi Nemoto8420fd02007-08-02 23:35:53 +09001078config IRQ_TXX9
1079 bool
1080
Yoichi Yuasad5ab1a62007-09-13 23:51:26 +09001081config IRQ_GT641XX
1082 bool
1083
Ralf Baechle39b8d522008-04-28 17:14:26 +01001084config IRQ_GIC
1085 bool
1086
Linus Torvalds1da177e2005-04-16 15:20:36 -07001087config MIPS_BOARDS_GEN
1088 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001089
Yoichi Yuasa252161e2007-03-14 21:51:26 +09001090config PCI_GT64XXX_PCI0
Linus Torvalds1da177e2005-04-16 15:20:36 -07001091 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001092
Marc St-Jean9267a302007-06-14 15:55:31 -06001093config NO_EXCEPT_FILL
1094 bool
1095
Ralf Baechlea83860c2009-03-13 21:17:57 +01001096config SOC_EMMA2RH
1097 bool
1098 select CEVT_R4K
1099 select CSRC_R4K
1100 select DMA_NONCOHERENT
1101 select IRQ_CPU
1102 select SWAP_IO_SPACE
1103 select SYS_HAS_CPU_R5500
1104 select SYS_SUPPORTS_32BIT_KERNEL
1105 select SYS_SUPPORTS_64BIT_KERNEL
1106 select SYS_SUPPORTS_BIG_ENDIAN
1107
Daniel Lairdedb63102008-06-16 15:49:21 +01001108config SOC_PNX833X
1109 bool
1110 select CEVT_R4K
1111 select CSRC_R4K
1112 select IRQ_CPU
1113 select DMA_NONCOHERENT
1114 select SYS_HAS_CPU_MIPS32_R2
1115 select SYS_SUPPORTS_32BIT_KERNEL
1116 select SYS_SUPPORTS_LITTLE_ENDIAN
1117 select SYS_SUPPORTS_BIG_ENDIAN
Daniel Lairdedb63102008-06-16 15:49:21 +01001118 select GENERIC_GPIO
1119 select CPU_MIPSR2_IRQ_VI
1120
1121config SOC_PNX8335
1122 bool
1123 select SOC_PNX833X
1124
Linus Torvalds1da177e2005-04-16 15:20:36 -07001125config SWAP_IO_SPACE
1126 bool
1127
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +01001128config SGI_HAS_INDYDOG
1129 bool
1130
Thomas Bogendoerfer5b438c42008-07-10 20:29:55 +02001131config SGI_HAS_HAL2
1132 bool
1133
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +01001134config SGI_HAS_SEEQ
1135 bool
1136
1137config SGI_HAS_WD93
1138 bool
1139
1140config SGI_HAS_ZILOG
1141 bool
1142
1143config SGI_HAS_I8042
1144 bool
1145
1146config DEFAULT_SGI_PARTITION
1147 bool
1148
Ralf Baechle0e2794b2012-11-15 20:48:50 +01001149config FW_ARC32
Ralf Baechle5e83d432005-10-29 19:32:41 +01001150 bool
1151
Paul Bolleaaa9fad2013-03-25 09:39:54 +00001152config FW_SNIPROM
Thomas Bogendoerfer231a35d2008-01-04 23:31:07 +01001153 bool
1154
Linus Torvalds1da177e2005-04-16 15:20:36 -07001155config BOOT_ELF32
1156 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001157
1158config MIPS_L1_CACHE_SHIFT
1159 int
Ralf Baechlec7088752009-10-12 22:30:06 +02001160 default "4" if MACH_DECSTATION || MIKROTIK_RB532 || PMC_MSP4200_EVAL
Ralf Baechle0db2b742009-10-13 16:54:01 +02001161 default "6" if MIPS_CPU_SCACHE
David Daneya86c7f72008-12-11 15:33:38 -08001162 default "7" if SGI_IP22 || SGI_IP27 || SGI_IP28 || SNI_RM || CPU_CAVIUM_OCTEON
Linus Torvalds1da177e2005-04-16 15:20:36 -07001163 default "5"
1164
Linus Torvalds1da177e2005-04-16 15:20:36 -07001165config HAVE_STD_PC_SERIAL_PORT
1166 bool
1167
Linus Torvalds1da177e2005-04-16 15:20:36 -07001168config ARC_CONSOLE
1169 bool "ARC console support"
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +01001170 depends on SGI_IP22 || SGI_IP28 || (SNI_RM && CPU_LITTLE_ENDIAN)
Linus Torvalds1da177e2005-04-16 15:20:36 -07001171
1172config ARC_MEMORY
1173 bool
Thomas Bogendoerfer14b36af2006-12-05 17:05:44 +01001174 depends on MACH_JAZZ || SNI_RM || SGI_IP32
Linus Torvalds1da177e2005-04-16 15:20:36 -07001175 default y
1176
1177config ARC_PROMLIB
1178 bool
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +01001179 depends on MACH_JAZZ || SNI_RM || SGI_IP22 || SGI_IP28 || SGI_IP32
Linus Torvalds1da177e2005-04-16 15:20:36 -07001180 default y
1181
Ralf Baechle0e2794b2012-11-15 20:48:50 +01001182config FW_ARC64
Linus Torvalds1da177e2005-04-16 15:20:36 -07001183 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001184
1185config BOOT_ELF64
1186 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001187
Linus Torvalds1da177e2005-04-16 15:20:36 -07001188menu "CPU selection"
1189
1190choice
1191 prompt "CPU type"
1192 default CPU_R4X00
1193
Wu Zhangjin3702bba2009-07-02 23:27:41 +08001194config CPU_LOONGSON2E
1195 bool "Loongson 2E"
1196 depends on SYS_HAS_CPU_LOONGSON2E
1197 select CPU_LOONGSON2
Fuxin Zhang2a21c732007-06-06 14:52:43 +08001198 help
1199 The Loongson 2E processor implements the MIPS III instruction set
1200 with many extensions.
1201
Lucas De Marchi25985ed2011-03-30 22:57:33 -03001202 It has an internal FPGA northbridge, which is compatible to
Wu Zhangjin6f7a2512009-11-06 18:45:05 +08001203 bonito64.
1204
1205config CPU_LOONGSON2F
1206 bool "Loongson 2F"
1207 depends on SYS_HAS_CPU_LOONGSON2F
1208 select CPU_LOONGSON2
Arnaud Patardc197da92010-04-29 11:58:54 +02001209 select GENERIC_GPIO
1210 select ARCH_REQUIRE_GPIOLIB
Wu Zhangjin6f7a2512009-11-06 18:45:05 +08001211 help
1212 The Loongson 2F processor implements the MIPS III instruction set
1213 with many extensions.
1214
1215 Loongson2F have built-in DDR2 and PCIX controller. The PCIX controller
1216 have a similar programming interface with FPGA northbridge used in
1217 Loongson2E.
1218
Kelvin Cheungca585cf2012-07-25 16:17:24 +02001219config CPU_LOONGSON1B
1220 bool "Loongson 1B"
1221 depends on SYS_HAS_CPU_LOONGSON1B
1222 select CPU_LOONGSON1
1223 help
1224 The Loongson 1B is a 32-bit SoC, which implements the MIPS32
1225 release 2 instruction set.
1226
Ralf Baechle6e760c82005-07-06 12:08:11 +00001227config CPU_MIPS32_R1
1228 bool "MIPS32 Release 1"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001229 depends on SYS_HAS_CPU_MIPS32_R1
Ralf Baechle6e760c82005-07-06 12:08:11 +00001230 select CPU_HAS_PREFETCH
Ralf Baechle797798c2005-08-10 15:17:11 +00001231 select CPU_SUPPORTS_32BIT_KERNEL
Ralf Baechleec28f302006-03-05 00:45:33 +00001232 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle6e760c82005-07-06 12:08:11 +00001233 help
Ralf Baechle5e83d432005-10-29 19:32:41 +01001234 Choose this option to build a kernel for release 1 or later of the
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +00001235 MIPS32 architecture. Most modern embedded systems with a 32-bit
1236 MIPS processor are based on a MIPS32 processor. If you know the
1237 specific type of processor in your system, choose those that one
1238 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
1239 Release 2 of the MIPS32 architecture is available since several
1240 years so chances are you even have a MIPS32 Release 2 processor
1241 in which case you should choose CPU_MIPS32_R2 instead for better
1242 performance.
1243
1244config CPU_MIPS32_R2
1245 bool "MIPS32 Release 2"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001246 depends on SYS_HAS_CPU_MIPS32_R2
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +00001247 select CPU_HAS_PREFETCH
Ralf Baechle797798c2005-08-10 15:17:11 +00001248 select CPU_SUPPORTS_32BIT_KERNEL
Ralf Baechleec28f302006-03-05 00:45:33 +00001249 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +00001250 help
Ralf Baechle5e83d432005-10-29 19:32:41 +01001251 Choose this option to build a kernel for release 2 or later of the
Ralf Baechle6e760c82005-07-06 12:08:11 +00001252 MIPS32 architecture. Most modern embedded systems with a 32-bit
1253 MIPS processor are based on a MIPS32 processor. If you know the
1254 specific type of processor in your system, choose those that one
1255 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001256
Ralf Baechle6e760c82005-07-06 12:08:11 +00001257config CPU_MIPS64_R1
1258 bool "MIPS64 Release 1"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001259 depends on SYS_HAS_CPU_MIPS64_R1
Ralf Baechle797798c2005-08-10 15:17:11 +00001260 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001261 select CPU_SUPPORTS_32BIT_KERNEL
1262 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechleec28f302006-03-05 00:45:33 +00001263 select CPU_SUPPORTS_HIGHMEM
David Daney9cffd152009-05-27 17:47:46 -07001264 select CPU_SUPPORTS_HUGEPAGES
Ralf Baechle6e760c82005-07-06 12:08:11 +00001265 help
1266 Choose this option to build a kernel for release 1 or later of the
1267 MIPS64 architecture. Many modern embedded systems with a 64-bit
1268 MIPS processor are based on a MIPS64 processor. If you know the
1269 specific type of processor in your system, choose those that one
1270 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +00001271 Release 2 of the MIPS64 architecture is available since several
1272 years so chances are you even have a MIPS64 Release 2 processor
1273 in which case you should choose CPU_MIPS64_R2 instead for better
1274 performance.
1275
1276config CPU_MIPS64_R2
1277 bool "MIPS64 Release 2"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001278 depends on SYS_HAS_CPU_MIPS64_R2
Ralf Baechle797798c2005-08-10 15:17:11 +00001279 select CPU_HAS_PREFETCH
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +00001280 select CPU_SUPPORTS_32BIT_KERNEL
1281 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechleec28f302006-03-05 00:45:33 +00001282 select CPU_SUPPORTS_HIGHMEM
David Daney9cffd152009-05-27 17:47:46 -07001283 select CPU_SUPPORTS_HUGEPAGES
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +00001284 help
1285 Choose this option to build a kernel for release 2 or later of the
1286 MIPS64 architecture. Many modern embedded systems with a 64-bit
1287 MIPS processor are based on a MIPS64 processor. If you know the
1288 specific type of processor in your system, choose those that one
1289 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001290
1291config CPU_R3000
1292 bool "R3000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001293 depends on SYS_HAS_CPU_R3000
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001294 select CPU_HAS_WB
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001295 select CPU_SUPPORTS_32BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +00001296 select CPU_SUPPORTS_HIGHMEM
Linus Torvalds1da177e2005-04-16 15:20:36 -07001297 help
1298 Please make sure to pick the right CPU type. Linux/MIPS is not
1299 designed to be generic, i.e. Kernels compiled for R3000 CPUs will
1300 *not* work on R4000 machines and vice versa. However, since most
1301 of the supported machines have an R4000 (or similar) CPU, R4x00
1302 might be a safe bet. If the resulting kernel does not work,
1303 try to recompile with R3000.
1304
1305config CPU_TX39XX
1306 bool "R39XX"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001307 depends on SYS_HAS_CPU_TX39XX
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001308 select CPU_SUPPORTS_32BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001309
1310config CPU_VR41XX
1311 bool "R41xx"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001312 depends on SYS_HAS_CPU_VR41XX
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001313 select CPU_SUPPORTS_32BIT_KERNEL
1314 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001315 help
Ralf Baechle5e83d432005-10-29 19:32:41 +01001316 The options selects support for the NEC VR4100 series of processors.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001317 Only choose this option if you have one of these processors as a
1318 kernel built with this option will not run on any other type of
1319 processor or vice versa.
1320
1321config CPU_R4300
1322 bool "R4300"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001323 depends on SYS_HAS_CPU_R4300
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001324 select CPU_SUPPORTS_32BIT_KERNEL
1325 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001326 help
1327 MIPS Technologies R4300-series processors.
1328
1329config CPU_R4X00
1330 bool "R4x00"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001331 depends on SYS_HAS_CPU_R4X00
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001332 select CPU_SUPPORTS_32BIT_KERNEL
1333 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle970d0322012-10-18 13:54:15 +02001334 select CPU_SUPPORTS_HUGEPAGES
Linus Torvalds1da177e2005-04-16 15:20:36 -07001335 help
1336 MIPS Technologies R4000-series processors other than 4300, including
1337 the R4000, R4400, R4600, and 4700.
1338
1339config CPU_TX49XX
1340 bool "R49XX"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001341 depends on SYS_HAS_CPU_TX49XX
Atsushi Nemotode862b42006-03-17 12:59:22 +09001342 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001343 select CPU_SUPPORTS_32BIT_KERNEL
1344 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle970d0322012-10-18 13:54:15 +02001345 select CPU_SUPPORTS_HUGEPAGES
Linus Torvalds1da177e2005-04-16 15:20:36 -07001346
1347config CPU_R5000
1348 bool "R5000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001349 depends on SYS_HAS_CPU_R5000
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001350 select CPU_SUPPORTS_32BIT_KERNEL
1351 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle970d0322012-10-18 13:54:15 +02001352 select CPU_SUPPORTS_HUGEPAGES
Linus Torvalds1da177e2005-04-16 15:20:36 -07001353 help
1354 MIPS Technologies R5000-series processors other than the Nevada.
1355
1356config CPU_R5432
1357 bool "R5432"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001358 depends on SYS_HAS_CPU_R5432
Ralf Baechle5e83d432005-10-29 19:32:41 +01001359 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
Shinya Kuribayashi542c1022008-10-24 01:27:57 +09001363config CPU_R5500
1364 bool "R5500"
1365 depends on SYS_HAS_CPU_R5500
Shinya Kuribayashi542c1022008-10-24 01:27:57 +09001366 select CPU_SUPPORTS_32BIT_KERNEL
1367 select CPU_SUPPORTS_64BIT_KERNEL
David Daney9cffd152009-05-27 17:47:46 -07001368 select CPU_SUPPORTS_HUGEPAGES
Shinya Kuribayashi542c1022008-10-24 01:27:57 +09001369 help
1370 NEC VR5500 and VR5500A series processors implement 64-bit MIPS IV
1371 instruction set.
1372
Linus Torvalds1da177e2005-04-16 15:20:36 -07001373config CPU_R6000
1374 bool "R6000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001375 depends on SYS_HAS_CPU_R6000
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001376 select CPU_SUPPORTS_32BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001377 help
1378 MIPS Technologies R6000 and R6000A series processors. Note these
Chris Dearmanc09b47d2006-06-20 17:15:20 +01001379 processors are extremely rare and the support for them is incomplete.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001380
1381config CPU_NEVADA
1382 bool "RM52xx"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001383 depends on SYS_HAS_CPU_NEVADA
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001384 select CPU_SUPPORTS_32BIT_KERNEL
1385 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle970d0322012-10-18 13:54:15 +02001386 select CPU_SUPPORTS_HUGEPAGES
Linus Torvalds1da177e2005-04-16 15:20:36 -07001387 help
1388 QED / PMC-Sierra RM52xx-series ("Nevada") processors.
1389
1390config CPU_R8000
1391 bool "R8000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001392 depends on SYS_HAS_CPU_R8000
Ralf Baechle5e83d432005-10-29 19:32:41 +01001393 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001394 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001395 help
1396 MIPS Technologies R8000 processors. Note these processors are
1397 uncommon and the support for them is incomplete.
1398
1399config CPU_R10000
1400 bool "R10000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001401 depends on SYS_HAS_CPU_R10000
Ralf Baechle5e83d432005-10-29 19:32:41 +01001402 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001403 select CPU_SUPPORTS_32BIT_KERNEL
1404 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +00001405 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle970d0322012-10-18 13:54:15 +02001406 select CPU_SUPPORTS_HUGEPAGES
Linus Torvalds1da177e2005-04-16 15:20:36 -07001407 help
1408 MIPS Technologies R10000-series processors.
1409
1410config CPU_RM7000
1411 bool "RM7000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001412 depends on SYS_HAS_CPU_RM7000
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
1419config CPU_SB1
1420 bool "SB1"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001421 depends on SYS_HAS_CPU_SB1
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001422 select CPU_SUPPORTS_32BIT_KERNEL
1423 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +00001424 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle970d0322012-10-18 13:54:15 +02001425 select CPU_SUPPORTS_HUGEPAGES
Ralf Baechle0004a9d2006-10-31 03:45:07 +00001426 select WEAK_ORDERING
Linus Torvalds1da177e2005-04-16 15:20:36 -07001427
David Daneya86c7f72008-12-11 15:33:38 -08001428config CPU_CAVIUM_OCTEON
1429 bool "Cavium Octeon processor"
David Daney5e683382009-02-02 11:30:59 -08001430 depends on SYS_HAS_CPU_CAVIUM_OCTEON
Yoichi Yuasa7ee91de2012-07-19 09:11:15 +02001431 select ARCH_SPARSEMEM_ENABLE
David Daneya86c7f72008-12-11 15:33:38 -08001432 select CPU_HAS_PREFETCH
1433 select CPU_SUPPORTS_64BIT_KERNEL
1434 select SYS_SUPPORTS_SMP
1435 select NR_CPUS_DEFAULT_16
1436 select WEAK_ORDERING
David Daneya86c7f72008-12-11 15:33:38 -08001437 select CPU_SUPPORTS_HIGHMEM
David Daney9cffd152009-05-27 17:47:46 -07001438 select CPU_SUPPORTS_HUGEPAGES
David Daney7ed18152012-07-05 18:12:38 +02001439 select LIBFDT
1440 select USE_OF
David Daneya86c7f72008-12-11 15:33:38 -08001441 help
1442 The Cavium Octeon processor is a highly integrated chip containing
1443 many ethernet hardware widgets for networking tasks. The processor
1444 can have up to 16 Mips64v2 cores and 8 integrated gigabit ethernets.
1445 Full details can be found at http://www.caviumnetworks.com.
1446
Kevin Cernekeec1c0c462010-10-17 10:56:53 -07001447config CPU_BMIPS3300
1448 bool "BMIPS3300"
1449 depends on SYS_HAS_CPU_BMIPS3300
Kevin Cernekee1bbb6c12011-11-10 22:30:24 -08001450 select CPU_BMIPS
Kevin Cernekeec1c0c462010-10-17 10:56:53 -07001451 help
1452 Broadcom BMIPS3300 processors.
1453
1454config CPU_BMIPS4350
1455 bool "BMIPS4350"
1456 depends on SYS_HAS_CPU_BMIPS4350
Kevin Cernekee1bbb6c12011-11-10 22:30:24 -08001457 select CPU_BMIPS
Kevin Cernekeec1c0c462010-10-17 10:56:53 -07001458 select SYS_SUPPORTS_SMP
1459 select SYS_SUPPORTS_HOTPLUG_CPU
Kevin Cernekeec1c0c462010-10-17 10:56:53 -07001460 help
1461 Broadcom BMIPS4350 ("VIPER") processors.
1462
1463config CPU_BMIPS4380
1464 bool "BMIPS4380"
1465 depends on SYS_HAS_CPU_BMIPS4380
Kevin Cernekee1bbb6c12011-11-10 22:30:24 -08001466 select CPU_BMIPS
Kevin Cernekeec1c0c462010-10-17 10:56:53 -07001467 select SYS_SUPPORTS_SMP
1468 select SYS_SUPPORTS_HOTPLUG_CPU
Kevin Cernekeec1c0c462010-10-17 10:56:53 -07001469 help
1470 Broadcom BMIPS4380 processors.
1471
1472config CPU_BMIPS5000
1473 bool "BMIPS5000"
1474 depends on SYS_HAS_CPU_BMIPS5000
Kevin Cernekee1bbb6c12011-11-10 22:30:24 -08001475 select CPU_BMIPS
Kevin Cernekeec1c0c462010-10-17 10:56:53 -07001476 select CPU_SUPPORTS_HIGHMEM
Kevin Cernekee1bbb6c12011-11-10 22:30:24 -08001477 select MIPS_CPU_SCACHE
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 BMIPS5000 processors.
1482
Jayachandran C7f058e82011-05-07 01:36:57 +05301483config CPU_XLR
1484 bool "Netlogic XLR SoC"
1485 depends on SYS_HAS_CPU_XLR
1486 select CPU_SUPPORTS_32BIT_KERNEL
1487 select CPU_SUPPORTS_64BIT_KERNEL
1488 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle970d0322012-10-18 13:54:15 +02001489 select CPU_SUPPORTS_HUGEPAGES
Jayachandran C7f058e82011-05-07 01:36:57 +05301490 select WEAK_ORDERING
1491 select WEAK_REORDERING_BEYOND_LLSC
Jayachandran C7f058e82011-05-07 01:36:57 +05301492 help
1493 Netlogic Microsystems XLR/XLS processors.
Jayachandran C1c773ea2011-11-16 00:21:28 +00001494
1495config CPU_XLP
1496 bool "Netlogic XLP SoC"
1497 depends on SYS_HAS_CPU_XLP
1498 select CPU_SUPPORTS_32BIT_KERNEL
1499 select CPU_SUPPORTS_64BIT_KERNEL
1500 select CPU_SUPPORTS_HIGHMEM
Jayachandran C1c773ea2011-11-16 00:21:28 +00001501 select WEAK_ORDERING
1502 select WEAK_REORDERING_BEYOND_LLSC
1503 select CPU_HAS_PREFETCH
Jayachandran Cd6504842012-10-31 12:01:29 +00001504 select CPU_MIPSR2
Jayachandran C1c773ea2011-11-16 00:21:28 +00001505 help
1506 Netlogic Microsystems XLP processors.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001507endchoice
1508
Wu Zhangjin622844b2010-04-10 20:04:42 +08001509if CPU_LOONGSON2F
1510config CPU_NOP_WORKAROUNDS
1511 bool
1512
1513config CPU_JUMP_WORKAROUNDS
1514 bool
1515
1516config CPU_LOONGSON2F_WORKAROUNDS
1517 bool "Loongson 2F Workarounds"
1518 default y
1519 select CPU_NOP_WORKAROUNDS
1520 select CPU_JUMP_WORKAROUNDS
1521 help
1522 Loongson 2F01 / 2F02 processors have the NOP & JUMP issues which
1523 require workarounds. Without workarounds the system may hang
1524 unexpectedly. For more information please refer to the gas
1525 -mfix-loongson2f-nop and -mfix-loongson2f-jump options.
1526
1527 Loongson 2F03 and later have fixed these issues and no workarounds
1528 are needed. The workarounds have no significant side effect on them
1529 but may decrease the performance of the system so this option should
1530 be disabled unless the kernel is intended to be run on 2F01 or 2F02
1531 systems.
1532
1533 If unsure, please say Y.
1534endif # CPU_LOONGSON2F
1535
Wu Zhangjin1b93b3c2009-10-14 18:12:16 +08001536config SYS_SUPPORTS_ZBOOT
1537 bool
1538 select HAVE_KERNEL_GZIP
1539 select HAVE_KERNEL_BZIP2
1540 select HAVE_KERNEL_LZMA
Wu Zhangjinfe1d45e2010-01-15 20:34:46 +08001541 select HAVE_KERNEL_LZO
Wu Zhangjin1b93b3c2009-10-14 18:12:16 +08001542
1543config SYS_SUPPORTS_ZBOOT_UART16550
1544 bool
1545 select SYS_SUPPORTS_ZBOOT
1546
Wu Zhangjin3702bba2009-07-02 23:27:41 +08001547config CPU_LOONGSON2
1548 bool
1549 select CPU_SUPPORTS_32BIT_KERNEL
1550 select CPU_SUPPORTS_64BIT_KERNEL
1551 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle970d0322012-10-18 13:54:15 +02001552 select CPU_SUPPORTS_HUGEPAGES
Wu Zhangjin3702bba2009-07-02 23:27:41 +08001553
Kelvin Cheungca585cf2012-07-25 16:17:24 +02001554config CPU_LOONGSON1
1555 bool
1556 select CPU_MIPS32
1557 select CPU_MIPSR2
1558 select CPU_HAS_PREFETCH
1559 select CPU_SUPPORTS_32BIT_KERNEL
1560 select CPU_SUPPORTS_HIGHMEM
1561
Kevin Cernekee1bbb6c12011-11-10 22:30:24 -08001562config CPU_BMIPS
1563 bool
1564 select CPU_MIPS32
1565 select CPU_SUPPORTS_32BIT_KERNEL
1566 select DMA_NONCOHERENT
1567 select IRQ_CPU
1568 select SWAP_IO_SPACE
1569 select WEAK_ORDERING
1570
Wu Zhangjin3702bba2009-07-02 23:27:41 +08001571config SYS_HAS_CPU_LOONGSON2E
Fuxin Zhang2a21c732007-06-06 14:52:43 +08001572 bool
1573
Wu Zhangjin6f7a2512009-11-06 18:45:05 +08001574config SYS_HAS_CPU_LOONGSON2F
1575 bool
Wu Zhangjin55045ff2009-11-11 13:39:12 +08001576 select CPU_SUPPORTS_CPUFREQ
1577 select CPU_SUPPORTS_ADDRWINCFG if 64BIT
Wu Zhangjin22f1fdf2009-11-11 13:59:23 +08001578 select CPU_SUPPORTS_UNCACHED_ACCELERATED
Wu Zhangjin6f7a2512009-11-06 18:45:05 +08001579
Kelvin Cheungca585cf2012-07-25 16:17:24 +02001580config SYS_HAS_CPU_LOONGSON1B
1581 bool
1582
Ralf Baechle7cf80532005-10-20 22:33:09 +01001583config SYS_HAS_CPU_MIPS32_R1
1584 bool
1585
1586config SYS_HAS_CPU_MIPS32_R2
1587 bool
1588
1589config SYS_HAS_CPU_MIPS64_R1
1590 bool
1591
1592config SYS_HAS_CPU_MIPS64_R2
1593 bool
1594
1595config SYS_HAS_CPU_R3000
1596 bool
1597
1598config SYS_HAS_CPU_TX39XX
1599 bool
1600
1601config SYS_HAS_CPU_VR41XX
1602 bool
1603
1604config SYS_HAS_CPU_R4300
1605 bool
1606
1607config SYS_HAS_CPU_R4X00
1608 bool
1609
1610config SYS_HAS_CPU_TX49XX
1611 bool
1612
1613config SYS_HAS_CPU_R5000
1614 bool
1615
1616config SYS_HAS_CPU_R5432
1617 bool
1618
Shinya Kuribayashi542c1022008-10-24 01:27:57 +09001619config SYS_HAS_CPU_R5500
1620 bool
1621
Ralf Baechle7cf80532005-10-20 22:33:09 +01001622config SYS_HAS_CPU_R6000
1623 bool
1624
1625config SYS_HAS_CPU_NEVADA
1626 bool
1627
1628config SYS_HAS_CPU_R8000
1629 bool
1630
1631config SYS_HAS_CPU_R10000
1632 bool
1633
1634config SYS_HAS_CPU_RM7000
1635 bool
1636
Ralf Baechle7cf80532005-10-20 22:33:09 +01001637config SYS_HAS_CPU_SB1
1638 bool
1639
David Daney5e683382009-02-02 11:30:59 -08001640config SYS_HAS_CPU_CAVIUM_OCTEON
1641 bool
1642
Kevin Cernekeec1c0c462010-10-17 10:56:53 -07001643config SYS_HAS_CPU_BMIPS3300
1644 bool
1645
1646config SYS_HAS_CPU_BMIPS4350
1647 bool
1648
1649config SYS_HAS_CPU_BMIPS4380
1650 bool
1651
1652config SYS_HAS_CPU_BMIPS5000
1653 bool
1654
Jayachandran C7f058e82011-05-07 01:36:57 +05301655config SYS_HAS_CPU_XLR
1656 bool
1657
Jayachandran C1c773ea2011-11-16 00:21:28 +00001658config SYS_HAS_CPU_XLP
1659 bool
1660
Ralf Baechle17099b12007-07-14 13:24:05 +01001661#
1662# CPU may reorder R->R, R->W, W->R, W->W
1663# Reordering beyond LL and SC is handled in WEAK_REORDERING_BEYOND_LLSC
1664#
Ralf Baechle0004a9d2006-10-31 03:45:07 +00001665config WEAK_ORDERING
1666 bool
Ralf Baechle17099b12007-07-14 13:24:05 +01001667
1668#
1669# CPU may reorder reads and writes beyond LL/SC
1670# CPU may reorder R->LL, R->LL, W->LL, W->LL, R->SC, R->SC, W->SC, W->SC
1671#
1672config WEAK_REORDERING_BEYOND_LLSC
1673 bool
Ralf Baechle5e83d432005-10-29 19:32:41 +01001674endmenu
1675
1676#
Chris Dearmanc09b47d2006-06-20 17:15:20 +01001677# These two indicate any level of the MIPS32 and MIPS64 architecture
Ralf Baechle5e83d432005-10-29 19:32:41 +01001678#
1679config CPU_MIPS32
1680 bool
1681 default y if CPU_MIPS32_R1 || CPU_MIPS32_R2
1682
1683config CPU_MIPS64
1684 bool
1685 default y if CPU_MIPS64_R1 || CPU_MIPS64_R2
1686
1687#
Chris Dearmanc09b47d2006-06-20 17:15:20 +01001688# These two indicate the revision of the architecture, either Release 1 or Release 2
Ralf Baechle5e83d432005-10-29 19:32:41 +01001689#
1690config CPU_MIPSR1
1691 bool
1692 default y if CPU_MIPS32_R1 || CPU_MIPS64_R1
1693
1694config CPU_MIPSR2
1695 bool
David Daneya86c7f72008-12-11 15:33:38 -08001696 default y if CPU_MIPS32_R2 || CPU_MIPS64_R2 || CPU_CAVIUM_OCTEON
Ralf Baechle5e83d432005-10-29 19:32:41 +01001697
1698config SYS_SUPPORTS_32BIT_KERNEL
1699 bool
1700config SYS_SUPPORTS_64BIT_KERNEL
1701 bool
1702config CPU_SUPPORTS_32BIT_KERNEL
1703 bool
1704config CPU_SUPPORTS_64BIT_KERNEL
1705 bool
Wu Zhangjin55045ff2009-11-11 13:39:12 +08001706config CPU_SUPPORTS_CPUFREQ
1707 bool
1708config CPU_SUPPORTS_ADDRWINCFG
1709 bool
David Daney9cffd152009-05-27 17:47:46 -07001710config CPU_SUPPORTS_HUGEPAGES
1711 bool
Wu Zhangjin22f1fdf2009-11-11 13:59:23 +08001712config CPU_SUPPORTS_UNCACHED_ACCELERATED
1713 bool
David Daney826222842009-10-14 12:16:56 -07001714config MIPS_PGD_C0_CONTEXT
1715 bool
Jayachandran Cd6504842012-10-31 12:01:29 +00001716 default y if 64BIT && CPU_MIPSR2 && !CPU_XLP
Ralf Baechle5e83d432005-10-29 19:32:41 +01001717
David Daney8192c9e2008-09-23 00:04:26 -07001718#
1719# Set to y for ptrace access to watch registers.
1720#
1721config HARDWARE_WATCHPOINTS
1722 bool
David Daneyf8394902009-01-05 15:29:14 -08001723 default y if CPU_MIPSR1 || CPU_MIPSR2
David Daney8192c9e2008-09-23 00:04:26 -07001724
Ralf Baechle5e83d432005-10-29 19:32:41 +01001725menu "Kernel type"
1726
1727choice
Ralf Baechle5e83d432005-10-29 19:32:41 +01001728 prompt "Kernel code model"
1729 help
1730 You should only select this option if you have a workload that
1731 actually benefits from 64-bit processing or if your machine has
1732 large memory. You will only be presented a single option in this
1733 menu if your system does not support both 32-bit and 64-bit kernels.
1734
1735config 32BIT
1736 bool "32-bit kernel"
1737 depends on CPU_SUPPORTS_32BIT_KERNEL && SYS_SUPPORTS_32BIT_KERNEL
1738 select TRAD_SIGNALS
1739 help
1740 Select this option if you want to build a 32-bit kernel.
1741config 64BIT
1742 bool "64-bit kernel"
1743 depends on CPU_SUPPORTS_64BIT_KERNEL && SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechledbda6ac2009-02-08 16:00:26 +00001744 select HAVE_SYSCALL_WRAPPERS
Ralf Baechle5e83d432005-10-29 19:32:41 +01001745 help
1746 Select this option if you want to build a 64-bit kernel.
1747
1748endchoice
1749
Linus Torvalds1da177e2005-04-16 15:20:36 -07001750choice
1751 prompt "Kernel page size"
1752 default PAGE_SIZE_4KB
1753
1754config PAGE_SIZE_4KB
1755 bool "4kB"
Wu Zhangjin315fe622009-12-01 14:55:25 +08001756 depends on !CPU_LOONGSON2
Linus Torvalds1da177e2005-04-16 15:20:36 -07001757 help
1758 This option select the standard 4kB Linux page size. On some
1759 R3000-family processors this is the only available page size. Using
1760 4kB page size will minimize memory consumption and is therefore
1761 recommended for low memory systems.
1762
1763config PAGE_SIZE_8KB
1764 bool "8kB"
Kees Cook7d607172013-01-16 18:53:19 -08001765 depends on CPU_R8000 || CPU_CAVIUM_OCTEON
Linus Torvalds1da177e2005-04-16 15:20:36 -07001766 help
1767 Using 8kB page size will result in higher performance kernel at
1768 the price of higher memory consumption. This option is available
Ralf Baechlec52399b2009-04-02 14:07:10 +02001769 only on R8000 and cnMIPS processors. Note that you will need a
1770 suitable Linux distribution to support this.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001771
1772config PAGE_SIZE_16KB
1773 bool "16kB"
Ralf Baechle714bfad2006-05-17 14:04:30 +01001774 depends on !CPU_R3000 && !CPU_TX39XX
Linus Torvalds1da177e2005-04-16 15:20:36 -07001775 help
1776 Using 16kB page size will result in higher performance kernel at
1777 the price of higher memory consumption. This option is available on
Ralf Baechle714bfad2006-05-17 14:04:30 +01001778 all non-R3000 family processors. Note that you will need a suitable
1779 Linux distribution to support this.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001780
Ralf Baechlec52399b2009-04-02 14:07:10 +02001781config PAGE_SIZE_32KB
1782 bool "32kB"
1783 depends on CPU_CAVIUM_OCTEON
1784 help
1785 Using 32kB page size will result in higher performance kernel at
1786 the price of higher memory consumption. This option is available
1787 only on cnMIPS cores. Note that you will need a suitable Linux
1788 distribution to support this.
1789
Linus Torvalds1da177e2005-04-16 15:20:36 -07001790config PAGE_SIZE_64KB
1791 bool "64kB"
Kees Cook7d607172013-01-16 18:53:19 -08001792 depends on !CPU_R3000 && !CPU_TX39XX
Linus Torvalds1da177e2005-04-16 15:20:36 -07001793 help
1794 Using 64kB page size will result in higher performance kernel at
1795 the price of higher memory consumption. This option is available on
1796 all non-R3000 family processor. Not that at the time of this
Ralf Baechle714bfad2006-05-17 14:04:30 +01001797 writing this option is still high experimental.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001798
1799endchoice
1800
David Daneyc9bace72010-10-11 14:52:45 -07001801config FORCE_MAX_ZONEORDER
1802 int "Maximum zone order"
David Daney85f993b2012-05-04 11:09:35 -07001803 range 14 64 if HUGETLB_PAGE && PAGE_SIZE_64KB
1804 default "14" if HUGETLB_PAGE && PAGE_SIZE_64KB
1805 range 13 64 if HUGETLB_PAGE && PAGE_SIZE_32KB
1806 default "13" if HUGETLB_PAGE && PAGE_SIZE_32KB
1807 range 12 64 if HUGETLB_PAGE && PAGE_SIZE_16KB
1808 default "12" if HUGETLB_PAGE && PAGE_SIZE_16KB
David Daneyc9bace72010-10-11 14:52:45 -07001809 range 11 64
1810 default "11"
1811 help
1812 The kernel memory allocator divides physically contiguous memory
1813 blocks into "zones", where each zone is a power of two number of
1814 pages. This option selects the largest power of two that the kernel
1815 keeps in the memory allocator. If you need to allocate very large
1816 blocks of physically contiguous memory, then you may need to
1817 increase this value.
1818
1819 This config option is actually maximum order plus one. For example,
1820 a value of 11 means that the largest free memory block is 2^10 pages.
1821
1822 The page size is not necessarily 4KB. Keep this in mind
1823 when choosing a value for this option.
1824
Raghu Gandham0ab2b7d2013-04-10 16:30:12 -05001825config CEVT_GIC
1826 bool "Use GIC global counter for clock events"
1827 depends on IRQ_GIC && !(MIPS_SEAD3 || MIPS_MT_SMTC)
1828 help
1829 Use the GIC global counter for the clock events. The R4K clock
1830 event driver is always present, so if the platform ends up not
1831 detecting a GIC, it will fall back to the R4K timer for the
1832 generation of clock events.
1833
Linus Torvalds1da177e2005-04-16 15:20:36 -07001834config BOARD_SCACHE
1835 bool
1836
1837config IP22_CPU_SCACHE
1838 bool
1839 select BOARD_SCACHE
1840
Chris Dearman9318c512006-06-20 17:15:20 +01001841#
1842# Support for a MIPS32 / MIPS64 style S-caches
1843#
1844config MIPS_CPU_SCACHE
1845 bool
1846 select BOARD_SCACHE
1847
Linus Torvalds1da177e2005-04-16 15:20:36 -07001848config R5000_CPU_SCACHE
1849 bool
1850 select BOARD_SCACHE
1851
1852config RM7000_CPU_SCACHE
1853 bool
1854 select BOARD_SCACHE
1855
1856config SIBYTE_DMA_PAGEOPS
1857 bool "Use DMA to clear/copy pages"
1858 depends on CPU_SB1
1859 help
1860 Instead of using the CPU to zero and copy pages, use a Data Mover
1861 channel. These DMA channels are otherwise unused by the standard
1862 SiByte Linux port. Seems to give a small performance benefit.
1863
1864config CPU_HAS_PREFETCH
Ralf Baechlec8094b52005-08-05 14:28:54 +00001865 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001866
Florian Fainelli3165c842012-01-31 18:18:43 +01001867config CPU_GENERIC_DUMP_TLB
1868 bool
1869 default y if !(CPU_R3000 || CPU_R6000 || CPU_R8000 || CPU_TX39XX)
1870
Florian Fainelli91405eb2012-01-31 18:18:44 +01001871config CPU_R4K_FPU
1872 bool
1873 default y if !(CPU_R3000 || CPU_R6000 || CPU_TX39XX || CPU_CAVIUM_OCTEON)
1874
Florian Fainelli62cedc42012-01-31 18:18:45 +01001875config CPU_R4K_CACHE_TLB
1876 bool
1877 default y if !(CPU_R3000 || CPU_R8000 || CPU_SB1 || CPU_TX39XX || CPU_CAVIUM_OCTEON)
1878
Ralf Baechle340ee4b2005-08-17 17:44:08 +00001879choice
1880 prompt "MIPS MT options"
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001881
1882config MIPS_MT_DISABLED
1883 bool "Disable multithreading support."
1884 help
1885 Use this option if your workload can't take advantage of
1886 MIPS hardware multithreading support. On systems that don't have
1887 the option of an MT-enabled processor this option will be the only
1888 option in this menu.
Ralf Baechle340ee4b2005-08-17 17:44:08 +00001889
Ralf Baechle59d6ab82006-10-06 17:36:20 +01001890config MIPS_MT_SMP
1891 bool "Use 1 TC on each available VPE for SMP"
1892 depends on SYS_SUPPORTS_MULTITHREADING
1893 select CPU_MIPSR2_IRQ_VI
Chris Dearmand725cf32007-05-08 14:05:39 +01001894 select CPU_MIPSR2_IRQ_EI
Ralf Baechle59d6ab82006-10-06 17:36:20 +01001895 select MIPS_MT
Ralf Baechlef510aa32007-03-16 21:58:37 +00001896 select NR_CPUS_DEFAULT_2
Ralf Baechle59d6ab82006-10-06 17:36:20 +01001897 select SMP
Ralf Baechle0ab7aef2007-03-02 20:42:04 +00001898 select SYS_SUPPORTS_SCHED_SMT if SMP
Ralf Baechle59d6ab82006-10-06 17:36:20 +01001899 select SYS_SUPPORTS_SMP
Ralf Baechle87353d82007-11-19 12:23:51 +00001900 select SMP_UP
Al Cooper399aaa22012-07-13 16:44:53 -04001901 select MIPS_PERF_SHARED_TC_COUNTERS
Ralf Baechle59d6ab82006-10-06 17:36:20 +01001902 help
Ralf Baechle25f12b32010-09-16 11:40:41 +01001903 This is a kernel model which is known a VSMP but lately has been
1904 marketesed into SMVP.
1905 Virtual SMP uses the processor's VPEs to implement virtual
1906 processors. In currently available configuration of the 34K processor
1907 this allows for a dual processor. Both processors will share the same
1908 primary caches; each will obtain the half of the TLB for it's own
1909 exclusive use. For a layman this model can be described as similar to
1910 what Intel calls Hyperthreading.
1911
1912 For further information see http://www.linux-mips.org/wiki/34K#VSMP
Ralf Baechle59d6ab82006-10-06 17:36:20 +01001913
Ralf Baechle41c594a2006-04-05 09:45:45 +01001914config MIPS_MT_SMTC
1915 bool "SMTC: Use all TCs on all VPEs for SMP"
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001916 depends on CPU_MIPS32_R2
1917 #depends on CPU_MIPS64_R2 # once there is hardware ...
1918 depends on SYS_SUPPORTS_MULTITHREADING
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001919 select CPU_MIPSR2_IRQ_VI
Chris Dearmand725cf32007-05-08 14:05:39 +01001920 select CPU_MIPSR2_IRQ_EI
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001921 select MIPS_MT
Ralf Baechle130e2fb2007-02-06 16:53:15 +00001922 select NR_CPUS_DEFAULT_8
Ralf Baechle41c594a2006-04-05 09:45:45 +01001923 select SMP
Ralf Baechle73b76c72006-08-15 19:36:40 +01001924 select SYS_SUPPORTS_SMP
Ralf Baechle87353d82007-11-19 12:23:51 +00001925 select SMP_UP
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001926 help
1927 This is a kernel model which is known a SMTC or lately has been
1928 marketesed into SMVP.
Ralf Baechle25f12b32010-09-16 11:40:41 +01001929 is presenting the available TC's of the core as processors to Linux.
1930 On currently available 34K processors this means a Linux system will
1931 see up to 5 processors. The implementation of the SMTC kernel differs
1932 significantly from VSMP and cannot efficiently coexist in the same
1933 kernel binary so the choice between VSMP and SMTC is a compile time
1934 decision.
1935
1936 For further information see http://www.linux-mips.org/wiki/34K#SMTC
Ralf Baechle41c594a2006-04-05 09:45:45 +01001937
Ralf Baechle340ee4b2005-08-17 17:44:08 +00001938endchoice
1939
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001940config MIPS_MT
1941 bool
1942
Ralf Baechle0ab7aef2007-03-02 20:42:04 +00001943config SCHED_SMT
1944 bool "SMT (multithreading) scheduler support"
1945 depends on SYS_SUPPORTS_SCHED_SMT
1946 default n
1947 help
1948 SMT scheduler support improves the CPU scheduler's decision making
1949 when dealing with MIPS MT enabled cores at a cost of slightly
1950 increased overhead in some places. If unsure say N here.
1951
1952config SYS_SUPPORTS_SCHED_SMT
1953 bool
1954
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001955config SYS_SUPPORTS_MULTITHREADING
1956 bool
1957
Ralf Baechlef088fc82006-04-05 09:45:47 +01001958config MIPS_MT_FPAFF
1959 bool "Dynamic FPU affinity for FP-intensive threads"
Ralf Baechlef088fc82006-04-05 09:45:47 +01001960 default y
Ralf Baechle07cc0c92007-07-27 19:31:10 +01001961 depends on MIPS_MT_SMP || MIPS_MT_SMTC
1962
1963config MIPS_VPE_LOADER
1964 bool "VPE loader support."
1965 depends on SYS_SUPPORTS_MULTITHREADING
1966 select CPU_MIPSR2_IRQ_VI
1967 select CPU_MIPSR2_IRQ_EI
Ralf Baechle07cc0c92007-07-27 19:31:10 +01001968 select MIPS_MT
1969 help
1970 Includes a loader for loading an elf relocatable object
1971 onto another VPE and running it.
Ralf Baechlef088fc82006-04-05 09:45:47 +01001972
Kevin D. Kissell0db34212007-07-12 16:21:08 +01001973config MIPS_MT_SMTC_IM_BACKSTOP
1974 bool "Use per-TC register bits as backstop for inhibited IM bits"
1975 depends on MIPS_MT_SMTC
Kevin D. Kissell8531a352008-09-09 21:48:52 +02001976 default n
Kevin D. Kissell0db34212007-07-12 16:21:08 +01001977 help
1978 To support multiple TC microthreads acting as "CPUs" within
1979 a VPE, VPE-wide interrupt mask bits must be specially manipulated
1980 during interrupt handling. To support legacy drivers and interrupt
1981 controller management code, SMTC has a "backstop" to track and
1982 if necessary restore the interrupt mask. This has some performance
Kevin D. Kissell8531a352008-09-09 21:48:52 +02001983 impact on interrupt service overhead.
Kevin D. Kissell0db34212007-07-12 16:21:08 +01001984
Kevin D. Kissellf571eff2007-08-03 19:38:03 +02001985config MIPS_MT_SMTC_IRQAFF
1986 bool "Support IRQ affinity API"
1987 depends on MIPS_MT_SMTC
1988 default n
1989 help
1990 Enables SMP IRQ affinity API (/proc/irq/*/smp_affinity, etc.)
1991 for SMTC Linux kernel. Requires platform support, of which
1992 an example can be found in the MIPS kernel i8259 and Malta
Kevin D. Kissell8531a352008-09-09 21:48:52 +02001993 platform code. Adds some overhead to interrupt dispatch, and
1994 should be used only if you know what you are doing.
Kevin D. Kissellf571eff2007-08-03 19:38:03 +02001995
Ralf Baechlee01402b2005-07-14 15:57:16 +00001996config MIPS_VPE_LOADER_TOM
1997 bool "Load VPE program into memory hidden from linux"
1998 depends on MIPS_VPE_LOADER
1999 default y
2000 help
2001 The loader can use memory that is present but has been hidden from
2002 Linux using the kernel command line option "mem=xxMB". It's up to
2003 you to ensure the amount you put in the option and the space your
2004 program requires is less or equal to the amount physically present.
2005
2006# this should possibly be in drivers/char, but it is rather cpu related. Hmmm
2007config MIPS_VPE_APSP_API
Ralf Baechle5e83d432005-10-29 19:32:41 +01002008 bool "Enable support for AP/SP API (RTLX)"
2009 depends on MIPS_VPE_LOADER
2010 help
Ralf Baechlee01402b2005-07-14 15:57:16 +00002011
Ralf Baechle4a16ff42008-10-04 00:06:29 +01002012config MIPS_CMP
2013 bool "MIPS CMP framework support"
2014 depends on SYS_SUPPORTS_MIPS_CMP
Tim Andersoneb9b5142009-06-17 16:40:34 -07002015 select SYNC_R4K
Ralf Baechle4a16ff42008-10-04 00:06:29 +01002016 select SYS_SUPPORTS_SMP
2017 select SYS_SUPPORTS_SCHED_SMT if SMP
2018 select WEAK_ORDERING
2019 default n
2020 help
2021 This is a placeholder option for the GCMP work. It will need to
2022 be handled differently...
2023
Linus Torvalds1da177e2005-04-16 15:20:36 -07002024config SB1_PASS_1_WORKAROUNDS
2025 bool
2026 depends on CPU_SB1_PASS_1
2027 default y
2028
2029config SB1_PASS_2_WORKAROUNDS
2030 bool
2031 depends on CPU_SB1 && (CPU_SB1_PASS_2_2 || CPU_SB1_PASS_2)
2032 default y
2033
2034config SB1_PASS_2_1_WORKAROUNDS
2035 bool
2036 depends on CPU_SB1 && CPU_SB1_PASS_2
2037 default y
2038
2039config 64BIT_PHYS_ADDR
Ralf Baechled806cb22007-08-02 00:36:08 +01002040 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07002041
pascal@pabr.org60ec6572010-01-03 13:39:12 +01002042config ARCH_PHYS_ADDR_T_64BIT
2043 def_bool 64BIT_PHYS_ADDR
2044
Franck Bui-Huu9693a852007-02-02 17:41:47 +01002045config CPU_HAS_SMARTMIPS
2046 depends on SYS_SUPPORTS_SMARTMIPS
2047 bool "Support for the SmartMIPS ASE"
2048 help
2049 SmartMIPS is a extension of the MIPS32 architecture aimed at
2050 increased security at both hardware and software level for
2051 smartcards. Enabling this option will allow proper use of the
2052 SmartMIPS instructions by Linux applications. However a kernel with
2053 this option will not work on a MIPS core without SmartMIPS core. If
2054 you don't know you probably don't have SmartMIPS and should say N
2055 here.
2056
Steven J. Hillbce86082013-03-25 13:27:11 -05002057config CPU_MICROMIPS
2058 depends on SYS_SUPPORTS_MICROMIPS
2059 bool "Build kernel using microMIPS ISA"
2060 help
2061 When this option is enabled the kernel will be built using the
2062 microMIPS ISA
2063
Linus Torvalds1da177e2005-04-16 15:20:36 -07002064config CPU_HAS_WB
Ralf Baechlef7062dd2006-04-24 14:58:53 +01002065 bool
Ralf Baechlee01402b2005-07-14 15:57:16 +00002066
Kevin Cernekeedf0ac8a2011-11-16 01:25:45 +00002067config XKS01
2068 bool
2069
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01002070#
2071# Vectored interrupt mode is an R2 feature
2072#
Ralf Baechlee01402b2005-07-14 15:57:16 +00002073config CPU_MIPSR2_IRQ_VI
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01002074 bool
Ralf Baechlee01402b2005-07-14 15:57:16 +00002075
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01002076#
2077# Extended interrupt mode is an R2 feature
2078#
Ralf Baechlee01402b2005-07-14 15:57:16 +00002079config CPU_MIPSR2_IRQ_EI
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01002080 bool
Ralf Baechlee01402b2005-07-14 15:57:16 +00002081
Linus Torvalds1da177e2005-04-16 15:20:36 -07002082config CPU_HAS_SYNC
2083 bool
2084 depends on !CPU_R3000
2085 default y
2086
2087#
Maciej W. Rozycki20d60d92007-10-23 12:43:11 +01002088# CPU non-features
2089#
2090config CPU_DADDI_WORKAROUNDS
2091 bool
2092
2093config CPU_R4000_WORKAROUNDS
2094 bool
2095 select CPU_R4400_WORKAROUNDS
2096
2097config CPU_R4400_WORKAROUNDS
2098 bool
2099
2100#
Linus Torvalds1da177e2005-04-16 15:20:36 -07002101# - Highmem only makes sense for the 32-bit kernel.
2102# - The current highmem code will only work properly on physically indexed
2103# caches such as R3000, SB1, R7000 or those that look like they're virtually
2104# indexed such as R4000/R4400 SC and MC versions or R10000. So for the
2105# moment we protect the user and offer the highmem option only on machines
2106# where it's known to be safe. This will not offer highmem on a few systems
2107# such as MIPS32 and MIPS64 CPUs which may have virtual and physically
2108# indexed CPUs but we're playing safe.
Ralf Baechle797798c2005-08-10 15:17:11 +00002109# - We use SYS_SUPPORTS_HIGHMEM to offer highmem only for systems where we
2110# know they might have memory configurations that could make use of highmem
2111# support.
Linus Torvalds1da177e2005-04-16 15:20:36 -07002112#
2113config HIGHMEM
2114 bool "High Memory Support"
Ralf Baechle797798c2005-08-10 15:17:11 +00002115 depends on 32BIT && CPU_SUPPORTS_HIGHMEM && SYS_SUPPORTS_HIGHMEM
2116
2117config CPU_SUPPORTS_HIGHMEM
2118 bool
2119
2120config SYS_SUPPORTS_HIGHMEM
2121 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07002122
Franck Bui-Huu9693a852007-02-02 17:41:47 +01002123config SYS_SUPPORTS_SMARTMIPS
2124 bool
2125
Steven J. Hilla6a48342013-02-05 16:52:02 -06002126config SYS_SUPPORTS_MICROMIPS
2127 bool
2128
Yoichi Yuasab4819b52005-06-25 14:54:31 -07002129config ARCH_FLATMEM_ENABLE
2130 def_bool y
Wu Zhangjinf133f222009-12-01 14:55:42 +08002131 depends on !NUMA && !CPU_LOONGSON2
Yoichi Yuasab4819b52005-06-25 14:54:31 -07002132
Ralf Baechled8cb4e12006-06-11 23:03:08 +01002133config ARCH_DISCONTIGMEM_ENABLE
2134 bool
2135 default y if SGI_IP27
2136 help
David Sterba3dde6ad2007-05-09 07:12:20 +02002137 Say Y to support efficient handling of discontiguous physical memory,
Ralf Baechled8cb4e12006-06-11 23:03:08 +01002138 for architectures which are either NUMA (Non-Uniform Memory Access)
2139 or have huge holes in the physical address space for other reasons.
2140 See <file:Documentation/vm/numa> for more.
2141
Atsushi Nemotob1c6cd42006-07-03 00:09:47 +09002142config ARCH_SPARSEMEM_ENABLE
2143 bool
Atsushi Nemoto7de58fa2006-07-05 01:22:44 +09002144 select SPARSEMEM_STATIC
Atsushi Nemoto31473742006-07-03 00:09:47 +09002145
Ralf Baechled8cb4e12006-06-11 23:03:08 +01002146config NUMA
2147 bool "NUMA Support"
2148 depends on SYS_SUPPORTS_NUMA
2149 help
2150 Say Y to compile the kernel to support NUMA (Non-Uniform Memory
2151 Access). This option improves performance on systems with more
2152 than two nodes; on two node systems it is generally better to
2153 leave it disabled; on single node systems disable this option
2154 disabled.
2155
2156config SYS_SUPPORTS_NUMA
2157 bool
2158
Yasunori Gotoc80d79d2006-04-10 22:53:53 -07002159config NODES_SHIFT
2160 int
2161 default "6"
2162 depends on NEED_MULTIPLE_NODES
2163
Deng-Cheng Zhu14f70012010-10-12 19:37:22 +08002164config HW_PERF_EVENTS
2165 bool "Enable hardware performance counter support for perf events"
Zi Shen Lim4be3d2f2012-10-31 12:01:28 +00002166 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 +08002167 default y
2168 help
2169 Enable hardware performance counter support for perf events. If
2170 disabled, perf events will use software events only.
2171
Yoichi Yuasab4819b52005-06-25 14:54:31 -07002172source "mm/Kconfig"
2173
Linus Torvalds1da177e2005-04-16 15:20:36 -07002174config SMP
2175 bool "Multi-Processing support"
Ralf Baechlee73ea272006-06-04 11:51:46 +01002176 depends on SYS_SUPPORTS_SMP
Jens Axboe2f304c02008-06-17 10:45:23 +02002177 select USE_GENERIC_SMP_HELPERS
Ralf Baechlee73ea272006-06-04 11:51:46 +01002178 help
Linus Torvalds1da177e2005-04-16 15:20:36 -07002179 This enables support for systems with more than one CPU. If you have
2180 a system with only one CPU, like most personal computers, say N. If
2181 you have a system with more than one CPU, say Y.
2182
2183 If you say N here, the kernel will run on single and multiprocessor
2184 machines, but will use only one CPU of a multiprocessor machine. If
2185 you say Y here, the kernel will run on many, but not all,
2186 singleprocessor machines. On a singleprocessor machine, the kernel
2187 will run faster if you say N here.
2188
2189 People using multiprocessor machines who say Y here should also say
2190 Y to "Enhanced Real Time Clock Support", below.
2191
Adrian Bunk03502fa2008-02-03 15:50:21 +02002192 See also the SMP-HOWTO available at
2193 <http://www.tldp.org/docs.html#howto>.
Linus Torvalds1da177e2005-04-16 15:20:36 -07002194
2195 If you don't know what to do here, say N.
2196
Ralf Baechle87353d82007-11-19 12:23:51 +00002197config SMP_UP
2198 bool
2199
Ralf Baechle4a16ff42008-10-04 00:06:29 +01002200config SYS_SUPPORTS_MIPS_CMP
2201 bool
2202
Ralf Baechlee73ea272006-06-04 11:51:46 +01002203config SYS_SUPPORTS_SMP
2204 bool
2205
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09002206config NR_CPUS_DEFAULT_1
2207 bool
2208
Ralf Baechle130e2fb2007-02-06 16:53:15 +00002209config NR_CPUS_DEFAULT_2
2210 bool
2211
2212config NR_CPUS_DEFAULT_4
2213 bool
2214
2215config NR_CPUS_DEFAULT_8
2216 bool
2217
2218config NR_CPUS_DEFAULT_16
2219 bool
2220
2221config NR_CPUS_DEFAULT_32
2222 bool
2223
2224config NR_CPUS_DEFAULT_64
2225 bool
2226
Linus Torvalds1da177e2005-04-16 15:20:36 -07002227config NR_CPUS
2228 int "Maximum number of CPUs (2-64)"
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09002229 range 1 64 if NR_CPUS_DEFAULT_1
Linus Torvalds1da177e2005-04-16 15:20:36 -07002230 depends on SMP
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09002231 default "1" if NR_CPUS_DEFAULT_1
Ralf Baechle130e2fb2007-02-06 16:53:15 +00002232 default "2" if NR_CPUS_DEFAULT_2
2233 default "4" if NR_CPUS_DEFAULT_4
2234 default "8" if NR_CPUS_DEFAULT_8
2235 default "16" if NR_CPUS_DEFAULT_16
2236 default "32" if NR_CPUS_DEFAULT_32
2237 default "64" if NR_CPUS_DEFAULT_64
Linus Torvalds1da177e2005-04-16 15:20:36 -07002238 help
2239 This allows you to specify the maximum number of CPUs which this
2240 kernel will support. The maximum supported value is 32 for 32-bit
2241 kernel and 64 for 64-bit kernels; the minimum value which makes
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09002242 sense is 1 for Qemu (useful only for kernel debugging purposes)
2243 and 2 for all others.
Linus Torvalds1da177e2005-04-16 15:20:36 -07002244
2245 This is purely to save memory - each supported CPU adds
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09002246 approximately eight kilobytes to the kernel image. For best
2247 performance should round up your number of processors to the next
2248 power of two.
Linus Torvalds1da177e2005-04-16 15:20:36 -07002249
Al Cooper399aaa22012-07-13 16:44:53 -04002250config MIPS_PERF_SHARED_TC_COUNTERS
2251 bool
2252
Atsushi Nemoto1723b4a2006-06-20 00:19:13 +09002253#
2254# Timer Interrupt Frequency Configuration
2255#
2256
2257choice
2258 prompt "Timer frequency"
2259 default HZ_250
2260 help
2261 Allows the configuration of the timer frequency.
2262
2263 config HZ_48
Ralf Baechle0f873582008-02-25 16:55:29 +00002264 bool "48 HZ" if SYS_SUPPORTS_48HZ || SYS_SUPPORTS_ARBIT_HZ
Atsushi Nemoto1723b4a2006-06-20 00:19:13 +09002265
2266 config HZ_100
2267 bool "100 HZ" if SYS_SUPPORTS_100HZ || SYS_SUPPORTS_ARBIT_HZ
2268
2269 config HZ_128
2270 bool "128 HZ" if SYS_SUPPORTS_128HZ || SYS_SUPPORTS_ARBIT_HZ
2271
2272 config HZ_250
2273 bool "250 HZ" if SYS_SUPPORTS_250HZ || SYS_SUPPORTS_ARBIT_HZ
2274
2275 config HZ_256
2276 bool "256 HZ" if SYS_SUPPORTS_256HZ || SYS_SUPPORTS_ARBIT_HZ
2277
2278 config HZ_1000
2279 bool "1000 HZ" if SYS_SUPPORTS_1000HZ || SYS_SUPPORTS_ARBIT_HZ
2280
2281 config HZ_1024
2282 bool "1024 HZ" if SYS_SUPPORTS_1024HZ || SYS_SUPPORTS_ARBIT_HZ
2283
2284endchoice
2285
2286config SYS_SUPPORTS_48HZ
2287 bool
2288
2289config SYS_SUPPORTS_100HZ
2290 bool
2291
2292config SYS_SUPPORTS_128HZ
2293 bool
2294
2295config SYS_SUPPORTS_250HZ
2296 bool
2297
2298config SYS_SUPPORTS_256HZ
2299 bool
2300
2301config SYS_SUPPORTS_1000HZ
2302 bool
2303
2304config SYS_SUPPORTS_1024HZ
2305 bool
2306
2307config SYS_SUPPORTS_ARBIT_HZ
2308 bool
2309 default y if !SYS_SUPPORTS_48HZ && !SYS_SUPPORTS_100HZ && \
2310 !SYS_SUPPORTS_128HZ && !SYS_SUPPORTS_250HZ && \
2311 !SYS_SUPPORTS_256HZ && !SYS_SUPPORTS_1000HZ && \
2312 !SYS_SUPPORTS_1024HZ
2313
2314config HZ
2315 int
2316 default 48 if HZ_48
2317 default 100 if HZ_100
2318 default 128 if HZ_128
2319 default 250 if HZ_250
2320 default 256 if HZ_256
2321 default 1000 if HZ_1000
2322 default 1024 if HZ_1024
2323
Ralf Baechlee80de852005-07-11 20:45:51 +00002324source "kernel/Kconfig.preempt"
Linus Torvalds1da177e2005-04-16 15:20:36 -07002325
Atsushi Nemotoea6e9422007-01-16 23:29:11 +09002326config KEXEC
Kees Cook7d607172013-01-16 18:53:19 -08002327 bool "Kexec system call"
Atsushi Nemotoea6e9422007-01-16 23:29:11 +09002328 help
2329 kexec is a system call that implements the ability to shutdown your
2330 current kernel, and to start another kernel. It is like a reboot
David Sterba3dde6ad2007-05-09 07:12:20 +02002331 but it is independent of the system firmware. And like a reboot
Atsushi Nemotoea6e9422007-01-16 23:29:11 +09002332 you can start any kernel with it, not just Linux.
2333
Matt LaPlante01dd2fb2007-10-20 01:34:40 +02002334 The name comes from the similarity to the exec system call.
Atsushi Nemotoea6e9422007-01-16 23:29:11 +09002335
2336 It is an ongoing process to be certain the hardware in a machine
2337 is properly shutdown, so do not be surprised if this code does not
2338 initially work for you. It may help to enable device hotplugging
2339 support. As of this writing the exact hardware interface is
2340 strongly in flux, so no good recommendation can be made.
2341
Ralf Baechle7aa1c8f2012-10-11 18:14:58 +02002342config CRASH_DUMP
2343 bool "Kernel crash dumps"
2344 help
2345 Generate crash dump after being started by kexec.
2346 This should be normally only set in special crash dump kernels
2347 which are loaded in the main kernel with kexec-tools into
2348 a specially reserved region and then later executed after
2349 a crash by kdump/kexec. The crash dump kernel must be compiled
2350 to a memory address not used by the main kernel or firmware using
2351 PHYSICAL_START.
2352
2353config PHYSICAL_START
2354 hex "Physical address where the kernel is loaded"
2355 default "0xffffffff84000000" if 64BIT
2356 default "0x84000000" if 32BIT
2357 depends on CRASH_DUMP
2358 help
2359 This gives the CKSEG0 or KSEG0 address where the kernel is loaded.
2360 If you plan to use kernel for capturing the crash dump change
2361 this value to start of the reserved region (the "X" value as
2362 specified in the "crashkernel=YM@XM" command line boot parameter
2363 passed to the panic-ed kernel).
2364
Atsushi Nemotoea6e9422007-01-16 23:29:11 +09002365config SECCOMP
2366 bool "Enable seccomp to safely compute untrusted bytecode"
Ralf Baechle293c5bd2007-07-25 16:19:33 +01002367 depends on PROC_FS
Atsushi Nemotoea6e9422007-01-16 23:29:11 +09002368 default y
2369 help
2370 This kernel feature is useful for number crunching applications
2371 that may need to compute untrusted bytecode during their
2372 execution. By using pipes or other transports made available to
2373 the process as file descriptors supporting the read/write
2374 syscalls, it's possible to isolate those applications in
2375 their own address space using seccomp. Once seccomp is
2376 enabled via /proc/<pid>/seccomp, it cannot be disabled
2377 and the task is only allowed to execute a few safe syscalls
2378 defined by each seccomp mode.
2379
2380 If unsure, say Y. Only embedded should say N here.
2381
Dezhong Diaof2ffa5a2010-10-13 00:52:46 -06002382config USE_OF
Jonas Gorski0b3e06f2012-09-18 11:28:54 +02002383 bool
Dezhong Diaof2ffa5a2010-10-13 00:52:46 -06002384 select OF
Stephen Neuendorffere6ce1322010-11-18 15:54:56 -08002385 select OF_EARLY_FLATTREE
Grant Likelyabd23632012-02-24 08:07:06 -07002386 select IRQ_DOMAIN
Dezhong Diaof2ffa5a2010-10-13 00:52:46 -06002387
Ralf Baechle5e83d432005-10-29 19:32:41 +01002388endmenu
2389
Atsushi Nemoto1df0f0f2006-09-26 23:44:01 +09002390config LOCKDEP_SUPPORT
2391 bool
2392 default y
2393
2394config STACKTRACE_SUPPORT
2395 bool
2396 default y
2397
Ralf Baechleb6c35392005-11-25 11:35:40 +00002398source "init/Kconfig"
2399
Matt Helsleydc52ddc2008-10-18 20:27:21 -07002400source "kernel/Kconfig.freezer"
2401
Linus Torvalds1da177e2005-04-16 15:20:36 -07002402menu "Bus options (PCI, PCMCIA, EISA, ISA, TC)"
2403
Ralf Baechle5e83d432005-10-29 19:32:41 +01002404config HW_HAS_EISA
2405 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07002406config HW_HAS_PCI
2407 bool
2408
2409config PCI
2410 bool "Support for PCI controller"
2411 depends on HW_HAS_PCI
Ralf Baechleabb4ae42007-10-11 23:46:03 +01002412 select PCI_DOMAINS
Michael S. Tsirkineab90292011-11-24 21:10:12 +02002413 select GENERIC_PCI_IOMAP
Michael S. Tsirkin0f3b3952012-01-30 00:23:38 +02002414 select NO_GENERIC_PCI_IOPORT_MAP
Linus Torvalds1da177e2005-04-16 15:20:36 -07002415 help
2416 Find out whether you have a PCI motherboard. PCI is the name of a
2417 bus system, i.e. the way the CPU talks to the other stuff inside
2418 your box. Other bus systems are ISA, EISA, or VESA. If you have PCI,
2419 say Y, otherwise N.
2420
Linus Torvalds1da177e2005-04-16 15:20:36 -07002421config PCI_DOMAINS
2422 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07002423
2424source "drivers/pci/Kconfig"
2425
Jonas Gorski3f787ca2012-07-24 16:33:14 +02002426source "drivers/pci/pcie/Kconfig"
2427
Linus Torvalds1da177e2005-04-16 15:20:36 -07002428#
2429# ISA support is now enabled via select. Too many systems still have the one
2430# or other ISA chip on the board that users don't know about so don't expect
2431# users to choose the right thing ...
2432#
2433config ISA
2434 bool
2435
2436config EISA
2437 bool "EISA support"
Ralf Baechle5e83d432005-10-29 19:32:41 +01002438 depends on HW_HAS_EISA
Linus Torvalds1da177e2005-04-16 15:20:36 -07002439 select ISA
Ralf Baechleaa414df2006-11-30 01:14:51 +00002440 select GENERIC_ISA_DMA
Linus Torvalds1da177e2005-04-16 15:20:36 -07002441 ---help---
2442 The Extended Industry Standard Architecture (EISA) bus was
2443 developed as an open alternative to the IBM MicroChannel bus.
2444
2445 The EISA bus provided some of the features of the IBM MicroChannel
2446 bus while maintaining backward compatibility with cards made for
2447 the older ISA bus. The EISA bus saw limited use between 1988 and
2448 1995 when it was made obsolete by the PCI bus.
2449
2450 Say Y here if you are building a kernel for an EISA-based machine.
2451
2452 Otherwise, say N.
2453
2454source "drivers/eisa/Kconfig"
2455
2456config TC
2457 bool "TURBOchannel support"
2458 depends on MACH_DECSTATION
2459 help
Justin P. Mattock50a23e62010-10-16 10:36:23 -07002460 TURBOchannel is a DEC (now Compaq (now HP)) bus for Alpha and MIPS
2461 processors. TURBOchannel programming specifications are available
2462 at:
2463 <ftp://ftp.hp.com/pub/alphaserver/archive/triadd/>
2464 and:
2465 <http://www.computer-refuge.org/classiccmp/ftp.digital.com/pub/DEC/TriAdd/>
2466 Linux driver support status is documented at:
2467 <http://www.linux-mips.org/wiki/DECstation>
Linus Torvalds1da177e2005-04-16 15:20:36 -07002468
Linus Torvalds1da177e2005-04-16 15:20:36 -07002469config MMU
2470 bool
2471 default y
2472
Ralf Baechled865bea2007-10-11 23:46:10 +01002473config I8253
2474 bool
Russell King798778b2011-05-08 19:03:03 +01002475 select CLKSRC_I8253
Thomas Gleixner2d026122011-06-09 13:08:27 +00002476 select CLKEVT_I8253
Wu Zhangjin9726b432009-11-17 01:32:58 +08002477 select MIPS_EXTERNAL_TIMER
Ralf Baechled865bea2007-10-11 23:46:10 +01002478
Ralf Baechlecce335ae2007-11-03 02:05:43 +00002479config ZONE_DMA32
2480 bool
2481
Linus Torvalds1da177e2005-04-16 15:20:36 -07002482source "drivers/pcmcia/Kconfig"
2483
2484source "drivers/pci/hotplug/Kconfig"
2485
Alexandre Bounine388b78a2011-03-23 16:43:03 -07002486config RAPIDIO
2487 bool "RapidIO support"
2488 depends on PCI
2489 default n
2490 help
2491 If you say Y here, the kernel will include drivers and
2492 infrastructure code to support RapidIO interconnect devices.
2493
2494source "drivers/rapidio/Kconfig"
2495
Linus Torvalds1da177e2005-04-16 15:20:36 -07002496endmenu
2497
2498menu "Executable file formats"
2499
2500source "fs/Kconfig.binfmt"
2501
2502config TRAD_SIGNALS
2503 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07002504
Linus Torvalds1da177e2005-04-16 15:20:36 -07002505config MIPS32_COMPAT
2506 bool "Kernel support for Linux/MIPS 32-bit binary compatibility"
Ralf Baechle875d43e2005-09-03 15:56:16 -07002507 depends on 64BIT
Linus Torvalds1da177e2005-04-16 15:20:36 -07002508 help
2509 Select this option if you want Linux/MIPS 32-bit binary
2510 compatibility. Since all software available for Linux/MIPS is
2511 currently 32-bit you should say Y here.
2512
2513config COMPAT
2514 bool
2515 depends on MIPS32_COMPAT
Chris Metcalf48b25c42012-03-15 13:13:38 -04002516 select ARCH_WANT_OLD_COMPAT_IPC
Linus Torvalds1da177e2005-04-16 15:20:36 -07002517 default y
2518
Atsushi Nemoto05e43962006-11-07 18:02:44 +09002519config SYSVIPC_COMPAT
2520 bool
2521 depends on COMPAT && SYSVIPC
2522 default y
2523
Linus Torvalds1da177e2005-04-16 15:20:36 -07002524config MIPS32_O32
2525 bool "Kernel support for o32 binaries"
2526 depends on MIPS32_COMPAT
2527 help
2528 Select this option if you want to run o32 binaries. These are pure
2529 32-bit binaries as used by the 32-bit Linux/MIPS port. Most of
2530 existing binaries are in this format.
2531
2532 If unsure, say Y.
2533
2534config MIPS32_N32
2535 bool "Kernel support for n32 binaries"
2536 depends on MIPS32_COMPAT
2537 help
2538 Select this option if you want to run n32 binaries. These are
2539 64-bit binaries using 32-bit quantities for addressing and certain
2540 data that would normally be 64-bit. They are used in special
2541 cases.
2542
2543 If unsure, say N.
2544
2545config BINFMT_ELF32
2546 bool
2547 default y if MIPS32_O32 || MIPS32_N32
2548
Ralf Baechle21162452007-02-09 17:08:58 +00002549endmenu
Linus Torvalds1da177e2005-04-16 15:20:36 -07002550
Ralf Baechle21162452007-02-09 17:08:58 +00002551menu "Power management options"
Rodolfo Giometti952fa952006-06-05 17:43:10 +02002552
Wu Zhangjin363c55c2009-06-04 20:27:10 +08002553config ARCH_HIBERNATION_POSSIBLE
2554 def_bool y
Ralf Baechle3f5b3e12009-07-02 11:48:07 +01002555 depends on SYS_SUPPORTS_HOTPLUG_CPU || !SMP
Wu Zhangjin363c55c2009-06-04 20:27:10 +08002556
Johannes Bergf4cb5702007-12-08 02:14:00 +01002557config ARCH_SUSPEND_POSSIBLE
2558 def_bool y
Ralf Baechle3f5b3e12009-07-02 11:48:07 +01002559 depends on SYS_SUPPORTS_HOTPLUG_CPU || !SMP
Johannes Bergf4cb5702007-12-08 02:14:00 +01002560
Ralf Baechle21162452007-02-09 17:08:58 +00002561source "kernel/power/Kconfig"
Rodolfo Giometti952fa952006-06-05 17:43:10 +02002562
Linus Torvalds1da177e2005-04-16 15:20:36 -07002563endmenu
2564
Wu Zhangjin9726b432009-11-17 01:32:58 +08002565source "arch/mips/kernel/cpufreq/Kconfig"
2566
Sam Ravnborgd5950b42005-07-11 21:03:49 -07002567source "net/Kconfig"
2568
Linus Torvalds1da177e2005-04-16 15:20:36 -07002569source "drivers/Kconfig"
2570
Ralf Baechle98cdee02012-11-15 10:35:42 +01002571source "drivers/firmware/Kconfig"
2572
Linus Torvalds1da177e2005-04-16 15:20:36 -07002573source "fs/Kconfig"
2574
2575source "arch/mips/Kconfig.debug"
2576
2577source "security/Kconfig"
2578
2579source "crypto/Kconfig"
2580
2581source "lib/Kconfig"