blob: f17ba1ea7a47481e67ef5a4d3d3ce7d04adc093a [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001config MIPS
2 bool
3 default y
Ralf Baechlec3fc5cd2013-05-29 01:07:19 +02004 select HAVE_CONTEXT_TRACKING
Yoichi Yuasaf8ac04252009-06-04 00:16:04 +09005 select HAVE_GENERIC_DMA_COHERENT
Sam Ravnborgec7748b2008-02-09 10:46:40 +01006 select HAVE_IDE
Mathieu Desnoyers42d4b832008-02-02 15:10:34 -05007 select HAVE_OPROFILE
Deng-Cheng Zhu7f788d22010-10-12 19:37:21 +08008 select HAVE_PERF_EVENTS
9 select PERF_USE_VMALLOC
Jason Wessel88547002008-07-29 15:58:53 -050010 select HAVE_ARCH_KGDB
Mark Brown7563bbf2012-04-15 10:52:54 +010011 select ARCH_HAVE_CUSTOM_GPIO_H
Wu Zhangjind2bb07622009-11-20 20:34:29 +080012 select HAVE_FUNCTION_TRACER
Wu Zhangjin69a7d1b2009-11-20 20:34:30 +080013 select HAVE_FUNCTION_TRACE_MCOUNT_TEST
Wu Zhangjin538f1952009-11-20 20:34:32 +080014 select HAVE_DYNAMIC_FTRACE
15 select HAVE_FTRACE_MCOUNT_RECORD
Wu Zhangjin64575f92010-10-27 18:59:09 +080016 select HAVE_C_RECORDMCOUNT
Wu Zhangjin29c5d342009-11-20 20:34:34 +080017 select HAVE_FUNCTION_GRAPH_TRACER
David Daneyc1bf2072010-08-03 11:22:20 -070018 select HAVE_KPROBES
19 select HAVE_KRETPROBES
Catalin Marinasb69ec422012-10-08 16:28:11 -070020 select HAVE_DEBUG_KMEMLEAK
David Daneye26d1962012-01-10 15:10:22 -080021 select ARCH_BINFMT_ELF_RANDOMIZE_PIE
Ben Hutchings383c97b2013-03-04 04:17:21 +000022 select HAVE_ARCH_TRANSPARENT_HUGEPAGE if CPU_SUPPORTS_HUGEPAGES && 64BIT
Wu Zhangjin21a41fa2009-11-10 00:06:11 +080023 select RTC_LIB if !MACH_LOONGSON
Deng-Cheng Zhu2b789202010-06-09 12:35:25 +080024 select GENERIC_ATOMIC64 if !64BIT
Catalin Marinas74634492012-07-30 14:41:09 -070025 select ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE
David Daney48e1fd52010-10-01 13:27:32 -070026 select HAVE_DMA_ATTRS
27 select HAVE_DMA_API_DEBUG
David Daney3bd27e32010-11-05 15:12:48 -070028 select HAVE_GENERIC_HARDIRQS
29 select GENERIC_IRQ_PROBE
Thomas Gleixnerf8396c12011-03-23 21:09:05 +000030 select GENERIC_IRQ_SHOW
David Daney94bb0c12010-12-28 13:26:23 -080031 select HAVE_ARCH_JUMP_LABEL
Will Deaconc1d7e012012-07-30 14:42:46 -070032 select ARCH_WANT_IPC_PARSE_VERSION
Thomas Gleixner0f462e32011-07-23 12:41:25 +000033 select IRQ_FORCED_THREADING
Tejun Heo9d15ffc2011-12-08 10:22:09 -080034 select HAVE_MEMBLOCK
35 select HAVE_MEMBLOCK_NODE_MAP
36 select ARCH_DISCARD_MEMBLOCK
Thomas Gleixner360014a2012-04-20 13:05:51 +000037 select GENERIC_SMP_IDLE_THREAD
David Daney4b054492012-04-19 14:59:58 -070038 select BUILDTIME_EXTABLE_SORT
Anna-Maria Gleixnercde17942012-05-18 16:45:50 +000039 select GENERIC_CLOCKEVENTS
40 select GENERIC_CMOS_UPDATE
David Howells786d35d2012-09-28 14:31:03 +093041 select HAVE_MOD_ARCH_SPECIFIC
Stephen Rothwell4febd952013-03-07 15:48:16 +110042 select VIRT_TO_BUS
Joshua Kinard2f12fb22012-12-27 18:46:46 +000043 select MODULES_USE_ELF_REL if MODULES
44 select MODULES_USE_ELF_RELA if MODULES && 64BIT
Al Viro50150d22012-12-27 12:11:46 -050045 select CLONE_BACKWARDS
Linus Torvalds1da177e2005-04-16 15:20:36 -070046
Linus Torvalds1da177e2005-04-16 15:20:36 -070047menu "Machine selection"
48
Ralf Baechle5e83d432005-10-29 19:32:41 +010049choice
50 prompt "System type"
51 default SGI_IP22
Linus Torvalds1da177e2005-04-16 15:20:36 -070052
Manuel Lauss42a4f172010-07-15 21:45:04 +020053config MIPS_ALCHEMY
Yoichi Yuasac3543e22007-05-11 20:44:30 +090054 bool "Alchemy processor based machines"
Manuel Lauss42a4f172010-07-15 21:45:04 +020055 select 64BIT_PHYS_ADDR
Ralf Baechlef772cdb2012-11-30 17:27:27 +010056 select CEVT_R4K
Steven J. Hilld7ea3352012-11-14 23:34:17 -060057 select CSRC_R4K
Manuel Lauss42a4f172010-07-15 21:45:04 +020058 select IRQ_CPU
59 select SYS_HAS_CPU_MIPS32_R1
60 select SYS_SUPPORTS_32BIT_KERNEL
61 select SYS_SUPPORTS_APM_EMULATION
Alexandre Courbotefb12432013-03-11 19:17:52 +090062 select ARCH_REQUIRE_GPIOLIB
Wu Zhangjin1b93b3c2009-10-14 18:12:16 +080063 select SYS_SUPPORTS_ZBOOT
Manuel Lauss3766386032011-08-12 11:39:45 +020064 select USB_ARCH_HAS_OHCI
65 select USB_ARCH_HAS_EHCI
Linus Torvalds1da177e2005-04-16 15:20:36 -070066
Florian Fainelli7ca5dc12009-06-24 11:12:57 +020067config AR7
68 bool "Texas Instruments AR7"
69 select BOOT_ELF32
70 select DMA_NONCOHERENT
71 select CEVT_R4K
72 select CSRC_R4K
73 select IRQ_CPU
74 select NO_EXCEPT_FILL
75 select SWAP_IO_SPACE
76 select SYS_HAS_CPU_MIPS32_R1
77 select SYS_HAS_EARLY_PRINTK
78 select SYS_SUPPORTS_32BIT_KERNEL
79 select SYS_SUPPORTS_LITTLE_ENDIAN
Wu Zhangjin1b93b3c2009-10-14 18:12:16 +080080 select SYS_SUPPORTS_ZBOOT_UART16550
Florian Fainelli5f3c9092010-01-03 21:16:51 +010081 select ARCH_REQUIRE_GPIOLIB
Florian Fainelli7ca5dc12009-06-24 11:12:57 +020082 select VLYNQ
Yoichi Yuasa8551fb62012-08-01 15:38:00 +090083 select HAVE_CLK
Florian Fainelli7ca5dc12009-06-24 11:12:57 +020084 help
85 Support for the Texas Instruments AR7 System-on-a-Chip
86 family: TNETD7100, 7200 and 7300.
87
Gabor Juhosd4a67d92011-01-04 21:28:14 +010088config ATH79
89 bool "Atheros AR71XX/AR724X/AR913X based boards"
Gabor Juhos6eae43c2011-01-04 21:28:15 +010090 select ARCH_REQUIRE_GPIOLIB
Gabor Juhosd4a67d92011-01-04 21:28:14 +010091 select BOOT_RAW
92 select CEVT_R4K
93 select CSRC_R4K
94 select DMA_NONCOHERENT
Gabor Juhos94638062012-08-04 18:01:26 +020095 select HAVE_CLK
Gabor Juhosd4a67d92011-01-04 21:28:14 +010096 select IRQ_CPU
Gabor Juhos0aabf1a2011-01-04 21:28:16 +010097 select MIPS_MACHINE
Gabor Juhosd4a67d92011-01-04 21:28:14 +010098 select SYS_HAS_CPU_MIPS32_R2
99 select SYS_HAS_EARLY_PRINTK
100 select SYS_SUPPORTS_32BIT_KERNEL
101 select SYS_SUPPORTS_BIG_ENDIAN
102 help
103 Support for the Atheros AR71XX/AR724X/AR913X SoCs.
104
Aurelien Jarno1c0c13e2007-09-25 15:40:12 +0200105config BCM47XX
Florian Fainellic6193662010-03-25 11:42:41 +0100106 bool "Broadcom BCM47XX based boards"
Hauke Mehrtens2da4c742012-11-20 22:24:34 +0000107 select ARCH_WANT_OPTIONAL_GPIOLIB
Hauke Mehrtensfe08f8c2012-12-26 20:06:17 +0000108 select BOOT_RAW
Ralf Baechle42f77542007-10-18 17:48:11 +0100109 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000110 select CSRC_R4K
Aurelien Jarno1c0c13e2007-09-25 15:40:12 +0200111 select DMA_NONCOHERENT
Ralf Baechle0e2794b2012-11-15 20:48:50 +0100112 select FW_CFE
Aurelien Jarno1c0c13e2007-09-25 15:40:12 +0200113 select HW_HAS_PCI
114 select IRQ_CPU
Hauke Mehrtensdd54ded2012-12-26 20:06:18 +0000115 select NO_EXCEPT_FILL
Aurelien Jarno1c0c13e2007-09-25 15:40:12 +0200116 select SYS_SUPPORTS_32BIT_KERNEL
117 select SYS_SUPPORTS_LITTLE_ENDIAN
Aurelien Jarno25e5fb92007-09-25 15:41:24 +0200118 select SYS_HAS_EARLY_PRINTK
Aurelien Jarno1c0c13e2007-09-25 15:40:12 +0200119 help
120 Support for BCM47XX based boards
121
Maxime Bizone7300d02009-08-18 13:23:37 +0100122config BCM63XX
123 bool "Broadcom BCM63XX based boards"
124 select CEVT_R4K
125 select CSRC_R4K
126 select DMA_NONCOHERENT
127 select IRQ_CPU
128 select SYS_HAS_CPU_MIPS32_R1
129 select SYS_SUPPORTS_32BIT_KERNEL
130 select SYS_SUPPORTS_BIG_ENDIAN
131 select SYS_HAS_EARLY_PRINTK
132 select SWAP_IO_SPACE
133 select ARCH_REQUIRE_GPIOLIB
Yoichi Yuasa3e82eee2012-08-01 15:39:52 +0900134 select HAVE_CLK
Maxime Bizone7300d02009-08-18 13:23:37 +0100135 help
136 Support for BCM63XX based boards
137
Linus Torvalds1da177e2005-04-16 15:20:36 -0700138config MIPS_COBALT
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200139 bool "Cobalt Server"
Ralf Baechle42f77542007-10-18 17:48:11 +0100140 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000141 select CSRC_R4K
Yoichi Yuasa1097c6a2007-10-22 19:43:15 +0900142 select CEVT_GT641XX
Linus Torvalds1da177e2005-04-16 15:20:36 -0700143 select DMA_NONCOHERENT
144 select HW_HAS_PCI
Ralf Baechled865bea2007-10-11 23:46:10 +0100145 select I8253
Linus Torvalds1da177e2005-04-16 15:20:36 -0700146 select I8259
147 select IRQ_CPU
Yoichi Yuasad5ab1a62007-09-13 23:51:26 +0900148 select IRQ_GT641XX
Yoichi Yuasa252161e2007-03-14 21:51:26 +0900149 select PCI_GT64XXX_PCI0
Yoichi Yuasae25bfc92009-06-02 23:17:07 +0900150 select PCI
Ralf Baechle7cf80532005-10-20 22:33:09 +0100151 select SYS_HAS_CPU_NEVADA
Yoichi Yuasa0a22e0d2007-03-02 12:42:33 +0900152 select SYS_HAS_EARLY_PRINTK
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700153 select SYS_SUPPORTS_32BIT_KERNEL
Florian Fainelli0e8774b2008-01-15 19:42:57 +0100154 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100155 select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700156
157config MACH_DECSTATION
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200158 bool "DECstations"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700159 select BOOT_ELF32
Yoichi Yuasa6457d9f2008-04-25 12:11:44 +0900160 select CEVT_DS1287
Ralf Baechle42f77542007-10-18 17:48:11 +0100161 select CEVT_R4K
Yoichi Yuasa42474172008-04-24 09:48:40 +0900162 select CSRC_IOASIC
Ralf Baechle940f6b42007-11-24 22:33:28 +0000163 select CSRC_R4K
Maciej W. Rozycki20d60d92007-10-23 12:43:11 +0100164 select CPU_DADDI_WORKAROUNDS if 64BIT
165 select CPU_R4000_WORKAROUNDS if 64BIT
166 select CPU_R4400_WORKAROUNDS if 64BIT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700167 select DMA_NONCOHERENT
Maciej W. Rozyckid388d682007-05-29 15:08:07 +0100168 select NO_IOPORT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700169 select IRQ_CPU
Ralf Baechle7cf80532005-10-20 22:33:09 +0100170 select SYS_HAS_CPU_R3000
171 select SYS_HAS_CPU_R4X00
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700172 select SYS_SUPPORTS_32BIT_KERNEL
Kees Cook7d607172013-01-16 18:53:19 -0800173 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100174 select SYS_SUPPORTS_LITTLE_ENDIAN
Atsushi Nemoto1723b4a2006-06-20 00:19:13 +0900175 select SYS_SUPPORTS_128HZ
176 select SYS_SUPPORTS_256HZ
177 select SYS_SUPPORTS_1024HZ
Ralf Baechle5e83d432005-10-29 19:32:41 +0100178 help
Linus Torvalds1da177e2005-04-16 15:20:36 -0700179 This enables support for DEC's MIPS based workstations. For details
180 see the Linux/MIPS FAQ on <http://www.linux-mips.org/> and the
181 DECstation porting pages on <http://decstation.unix-ag.org/>.
182
183 If you have one of the following DECstation Models you definitely
184 want to choose R4xx0 for the CPU Type:
185
Ralf Baechle93088162007-08-29 14:21:45 +0100186 DECstation 5000/50
187 DECstation 5000/150
188 DECstation 5000/260
189 DECsystem 5900/260
Linus Torvalds1da177e2005-04-16 15:20:36 -0700190
191 otherwise choose R3000.
192
Ralf Baechle5e83d432005-10-29 19:32:41 +0100193config MACH_JAZZ
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200194 bool "Jazz family of machines"
Ralf Baechle0e2794b2012-11-15 20:48:50 +0100195 select FW_ARC
196 select FW_ARC32
Ralf Baechle5e83d432005-10-29 19:32:41 +0100197 select ARCH_MAY_HAVE_PC_FDC
Ralf Baechle42f77542007-10-18 17:48:11 +0100198 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000199 select CSRC_R4K
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +0100200 select DEFAULT_SGI_PARTITION if CPU_BIG_ENDIAN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100201 select GENERIC_ISA_DMA
Ralf Baechle8a118c32011-06-01 19:05:10 +0100202 select HAVE_PCSPKR_PLATFORM
Thomas Bogendoerferea202c62007-08-25 11:01:50 +0200203 select IRQ_CPU
Ralf Baechled865bea2007-10-11 23:46:10 +0100204 select I8253
Ralf Baechle5e83d432005-10-29 19:32:41 +0100205 select I8259
206 select ISA
Ralf Baechle7cf80532005-10-20 22:33:09 +0100207 select SYS_HAS_CPU_R4X00
Ralf Baechle5e83d432005-10-29 19:32:41 +0100208 select SYS_SUPPORTS_32BIT_KERNEL
Kees Cook7d607172013-01-16 18:53:19 -0800209 select SYS_SUPPORTS_64BIT_KERNEL
Atsushi Nemoto1723b4a2006-06-20 00:19:13 +0900210 select SYS_SUPPORTS_100HZ
Linus Torvalds1da177e2005-04-16 15:20:36 -0700211 help
Ralf Baechle5e83d432005-10-29 19:32:41 +0100212 This a family of machines based on the MIPS R4030 chipset which was
213 used by several vendors to build RISC/os and Windows NT workstations.
Matt LaPlante692105b2009-01-26 11:12:25 +0100214 Members include the Acer PICA, MIPS Magnum 4000, MIPS Millennium and
Ralf Baechle5e83d432005-10-29 19:32:41 +0100215 Olivetti M700-10 workstations.
216
Lars-Peter Clausen5ebabe52010-06-19 04:08:19 +0000217config MACH_JZ4740
218 bool "Ingenic JZ4740 based machines"
219 select SYS_HAS_CPU_MIPS32_R1
220 select SYS_SUPPORTS_32BIT_KERNEL
221 select SYS_SUPPORTS_LITTLE_ENDIAN
Lluís Batlle i Rossellf9c9aff2012-03-30 16:48:05 +0200222 select SYS_SUPPORTS_ZBOOT_UART16550
Lars-Peter Clausen5ebabe52010-06-19 04:08:19 +0000223 select DMA_NONCOHERENT
224 select IRQ_CPU
Lars-Peter Clausen5ebabe52010-06-19 04:08:19 +0000225 select ARCH_REQUIRE_GPIOLIB
226 select SYS_HAS_EARLY_PRINTK
227 select HAVE_PWM
Maurus Cuelenaereab5330e2011-03-01 00:20:01 +0100228 select HAVE_CLK
Lars-Peter Clausen83bc7692011-09-24 02:29:46 +0200229 select GENERIC_IRQ_CHIP
Lars-Peter Clausen5ebabe52010-06-19 04:08:19 +0000230
John Crispin171bb2f2011-03-30 09:27:47 +0200231config LANTIQ
232 bool "Lantiq based platforms"
233 select DMA_NONCOHERENT
234 select IRQ_CPU
235 select CEVT_R4K
236 select CSRC_R4K
237 select SYS_HAS_CPU_MIPS32_R1
238 select SYS_HAS_CPU_MIPS32_R2
239 select SYS_SUPPORTS_BIG_ENDIAN
240 select SYS_SUPPORTS_32BIT_KERNEL
241 select SYS_SUPPORTS_MULTITHREADING
242 select SYS_HAS_EARLY_PRINTK
243 select ARCH_REQUIRE_GPIOLIB
244 select SWAP_IO_SPACE
245 select BOOT_RAW
John Crispin287e3f32012-04-17 15:53:19 +0200246 select HAVE_MACH_CLKDEV
247 select CLKDEV_LOOKUP
John Crispina0392222012-04-13 20:56:13 +0200248 select USE_OF
John Crispin3f8c50c2012-08-28 12:44:59 +0200249 select PINCTRL
250 select PINCTRL_LANTIQ
John Crispin171bb2f2011-03-30 09:27:47 +0200251
Brian Murphy1f21d2b2007-08-21 22:34:16 +0200252config LASAT
253 bool "LASAT Networks platforms"
Ralf Baechle42f77542007-10-18 17:48:11 +0100254 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000255 select CSRC_R4K
Brian Murphy1f21d2b2007-08-21 22:34:16 +0200256 select DMA_NONCOHERENT
257 select SYS_HAS_EARLY_PRINTK
258 select HW_HAS_PCI
Ralf Baechlea5ccfe52007-10-14 23:49:33 +0100259 select IRQ_CPU
Brian Murphy1f21d2b2007-08-21 22:34:16 +0200260 select PCI_GT64XXX_PCI0
261 select MIPS_NILE4
262 select R5000_CPU_SCACHE
263 select SYS_HAS_CPU_R5000
264 select SYS_SUPPORTS_32BIT_KERNEL
265 select SYS_SUPPORTS_64BIT_KERNEL if BROKEN
266 select SYS_SUPPORTS_LITTLE_ENDIAN
Brian Murphy1f21d2b2007-08-21 22:34:16 +0200267
Wu Zhangjin85749d22009-07-02 23:26:45 +0800268config MACH_LOONGSON
269 bool "Loongson family of machines"
Wu Zhangjinc7e8c662010-01-04 17:16:46 +0800270 select SYS_SUPPORTS_ZBOOT
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900271 help
Wu Zhangjin85749d22009-07-02 23:26:45 +0800272 This enables the support of Loongson family of machines.
273
274 Loongson is a family of general-purpose MIPS-compatible CPUs.
275 developed at Institute of Computing Technology (ICT),
276 Chinese Academy of Sciences (CAS) in the People's Republic
277 of China. The chief architect is Professor Weiwu Hu.
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900278
Kelvin Cheungca585cf2012-07-25 16:17:24 +0200279config MACH_LOONGSON1
280 bool "Loongson 1 family of machines"
281 select SYS_SUPPORTS_ZBOOT
282 help
283 This enables support for the Loongson 1 based machines.
284
285 Loongson 1 is a family of 32-bit MIPS-compatible SoCs developed by
286 the ICT (Institute of Computing Technology) and the Chinese Academy
287 of Sciences.
288
Linus Torvalds1da177e2005-04-16 15:20:36 -0700289config MIPS_MALTA
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200290 bool "MIPS Malta board"
Ralf Baechle61ed2422005-09-15 08:52:34 +0000291 select ARCH_MAY_HAVE_PC_FDC
Linus Torvalds1da177e2005-04-16 15:20:36 -0700292 select BOOT_ELF32
Ralf Baechlefa71c962008-01-29 10:15:00 +0000293 select BOOT_RAW
Ralf Baechle42f77542007-10-18 17:48:11 +0100294 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000295 select CSRC_R4K
Steven J. Hill778eeb12012-12-07 03:51:04 +0000296 select CSRC_GIC
Linus Torvalds1da177e2005-04-16 15:20:36 -0700297 select DMA_NONCOHERENT
298 select GENERIC_ISA_DMA
Ralf Baechle8a118c32011-06-01 19:05:10 +0100299 select HAVE_PCSPKR_PLATFORM
Ralf Baechleaa414df2006-11-30 01:14:51 +0000300 select IRQ_CPU
Ralf Baechle39b8d522008-04-28 17:14:26 +0100301 select IRQ_GIC
Linus Torvalds1da177e2005-04-16 15:20:36 -0700302 select HW_HAS_PCI
Ralf Baechled865bea2007-10-11 23:46:10 +0100303 select I8253
Linus Torvalds1da177e2005-04-16 15:20:36 -0700304 select I8259
Ralf Baechle5e83d432005-10-29 19:32:41 +0100305 select MIPS_BONITO64
Chris Dearman9318c512006-06-20 17:15:20 +0100306 select MIPS_CPU_SCACHE
Yoichi Yuasa252161e2007-03-14 21:51:26 +0900307 select PCI_GT64XXX_PCI0
Ralf Baechle5e83d432005-10-29 19:32:41 +0100308 select MIPS_MSC
Linus Torvalds1da177e2005-04-16 15:20:36 -0700309 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100310 select SYS_HAS_CPU_MIPS32_R1
311 select SYS_HAS_CPU_MIPS32_R2
312 select SYS_HAS_CPU_MIPS64_R1
Leonid Yegoshin5d9fbed2012-07-19 09:11:15 +0200313 select SYS_HAS_CPU_MIPS64_R2
Ralf Baechle7cf80532005-10-20 22:33:09 +0100314 select SYS_HAS_CPU_NEVADA
315 select SYS_HAS_CPU_RM7000
Ralf Baechle36a88532007-03-01 11:56:43 +0000316 select SYS_HAS_EARLY_PRINTK
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700317 select SYS_SUPPORTS_32BIT_KERNEL
318 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100319 select SYS_SUPPORTS_BIG_ENDIAN
320 select SYS_SUPPORTS_LITTLE_ENDIAN
Tim Anderson03650702009-06-17 16:22:53 -0700321 select SYS_SUPPORTS_MIPS_CMP
Ralf Baechlef41ae0b2006-06-05 17:24:46 +0100322 select SYS_SUPPORTS_MULTITHREADING
Franck Bui-Huu9693a852007-02-02 17:41:47 +0100323 select SYS_SUPPORTS_SMARTMIPS
Wu Zhangjin1b93b3c2009-10-14 18:12:16 +0800324 select SYS_SUPPORTS_ZBOOT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700325 help
Maciej W. Rozyckif638d192005-02-02 22:23:46 +0000326 This enables support for the MIPS Technologies Malta evaluation
Linus Torvalds1da177e2005-04-16 15:20:36 -0700327 board.
328
Steven J. Hillec47b272012-05-11 02:46:20 +0000329config MIPS_SEAD3
330 bool "MIPS SEAD3 board"
331 select BOOT_ELF32
332 select BOOT_RAW
333 select CEVT_R4K
334 select CSRC_R4K
Steven J. Hilldfa762e2013-04-10 16:28:36 -0500335 select CSRC_GIC
Steven J. Hillec47b272012-05-11 02:46:20 +0000336 select CPU_MIPSR2_IRQ_VI
337 select CPU_MIPSR2_IRQ_EI
338 select DMA_NONCOHERENT
339 select IRQ_CPU
340 select IRQ_GIC
Steven J. Hillec47b272012-05-11 02:46:20 +0000341 select MIPS_CPU_SCACHE
342 select MIPS_MSC
343 select SYS_HAS_CPU_MIPS32_R1
344 select SYS_HAS_CPU_MIPS32_R2
345 select SYS_HAS_CPU_MIPS64_R1
346 select SYS_HAS_EARLY_PRINTK
347 select SYS_SUPPORTS_32BIT_KERNEL
348 select SYS_SUPPORTS_64BIT_KERNEL
349 select SYS_SUPPORTS_BIG_ENDIAN
350 select SYS_SUPPORTS_LITTLE_ENDIAN
351 select SYS_SUPPORTS_SMARTMIPS
Steven J. Hilla6a48342013-02-05 16:52:02 -0600352 select SYS_SUPPORTS_MICROMIPS
Steven J. Hillec47b272012-05-11 02:46:20 +0000353 select USB_ARCH_HAS_EHCI
354 select USB_EHCI_BIG_ENDIAN_DESC
355 select USB_EHCI_BIG_ENDIAN_MMIO
Steven J. Hill9b731002013-01-17 11:37:03 -0600356 select USE_OF
Steven J. Hillec47b272012-05-11 02:46:20 +0000357 help
358 This enables support for the MIPS Technologies SEAD3 evaluation
359 board.
360
Ralf Baechlea83860c2009-03-13 21:17:57 +0100361config NEC_MARKEINS
362 bool "NEC EMMA2RH Mark-eins board"
363 select SOC_EMMA2RH
364 select HW_HAS_PCI
365 help
366 This enables support for the NEC Electronics Mark-eins boards.
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900367
Ralf Baechle5e83d432005-10-29 19:32:41 +0100368config MACH_VR41XX
Yoichi Yuasa74142d62007-04-26 19:45:09 +0900369 bool "NEC VR4100 series based machines"
Ralf Baechle42f77542007-10-18 17:48:11 +0100370 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000371 select CSRC_R4K
Ralf Baechle7cf80532005-10-20 22:33:09 +0100372 select SYS_HAS_CPU_VR41XX
Yoichi Yuasa27fdd322009-06-29 11:11:05 +0900373 select ARCH_REQUIRE_GPIOLIB
Ralf Baechle5e83d432005-10-29 19:32:41 +0100374
Daniel Lairdedb63102008-06-16 15:49:21 +0100375config NXP_STB220
376 bool "NXP STB220 board"
377 select SOC_PNX833X
378 help
379 Support for NXP Semiconductors STB220 Development Board.
380
381config NXP_STB225
382 bool "NXP 225 board"
383 select SOC_PNX833X
384 select SOC_PNX8335
385 help
386 Support for NXP Semiconductors STB225 Development Board.
387
Marc St-Jean9267a302007-06-14 15:55:31 -0600388config PMC_MSP
389 bool "PMC-Sierra MSP chipsets"
Anoop P A39d30c12010-11-18 13:42:28 +0530390 select CEVT_R4K
391 select CSRC_R4K
Marc St-Jean9267a302007-06-14 15:55:31 -0600392 select DMA_NONCOHERENT
393 select SWAP_IO_SPACE
394 select NO_EXCEPT_FILL
395 select BOOT_RAW
396 select SYS_HAS_CPU_MIPS32_R1
397 select SYS_HAS_CPU_MIPS32_R2
398 select SYS_SUPPORTS_32BIT_KERNEL
399 select SYS_SUPPORTS_BIG_ENDIAN
Marc St-Jean9267a302007-06-14 15:55:31 -0600400 select IRQ_CPU
401 select SERIAL_8250
402 select SERIAL_8250_CONSOLE
Florian Fainelli9296d942013-04-09 14:29:26 +0200403 select USB_EHCI_BIG_ENDIAN_MMIO
404 select USB_EHCI_BIG_ENDIAN_DESC
Marc St-Jean9267a302007-06-14 15:55:31 -0600405 help
406 This adds support for the PMC-Sierra family of Multi-Service
407 Processor System-On-A-Chips. These parts include a number
408 of integrated peripherals, interfaces and DSPs in addition to
409 a variety of MIPS cores.
410
David VomLehna3a0f8c2009-08-30 17:15:11 -0700411config POWERTV
412 bool "Cisco PowerTV"
413 select BOOT_ELF32
414 select CEVT_R4K
415 select CPU_MIPSR2_IRQ_VI
416 select CPU_MIPSR2_IRQ_EI
417 select CSRC_POWERTV
418 select DMA_NONCOHERENT
419 select HW_HAS_PCI
420 select SYS_HAS_EARLY_PRINTK
421 select SYS_HAS_CPU_MIPS32_R2
422 select SYS_SUPPORTS_32BIT_KERNEL
423 select SYS_SUPPORTS_BIG_ENDIAN
424 select SYS_SUPPORTS_HIGHMEM
425 select USB_OHCI_LITTLE_ENDIAN
426 help
427 This enables support for the Cisco PowerTV Platform.
428
John Crispinae2b5bb2013-01-20 22:05:30 +0100429config RALINK
430 bool "Ralink based machines"
431 select CEVT_R4K
432 select CSRC_R4K
433 select BOOT_RAW
434 select DMA_NONCOHERENT
435 select IRQ_CPU
436 select USE_OF
437 select SYS_HAS_CPU_MIPS32_R1
438 select SYS_HAS_CPU_MIPS32_R2
439 select SYS_SUPPORTS_32BIT_KERNEL
440 select SYS_SUPPORTS_LITTLE_ENDIAN
441 select SYS_HAS_EARLY_PRINTK
442 select HAVE_MACH_CLKDEV
443 select CLKDEV_LOOKUP
444
Linus Torvalds1da177e2005-04-16 15:20:36 -0700445config SGI_IP22
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200446 bool "SGI IP22 (Indy/Indigo2)"
Ralf Baechle0e2794b2012-11-15 20:48:50 +0100447 select FW_ARC
448 select FW_ARC32
Linus Torvalds1da177e2005-04-16 15:20:36 -0700449 select BOOT_ELF32
Ralf Baechle42f77542007-10-18 17:48:11 +0100450 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000451 select CSRC_R4K
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +0100452 select DEFAULT_SGI_PARTITION
Linus Torvalds1da177e2005-04-16 15:20:36 -0700453 select DMA_NONCOHERENT
Ralf Baechle5e83d432005-10-29 19:32:41 +0100454 select HW_HAS_EISA
Ralf Baechled865bea2007-10-11 23:46:10 +0100455 select I8253
Thomas Bogendoerfer68de4802007-11-23 20:34:16 +0100456 select I8259
Linus Torvalds1da177e2005-04-16 15:20:36 -0700457 select IP22_CPU_SCACHE
458 select IRQ_CPU
Ralf Baechleaa414df2006-11-30 01:14:51 +0000459 select GENERIC_ISA_DMA_SUPPORT_BROKEN
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +0100460 select SGI_HAS_I8042
461 select SGI_HAS_INDYDOG
Thomas Bogendoerfer36e5c212008-07-16 14:06:15 +0200462 select SGI_HAS_HAL2
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +0100463 select SGI_HAS_SEEQ
464 select SGI_HAS_WD93
465 select SGI_HAS_ZILOG
Linus Torvalds1da177e2005-04-16 15:20:36 -0700466 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100467 select SYS_HAS_CPU_R4X00
468 select SYS_HAS_CPU_R5000
Martin Michlmayr2b5e63f2009-11-19 16:40:09 +0000469 #
470 # Disable EARLY_PRINTK for now since it leads to overwritten prom
471 # memory during early boot on some machines.
472 #
473 # See http://www.linux-mips.org/cgi-bin/mesg.cgi?a=linux-mips&i=20091119164009.GA15038%40deprecation.cyrius.com
474 # for a more details discussion
475 #
476 # select SYS_HAS_EARLY_PRINTK
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700477 select SYS_SUPPORTS_32BIT_KERNEL
478 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100479 select SYS_SUPPORTS_BIG_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700480 help
481 This are the SGI Indy, Challenge S and Indigo2, as well as certain
482 OEM variants like the Tandem CMN B006S. To compile a Linux kernel
483 that runs on these, say Y here.
484
485config SGI_IP27
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200486 bool "SGI IP27 (Origin200/2000)"
Ralf Baechle0e2794b2012-11-15 20:48:50 +0100487 select FW_ARC
488 select FW_ARC64
Ralf Baechle5e83d432005-10-29 19:32:41 +0100489 select BOOT_ELF64
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +0100490 select DEFAULT_SGI_PARTITION
Ralf Baechle634286f2009-01-28 17:48:40 +0000491 select DMA_COHERENT
Ralf Baechle36a88532007-03-01 11:56:43 +0000492 select SYS_HAS_EARLY_PRINTK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700493 select HW_HAS_PCI
Ralf Baechle130e2fb2007-02-06 16:53:15 +0000494 select NR_CPUS_DEFAULT_64
Ralf Baechle7cf80532005-10-20 22:33:09 +0100495 select SYS_HAS_CPU_R10000
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700496 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100497 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechled8cb4e12006-06-11 23:03:08 +0100498 select SYS_SUPPORTS_NUMA
Ralf Baechle1a5c5de2006-11-02 17:23:33 +0000499 select SYS_SUPPORTS_SMP
Linus Torvalds1da177e2005-04-16 15:20:36 -0700500 help
501 This are the SGI Origin 200, Origin 2000 and Onyx 2 Graphics
502 workstations. To compile a Linux kernel that runs on these, say Y
503 here.
504
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +0100505config SGI_IP28
Kees Cook7d607172013-01-16 18:53:19 -0800506 bool "SGI IP28 (Indigo2 R10k)"
Ralf Baechle0e2794b2012-11-15 20:48:50 +0100507 select FW_ARC
508 select FW_ARC64
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +0100509 select BOOT_ELF64
510 select CEVT_R4K
511 select CSRC_R4K
512 select DEFAULT_SGI_PARTITION
513 select DMA_NONCOHERENT
514 select GENERIC_ISA_DMA_SUPPORT_BROKEN
515 select IRQ_CPU
516 select HW_HAS_EISA
517 select I8253
518 select I8259
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +0100519 select SGI_HAS_I8042
520 select SGI_HAS_INDYDOG
Thomas Bogendoerfer5b438c42008-07-10 20:29:55 +0200521 select SGI_HAS_HAL2
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +0100522 select SGI_HAS_SEEQ
523 select SGI_HAS_WD93
524 select SGI_HAS_ZILOG
525 select SWAP_IO_SPACE
526 select SYS_HAS_CPU_R10000
Martin Michlmayr2b5e63f2009-11-19 16:40:09 +0000527 #
528 # Disable EARLY_PRINTK for now since it leads to overwritten prom
529 # memory during early boot on some machines.
530 #
531 # See http://www.linux-mips.org/cgi-bin/mesg.cgi?a=linux-mips&i=20091119164009.GA15038%40deprecation.cyrius.com
532 # for a more details discussion
533 #
534 # select SYS_HAS_EARLY_PRINTK
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +0100535 select SYS_SUPPORTS_64BIT_KERNEL
536 select SYS_SUPPORTS_BIG_ENDIAN
537 help
538 This is the SGI Indigo2 with R10000 processor. To compile a Linux
539 kernel that runs on these, say Y here.
540
Linus Torvalds1da177e2005-04-16 15:20:36 -0700541config SGI_IP32
Ralf Baechlecfd2afc2007-07-10 17:33:00 +0100542 bool "SGI IP32 (O2)"
Ralf Baechle0e2794b2012-11-15 20:48:50 +0100543 select FW_ARC
544 select FW_ARC32
Linus Torvalds1da177e2005-04-16 15:20:36 -0700545 select BOOT_ELF32
Ralf Baechle42f77542007-10-18 17:48:11 +0100546 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000547 select CSRC_R4K
Linus Torvalds1da177e2005-04-16 15:20:36 -0700548 select DMA_NONCOHERENT
549 select HW_HAS_PCI
Ralf Baechledd67b152007-10-14 14:02:26 +0100550 select IRQ_CPU
Linus Torvalds1da177e2005-04-16 15:20:36 -0700551 select R5000_CPU_SCACHE
552 select RM7000_CPU_SCACHE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100553 select SYS_HAS_CPU_R5000
554 select SYS_HAS_CPU_R10000 if BROKEN
555 select SYS_HAS_CPU_RM7000
Ralf Baechledd2f18f2006-01-19 14:55:42 +0000556 select SYS_HAS_CPU_NEVADA
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700557 select SYS_SUPPORTS_64BIT_KERNEL
Ralf Baechle5e83d432005-10-29 19:32:41 +0100558 select SYS_SUPPORTS_BIG_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700559 help
560 If you want this kernel to run on SGI O2 workstation, say Y here.
561
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900562config SIBYTE_CRHINE
563 bool "Sibyte BCM91120C-CRhine"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100564 select BOOT_ELF32
565 select DMA_COHERENT
566 select SIBYTE_BCM1120
567 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100568 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100569 select SYS_SUPPORTS_BIG_ENDIAN
570 select SYS_SUPPORTS_LITTLE_ENDIAN
571
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900572config SIBYTE_CARMEL
573 bool "Sibyte BCM91120x-Carmel"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100574 select BOOT_ELF32
575 select DMA_COHERENT
576 select SIBYTE_BCM1120
577 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100578 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100579 select SYS_SUPPORTS_BIG_ENDIAN
580 select SYS_SUPPORTS_LITTLE_ENDIAN
581
582config SIBYTE_CRHONE
Martin Michlmayr3fa986f2006-05-09 23:34:53 +0200583 bool "Sibyte BCM91125C-CRhone"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100584 select BOOT_ELF32
585 select DMA_COHERENT
586 select SIBYTE_BCM1125
587 select SWAP_IO_SPACE
Ralf Baechle7cf80532005-10-20 22:33:09 +0100588 select SYS_HAS_CPU_SB1
Ralf Baechle5e83d432005-10-29 19:32:41 +0100589 select SYS_SUPPORTS_BIG_ENDIAN
590 select SYS_SUPPORTS_HIGHMEM
591 select SYS_SUPPORTS_LITTLE_ENDIAN
592
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900593config SIBYTE_RHONE
594 bool "Sibyte BCM91125E-Rhone"
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900595 select BOOT_ELF32
596 select DMA_COHERENT
597 select SIBYTE_BCM1125H
598 select SWAP_IO_SPACE
599 select SYS_HAS_CPU_SB1
600 select SYS_SUPPORTS_BIG_ENDIAN
601 select SYS_SUPPORTS_LITTLE_ENDIAN
602
603config SIBYTE_SWARM
604 bool "Sibyte BCM91250A-SWARM"
605 select BOOT_ELF32
606 select DMA_COHERENT
Sebastian Andrzej Siewiorfcf3ca42010-04-18 15:26:36 +0200607 select HAVE_PATA_PLATFORM
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900608 select NR_CPUS_DEFAULT_2
609 select SIBYTE_SB1250
610 select SWAP_IO_SPACE
611 select SYS_HAS_CPU_SB1
612 select SYS_SUPPORTS_BIG_ENDIAN
613 select SYS_SUPPORTS_HIGHMEM
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900614 select SYS_SUPPORTS_LITTLE_ENDIAN
Ralf Baechlecce335ae2007-11-03 02:05:43 +0000615 select ZONE_DMA32 if 64BIT
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900616
617config SIBYTE_LITTLESUR
618 bool "Sibyte BCM91250C2-LittleSur"
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900619 select BOOT_ELF32
620 select DMA_COHERENT
Sebastian Andrzej Siewiorfcf3ca42010-04-18 15:26:36 +0200621 select HAVE_PATA_PLATFORM
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900622 select NR_CPUS_DEFAULT_2
623 select SIBYTE_SB1250
624 select SWAP_IO_SPACE
625 select SYS_HAS_CPU_SB1
626 select SYS_SUPPORTS_BIG_ENDIAN
627 select SYS_SUPPORTS_HIGHMEM
628 select SYS_SUPPORTS_LITTLE_ENDIAN
629
630config SIBYTE_SENTOSA
631 bool "Sibyte BCM91250E-Sentosa"
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900632 select BOOT_ELF32
633 select DMA_COHERENT
634 select NR_CPUS_DEFAULT_2
635 select SIBYTE_SB1250
636 select SWAP_IO_SPACE
637 select SYS_HAS_CPU_SB1
638 select SYS_SUPPORTS_BIG_ENDIAN
639 select SYS_SUPPORTS_LITTLE_ENDIAN
640
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900641config SIBYTE_BIGSUR
642 bool "Sibyte BCM91480B-BigSur"
643 select BOOT_ELF32
644 select DMA_COHERENT
645 select NR_CPUS_DEFAULT_4
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900646 select SIBYTE_BCM1x80
647 select SWAP_IO_SPACE
648 select SYS_HAS_CPU_SB1
649 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechle651194f2007-11-01 21:55:39 +0000650 select SYS_SUPPORTS_HIGHMEM
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900651 select SYS_SUPPORTS_LITTLE_ENDIAN
Ralf Baechlecce335ae2007-11-03 02:05:43 +0000652 select ZONE_DMA32 if 64BIT
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900653
Thomas Bogendoerfer14b36af2006-12-05 17:05:44 +0100654config SNI_RM
655 bool "SNI RM200/300/400"
Ralf Baechle0e2794b2012-11-15 20:48:50 +0100656 select FW_ARC if CPU_LITTLE_ENDIAN
657 select FW_ARC32 if CPU_LITTLE_ENDIAN
Paul Bolleaaa9fad2013-03-25 09:39:54 +0000658 select FW_SNIPROM if CPU_BIG_ENDIAN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100659 select ARCH_MAY_HAVE_PC_FDC
660 select BOOT_ELF32
Ralf Baechle42f77542007-10-18 17:48:11 +0100661 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000662 select CSRC_R4K
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +0100663 select DEFAULT_SGI_PARTITION if CPU_BIG_ENDIAN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100664 select DMA_NONCOHERENT
665 select GENERIC_ISA_DMA
Ralf Baechle8a118c32011-06-01 19:05:10 +0100666 select HAVE_PCSPKR_PLATFORM
Ralf Baechle5e83d432005-10-29 19:32:41 +0100667 select HW_HAS_EISA
668 select HW_HAS_PCI
Thomas Bogendoerferc066a322006-12-28 18:22:32 +0100669 select IRQ_CPU
Ralf Baechled865bea2007-10-11 23:46:10 +0100670 select I8253
Ralf Baechle5e83d432005-10-29 19:32:41 +0100671 select I8259
672 select ISA
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200673 select SWAP_IO_SPACE if CPU_BIG_ENDIAN
Ralf Baechle7cf80532005-10-20 22:33:09 +0100674 select SYS_HAS_CPU_R4X00
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200675 select SYS_HAS_CPU_R5000
Thomas Bogendoerferc066a322006-12-28 18:22:32 +0100676 select SYS_HAS_CPU_R10000
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200677 select R5000_CPU_SCACHE
Ralf Baechle36a88532007-03-01 11:56:43 +0000678 select SYS_HAS_EARLY_PRINTK
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -0700679 select SYS_SUPPORTS_32BIT_KERNEL
Kees Cook7d607172013-01-16 18:53:19 -0800680 select SYS_SUPPORTS_64BIT_KERNEL
Thomas Bogendoerfer4a0312f2006-06-13 13:59:01 +0200681 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechle5e83d432005-10-29 19:32:41 +0100682 select SYS_SUPPORTS_HIGHMEM
683 select SYS_SUPPORTS_LITTLE_ENDIAN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700684 help
Thomas Bogendoerfer14b36af2006-12-05 17:05:44 +0100685 The SNI RM200/300/400 are MIPS-based machines manufactured by
686 Siemens Nixdorf Informationssysteme (SNI), parent company of Pyramid
Ralf Baechle5e83d432005-10-29 19:32:41 +0100687 Technology and now in turn merged with Fujitsu. Say Y here to
688 support this machine type.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700689
Atsushi Nemotoedcaf1a2008-07-11 23:27:54 +0900690config MACH_TX39XX
691 bool "Toshiba TX39 series based machines"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100692
Atsushi Nemotoedcaf1a2008-07-11 23:27:54 +0900693config MACH_TX49XX
694 bool "Toshiba TX49 series based machines"
Ralf Baechle23fbee92005-07-25 22:45:45 +0000695
Ralf Baechle73b43902008-07-16 16:12:25 +0100696config MIKROTIK_RB532
697 bool "Mikrotik RB532 boards"
698 select CEVT_R4K
699 select CSRC_R4K
700 select DMA_NONCOHERENT
Ralf Baechle73b43902008-07-16 16:12:25 +0100701 select HW_HAS_PCI
702 select IRQ_CPU
703 select SYS_HAS_CPU_MIPS32_R1
704 select SYS_SUPPORTS_32BIT_KERNEL
705 select SYS_SUPPORTS_LITTLE_ENDIAN
706 select SWAP_IO_SPACE
707 select BOOT_RAW
Florian Fainellid888e252008-08-23 18:54:34 +0200708 select ARCH_REQUIRE_GPIOLIB
Ralf Baechle73b43902008-07-16 16:12:25 +0100709 help
710 Support the Mikrotik(tm) RouterBoard 532 series,
711 based on the IDT RC32434 SoC.
712
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900713config WR_PPMC
714 bool "Wind River PPMC board"
Ralf Baechle42f77542007-10-18 17:48:11 +0100715 select CEVT_R4K
Ralf Baechle940f6b42007-11-24 22:33:28 +0000716 select CSRC_R4K
Yoichi Yuasaade299d2007-07-27 15:25:43 +0900717 select IRQ_CPU
718 select BOOT_ELF32
719 select DMA_NONCOHERENT
720 select HW_HAS_PCI
721 select PCI_GT64XXX_PCI0
722 select SWAP_IO_SPACE
723 select SYS_HAS_CPU_MIPS32_R1
724 select SYS_HAS_CPU_MIPS32_R2
725 select SYS_HAS_CPU_MIPS64_R1
726 select SYS_HAS_CPU_NEVADA
727 select SYS_HAS_CPU_RM7000
728 select SYS_SUPPORTS_32BIT_KERNEL
729 select SYS_SUPPORTS_64BIT_KERNEL
730 select SYS_SUPPORTS_BIG_ENDIAN
731 select SYS_SUPPORTS_LITTLE_ENDIAN
732 help
733 This enables support for the Wind River MIPS32 4KC PPMC evaluation
734 board, which is based on GT64120 bridge chip.
735
David Daney9ddebc42013-05-22 15:10:46 +0000736config CAVIUM_OCTEON_SOC
737 bool "Cavium Networks Octeon SoC based boards"
David Daneya86c7f72008-12-11 15:33:38 -0800738 select CEVT_R4K
739 select 64BIT_PHYS_ADDR
740 select DMA_COHERENT
741 select SYS_SUPPORTS_64BIT_KERNEL
742 select SYS_SUPPORTS_BIG_ENDIAN
Ralf Baechlef65aad42012-10-17 00:39:09 +0200743 select EDAC_SUPPORT
Ralf Baechle773cb772009-06-23 10:36:38 +0100744 select SYS_SUPPORTS_HOTPLUG_CPU
David Daneya86c7f72008-12-11 15:33:38 -0800745 select SYS_HAS_EARLY_PRINTK
David Daney5e683382009-02-02 11:30:59 -0800746 select SYS_HAS_CPU_CAVIUM_OCTEON
David Daneya86c7f72008-12-11 15:33:38 -0800747 select SWAP_IO_SPACE
David Daneye8635b42009-04-23 17:44:38 -0700748 select HW_HAS_PCI
749 select ARCH_SUPPORTS_MSI
David Daneyf00e0012010-10-01 13:27:30 -0700750 select ZONE_DMA32
David Daney340fbb82010-10-08 14:47:53 -0700751 select USB_ARCH_HAS_OHCI
752 select USB_ARCH_HAS_EHCI
David Daney465aaed2011-08-20 08:44:00 -0700753 select HOLES_IN_ZONE
David Daneya86c7f72008-12-11 15:33:38 -0800754 help
755 This option supports all of the Octeon reference boards from Cavium
756 Networks. It builds a kernel that dynamically determines the Octeon
757 CPU type and supports all known board reference implementations.
758 Some of the supported boards are:
759 EBT3000
760 EBH3000
761 EBH3100
762 Thunder
763 Kodama
764 Hikari
765 Say Y here for most Octeon reference boards.
766
Jayachandran C7f058e82011-05-07 01:36:57 +0530767config NLM_XLR_BOARD
768 bool "Netlogic XLR/XLS based systems"
Jayachandran C7f058e82011-05-07 01:36:57 +0530769 select BOOT_ELF32
770 select NLM_COMMON
Jayachandran C7f058e82011-05-07 01:36:57 +0530771 select SYS_HAS_CPU_XLR
772 select SYS_SUPPORTS_SMP
773 select HW_HAS_PCI
774 select SWAP_IO_SPACE
775 select SYS_SUPPORTS_32BIT_KERNEL
776 select SYS_SUPPORTS_64BIT_KERNEL
777 select 64BIT_PHYS_ADDR
778 select SYS_SUPPORTS_BIG_ENDIAN
779 select SYS_SUPPORTS_HIGHMEM
780 select DMA_COHERENT
781 select NR_CPUS_DEFAULT_32
782 select CEVT_R4K
783 select CSRC_R4K
784 select IRQ_CPU
Ganesan Ramalingamf32671a2011-08-23 13:36:10 +0530785 select ARCH_SUPPORTS_MSI
Jayachandran Cb97215f2012-10-31 12:01:33 +0000786 select ZONE_DMA32 if 64BIT
Jayachandran C7f058e82011-05-07 01:36:57 +0530787 select SYNC_R4K
788 select SYS_HAS_EARLY_PRINTK
Jayachandran Cf35574a2012-07-24 17:28:53 +0200789 select USB_ARCH_HAS_OHCI if USB_SUPPORT
790 select USB_ARCH_HAS_EHCI if USB_SUPPORT
Jayachandran C7f058e82011-05-07 01:36:57 +0530791 help
792 Support for systems based on Netlogic XLR and XLS processors.
793 Say Y here if you have a XLR or XLS based board.
794
Jayachandran C1c773ea2011-11-16 00:21:28 +0000795config NLM_XLP_BOARD
796 bool "Netlogic XLP based systems"
Jayachandran C1c773ea2011-11-16 00:21:28 +0000797 select BOOT_ELF32
798 select NLM_COMMON
799 select SYS_HAS_CPU_XLP
800 select SYS_SUPPORTS_SMP
801 select HW_HAS_PCI
Jayachandran C1c773ea2011-11-16 00:21:28 +0000802 select SYS_SUPPORTS_32BIT_KERNEL
803 select SYS_SUPPORTS_64BIT_KERNEL
804 select 64BIT_PHYS_ADDR
805 select SYS_SUPPORTS_BIG_ENDIAN
806 select SYS_SUPPORTS_LITTLE_ENDIAN
807 select SYS_SUPPORTS_HIGHMEM
808 select DMA_COHERENT
809 select NR_CPUS_DEFAULT_32
810 select CEVT_R4K
811 select CSRC_R4K
812 select IRQ_CPU
Jayachandran Cb97215f2012-10-31 12:01:33 +0000813 select ZONE_DMA32 if 64BIT
Jayachandran C1c773ea2011-11-16 00:21:28 +0000814 select SYNC_R4K
815 select SYS_HAS_EARLY_PRINTK
Jayachandran C2f6528e2012-07-13 21:53:22 +0530816 select USE_OF
Jayachandran C1c773ea2011-11-16 00:21:28 +0000817 help
818 This board is based on Netlogic XLP Processor.
819 Say Y here if you have a XLP based board.
820
Linus Torvalds1da177e2005-04-16 15:20:36 -0700821endchoice
822
Ralf Baechlee8c7c482008-09-16 19:12:16 +0200823source "arch/mips/alchemy/Kconfig"
Gabor Juhosd4a67d92011-01-04 21:28:14 +0100824source "arch/mips/ath79/Kconfig"
Hauke Mehrtensa656ffc2011-07-23 01:20:13 +0200825source "arch/mips/bcm47xx/Kconfig"
Maxime Bizone7300d02009-08-18 13:23:37 +0100826source "arch/mips/bcm63xx/Kconfig"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100827source "arch/mips/jazz/Kconfig"
Lars-Peter Clausen5ebabe52010-06-19 04:08:19 +0000828source "arch/mips/jz4740/Kconfig"
John Crispin8ec6d932011-03-30 09:27:48 +0200829source "arch/mips/lantiq/Kconfig"
Brian Murphy1f21d2b2007-08-21 22:34:16 +0200830source "arch/mips/lasat/Kconfig"
Ralf Baechle0f3a05c2012-12-15 11:52:10 +0100831source "arch/mips/pmcs-msp71xx/Kconfig"
David VomLehna3a0f8c2009-08-30 17:15:11 -0700832source "arch/mips/powertv/Kconfig"
John Crispinae2b5bb2013-01-20 22:05:30 +0100833source "arch/mips/ralink/Kconfig"
Ralf Baechle29c48692005-02-07 01:27:14 +0000834source "arch/mips/sgi-ip27/Kconfig"
Ralf Baechle38b18f722005-02-03 14:28:23 +0000835source "arch/mips/sibyte/Kconfig"
Atsushi Nemoto22b1d702008-07-11 00:31:36 +0900836source "arch/mips/txx9/Kconfig"
Ralf Baechle5e83d432005-10-29 19:32:41 +0100837source "arch/mips/vr41xx/Kconfig"
David Daneya86c7f72008-12-11 15:33:38 -0800838source "arch/mips/cavium-octeon/Kconfig"
Wu Zhangjin85749d22009-07-02 23:26:45 +0800839source "arch/mips/loongson/Kconfig"
Kelvin Cheungca585cf2012-07-25 16:17:24 +0200840source "arch/mips/loongson1/Kconfig"
Jayachandran C7f058e82011-05-07 01:36:57 +0530841source "arch/mips/netlogic/Kconfig"
Ralf Baechle38b18f722005-02-03 14:28:23 +0000842
Ralf Baechle5e83d432005-10-29 19:32:41 +0100843endmenu
844
Linus Torvalds1da177e2005-04-16 15:20:36 -0700845config RWSEM_GENERIC_SPINLOCK
846 bool
847 default y
848
849config RWSEM_XCHGADD_ALGORITHM
850 bool
851
David Howellsf0d1b0b2006-12-08 02:37:49 -0800852config ARCH_HAS_ILOG2_U32
853 bool
854 default n
855
856config ARCH_HAS_ILOG2_U64
857 bool
858 default n
859
Akinobu Mita3c9ee7e2006-03-26 01:39:30 -0800860config GENERIC_HWEIGHT
861 bool
862 default y
863
Linus Torvalds1da177e2005-04-16 15:20:36 -0700864config GENERIC_CALIBRATE_DELAY
865 bool
866 default y
867
Ingo Molnarae1e9132008-11-11 09:05:16 +0100868config SCHED_OMIT_FRAME_POINTER
Atsushi Nemoto1cc89032006-04-04 13:11:45 +0900869 bool
870 default y
871
Linus Torvalds1da177e2005-04-16 15:20:36 -0700872#
873# Select some configuration options automatically based on user selections.
874#
Ralf Baechle0e2794b2012-11-15 20:48:50 +0100875config FW_ARC
Linus Torvalds1da177e2005-04-16 15:20:36 -0700876 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700877
Ralf Baechle61ed2422005-09-15 08:52:34 +0000878config ARCH_MAY_HAVE_PC_FDC
879 bool
880
Marc St-Jean9267a302007-06-14 15:55:31 -0600881config BOOT_RAW
882 bool
883
Ralf Baechle217dd112007-11-01 01:57:55 +0000884config CEVT_BCM1480
885 bool
886
Yoichi Yuasa6457d9f2008-04-25 12:11:44 +0900887config CEVT_DS1287
888 bool
889
Yoichi Yuasa1097c6a2007-10-22 19:43:15 +0900890config CEVT_GT641XX
891 bool
892
Ralf Baechle42f77542007-10-18 17:48:11 +0100893config CEVT_R4K
894 bool
895
Raghu Gandham0ab2b7d2013-04-10 16:30:12 -0500896config CEVT_GIC
897 bool
898
Ralf Baechle217dd112007-11-01 01:57:55 +0000899config CEVT_SB1250
900 bool
901
Atsushi Nemoto229f7732007-10-25 01:34:09 +0900902config CEVT_TXX9
903 bool
904
Ralf Baechle217dd112007-11-01 01:57:55 +0000905config CSRC_BCM1480
906 bool
907
Yoichi Yuasa42474172008-04-24 09:48:40 +0900908config CSRC_IOASIC
909 bool
910
David VomLehna3a0f8c2009-08-30 17:15:11 -0700911config CSRC_POWERTV
912 bool
913
Ralf Baechle940f6b42007-11-24 22:33:28 +0000914config CSRC_R4K
915 bool
916
Steven J. Hill778eeb12012-12-07 03:51:04 +0000917config CSRC_GIC
918 bool
919
Ralf Baechle217dd112007-11-01 01:57:55 +0000920config CSRC_SB1250
921 bool
922
Atsushi Nemotoa9aec7f2008-04-05 00:55:41 +0900923config GPIO_TXX9
Michael Buesch7444a722008-07-25 01:46:11 -0700924 select ARCH_REQUIRE_GPIOLIB
Atsushi Nemotoa9aec7f2008-04-05 00:55:41 +0900925 bool
926
Ralf Baechle0e2794b2012-11-15 20:48:50 +0100927config FW_CFE
Aurelien Jarnodf78b5c2007-09-05 08:58:26 +0200928 bool
929
FUJITA Tomonori4bafad92010-09-03 09:49:12 +0900930config ARCH_DMA_ADDR_T_64BIT
931 def_bool (HIGHMEM && 64BIT_PHYS_ADDR) || 64BIT
932
Ralf Baechle4ce588c2005-09-03 15:56:19 -0700933config DMA_COHERENT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700934 bool
935
Ralf Baechle4ce588c2005-09-03 15:56:19 -0700936config DMA_NONCOHERENT
937 bool
FUJITA Tomonorie1e02b32010-03-10 15:23:25 -0800938 select NEED_DMA_MAP_STATE
Ralf Baechle4ce588c2005-09-03 15:56:19 -0700939
FUJITA Tomonorie1e02b32010-03-10 15:23:25 -0800940config NEED_DMA_MAP_STATE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700941 bool
942
Ralf Baechle36a88532007-03-01 11:56:43 +0000943config SYS_HAS_EARLY_PRINTK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700944 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700945
Ralf Baechledbb74542007-08-07 14:52:17 +0100946config HOTPLUG_CPU
Ralf Baechle1b2bc752009-06-23 10:00:31 +0100947 bool "Support for hot-pluggable CPUs"
948 depends on SMP && HOTPLUG && SYS_SUPPORTS_HOTPLUG_CPU
949 help
950 Say Y here to allow turning CPUs off and on. CPUs can be
951 controlled through /sys/devices/system/cpu.
952 (Note: power management support will enable this option
953 automatically on SMP systems. )
954 Say N if you want to disable CPU hotplug.
955
956config SYS_SUPPORTS_HOTPLUG_CPU
Ralf Baechledbb74542007-08-07 14:52:17 +0100957 bool
Ralf Baechledbb74542007-08-07 14:52:17 +0100958
Linus Torvalds1da177e2005-04-16 15:20:36 -0700959config I8259
960 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700961
Linus Torvalds1da177e2005-04-16 15:20:36 -0700962config MIPS_BONITO64
963 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700964
965config MIPS_MSC
966 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700967
Brian Murphy1f21d2b2007-08-21 22:34:16 +0200968config MIPS_NILE4
969 bool
970
Ralf Baechle39b8d522008-04-28 17:14:26 +0100971config SYNC_R4K
972 bool
973
Gabor Juhos487d70d2010-11-23 16:06:25 +0100974config MIPS_MACHINE
975 def_bool n
976
Maciej W. Rozyckid388d682007-05-29 15:08:07 +0100977config NO_IOPORT
978 def_bool n
979
Ralf Baechle8313da32007-08-24 16:48:30 +0100980config GENERIC_ISA_DMA
981 bool
982 select ZONE_DMA if GENERIC_ISA_DMA_SUPPORT_BROKEN=n
Namhyung Kima35bee82010-10-18 12:55:21 +0900983 select ISA_DMA_API
Ralf Baechle8313da32007-08-24 16:48:30 +0100984
Ralf Baechleaa414df2006-11-30 01:14:51 +0000985config GENERIC_ISA_DMA_SUPPORT_BROKEN
986 bool
Ralf Baechle8313da32007-08-24 16:48:30 +0100987 select GENERIC_ISA_DMA
Ralf Baechleaa414df2006-11-30 01:14:51 +0000988
Namhyung Kima35bee82010-10-18 12:55:21 +0900989config ISA_DMA_API
990 bool
991
David Daney465aaed2011-08-20 08:44:00 -0700992config HOLES_IN_ZONE
993 bool
994
Ralf Baechle5e83d432005-10-29 19:32:41 +0100995#
Masanari Iida6b2aac42012-04-14 00:14:11 +0900996# Endianness selection. Sufficiently obscure so many users don't know what to
Ralf Baechle5e83d432005-10-29 19:32:41 +0100997# answer,so we try hard to limit the available choices. Also the use of a
998# choice statement should be more obvious to the user.
999#
1000choice
Masanari Iida6b2aac42012-04-14 00:14:11 +09001001 prompt "Endianness selection"
Linus Torvalds1da177e2005-04-16 15:20:36 -07001002 help
1003 Some MIPS machines can be configured for either little or big endian
Ralf Baechle5e83d432005-10-29 19:32:41 +01001004 byte order. These modes require different kernels and a different
Matt LaPlante3cb2fcc2006-11-30 05:22:59 +01001005 Linux distribution. In general there is one preferred byteorder for a
Ralf Baechle5e83d432005-10-29 19:32:41 +01001006 particular system but some systems are just as commonly used in the
David Sterba3dde6ad2007-05-09 07:12:20 +02001007 one or the other endianness.
Ralf Baechle5e83d432005-10-29 19:32:41 +01001008
1009config CPU_BIG_ENDIAN
1010 bool "Big endian"
1011 depends on SYS_SUPPORTS_BIG_ENDIAN
1012
1013config CPU_LITTLE_ENDIAN
1014 bool "Little endian"
1015 depends on SYS_SUPPORTS_LITTLE_ENDIAN
1016 help
1017
1018endchoice
1019
David Daney22b07632010-07-23 18:41:43 -07001020config EXPORT_UASM
1021 bool
1022
Ralf Baechle21162452007-02-09 17:08:58 +00001023config SYS_SUPPORTS_APM_EMULATION
1024 bool
1025
Ralf Baechle5e83d432005-10-29 19:32:41 +01001026config SYS_SUPPORTS_BIG_ENDIAN
1027 bool
1028
1029config SYS_SUPPORTS_LITTLE_ENDIAN
1030 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001031
David Daney9cffd152009-05-27 17:47:46 -07001032config SYS_SUPPORTS_HUGETLBFS
1033 bool
1034 depends on CPU_SUPPORTS_HUGEPAGES && 64BIT
1035 default y
1036
David Daneyaa1762f2012-10-17 00:48:10 +02001037config MIPS_HUGE_TLB_SUPPORT
1038 def_bool HUGETLB_PAGE || TRANSPARENT_HUGEPAGE
1039
Linus Torvalds1da177e2005-04-16 15:20:36 -07001040config IRQ_CPU
1041 bool
1042
1043config IRQ_CPU_RM7K
1044 bool
1045
Marc St-Jean9267a302007-06-14 15:55:31 -06001046config IRQ_MSP_SLP
1047 bool
1048
1049config IRQ_MSP_CIC
1050 bool
1051
Atsushi Nemoto8420fd02007-08-02 23:35:53 +09001052config IRQ_TXX9
1053 bool
1054
Yoichi Yuasad5ab1a62007-09-13 23:51:26 +09001055config IRQ_GT641XX
1056 bool
1057
Ralf Baechle39b8d522008-04-28 17:14:26 +01001058config IRQ_GIC
1059 bool
1060
Yoichi Yuasa252161e2007-03-14 21:51:26 +09001061config PCI_GT64XXX_PCI0
Linus Torvalds1da177e2005-04-16 15:20:36 -07001062 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001063
Marc St-Jean9267a302007-06-14 15:55:31 -06001064config NO_EXCEPT_FILL
1065 bool
1066
Ralf Baechlea83860c2009-03-13 21:17:57 +01001067config SOC_EMMA2RH
1068 bool
1069 select CEVT_R4K
1070 select CSRC_R4K
1071 select DMA_NONCOHERENT
1072 select IRQ_CPU
1073 select SWAP_IO_SPACE
1074 select SYS_HAS_CPU_R5500
1075 select SYS_SUPPORTS_32BIT_KERNEL
1076 select SYS_SUPPORTS_64BIT_KERNEL
1077 select SYS_SUPPORTS_BIG_ENDIAN
1078
Daniel Lairdedb63102008-06-16 15:49:21 +01001079config SOC_PNX833X
1080 bool
1081 select CEVT_R4K
1082 select CSRC_R4K
1083 select IRQ_CPU
1084 select DMA_NONCOHERENT
1085 select SYS_HAS_CPU_MIPS32_R2
1086 select SYS_SUPPORTS_32BIT_KERNEL
1087 select SYS_SUPPORTS_LITTLE_ENDIAN
1088 select SYS_SUPPORTS_BIG_ENDIAN
Daniel Lairdedb63102008-06-16 15:49:21 +01001089 select CPU_MIPSR2_IRQ_VI
1090
1091config SOC_PNX8335
1092 bool
1093 select SOC_PNX833X
1094
Linus Torvalds1da177e2005-04-16 15:20:36 -07001095config SWAP_IO_SPACE
1096 bool
1097
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +01001098config SGI_HAS_INDYDOG
1099 bool
1100
Thomas Bogendoerfer5b438c42008-07-10 20:29:55 +02001101config SGI_HAS_HAL2
1102 bool
1103
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +01001104config SGI_HAS_SEEQ
1105 bool
1106
1107config SGI_HAS_WD93
1108 bool
1109
1110config SGI_HAS_ZILOG
1111 bool
1112
1113config SGI_HAS_I8042
1114 bool
1115
1116config DEFAULT_SGI_PARTITION
1117 bool
1118
Ralf Baechle0e2794b2012-11-15 20:48:50 +01001119config FW_ARC32
Ralf Baechle5e83d432005-10-29 19:32:41 +01001120 bool
1121
Paul Bolleaaa9fad2013-03-25 09:39:54 +00001122config FW_SNIPROM
Thomas Bogendoerfer231a35d2008-01-04 23:31:07 +01001123 bool
1124
Linus Torvalds1da177e2005-04-16 15:20:36 -07001125config BOOT_ELF32
1126 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001127
1128config MIPS_L1_CACHE_SHIFT
1129 int
John Crispin80fb55a2013-01-27 09:17:20 +01001130 default "4" if MACH_DECSTATION || MIKROTIK_RB532 || PMC_MSP4200_EVAL || SOC_RT288X
Ralf Baechle0db2b742009-10-13 16:54:01 +02001131 default "6" if MIPS_CPU_SCACHE
David Daneya86c7f72008-12-11 15:33:38 -08001132 default "7" if SGI_IP22 || SGI_IP27 || SGI_IP28 || SNI_RM || CPU_CAVIUM_OCTEON
Linus Torvalds1da177e2005-04-16 15:20:36 -07001133 default "5"
1134
Linus Torvalds1da177e2005-04-16 15:20:36 -07001135config HAVE_STD_PC_SERIAL_PORT
1136 bool
1137
Linus Torvalds1da177e2005-04-16 15:20:36 -07001138config ARC_CONSOLE
1139 bool "ARC console support"
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +01001140 depends on SGI_IP22 || SGI_IP28 || (SNI_RM && CPU_LITTLE_ENDIAN)
Linus Torvalds1da177e2005-04-16 15:20:36 -07001141
1142config ARC_MEMORY
1143 bool
Thomas Bogendoerfer14b36af2006-12-05 17:05:44 +01001144 depends on MACH_JAZZ || SNI_RM || SGI_IP32
Linus Torvalds1da177e2005-04-16 15:20:36 -07001145 default y
1146
1147config ARC_PROMLIB
1148 bool
Thomas Bogendoerfere2defae2007-12-02 13:00:32 +01001149 depends on MACH_JAZZ || SNI_RM || SGI_IP22 || SGI_IP28 || SGI_IP32
Linus Torvalds1da177e2005-04-16 15:20:36 -07001150 default y
1151
Ralf Baechle0e2794b2012-11-15 20:48:50 +01001152config FW_ARC64
Linus Torvalds1da177e2005-04-16 15:20:36 -07001153 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001154
1155config BOOT_ELF64
1156 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001157
Linus Torvalds1da177e2005-04-16 15:20:36 -07001158menu "CPU selection"
1159
1160choice
1161 prompt "CPU type"
1162 default CPU_R4X00
1163
Wu Zhangjin3702bba2009-07-02 23:27:41 +08001164config CPU_LOONGSON2E
1165 bool "Loongson 2E"
1166 depends on SYS_HAS_CPU_LOONGSON2E
1167 select CPU_LOONGSON2
Fuxin Zhang2a21c732007-06-06 14:52:43 +08001168 help
1169 The Loongson 2E processor implements the MIPS III instruction set
1170 with many extensions.
1171
Lucas De Marchi25985ed2011-03-30 22:57:33 -03001172 It has an internal FPGA northbridge, which is compatible to
Wu Zhangjin6f7a2512009-11-06 18:45:05 +08001173 bonito64.
1174
1175config CPU_LOONGSON2F
1176 bool "Loongson 2F"
1177 depends on SYS_HAS_CPU_LOONGSON2F
1178 select CPU_LOONGSON2
Arnaud Patardc197da92010-04-29 11:58:54 +02001179 select ARCH_REQUIRE_GPIOLIB
Wu Zhangjin6f7a2512009-11-06 18:45:05 +08001180 help
1181 The Loongson 2F processor implements the MIPS III instruction set
1182 with many extensions.
1183
1184 Loongson2F have built-in DDR2 and PCIX controller. The PCIX controller
1185 have a similar programming interface with FPGA northbridge used in
1186 Loongson2E.
1187
Kelvin Cheungca585cf2012-07-25 16:17:24 +02001188config CPU_LOONGSON1B
1189 bool "Loongson 1B"
1190 depends on SYS_HAS_CPU_LOONGSON1B
1191 select CPU_LOONGSON1
1192 help
1193 The Loongson 1B is a 32-bit SoC, which implements the MIPS32
1194 release 2 instruction set.
1195
Ralf Baechle6e760c82005-07-06 12:08:11 +00001196config CPU_MIPS32_R1
1197 bool "MIPS32 Release 1"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001198 depends on SYS_HAS_CPU_MIPS32_R1
Ralf Baechle6e760c82005-07-06 12:08:11 +00001199 select CPU_HAS_PREFETCH
Ralf Baechle797798c2005-08-10 15:17:11 +00001200 select CPU_SUPPORTS_32BIT_KERNEL
Ralf Baechleec28f302006-03-05 00:45:33 +00001201 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle6e760c82005-07-06 12:08:11 +00001202 help
Ralf Baechle5e83d432005-10-29 19:32:41 +01001203 Choose this option to build a kernel for release 1 or later of the
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +00001204 MIPS32 architecture. Most modern embedded systems with a 32-bit
1205 MIPS processor are based on a MIPS32 processor. If you know the
1206 specific type of processor in your system, choose those that one
1207 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
1208 Release 2 of the MIPS32 architecture is available since several
1209 years so chances are you even have a MIPS32 Release 2 processor
1210 in which case you should choose CPU_MIPS32_R2 instead for better
1211 performance.
1212
1213config CPU_MIPS32_R2
1214 bool "MIPS32 Release 2"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001215 depends on SYS_HAS_CPU_MIPS32_R2
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +00001216 select CPU_HAS_PREFETCH
Ralf Baechle797798c2005-08-10 15:17:11 +00001217 select CPU_SUPPORTS_32BIT_KERNEL
Ralf Baechleec28f302006-03-05 00:45:33 +00001218 select CPU_SUPPORTS_HIGHMEM
Sanjay Lal2235a542012-11-21 18:33:59 -08001219 select HAVE_KVM
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +00001220 help
Ralf Baechle5e83d432005-10-29 19:32:41 +01001221 Choose this option to build a kernel for release 2 or later of the
Ralf Baechle6e760c82005-07-06 12:08:11 +00001222 MIPS32 architecture. Most modern embedded systems with a 32-bit
1223 MIPS processor are based on a MIPS32 processor. If you know the
1224 specific type of processor in your system, choose those that one
1225 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001226
Ralf Baechle6e760c82005-07-06 12:08:11 +00001227config CPU_MIPS64_R1
1228 bool "MIPS64 Release 1"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001229 depends on SYS_HAS_CPU_MIPS64_R1
Ralf Baechle797798c2005-08-10 15:17:11 +00001230 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001231 select CPU_SUPPORTS_32BIT_KERNEL
1232 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechleec28f302006-03-05 00:45:33 +00001233 select CPU_SUPPORTS_HIGHMEM
David Daney9cffd152009-05-27 17:47:46 -07001234 select CPU_SUPPORTS_HUGEPAGES
Ralf Baechle6e760c82005-07-06 12:08:11 +00001235 help
1236 Choose this option to build a kernel for release 1 or later of the
1237 MIPS64 architecture. Many modern embedded systems with a 64-bit
1238 MIPS processor are based on a MIPS64 processor. If you know the
1239 specific type of processor in your system, choose those that one
1240 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +00001241 Release 2 of the MIPS64 architecture is available since several
1242 years so chances are you even have a MIPS64 Release 2 processor
1243 in which case you should choose CPU_MIPS64_R2 instead for better
1244 performance.
1245
1246config CPU_MIPS64_R2
1247 bool "MIPS64 Release 2"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001248 depends on SYS_HAS_CPU_MIPS64_R2
Ralf Baechle797798c2005-08-10 15:17:11 +00001249 select CPU_HAS_PREFETCH
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +00001250 select CPU_SUPPORTS_32BIT_KERNEL
1251 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechleec28f302006-03-05 00:45:33 +00001252 select CPU_SUPPORTS_HIGHMEM
David Daney9cffd152009-05-27 17:47:46 -07001253 select CPU_SUPPORTS_HUGEPAGES
Ralf Baechle1e5f1ca2005-07-12 14:51:22 +00001254 help
1255 Choose this option to build a kernel for release 2 or later of the
1256 MIPS64 architecture. Many modern embedded systems with a 64-bit
1257 MIPS processor are based on a MIPS64 processor. If you know the
1258 specific type of processor in your system, choose those that one
1259 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001260
1261config CPU_R3000
1262 bool "R3000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001263 depends on SYS_HAS_CPU_R3000
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001264 select CPU_HAS_WB
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001265 select CPU_SUPPORTS_32BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +00001266 select CPU_SUPPORTS_HIGHMEM
Linus Torvalds1da177e2005-04-16 15:20:36 -07001267 help
1268 Please make sure to pick the right CPU type. Linux/MIPS is not
1269 designed to be generic, i.e. Kernels compiled for R3000 CPUs will
1270 *not* work on R4000 machines and vice versa. However, since most
1271 of the supported machines have an R4000 (or similar) CPU, R4x00
1272 might be a safe bet. If the resulting kernel does not work,
1273 try to recompile with R3000.
1274
1275config CPU_TX39XX
1276 bool "R39XX"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001277 depends on SYS_HAS_CPU_TX39XX
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001278 select CPU_SUPPORTS_32BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001279
1280config CPU_VR41XX
1281 bool "R41xx"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001282 depends on SYS_HAS_CPU_VR41XX
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001283 select CPU_SUPPORTS_32BIT_KERNEL
1284 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001285 help
Ralf Baechle5e83d432005-10-29 19:32:41 +01001286 The options selects support for the NEC VR4100 series of processors.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001287 Only choose this option if you have one of these processors as a
1288 kernel built with this option will not run on any other type of
1289 processor or vice versa.
1290
1291config CPU_R4300
1292 bool "R4300"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001293 depends on SYS_HAS_CPU_R4300
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001294 select CPU_SUPPORTS_32BIT_KERNEL
1295 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001296 help
1297 MIPS Technologies R4300-series processors.
1298
1299config CPU_R4X00
1300 bool "R4x00"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001301 depends on SYS_HAS_CPU_R4X00
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001302 select CPU_SUPPORTS_32BIT_KERNEL
1303 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle970d0322012-10-18 13:54:15 +02001304 select CPU_SUPPORTS_HUGEPAGES
Linus Torvalds1da177e2005-04-16 15:20:36 -07001305 help
1306 MIPS Technologies R4000-series processors other than 4300, including
1307 the R4000, R4400, R4600, and 4700.
1308
1309config CPU_TX49XX
1310 bool "R49XX"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001311 depends on SYS_HAS_CPU_TX49XX
Atsushi Nemotode862b42006-03-17 12:59:22 +09001312 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001313 select CPU_SUPPORTS_32BIT_KERNEL
1314 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle970d0322012-10-18 13:54:15 +02001315 select CPU_SUPPORTS_HUGEPAGES
Linus Torvalds1da177e2005-04-16 15:20:36 -07001316
1317config CPU_R5000
1318 bool "R5000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001319 depends on SYS_HAS_CPU_R5000
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001320 select CPU_SUPPORTS_32BIT_KERNEL
1321 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle970d0322012-10-18 13:54:15 +02001322 select CPU_SUPPORTS_HUGEPAGES
Linus Torvalds1da177e2005-04-16 15:20:36 -07001323 help
1324 MIPS Technologies R5000-series processors other than the Nevada.
1325
1326config CPU_R5432
1327 bool "R5432"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001328 depends on SYS_HAS_CPU_R5432
Ralf Baechle5e83d432005-10-29 19:32:41 +01001329 select CPU_SUPPORTS_32BIT_KERNEL
1330 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle970d0322012-10-18 13:54:15 +02001331 select CPU_SUPPORTS_HUGEPAGES
Linus Torvalds1da177e2005-04-16 15:20:36 -07001332
Shinya Kuribayashi542c1022008-10-24 01:27:57 +09001333config CPU_R5500
1334 bool "R5500"
1335 depends on SYS_HAS_CPU_R5500
Shinya Kuribayashi542c1022008-10-24 01:27:57 +09001336 select CPU_SUPPORTS_32BIT_KERNEL
1337 select CPU_SUPPORTS_64BIT_KERNEL
David Daney9cffd152009-05-27 17:47:46 -07001338 select CPU_SUPPORTS_HUGEPAGES
Shinya Kuribayashi542c1022008-10-24 01:27:57 +09001339 help
1340 NEC VR5500 and VR5500A series processors implement 64-bit MIPS IV
1341 instruction set.
1342
Linus Torvalds1da177e2005-04-16 15:20:36 -07001343config CPU_R6000
1344 bool "R6000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001345 depends on SYS_HAS_CPU_R6000
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001346 select CPU_SUPPORTS_32BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001347 help
1348 MIPS Technologies R6000 and R6000A series processors. Note these
Chris Dearmanc09b47d2006-06-20 17:15:20 +01001349 processors are extremely rare and the support for them is incomplete.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001350
1351config CPU_NEVADA
1352 bool "RM52xx"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001353 depends on SYS_HAS_CPU_NEVADA
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001354 select CPU_SUPPORTS_32BIT_KERNEL
1355 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle970d0322012-10-18 13:54:15 +02001356 select CPU_SUPPORTS_HUGEPAGES
Linus Torvalds1da177e2005-04-16 15:20:36 -07001357 help
1358 QED / PMC-Sierra RM52xx-series ("Nevada") processors.
1359
1360config CPU_R8000
1361 bool "R8000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001362 depends on SYS_HAS_CPU_R8000
Ralf Baechle5e83d432005-10-29 19:32:41 +01001363 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001364 select CPU_SUPPORTS_64BIT_KERNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001365 help
1366 MIPS Technologies R8000 processors. Note these processors are
1367 uncommon and the support for them is incomplete.
1368
1369config CPU_R10000
1370 bool "R10000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001371 depends on SYS_HAS_CPU_R10000
Ralf Baechle5e83d432005-10-29 19:32:41 +01001372 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001373 select CPU_SUPPORTS_32BIT_KERNEL
1374 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +00001375 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle970d0322012-10-18 13:54:15 +02001376 select CPU_SUPPORTS_HUGEPAGES
Linus Torvalds1da177e2005-04-16 15:20:36 -07001377 help
1378 MIPS Technologies R10000-series processors.
1379
1380config CPU_RM7000
1381 bool "RM7000"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001382 depends on SYS_HAS_CPU_RM7000
Ralf Baechle5e83d432005-10-29 19:32:41 +01001383 select CPU_HAS_PREFETCH
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001384 select CPU_SUPPORTS_32BIT_KERNEL
1385 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +00001386 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle970d0322012-10-18 13:54:15 +02001387 select CPU_SUPPORTS_HUGEPAGES
Linus Torvalds1da177e2005-04-16 15:20:36 -07001388
1389config CPU_SB1
1390 bool "SB1"
Ralf Baechle7cf80532005-10-20 22:33:09 +01001391 depends on SYS_HAS_CPU_SB1
Yoichi Yuasaed5ba2f2005-09-03 15:56:21 -07001392 select CPU_SUPPORTS_32BIT_KERNEL
1393 select CPU_SUPPORTS_64BIT_KERNEL
Ralf Baechle797798c2005-08-10 15:17:11 +00001394 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle970d0322012-10-18 13:54:15 +02001395 select CPU_SUPPORTS_HUGEPAGES
Ralf Baechle0004a9d2006-10-31 03:45:07 +00001396 select WEAK_ORDERING
Linus Torvalds1da177e2005-04-16 15:20:36 -07001397
David Daneya86c7f72008-12-11 15:33:38 -08001398config CPU_CAVIUM_OCTEON
1399 bool "Cavium Octeon processor"
David Daney5e683382009-02-02 11:30:59 -08001400 depends on SYS_HAS_CPU_CAVIUM_OCTEON
Yoichi Yuasa7ee91de2012-07-19 09:11:15 +02001401 select ARCH_SPARSEMEM_ENABLE
David Daneya86c7f72008-12-11 15:33:38 -08001402 select CPU_HAS_PREFETCH
1403 select CPU_SUPPORTS_64BIT_KERNEL
1404 select SYS_SUPPORTS_SMP
1405 select NR_CPUS_DEFAULT_16
1406 select WEAK_ORDERING
David Daneya86c7f72008-12-11 15:33:38 -08001407 select CPU_SUPPORTS_HIGHMEM
David Daney9cffd152009-05-27 17:47:46 -07001408 select CPU_SUPPORTS_HUGEPAGES
David Daney7ed18152012-07-05 18:12:38 +02001409 select LIBFDT
1410 select USE_OF
Florian Fainelli9296d942013-04-09 14:29:26 +02001411 select USB_EHCI_BIG_ENDIAN_MMIO
David Daneya86c7f72008-12-11 15:33:38 -08001412 help
1413 The Cavium Octeon processor is a highly integrated chip containing
1414 many ethernet hardware widgets for networking tasks. The processor
1415 can have up to 16 Mips64v2 cores and 8 integrated gigabit ethernets.
1416 Full details can be found at http://www.caviumnetworks.com.
1417
Kevin Cernekeec1c0c462010-10-17 10:56:53 -07001418config CPU_BMIPS3300
1419 bool "BMIPS3300"
1420 depends on SYS_HAS_CPU_BMIPS3300
Kevin Cernekee1bbb6c12011-11-10 22:30:24 -08001421 select CPU_BMIPS
Kevin Cernekeec1c0c462010-10-17 10:56:53 -07001422 help
1423 Broadcom BMIPS3300 processors.
1424
1425config CPU_BMIPS4350
1426 bool "BMIPS4350"
1427 depends on SYS_HAS_CPU_BMIPS4350
Kevin Cernekee1bbb6c12011-11-10 22:30:24 -08001428 select CPU_BMIPS
Kevin Cernekeec1c0c462010-10-17 10:56:53 -07001429 select SYS_SUPPORTS_SMP
1430 select SYS_SUPPORTS_HOTPLUG_CPU
Kevin Cernekeec1c0c462010-10-17 10:56:53 -07001431 help
1432 Broadcom BMIPS4350 ("VIPER") processors.
1433
1434config CPU_BMIPS4380
1435 bool "BMIPS4380"
1436 depends on SYS_HAS_CPU_BMIPS4380
Kevin Cernekee1bbb6c12011-11-10 22:30:24 -08001437 select CPU_BMIPS
Kevin Cernekeec1c0c462010-10-17 10:56:53 -07001438 select SYS_SUPPORTS_SMP
1439 select SYS_SUPPORTS_HOTPLUG_CPU
Kevin Cernekeec1c0c462010-10-17 10:56:53 -07001440 help
1441 Broadcom BMIPS4380 processors.
1442
1443config CPU_BMIPS5000
1444 bool "BMIPS5000"
1445 depends on SYS_HAS_CPU_BMIPS5000
Kevin Cernekee1bbb6c12011-11-10 22:30:24 -08001446 select CPU_BMIPS
Kevin Cernekeec1c0c462010-10-17 10:56:53 -07001447 select CPU_SUPPORTS_HIGHMEM
Kevin Cernekee1bbb6c12011-11-10 22:30:24 -08001448 select MIPS_CPU_SCACHE
Kevin Cernekeec1c0c462010-10-17 10:56:53 -07001449 select SYS_SUPPORTS_SMP
1450 select SYS_SUPPORTS_HOTPLUG_CPU
Kevin Cernekeec1c0c462010-10-17 10:56:53 -07001451 help
1452 Broadcom BMIPS5000 processors.
1453
Jayachandran C7f058e82011-05-07 01:36:57 +05301454config CPU_XLR
1455 bool "Netlogic XLR SoC"
1456 depends on SYS_HAS_CPU_XLR
1457 select CPU_SUPPORTS_32BIT_KERNEL
1458 select CPU_SUPPORTS_64BIT_KERNEL
1459 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle970d0322012-10-18 13:54:15 +02001460 select CPU_SUPPORTS_HUGEPAGES
Jayachandran C7f058e82011-05-07 01:36:57 +05301461 select WEAK_ORDERING
1462 select WEAK_REORDERING_BEYOND_LLSC
Jayachandran C7f058e82011-05-07 01:36:57 +05301463 help
1464 Netlogic Microsystems XLR/XLS processors.
Jayachandran C1c773ea2011-11-16 00:21:28 +00001465
1466config CPU_XLP
1467 bool "Netlogic XLP SoC"
1468 depends on SYS_HAS_CPU_XLP
1469 select CPU_SUPPORTS_32BIT_KERNEL
1470 select CPU_SUPPORTS_64BIT_KERNEL
1471 select CPU_SUPPORTS_HIGHMEM
Jayachandran C1c773ea2011-11-16 00:21:28 +00001472 select WEAK_ORDERING
1473 select WEAK_REORDERING_BEYOND_LLSC
1474 select CPU_HAS_PREFETCH
Jayachandran Cd6504842012-10-31 12:01:29 +00001475 select CPU_MIPSR2
Jayachandran C1c773ea2011-11-16 00:21:28 +00001476 help
1477 Netlogic Microsystems XLP processors.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001478endchoice
1479
Wu Zhangjin622844b2010-04-10 20:04:42 +08001480if CPU_LOONGSON2F
1481config CPU_NOP_WORKAROUNDS
1482 bool
1483
1484config CPU_JUMP_WORKAROUNDS
1485 bool
1486
1487config CPU_LOONGSON2F_WORKAROUNDS
1488 bool "Loongson 2F Workarounds"
1489 default y
1490 select CPU_NOP_WORKAROUNDS
1491 select CPU_JUMP_WORKAROUNDS
1492 help
1493 Loongson 2F01 / 2F02 processors have the NOP & JUMP issues which
1494 require workarounds. Without workarounds the system may hang
1495 unexpectedly. For more information please refer to the gas
1496 -mfix-loongson2f-nop and -mfix-loongson2f-jump options.
1497
1498 Loongson 2F03 and later have fixed these issues and no workarounds
1499 are needed. The workarounds have no significant side effect on them
1500 but may decrease the performance of the system so this option should
1501 be disabled unless the kernel is intended to be run on 2F01 or 2F02
1502 systems.
1503
1504 If unsure, please say Y.
1505endif # CPU_LOONGSON2F
1506
Wu Zhangjin1b93b3c2009-10-14 18:12:16 +08001507config SYS_SUPPORTS_ZBOOT
1508 bool
1509 select HAVE_KERNEL_GZIP
1510 select HAVE_KERNEL_BZIP2
1511 select HAVE_KERNEL_LZMA
Wu Zhangjinfe1d45e2010-01-15 20:34:46 +08001512 select HAVE_KERNEL_LZO
Wu Zhangjin1b93b3c2009-10-14 18:12:16 +08001513
1514config SYS_SUPPORTS_ZBOOT_UART16550
1515 bool
1516 select SYS_SUPPORTS_ZBOOT
1517
Wu Zhangjin3702bba2009-07-02 23:27:41 +08001518config CPU_LOONGSON2
1519 bool
1520 select CPU_SUPPORTS_32BIT_KERNEL
1521 select CPU_SUPPORTS_64BIT_KERNEL
1522 select CPU_SUPPORTS_HIGHMEM
Ralf Baechle970d0322012-10-18 13:54:15 +02001523 select CPU_SUPPORTS_HUGEPAGES
Wu Zhangjin3702bba2009-07-02 23:27:41 +08001524
Kelvin Cheungca585cf2012-07-25 16:17:24 +02001525config CPU_LOONGSON1
1526 bool
1527 select CPU_MIPS32
1528 select CPU_MIPSR2
1529 select CPU_HAS_PREFETCH
1530 select CPU_SUPPORTS_32BIT_KERNEL
1531 select CPU_SUPPORTS_HIGHMEM
1532
Kevin Cernekee1bbb6c12011-11-10 22:30:24 -08001533config CPU_BMIPS
1534 bool
1535 select CPU_MIPS32
1536 select CPU_SUPPORTS_32BIT_KERNEL
1537 select DMA_NONCOHERENT
1538 select IRQ_CPU
1539 select SWAP_IO_SPACE
1540 select WEAK_ORDERING
1541
Wu Zhangjin3702bba2009-07-02 23:27:41 +08001542config SYS_HAS_CPU_LOONGSON2E
Fuxin Zhang2a21c732007-06-06 14:52:43 +08001543 bool
1544
Wu Zhangjin6f7a2512009-11-06 18:45:05 +08001545config SYS_HAS_CPU_LOONGSON2F
1546 bool
Wu Zhangjin55045ff2009-11-11 13:39:12 +08001547 select CPU_SUPPORTS_CPUFREQ
1548 select CPU_SUPPORTS_ADDRWINCFG if 64BIT
Wu Zhangjin22f1fdf2009-11-11 13:59:23 +08001549 select CPU_SUPPORTS_UNCACHED_ACCELERATED
Wu Zhangjin6f7a2512009-11-06 18:45:05 +08001550
Kelvin Cheungca585cf2012-07-25 16:17:24 +02001551config SYS_HAS_CPU_LOONGSON1B
1552 bool
1553
Ralf Baechle7cf80532005-10-20 22:33:09 +01001554config SYS_HAS_CPU_MIPS32_R1
1555 bool
1556
1557config SYS_HAS_CPU_MIPS32_R2
1558 bool
1559
1560config SYS_HAS_CPU_MIPS64_R1
1561 bool
1562
1563config SYS_HAS_CPU_MIPS64_R2
1564 bool
1565
1566config SYS_HAS_CPU_R3000
1567 bool
1568
1569config SYS_HAS_CPU_TX39XX
1570 bool
1571
1572config SYS_HAS_CPU_VR41XX
1573 bool
1574
1575config SYS_HAS_CPU_R4300
1576 bool
1577
1578config SYS_HAS_CPU_R4X00
1579 bool
1580
1581config SYS_HAS_CPU_TX49XX
1582 bool
1583
1584config SYS_HAS_CPU_R5000
1585 bool
1586
1587config SYS_HAS_CPU_R5432
1588 bool
1589
Shinya Kuribayashi542c1022008-10-24 01:27:57 +09001590config SYS_HAS_CPU_R5500
1591 bool
1592
Ralf Baechle7cf80532005-10-20 22:33:09 +01001593config SYS_HAS_CPU_R6000
1594 bool
1595
1596config SYS_HAS_CPU_NEVADA
1597 bool
1598
1599config SYS_HAS_CPU_R8000
1600 bool
1601
1602config SYS_HAS_CPU_R10000
1603 bool
1604
1605config SYS_HAS_CPU_RM7000
1606 bool
1607
Ralf Baechle7cf80532005-10-20 22:33:09 +01001608config SYS_HAS_CPU_SB1
1609 bool
1610
David Daney5e683382009-02-02 11:30:59 -08001611config SYS_HAS_CPU_CAVIUM_OCTEON
1612 bool
1613
Kevin Cernekeec1c0c462010-10-17 10:56:53 -07001614config SYS_HAS_CPU_BMIPS3300
1615 bool
1616
1617config SYS_HAS_CPU_BMIPS4350
1618 bool
1619
1620config SYS_HAS_CPU_BMIPS4380
1621 bool
1622
1623config SYS_HAS_CPU_BMIPS5000
1624 bool
1625
Jayachandran C7f058e82011-05-07 01:36:57 +05301626config SYS_HAS_CPU_XLR
1627 bool
1628
Jayachandran C1c773ea2011-11-16 00:21:28 +00001629config SYS_HAS_CPU_XLP
1630 bool
1631
Ralf Baechle17099b12007-07-14 13:24:05 +01001632#
1633# CPU may reorder R->R, R->W, W->R, W->W
1634# Reordering beyond LL and SC is handled in WEAK_REORDERING_BEYOND_LLSC
1635#
Ralf Baechle0004a9d2006-10-31 03:45:07 +00001636config WEAK_ORDERING
1637 bool
Ralf Baechle17099b12007-07-14 13:24:05 +01001638
1639#
1640# CPU may reorder reads and writes beyond LL/SC
1641# CPU may reorder R->LL, R->LL, W->LL, W->LL, R->SC, R->SC, W->SC, W->SC
1642#
1643config WEAK_REORDERING_BEYOND_LLSC
1644 bool
Ralf Baechle5e83d432005-10-29 19:32:41 +01001645endmenu
1646
1647#
Chris Dearmanc09b47d2006-06-20 17:15:20 +01001648# These two indicate any level of the MIPS32 and MIPS64 architecture
Ralf Baechle5e83d432005-10-29 19:32:41 +01001649#
1650config CPU_MIPS32
1651 bool
1652 default y if CPU_MIPS32_R1 || CPU_MIPS32_R2
1653
1654config CPU_MIPS64
1655 bool
1656 default y if CPU_MIPS64_R1 || CPU_MIPS64_R2
1657
1658#
Chris Dearmanc09b47d2006-06-20 17:15:20 +01001659# These two indicate the revision of the architecture, either Release 1 or Release 2
Ralf Baechle5e83d432005-10-29 19:32:41 +01001660#
1661config CPU_MIPSR1
1662 bool
1663 default y if CPU_MIPS32_R1 || CPU_MIPS64_R1
1664
1665config CPU_MIPSR2
1666 bool
David Daneya86c7f72008-12-11 15:33:38 -08001667 default y if CPU_MIPS32_R2 || CPU_MIPS64_R2 || CPU_CAVIUM_OCTEON
Ralf Baechle5e83d432005-10-29 19:32:41 +01001668
1669config SYS_SUPPORTS_32BIT_KERNEL
1670 bool
1671config SYS_SUPPORTS_64BIT_KERNEL
1672 bool
1673config CPU_SUPPORTS_32BIT_KERNEL
1674 bool
1675config CPU_SUPPORTS_64BIT_KERNEL
1676 bool
Wu Zhangjin55045ff2009-11-11 13:39:12 +08001677config CPU_SUPPORTS_CPUFREQ
1678 bool
1679config CPU_SUPPORTS_ADDRWINCFG
1680 bool
David Daney9cffd152009-05-27 17:47:46 -07001681config CPU_SUPPORTS_HUGEPAGES
1682 bool
Wu Zhangjin22f1fdf2009-11-11 13:59:23 +08001683config CPU_SUPPORTS_UNCACHED_ACCELERATED
1684 bool
David Daney826222842009-10-14 12:16:56 -07001685config MIPS_PGD_C0_CONTEXT
1686 bool
Jayachandran Cd6504842012-10-31 12:01:29 +00001687 default y if 64BIT && CPU_MIPSR2 && !CPU_XLP
Ralf Baechle5e83d432005-10-29 19:32:41 +01001688
David Daney8192c9e2008-09-23 00:04:26 -07001689#
1690# Set to y for ptrace access to watch registers.
1691#
1692config HARDWARE_WATCHPOINTS
1693 bool
David Daneyf8394902009-01-05 15:29:14 -08001694 default y if CPU_MIPSR1 || CPU_MIPSR2
David Daney8192c9e2008-09-23 00:04:26 -07001695
Ralf Baechle5e83d432005-10-29 19:32:41 +01001696menu "Kernel type"
1697
1698choice
Ralf Baechle5e83d432005-10-29 19:32:41 +01001699 prompt "Kernel code model"
1700 help
1701 You should only select this option if you have a workload that
1702 actually benefits from 64-bit processing or if your machine has
1703 large memory. You will only be presented a single option in this
1704 menu if your system does not support both 32-bit and 64-bit kernels.
1705
1706config 32BIT
1707 bool "32-bit kernel"
1708 depends on CPU_SUPPORTS_32BIT_KERNEL && SYS_SUPPORTS_32BIT_KERNEL
1709 select TRAD_SIGNALS
1710 help
1711 Select this option if you want to build a 32-bit kernel.
1712config 64BIT
1713 bool "64-bit kernel"
1714 depends on CPU_SUPPORTS_64BIT_KERNEL && SYS_SUPPORTS_64BIT_KERNEL
1715 help
1716 Select this option if you want to build a 64-bit kernel.
1717
1718endchoice
1719
Sanjay Lal2235a542012-11-21 18:33:59 -08001720config KVM_GUEST
1721 bool "KVM Guest Kernel"
1722 help
1723 Select this option if building a guest kernel for KVM (Trap & Emulate) mode
1724
1725config KVM_HOST_FREQ
1726 int "KVM Host Processor Frequency (MHz)"
1727 depends on KVM_GUEST
1728 default 500
1729 help
1730 Select this option if building a guest kernel for KVM to skip
1731 RTC emulation when determining guest CPU Frequency. Instead, the guest
1732 processor frequency is automatically derived from the host frequency.
1733
Linus Torvalds1da177e2005-04-16 15:20:36 -07001734choice
1735 prompt "Kernel page size"
1736 default PAGE_SIZE_4KB
1737
1738config PAGE_SIZE_4KB
1739 bool "4kB"
Wu Zhangjin315fe622009-12-01 14:55:25 +08001740 depends on !CPU_LOONGSON2
Linus Torvalds1da177e2005-04-16 15:20:36 -07001741 help
1742 This option select the standard 4kB Linux page size. On some
1743 R3000-family processors this is the only available page size. Using
1744 4kB page size will minimize memory consumption and is therefore
1745 recommended for low memory systems.
1746
1747config PAGE_SIZE_8KB
1748 bool "8kB"
Kees Cook7d607172013-01-16 18:53:19 -08001749 depends on CPU_R8000 || CPU_CAVIUM_OCTEON
Linus Torvalds1da177e2005-04-16 15:20:36 -07001750 help
1751 Using 8kB page size will result in higher performance kernel at
1752 the price of higher memory consumption. This option is available
Ralf Baechlec52399b2009-04-02 14:07:10 +02001753 only on R8000 and cnMIPS processors. Note that you will need a
1754 suitable Linux distribution to support this.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001755
1756config PAGE_SIZE_16KB
1757 bool "16kB"
Ralf Baechle714bfad2006-05-17 14:04:30 +01001758 depends on !CPU_R3000 && !CPU_TX39XX
Linus Torvalds1da177e2005-04-16 15:20:36 -07001759 help
1760 Using 16kB page size will result in higher performance kernel at
1761 the price of higher memory consumption. This option is available on
Ralf Baechle714bfad2006-05-17 14:04:30 +01001762 all non-R3000 family processors. Note that you will need a suitable
1763 Linux distribution to support this.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001764
Ralf Baechlec52399b2009-04-02 14:07:10 +02001765config PAGE_SIZE_32KB
1766 bool "32kB"
1767 depends on CPU_CAVIUM_OCTEON
1768 help
1769 Using 32kB page size will result in higher performance kernel at
1770 the price of higher memory consumption. This option is available
1771 only on cnMIPS cores. Note that you will need a suitable Linux
1772 distribution to support this.
1773
Linus Torvalds1da177e2005-04-16 15:20:36 -07001774config PAGE_SIZE_64KB
1775 bool "64kB"
Kees Cook7d607172013-01-16 18:53:19 -08001776 depends on !CPU_R3000 && !CPU_TX39XX
Linus Torvalds1da177e2005-04-16 15:20:36 -07001777 help
1778 Using 64kB page size will result in higher performance kernel at
1779 the price of higher memory consumption. This option is available on
1780 all non-R3000 family processor. Not that at the time of this
Ralf Baechle714bfad2006-05-17 14:04:30 +01001781 writing this option is still high experimental.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001782
1783endchoice
1784
David Daneyc9bace72010-10-11 14:52:45 -07001785config FORCE_MAX_ZONEORDER
1786 int "Maximum zone order"
David Daney85f993b2012-05-04 11:09:35 -07001787 range 14 64 if HUGETLB_PAGE && PAGE_SIZE_64KB
1788 default "14" if HUGETLB_PAGE && PAGE_SIZE_64KB
1789 range 13 64 if HUGETLB_PAGE && PAGE_SIZE_32KB
1790 default "13" if HUGETLB_PAGE && PAGE_SIZE_32KB
1791 range 12 64 if HUGETLB_PAGE && PAGE_SIZE_16KB
1792 default "12" if HUGETLB_PAGE && PAGE_SIZE_16KB
David Daneyc9bace72010-10-11 14:52:45 -07001793 range 11 64
1794 default "11"
1795 help
1796 The kernel memory allocator divides physically contiguous memory
1797 blocks into "zones", where each zone is a power of two number of
1798 pages. This option selects the largest power of two that the kernel
1799 keeps in the memory allocator. If you need to allocate very large
1800 blocks of physically contiguous memory, then you may need to
1801 increase this value.
1802
1803 This config option is actually maximum order plus one. For example,
1804 a value of 11 means that the largest free memory block is 2^10 pages.
1805
1806 The page size is not necessarily 4KB. Keep this in mind
1807 when choosing a value for this option.
1808
Raghu Gandham0ab2b7d2013-04-10 16:30:12 -05001809config CEVT_GIC
1810 bool "Use GIC global counter for clock events"
1811 depends on IRQ_GIC && !(MIPS_SEAD3 || MIPS_MT_SMTC)
1812 help
1813 Use the GIC global counter for the clock events. The R4K clock
1814 event driver is always present, so if the platform ends up not
1815 detecting a GIC, it will fall back to the R4K timer for the
1816 generation of clock events.
1817
Linus Torvalds1da177e2005-04-16 15:20:36 -07001818config BOARD_SCACHE
1819 bool
1820
1821config IP22_CPU_SCACHE
1822 bool
1823 select BOARD_SCACHE
1824
Chris Dearman9318c512006-06-20 17:15:20 +01001825#
1826# Support for a MIPS32 / MIPS64 style S-caches
1827#
1828config MIPS_CPU_SCACHE
1829 bool
1830 select BOARD_SCACHE
1831
Linus Torvalds1da177e2005-04-16 15:20:36 -07001832config R5000_CPU_SCACHE
1833 bool
1834 select BOARD_SCACHE
1835
1836config RM7000_CPU_SCACHE
1837 bool
1838 select BOARD_SCACHE
1839
1840config SIBYTE_DMA_PAGEOPS
1841 bool "Use DMA to clear/copy pages"
1842 depends on CPU_SB1
1843 help
1844 Instead of using the CPU to zero and copy pages, use a Data Mover
1845 channel. These DMA channels are otherwise unused by the standard
1846 SiByte Linux port. Seems to give a small performance benefit.
1847
1848config CPU_HAS_PREFETCH
Ralf Baechlec8094b52005-08-05 14:28:54 +00001849 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07001850
Florian Fainelli3165c842012-01-31 18:18:43 +01001851config CPU_GENERIC_DUMP_TLB
1852 bool
1853 default y if !(CPU_R3000 || CPU_R6000 || CPU_R8000 || CPU_TX39XX)
1854
Florian Fainelli91405eb2012-01-31 18:18:44 +01001855config CPU_R4K_FPU
1856 bool
1857 default y if !(CPU_R3000 || CPU_R6000 || CPU_TX39XX || CPU_CAVIUM_OCTEON)
1858
Florian Fainelli62cedc42012-01-31 18:18:45 +01001859config CPU_R4K_CACHE_TLB
1860 bool
1861 default y if !(CPU_R3000 || CPU_R8000 || CPU_SB1 || CPU_TX39XX || CPU_CAVIUM_OCTEON)
1862
Ralf Baechle340ee4b2005-08-17 17:44:08 +00001863choice
1864 prompt "MIPS MT options"
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001865
1866config MIPS_MT_DISABLED
1867 bool "Disable multithreading support."
1868 help
1869 Use this option if your workload can't take advantage of
1870 MIPS hardware multithreading support. On systems that don't have
1871 the option of an MT-enabled processor this option will be the only
1872 option in this menu.
Ralf Baechle340ee4b2005-08-17 17:44:08 +00001873
Ralf Baechle59d6ab82006-10-06 17:36:20 +01001874config MIPS_MT_SMP
1875 bool "Use 1 TC on each available VPE for SMP"
1876 depends on SYS_SUPPORTS_MULTITHREADING
1877 select CPU_MIPSR2_IRQ_VI
Chris Dearmand725cf32007-05-08 14:05:39 +01001878 select CPU_MIPSR2_IRQ_EI
Ralf Baechle59d6ab82006-10-06 17:36:20 +01001879 select MIPS_MT
Ralf Baechlef510aa32007-03-16 21:58:37 +00001880 select NR_CPUS_DEFAULT_2
Ralf Baechle59d6ab82006-10-06 17:36:20 +01001881 select SMP
Ralf Baechle0ab7aef2007-03-02 20:42:04 +00001882 select SYS_SUPPORTS_SCHED_SMT if SMP
Ralf Baechle59d6ab82006-10-06 17:36:20 +01001883 select SYS_SUPPORTS_SMP
Ralf Baechle87353d82007-11-19 12:23:51 +00001884 select SMP_UP
Al Cooper399aaa22012-07-13 16:44:53 -04001885 select MIPS_PERF_SHARED_TC_COUNTERS
Ralf Baechle59d6ab82006-10-06 17:36:20 +01001886 help
Ralf Baechle25f12b32010-09-16 11:40:41 +01001887 This is a kernel model which is known a VSMP but lately has been
1888 marketesed into SMVP.
1889 Virtual SMP uses the processor's VPEs to implement virtual
1890 processors. In currently available configuration of the 34K processor
1891 this allows for a dual processor. Both processors will share the same
1892 primary caches; each will obtain the half of the TLB for it's own
1893 exclusive use. For a layman this model can be described as similar to
1894 what Intel calls Hyperthreading.
1895
1896 For further information see http://www.linux-mips.org/wiki/34K#VSMP
Ralf Baechle59d6ab82006-10-06 17:36:20 +01001897
Ralf Baechle41c594a2006-04-05 09:45:45 +01001898config MIPS_MT_SMTC
1899 bool "SMTC: Use all TCs on all VPEs for SMP"
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001900 depends on CPU_MIPS32_R2
1901 #depends on CPU_MIPS64_R2 # once there is hardware ...
1902 depends on SYS_SUPPORTS_MULTITHREADING
Ralf Baechlef7062dd2006-04-24 14:58:53 +01001903 select CPU_MIPSR2_IRQ_VI
Chris Dearmand725cf32007-05-08 14:05:39 +01001904 select CPU_MIPSR2_IRQ_EI
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001905 select MIPS_MT
Ralf Baechle130e2fb2007-02-06 16:53:15 +00001906 select NR_CPUS_DEFAULT_8
Ralf Baechle41c594a2006-04-05 09:45:45 +01001907 select SMP
Ralf Baechle73b76c72006-08-15 19:36:40 +01001908 select SYS_SUPPORTS_SMP
Ralf Baechle87353d82007-11-19 12:23:51 +00001909 select SMP_UP
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001910 help
1911 This is a kernel model which is known a SMTC or lately has been
1912 marketesed into SMVP.
Ralf Baechle25f12b32010-09-16 11:40:41 +01001913 is presenting the available TC's of the core as processors to Linux.
1914 On currently available 34K processors this means a Linux system will
1915 see up to 5 processors. The implementation of the SMTC kernel differs
1916 significantly from VSMP and cannot efficiently coexist in the same
1917 kernel binary so the choice between VSMP and SMTC is a compile time
1918 decision.
1919
1920 For further information see http://www.linux-mips.org/wiki/34K#SMTC
Ralf Baechle41c594a2006-04-05 09:45:45 +01001921
Ralf Baechle340ee4b2005-08-17 17:44:08 +00001922endchoice
1923
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001924config MIPS_MT
1925 bool
1926
Ralf Baechle0ab7aef2007-03-02 20:42:04 +00001927config SCHED_SMT
1928 bool "SMT (multithreading) scheduler support"
1929 depends on SYS_SUPPORTS_SCHED_SMT
1930 default n
1931 help
1932 SMT scheduler support improves the CPU scheduler's decision making
1933 when dealing with MIPS MT enabled cores at a cost of slightly
1934 increased overhead in some places. If unsure say N here.
1935
1936config SYS_SUPPORTS_SCHED_SMT
1937 bool
1938
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01001939config SYS_SUPPORTS_MULTITHREADING
1940 bool
1941
Ralf Baechlef088fc82006-04-05 09:45:47 +01001942config MIPS_MT_FPAFF
1943 bool "Dynamic FPU affinity for FP-intensive threads"
Ralf Baechlef088fc82006-04-05 09:45:47 +01001944 default y
Ralf Baechle07cc0c92007-07-27 19:31:10 +01001945 depends on MIPS_MT_SMP || MIPS_MT_SMTC
1946
1947config MIPS_VPE_LOADER
1948 bool "VPE loader support."
1949 depends on SYS_SUPPORTS_MULTITHREADING
1950 select CPU_MIPSR2_IRQ_VI
1951 select CPU_MIPSR2_IRQ_EI
Ralf Baechle07cc0c92007-07-27 19:31:10 +01001952 select MIPS_MT
1953 help
1954 Includes a loader for loading an elf relocatable object
1955 onto another VPE and running it.
Ralf Baechlef088fc82006-04-05 09:45:47 +01001956
Kevin D. Kissell0db34212007-07-12 16:21:08 +01001957config MIPS_MT_SMTC_IM_BACKSTOP
1958 bool "Use per-TC register bits as backstop for inhibited IM bits"
1959 depends on MIPS_MT_SMTC
Kevin D. Kissell8531a352008-09-09 21:48:52 +02001960 default n
Kevin D. Kissell0db34212007-07-12 16:21:08 +01001961 help
1962 To support multiple TC microthreads acting as "CPUs" within
1963 a VPE, VPE-wide interrupt mask bits must be specially manipulated
1964 during interrupt handling. To support legacy drivers and interrupt
1965 controller management code, SMTC has a "backstop" to track and
1966 if necessary restore the interrupt mask. This has some performance
Kevin D. Kissell8531a352008-09-09 21:48:52 +02001967 impact on interrupt service overhead.
Kevin D. Kissell0db34212007-07-12 16:21:08 +01001968
Kevin D. Kissellf571eff2007-08-03 19:38:03 +02001969config MIPS_MT_SMTC_IRQAFF
1970 bool "Support IRQ affinity API"
1971 depends on MIPS_MT_SMTC
1972 default n
1973 help
1974 Enables SMP IRQ affinity API (/proc/irq/*/smp_affinity, etc.)
1975 for SMTC Linux kernel. Requires platform support, of which
1976 an example can be found in the MIPS kernel i8259 and Malta
Kevin D. Kissell8531a352008-09-09 21:48:52 +02001977 platform code. Adds some overhead to interrupt dispatch, and
1978 should be used only if you know what you are doing.
Kevin D. Kissellf571eff2007-08-03 19:38:03 +02001979
Ralf Baechlee01402b2005-07-14 15:57:16 +00001980config MIPS_VPE_LOADER_TOM
1981 bool "Load VPE program into memory hidden from linux"
1982 depends on MIPS_VPE_LOADER
1983 default y
1984 help
1985 The loader can use memory that is present but has been hidden from
1986 Linux using the kernel command line option "mem=xxMB". It's up to
1987 you to ensure the amount you put in the option and the space your
1988 program requires is less or equal to the amount physically present.
1989
1990# this should possibly be in drivers/char, but it is rather cpu related. Hmmm
1991config MIPS_VPE_APSP_API
Ralf Baechle5e83d432005-10-29 19:32:41 +01001992 bool "Enable support for AP/SP API (RTLX)"
1993 depends on MIPS_VPE_LOADER
1994 help
Ralf Baechlee01402b2005-07-14 15:57:16 +00001995
Ralf Baechle4a16ff42008-10-04 00:06:29 +01001996config MIPS_CMP
1997 bool "MIPS CMP framework support"
1998 depends on SYS_SUPPORTS_MIPS_CMP
Tim Andersoneb9b5142009-06-17 16:40:34 -07001999 select SYNC_R4K
Ralf Baechle4a16ff42008-10-04 00:06:29 +01002000 select SYS_SUPPORTS_SMP
2001 select SYS_SUPPORTS_SCHED_SMT if SMP
2002 select WEAK_ORDERING
2003 default n
2004 help
2005 This is a placeholder option for the GCMP work. It will need to
2006 be handled differently...
2007
Linus Torvalds1da177e2005-04-16 15:20:36 -07002008config SB1_PASS_1_WORKAROUNDS
2009 bool
2010 depends on CPU_SB1_PASS_1
2011 default y
2012
2013config SB1_PASS_2_WORKAROUNDS
2014 bool
2015 depends on CPU_SB1 && (CPU_SB1_PASS_2_2 || CPU_SB1_PASS_2)
2016 default y
2017
2018config SB1_PASS_2_1_WORKAROUNDS
2019 bool
2020 depends on CPU_SB1 && CPU_SB1_PASS_2
2021 default y
2022
Sanjay Lal2235a542012-11-21 18:33:59 -08002023
Linus Torvalds1da177e2005-04-16 15:20:36 -07002024config 64BIT_PHYS_ADDR
Ralf Baechled806cb22007-08-02 00:36:08 +01002025 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07002026
pascal@pabr.org60ec6572010-01-03 13:39:12 +01002027config ARCH_PHYS_ADDR_T_64BIT
2028 def_bool 64BIT_PHYS_ADDR
2029
Franck Bui-Huu9693a852007-02-02 17:41:47 +01002030config CPU_HAS_SMARTMIPS
2031 depends on SYS_SUPPORTS_SMARTMIPS
2032 bool "Support for the SmartMIPS ASE"
2033 help
2034 SmartMIPS is a extension of the MIPS32 architecture aimed at
2035 increased security at both hardware and software level for
2036 smartcards. Enabling this option will allow proper use of the
2037 SmartMIPS instructions by Linux applications. However a kernel with
2038 this option will not work on a MIPS core without SmartMIPS core. If
2039 you don't know you probably don't have SmartMIPS and should say N
2040 here.
2041
Steven J. Hillbce86082013-03-25 13:27:11 -05002042config CPU_MICROMIPS
2043 depends on SYS_SUPPORTS_MICROMIPS
2044 bool "Build kernel using microMIPS ISA"
2045 help
2046 When this option is enabled the kernel will be built using the
2047 microMIPS ISA
2048
Linus Torvalds1da177e2005-04-16 15:20:36 -07002049config CPU_HAS_WB
Ralf Baechlef7062dd2006-04-24 14:58:53 +01002050 bool
Ralf Baechlee01402b2005-07-14 15:57:16 +00002051
Kevin Cernekeedf0ac8a2011-11-16 01:25:45 +00002052config XKS01
2053 bool
2054
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01002055#
2056# Vectored interrupt mode is an R2 feature
2057#
Ralf Baechlee01402b2005-07-14 15:57:16 +00002058config CPU_MIPSR2_IRQ_VI
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01002059 bool
Ralf Baechlee01402b2005-07-14 15:57:16 +00002060
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01002061#
2062# Extended interrupt mode is an R2 feature
2063#
Ralf Baechlee01402b2005-07-14 15:57:16 +00002064config CPU_MIPSR2_IRQ_EI
Ralf Baechlef41ae0b2006-06-05 17:24:46 +01002065 bool
Ralf Baechlee01402b2005-07-14 15:57:16 +00002066
Linus Torvalds1da177e2005-04-16 15:20:36 -07002067config CPU_HAS_SYNC
2068 bool
2069 depends on !CPU_R3000
2070 default y
2071
2072#
Maciej W. Rozycki20d60d92007-10-23 12:43:11 +01002073# CPU non-features
2074#
2075config CPU_DADDI_WORKAROUNDS
2076 bool
2077
2078config CPU_R4000_WORKAROUNDS
2079 bool
2080 select CPU_R4400_WORKAROUNDS
2081
2082config CPU_R4400_WORKAROUNDS
2083 bool
2084
2085#
Linus Torvalds1da177e2005-04-16 15:20:36 -07002086# - Highmem only makes sense for the 32-bit kernel.
2087# - The current highmem code will only work properly on physically indexed
2088# caches such as R3000, SB1, R7000 or those that look like they're virtually
2089# indexed such as R4000/R4400 SC and MC versions or R10000. So for the
2090# moment we protect the user and offer the highmem option only on machines
2091# where it's known to be safe. This will not offer highmem on a few systems
2092# such as MIPS32 and MIPS64 CPUs which may have virtual and physically
2093# indexed CPUs but we're playing safe.
Ralf Baechle797798c2005-08-10 15:17:11 +00002094# - We use SYS_SUPPORTS_HIGHMEM to offer highmem only for systems where we
2095# know they might have memory configurations that could make use of highmem
2096# support.
Linus Torvalds1da177e2005-04-16 15:20:36 -07002097#
2098config HIGHMEM
2099 bool "High Memory Support"
Ralf Baechle797798c2005-08-10 15:17:11 +00002100 depends on 32BIT && CPU_SUPPORTS_HIGHMEM && SYS_SUPPORTS_HIGHMEM
2101
2102config CPU_SUPPORTS_HIGHMEM
2103 bool
2104
2105config SYS_SUPPORTS_HIGHMEM
2106 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07002107
Franck Bui-Huu9693a852007-02-02 17:41:47 +01002108config SYS_SUPPORTS_SMARTMIPS
2109 bool
2110
Steven J. Hilla6a48342013-02-05 16:52:02 -06002111config SYS_SUPPORTS_MICROMIPS
2112 bool
2113
Yoichi Yuasab4819b52005-06-25 14:54:31 -07002114config ARCH_FLATMEM_ENABLE
2115 def_bool y
Wu Zhangjinf133f222009-12-01 14:55:42 +08002116 depends on !NUMA && !CPU_LOONGSON2
Yoichi Yuasab4819b52005-06-25 14:54:31 -07002117
Ralf Baechled8cb4e12006-06-11 23:03:08 +01002118config ARCH_DISCONTIGMEM_ENABLE
2119 bool
2120 default y if SGI_IP27
2121 help
David Sterba3dde6ad2007-05-09 07:12:20 +02002122 Say Y to support efficient handling of discontiguous physical memory,
Ralf Baechled8cb4e12006-06-11 23:03:08 +01002123 for architectures which are either NUMA (Non-Uniform Memory Access)
2124 or have huge holes in the physical address space for other reasons.
2125 See <file:Documentation/vm/numa> for more.
2126
Atsushi Nemotob1c6cd42006-07-03 00:09:47 +09002127config ARCH_SPARSEMEM_ENABLE
2128 bool
Atsushi Nemoto7de58fa2006-07-05 01:22:44 +09002129 select SPARSEMEM_STATIC
Atsushi Nemoto31473742006-07-03 00:09:47 +09002130
Ralf Baechled8cb4e12006-06-11 23:03:08 +01002131config NUMA
2132 bool "NUMA Support"
2133 depends on SYS_SUPPORTS_NUMA
2134 help
2135 Say Y to compile the kernel to support NUMA (Non-Uniform Memory
2136 Access). This option improves performance on systems with more
2137 than two nodes; on two node systems it is generally better to
2138 leave it disabled; on single node systems disable this option
2139 disabled.
2140
2141config SYS_SUPPORTS_NUMA
2142 bool
2143
Yasunori Gotoc80d79d2006-04-10 22:53:53 -07002144config NODES_SHIFT
2145 int
2146 default "6"
2147 depends on NEED_MULTIPLE_NODES
2148
Deng-Cheng Zhu14f70012010-10-12 19:37:22 +08002149config HW_PERF_EVENTS
2150 bool "Enable hardware performance counter support for perf events"
Zi Shen Lim4be3d2f2012-10-31 12:01:28 +00002151 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 +08002152 default y
2153 help
2154 Enable hardware performance counter support for perf events. If
2155 disabled, perf events will use software events only.
2156
Yoichi Yuasab4819b52005-06-25 14:54:31 -07002157source "mm/Kconfig"
2158
Linus Torvalds1da177e2005-04-16 15:20:36 -07002159config SMP
2160 bool "Multi-Processing support"
Ralf Baechlee73ea272006-06-04 11:51:46 +01002161 depends on SYS_SUPPORTS_SMP
Jens Axboe2f304c02008-06-17 10:45:23 +02002162 select USE_GENERIC_SMP_HELPERS
Ralf Baechlee73ea272006-06-04 11:51:46 +01002163 help
Linus Torvalds1da177e2005-04-16 15:20:36 -07002164 This enables support for systems with more than one CPU. If you have
2165 a system with only one CPU, like most personal computers, say N. If
2166 you have a system with more than one CPU, say Y.
2167
2168 If you say N here, the kernel will run on single and multiprocessor
2169 machines, but will use only one CPU of a multiprocessor machine. If
2170 you say Y here, the kernel will run on many, but not all,
2171 singleprocessor machines. On a singleprocessor machine, the kernel
2172 will run faster if you say N here.
2173
2174 People using multiprocessor machines who say Y here should also say
2175 Y to "Enhanced Real Time Clock Support", below.
2176
Adrian Bunk03502fa2008-02-03 15:50:21 +02002177 See also the SMP-HOWTO available at
2178 <http://www.tldp.org/docs.html#howto>.
Linus Torvalds1da177e2005-04-16 15:20:36 -07002179
2180 If you don't know what to do here, say N.
2181
Ralf Baechle87353d82007-11-19 12:23:51 +00002182config SMP_UP
2183 bool
2184
Ralf Baechle4a16ff42008-10-04 00:06:29 +01002185config SYS_SUPPORTS_MIPS_CMP
2186 bool
2187
Ralf Baechlee73ea272006-06-04 11:51:46 +01002188config SYS_SUPPORTS_SMP
2189 bool
2190
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09002191config NR_CPUS_DEFAULT_1
2192 bool
2193
Ralf Baechle130e2fb2007-02-06 16:53:15 +00002194config NR_CPUS_DEFAULT_2
2195 bool
2196
2197config NR_CPUS_DEFAULT_4
2198 bool
2199
2200config NR_CPUS_DEFAULT_8
2201 bool
2202
2203config NR_CPUS_DEFAULT_16
2204 bool
2205
2206config NR_CPUS_DEFAULT_32
2207 bool
2208
2209config NR_CPUS_DEFAULT_64
2210 bool
2211
Linus Torvalds1da177e2005-04-16 15:20:36 -07002212config NR_CPUS
2213 int "Maximum number of CPUs (2-64)"
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09002214 range 1 64 if NR_CPUS_DEFAULT_1
Linus Torvalds1da177e2005-04-16 15:20:36 -07002215 depends on SMP
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09002216 default "1" if NR_CPUS_DEFAULT_1
Ralf Baechle130e2fb2007-02-06 16:53:15 +00002217 default "2" if NR_CPUS_DEFAULT_2
2218 default "4" if NR_CPUS_DEFAULT_4
2219 default "8" if NR_CPUS_DEFAULT_8
2220 default "16" if NR_CPUS_DEFAULT_16
2221 default "32" if NR_CPUS_DEFAULT_32
2222 default "64" if NR_CPUS_DEFAULT_64
Linus Torvalds1da177e2005-04-16 15:20:36 -07002223 help
2224 This allows you to specify the maximum number of CPUs which this
2225 kernel will support. The maximum supported value is 32 for 32-bit
2226 kernel and 64 for 64-bit kernels; the minimum value which makes
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09002227 sense is 1 for Qemu (useful only for kernel debugging purposes)
2228 and 2 for all others.
Linus Torvalds1da177e2005-04-16 15:20:36 -07002229
2230 This is purely to save memory - each supported CPU adds
Atsushi Nemoto72ede9b2007-03-18 01:01:39 +09002231 approximately eight kilobytes to the kernel image. For best
2232 performance should round up your number of processors to the next
2233 power of two.
Linus Torvalds1da177e2005-04-16 15:20:36 -07002234
Al Cooper399aaa22012-07-13 16:44:53 -04002235config MIPS_PERF_SHARED_TC_COUNTERS
2236 bool
2237
Atsushi Nemoto1723b4a2006-06-20 00:19:13 +09002238#
2239# Timer Interrupt Frequency Configuration
2240#
2241
2242choice
2243 prompt "Timer frequency"
2244 default HZ_250
2245 help
2246 Allows the configuration of the timer frequency.
2247
2248 config HZ_48
Ralf Baechle0f873582008-02-25 16:55:29 +00002249 bool "48 HZ" if SYS_SUPPORTS_48HZ || SYS_SUPPORTS_ARBIT_HZ
Atsushi Nemoto1723b4a2006-06-20 00:19:13 +09002250
2251 config HZ_100
2252 bool "100 HZ" if SYS_SUPPORTS_100HZ || SYS_SUPPORTS_ARBIT_HZ
2253
2254 config HZ_128
2255 bool "128 HZ" if SYS_SUPPORTS_128HZ || SYS_SUPPORTS_ARBIT_HZ
2256
2257 config HZ_250
2258 bool "250 HZ" if SYS_SUPPORTS_250HZ || SYS_SUPPORTS_ARBIT_HZ
2259
2260 config HZ_256
2261 bool "256 HZ" if SYS_SUPPORTS_256HZ || SYS_SUPPORTS_ARBIT_HZ
2262
2263 config HZ_1000
2264 bool "1000 HZ" if SYS_SUPPORTS_1000HZ || SYS_SUPPORTS_ARBIT_HZ
2265
2266 config HZ_1024
2267 bool "1024 HZ" if SYS_SUPPORTS_1024HZ || SYS_SUPPORTS_ARBIT_HZ
2268
2269endchoice
2270
2271config SYS_SUPPORTS_48HZ
2272 bool
2273
2274config SYS_SUPPORTS_100HZ
2275 bool
2276
2277config SYS_SUPPORTS_128HZ
2278 bool
2279
2280config SYS_SUPPORTS_250HZ
2281 bool
2282
2283config SYS_SUPPORTS_256HZ
2284 bool
2285
2286config SYS_SUPPORTS_1000HZ
2287 bool
2288
2289config SYS_SUPPORTS_1024HZ
2290 bool
2291
2292config SYS_SUPPORTS_ARBIT_HZ
2293 bool
2294 default y if !SYS_SUPPORTS_48HZ && !SYS_SUPPORTS_100HZ && \
2295 !SYS_SUPPORTS_128HZ && !SYS_SUPPORTS_250HZ && \
2296 !SYS_SUPPORTS_256HZ && !SYS_SUPPORTS_1000HZ && \
2297 !SYS_SUPPORTS_1024HZ
2298
2299config HZ
2300 int
2301 default 48 if HZ_48
2302 default 100 if HZ_100
2303 default 128 if HZ_128
2304 default 250 if HZ_250
2305 default 256 if HZ_256
2306 default 1000 if HZ_1000
2307 default 1024 if HZ_1024
2308
Ralf Baechlee80de852005-07-11 20:45:51 +00002309source "kernel/Kconfig.preempt"
Linus Torvalds1da177e2005-04-16 15:20:36 -07002310
Atsushi Nemotoea6e9422007-01-16 23:29:11 +09002311config KEXEC
Kees Cook7d607172013-01-16 18:53:19 -08002312 bool "Kexec system call"
Atsushi Nemotoea6e9422007-01-16 23:29:11 +09002313 help
2314 kexec is a system call that implements the ability to shutdown your
2315 current kernel, and to start another kernel. It is like a reboot
David Sterba3dde6ad2007-05-09 07:12:20 +02002316 but it is independent of the system firmware. And like a reboot
Atsushi Nemotoea6e9422007-01-16 23:29:11 +09002317 you can start any kernel with it, not just Linux.
2318
Matt LaPlante01dd2fb2007-10-20 01:34:40 +02002319 The name comes from the similarity to the exec system call.
Atsushi Nemotoea6e9422007-01-16 23:29:11 +09002320
2321 It is an ongoing process to be certain the hardware in a machine
2322 is properly shutdown, so do not be surprised if this code does not
2323 initially work for you. It may help to enable device hotplugging
2324 support. As of this writing the exact hardware interface is
2325 strongly in flux, so no good recommendation can be made.
2326
Ralf Baechle7aa1c8f2012-10-11 18:14:58 +02002327config CRASH_DUMP
2328 bool "Kernel crash dumps"
2329 help
2330 Generate crash dump after being started by kexec.
2331 This should be normally only set in special crash dump kernels
2332 which are loaded in the main kernel with kexec-tools into
2333 a specially reserved region and then later executed after
2334 a crash by kdump/kexec. The crash dump kernel must be compiled
2335 to a memory address not used by the main kernel or firmware using
2336 PHYSICAL_START.
2337
2338config PHYSICAL_START
2339 hex "Physical address where the kernel is loaded"
2340 default "0xffffffff84000000" if 64BIT
2341 default "0x84000000" if 32BIT
2342 depends on CRASH_DUMP
2343 help
2344 This gives the CKSEG0 or KSEG0 address where the kernel is loaded.
2345 If you plan to use kernel for capturing the crash dump change
2346 this value to start of the reserved region (the "X" value as
2347 specified in the "crashkernel=YM@XM" command line boot parameter
2348 passed to the panic-ed kernel).
2349
Atsushi Nemotoea6e9422007-01-16 23:29:11 +09002350config SECCOMP
2351 bool "Enable seccomp to safely compute untrusted bytecode"
Ralf Baechle293c5bd2007-07-25 16:19:33 +01002352 depends on PROC_FS
Atsushi Nemotoea6e9422007-01-16 23:29:11 +09002353 default y
2354 help
2355 This kernel feature is useful for number crunching applications
2356 that may need to compute untrusted bytecode during their
2357 execution. By using pipes or other transports made available to
2358 the process as file descriptors supporting the read/write
2359 syscalls, it's possible to isolate those applications in
2360 their own address space using seccomp. Once seccomp is
2361 enabled via /proc/<pid>/seccomp, it cannot be disabled
2362 and the task is only allowed to execute a few safe syscalls
2363 defined by each seccomp mode.
2364
2365 If unsure, say Y. Only embedded should say N here.
2366
Dezhong Diaof2ffa5a2010-10-13 00:52:46 -06002367config USE_OF
Jonas Gorski0b3e06f2012-09-18 11:28:54 +02002368 bool
Dezhong Diaof2ffa5a2010-10-13 00:52:46 -06002369 select OF
Stephen Neuendorffere6ce1322010-11-18 15:54:56 -08002370 select OF_EARLY_FLATTREE
Grant Likelyabd23632012-02-24 08:07:06 -07002371 select IRQ_DOMAIN
Dezhong Diaof2ffa5a2010-10-13 00:52:46 -06002372
Ralf Baechle5e83d432005-10-29 19:32:41 +01002373endmenu
2374
Atsushi Nemoto1df0f0f2006-09-26 23:44:01 +09002375config LOCKDEP_SUPPORT
2376 bool
2377 default y
2378
2379config STACKTRACE_SUPPORT
2380 bool
2381 default y
2382
Ralf Baechleb6c35392005-11-25 11:35:40 +00002383source "init/Kconfig"
2384
Matt Helsleydc52ddc2008-10-18 20:27:21 -07002385source "kernel/Kconfig.freezer"
2386
Linus Torvalds1da177e2005-04-16 15:20:36 -07002387menu "Bus options (PCI, PCMCIA, EISA, ISA, TC)"
2388
Ralf Baechle5e83d432005-10-29 19:32:41 +01002389config HW_HAS_EISA
2390 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07002391config HW_HAS_PCI
2392 bool
2393
2394config PCI
2395 bool "Support for PCI controller"
2396 depends on HW_HAS_PCI
Ralf Baechleabb4ae42007-10-11 23:46:03 +01002397 select PCI_DOMAINS
Michael S. Tsirkineab90292011-11-24 21:10:12 +02002398 select GENERIC_PCI_IOMAP
Michael S. Tsirkin0f3b3952012-01-30 00:23:38 +02002399 select NO_GENERIC_PCI_IOPORT_MAP
Linus Torvalds1da177e2005-04-16 15:20:36 -07002400 help
2401 Find out whether you have a PCI motherboard. PCI is the name of a
2402 bus system, i.e. the way the CPU talks to the other stuff inside
2403 your box. Other bus systems are ISA, EISA, or VESA. If you have PCI,
2404 say Y, otherwise N.
2405
Linus Torvalds1da177e2005-04-16 15:20:36 -07002406config PCI_DOMAINS
2407 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07002408
2409source "drivers/pci/Kconfig"
2410
Jonas Gorski3f787ca2012-07-24 16:33:14 +02002411source "drivers/pci/pcie/Kconfig"
2412
Linus Torvalds1da177e2005-04-16 15:20:36 -07002413#
2414# ISA support is now enabled via select. Too many systems still have the one
2415# or other ISA chip on the board that users don't know about so don't expect
2416# users to choose the right thing ...
2417#
2418config ISA
2419 bool
2420
2421config EISA
2422 bool "EISA support"
Ralf Baechle5e83d432005-10-29 19:32:41 +01002423 depends on HW_HAS_EISA
Linus Torvalds1da177e2005-04-16 15:20:36 -07002424 select ISA
Ralf Baechleaa414df2006-11-30 01:14:51 +00002425 select GENERIC_ISA_DMA
Linus Torvalds1da177e2005-04-16 15:20:36 -07002426 ---help---
2427 The Extended Industry Standard Architecture (EISA) bus was
2428 developed as an open alternative to the IBM MicroChannel bus.
2429
2430 The EISA bus provided some of the features of the IBM MicroChannel
2431 bus while maintaining backward compatibility with cards made for
2432 the older ISA bus. The EISA bus saw limited use between 1988 and
2433 1995 when it was made obsolete by the PCI bus.
2434
2435 Say Y here if you are building a kernel for an EISA-based machine.
2436
2437 Otherwise, say N.
2438
2439source "drivers/eisa/Kconfig"
2440
2441config TC
2442 bool "TURBOchannel support"
2443 depends on MACH_DECSTATION
2444 help
Justin P. Mattock50a23e62010-10-16 10:36:23 -07002445 TURBOchannel is a DEC (now Compaq (now HP)) bus for Alpha and MIPS
2446 processors. TURBOchannel programming specifications are available
2447 at:
2448 <ftp://ftp.hp.com/pub/alphaserver/archive/triadd/>
2449 and:
2450 <http://www.computer-refuge.org/classiccmp/ftp.digital.com/pub/DEC/TriAdd/>
2451 Linux driver support status is documented at:
2452 <http://www.linux-mips.org/wiki/DECstation>
Linus Torvalds1da177e2005-04-16 15:20:36 -07002453
Linus Torvalds1da177e2005-04-16 15:20:36 -07002454config MMU
2455 bool
2456 default y
2457
Ralf Baechled865bea2007-10-11 23:46:10 +01002458config I8253
2459 bool
Russell King798778b2011-05-08 19:03:03 +01002460 select CLKSRC_I8253
Thomas Gleixner2d026122011-06-09 13:08:27 +00002461 select CLKEVT_I8253
Wu Zhangjin9726b432009-11-17 01:32:58 +08002462 select MIPS_EXTERNAL_TIMER
Ralf Baechled865bea2007-10-11 23:46:10 +01002463
Ralf Baechlee05eb3f2013-06-12 10:54:11 +02002464config ZONE_DMA
2465 bool
2466
Ralf Baechlecce335ae2007-11-03 02:05:43 +00002467config ZONE_DMA32
2468 bool
2469
Linus Torvalds1da177e2005-04-16 15:20:36 -07002470source "drivers/pcmcia/Kconfig"
2471
2472source "drivers/pci/hotplug/Kconfig"
2473
Alexandre Bounine388b78a2011-03-23 16:43:03 -07002474config RAPIDIO
2475 bool "RapidIO support"
2476 depends on PCI
2477 default n
2478 help
2479 If you say Y here, the kernel will include drivers and
2480 infrastructure code to support RapidIO interconnect devices.
2481
2482source "drivers/rapidio/Kconfig"
2483
Linus Torvalds1da177e2005-04-16 15:20:36 -07002484endmenu
2485
2486menu "Executable file formats"
2487
2488source "fs/Kconfig.binfmt"
2489
2490config TRAD_SIGNALS
2491 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -07002492
Linus Torvalds1da177e2005-04-16 15:20:36 -07002493config MIPS32_COMPAT
2494 bool "Kernel support for Linux/MIPS 32-bit binary compatibility"
Ralf Baechle875d43e2005-09-03 15:56:16 -07002495 depends on 64BIT
Linus Torvalds1da177e2005-04-16 15:20:36 -07002496 help
2497 Select this option if you want Linux/MIPS 32-bit binary
2498 compatibility. Since all software available for Linux/MIPS is
2499 currently 32-bit you should say Y here.
2500
2501config COMPAT
2502 bool
2503 depends on MIPS32_COMPAT
Chris Metcalf48b25c42012-03-15 13:13:38 -04002504 select ARCH_WANT_OLD_COMPAT_IPC
Linus Torvalds1da177e2005-04-16 15:20:36 -07002505 default y
2506
Atsushi Nemoto05e43962006-11-07 18:02:44 +09002507config SYSVIPC_COMPAT
2508 bool
2509 depends on COMPAT && SYSVIPC
2510 default y
2511
Linus Torvalds1da177e2005-04-16 15:20:36 -07002512config MIPS32_O32
2513 bool "Kernel support for o32 binaries"
2514 depends on MIPS32_COMPAT
2515 help
2516 Select this option if you want to run o32 binaries. These are pure
2517 32-bit binaries as used by the 32-bit Linux/MIPS port. Most of
2518 existing binaries are in this format.
2519
2520 If unsure, say Y.
2521
2522config MIPS32_N32
2523 bool "Kernel support for n32 binaries"
2524 depends on MIPS32_COMPAT
2525 help
2526 Select this option if you want to run n32 binaries. These are
2527 64-bit binaries using 32-bit quantities for addressing and certain
2528 data that would normally be 64-bit. They are used in special
2529 cases.
2530
2531 If unsure, say N.
2532
2533config BINFMT_ELF32
2534 bool
2535 default y if MIPS32_O32 || MIPS32_N32
2536
Ralf Baechle21162452007-02-09 17:08:58 +00002537endmenu
Linus Torvalds1da177e2005-04-16 15:20:36 -07002538
Ralf Baechle21162452007-02-09 17:08:58 +00002539menu "Power management options"
Rodolfo Giometti952fa952006-06-05 17:43:10 +02002540
Wu Zhangjin363c55c2009-06-04 20:27:10 +08002541config ARCH_HIBERNATION_POSSIBLE
2542 def_bool y
Ralf Baechle3f5b3e12009-07-02 11:48:07 +01002543 depends on SYS_SUPPORTS_HOTPLUG_CPU || !SMP
Wu Zhangjin363c55c2009-06-04 20:27:10 +08002544
Johannes Bergf4cb5702007-12-08 02:14:00 +01002545config ARCH_SUSPEND_POSSIBLE
2546 def_bool y
Ralf Baechle3f5b3e12009-07-02 11:48:07 +01002547 depends on SYS_SUPPORTS_HOTPLUG_CPU || !SMP
Johannes Bergf4cb5702007-12-08 02:14:00 +01002548
Ralf Baechle21162452007-02-09 17:08:58 +00002549source "kernel/power/Kconfig"
Rodolfo Giometti952fa952006-06-05 17:43:10 +02002550
Linus Torvalds1da177e2005-04-16 15:20:36 -07002551endmenu
2552
Viresh Kumar7a998932013-04-04 12:54:21 +00002553config MIPS_EXTERNAL_TIMER
2554 bool
2555
2556if CPU_SUPPORTS_CPUFREQ && MIPS_EXTERNAL_TIMER
2557menu "CPU Power Management"
2558source "drivers/cpufreq/Kconfig"
2559endmenu
2560endif
Wu Zhangjin9726b432009-11-17 01:32:58 +08002561
Sam Ravnborgd5950b42005-07-11 21:03:49 -07002562source "net/Kconfig"
2563
Linus Torvalds1da177e2005-04-16 15:20:36 -07002564source "drivers/Kconfig"
2565
Ralf Baechle98cdee02012-11-15 10:35:42 +01002566source "drivers/firmware/Kconfig"
2567
Linus Torvalds1da177e2005-04-16 15:20:36 -07002568source "fs/Kconfig"
2569
2570source "arch/mips/Kconfig.debug"
2571
2572source "security/Kconfig"
2573
2574source "crypto/Kconfig"
2575
2576source "lib/Kconfig"
Sanjay Lal2235a542012-11-21 18:33:59 -08002577
2578source "arch/mips/kvm/Kconfig"