blob: eeab4f3e6c197dbdfd14f67776e4f85ce4834cd7 [file] [log] [blame]
Greg Kroah-Hartmanb2441312017-11-01 15:07:57 +01001# SPDX-License-Identifier: GPL-2.0
Greg Ungerer0e152d82011-06-20 15:49:09 +10002comment "Machine Types"
3
Geert Uytterhoevenad8f9552011-12-26 20:32:02 +01004if M68KCLASSIC
5
Greg Ungerer0e152d82011-06-20 15:49:09 +10006config AMIGA
7 bool "Amiga support"
8 depends on MMU
9 select MMU_MOTOROLA if MMU
Arnd Bergmann42f1d572020-09-24 17:21:00 +020010 select LEGACY_TIMER_TICK
Greg Ungerer0e152d82011-06-20 15:49:09 +100011 help
12 This option enables support for the Amiga series of computers. If
13 you plan to use this kernel on an Amiga, say Y here and browse the
14 material available in <file:Documentation/m68k>; otherwise say N.
15
16config ATARI
17 bool "Atari support"
18 depends on MMU
19 select MMU_MOTOROLA if MMU
Finn Thain666047f2019-01-15 15:18:56 +110020 select HAVE_ARCH_NVRAM_OPS
Arnd Bergmann42f1d572020-09-24 17:21:00 +020021 select LEGACY_TIMER_TICK
Greg Ungerer0e152d82011-06-20 15:49:09 +100022 help
23 This option enables support for the 68000-based Atari series of
24 computers (including the TT, Falcon and Medusa). If you plan to use
25 this kernel on an Atari, say Y here and browse the material
26 available in <file:Documentation/m68k>; otherwise say N.
27
Randy Dunlapc1367ee2021-05-26 17:12:51 -070028config ATARI_KBD_CORE
29 bool
30
Greg Ungerer0e152d82011-06-20 15:49:09 +100031config MAC
32 bool "Macintosh support"
33 depends on MMU
34 select MMU_MOTOROLA if MMU
Finn Thaind3b41b62019-01-15 15:18:56 +110035 select HAVE_ARCH_NVRAM_OPS
Geert Uytterhoeven21ed4922021-07-12 09:40:22 +020036 select HAVE_PATA_PLATFORM
Arnd Bergmann42f1d572020-09-24 17:21:00 +020037 select LEGACY_TIMER_TICK
Greg Ungerer0e152d82011-06-20 15:49:09 +100038 help
39 This option enables support for the Apple Macintosh series of
Finn Thain07ce9b72020-11-20 15:39:56 +110040 computers. If you plan to use this kernel on a Mac, say Y here and
41 browse the documentation available at <http://www.mac.linux-m68k.org/>;
42 otherwise say N.
Greg Ungerer0e152d82011-06-20 15:49:09 +100043
44config APOLLO
45 bool "Apollo support"
46 depends on MMU
47 select MMU_MOTOROLA if MMU
Arnd Bergmann42f1d572020-09-24 17:21:00 +020048 select LEGACY_TIMER_TICK
Greg Ungerer0e152d82011-06-20 15:49:09 +100049 help
50 Say Y here if you want to run Linux on an MC680x0-based Apollo
51 Domain workstation such as the DN3500.
52
53config VME
54 bool "VME (Motorola and BVM) support"
55 depends on MMU
56 select MMU_MOTOROLA if MMU
57 help
58 Say Y here if you want to build a kernel for a 680x0 based VME
59 board. Boards currently supported include Motorola boards MVME147,
60 MVME162, MVME166, MVME167, MVME172, and MVME177. BVME4000 and
61 BVME6000 boards from BVM Ltd are also supported.
62
63config MVME147
64 bool "MVME147 support"
65 depends on MMU
66 depends on VME
Arnd Bergmann42f1d572020-09-24 17:21:00 +020067 select LEGACY_TIMER_TICK
Greg Ungerer0e152d82011-06-20 15:49:09 +100068 help
69 Say Y to include support for early Motorola VME boards. This will
70 build a kernel which can run on MVME147 single-board computers. If
71 you select this option you will have to select the appropriate
72 drivers for SCSI, Ethernet and serial ports later on.
73
74config MVME16x
75 bool "MVME162, 166 and 167 support"
76 depends on MMU
77 depends on VME
Arnd Bergmann42f1d572020-09-24 17:21:00 +020078 select LEGACY_TIMER_TICK
Greg Ungerer0e152d82011-06-20 15:49:09 +100079 help
80 Say Y to include support for Motorola VME boards. This will build a
81 kernel which can run on MVME162, MVME166, MVME167, MVME172, and
82 MVME177 boards. If you select this option you will have to select
83 the appropriate drivers for SCSI, Ethernet and serial ports later
84 on.
85
86config BVME6000
87 bool "BVME4000 and BVME6000 support"
88 depends on MMU
89 depends on VME
Arnd Bergmann42f1d572020-09-24 17:21:00 +020090 select LEGACY_TIMER_TICK
Greg Ungerer0e152d82011-06-20 15:49:09 +100091 help
92 Say Y to include support for VME boards from BVM Ltd. This will
93 build a kernel which can run on BVME4000 and BVME6000 boards. If
94 you select this option you will have to select the appropriate
95 drivers for SCSI, Ethernet and serial ports later on.
96
97config HP300
98 bool "HP9000/300 and HP9000/400 support"
99 depends on MMU
100 select MMU_MOTOROLA if MMU
Arnd Bergmann42f1d572020-09-24 17:21:00 +0200101 select LEGACY_TIMER_TICK
Greg Ungerer0e152d82011-06-20 15:49:09 +1000102 help
103 This option enables support for the HP9000/300 and HP9000/400 series
104 of workstations. Support for these machines is still somewhat
105 experimental. If you plan to try to use the kernel on such a machine
106 say Y here.
107 Everybody else says N.
108
109config SUN3X
110 bool "Sun3x support"
111 depends on MMU
Arnd Bergmann4a1c2872020-09-24 16:40:58 +0200112 select LEGACY_TIMER_TICK
Greg Ungerer0e152d82011-06-20 15:49:09 +1000113 select MMU_MOTOROLA if MMU
114 select M68030
115 help
116 This option enables support for the Sun 3x series of workstations.
117 Be warned that this support is very experimental.
118 Note that Sun 3x kernels are not compatible with Sun 3 hardware.
119 General Linux information on the Sun 3x series (now discontinued)
120 is at <http://www.angelfire.com/ca2/tech68k/sun3.html>.
121
122 If you don't want to compile a kernel for a Sun 3x, say N.
123
124config Q40
125 bool "Q40/Q60 support"
126 depends on MMU
127 select MMU_MOTOROLA if MMU
Arnd Bergmann42f1d572020-09-24 17:21:00 +0200128 select LEGACY_TIMER_TICK
Greg Ungerer0e152d82011-06-20 15:49:09 +1000129 help
130 The Q40 is a Motorola 68040-based successor to the Sinclair QL
131 manufactured in Germany. There is an official Q40 home page at
132 <http://www.q40.de/>. This option enables support for the Q40 and
133 Q60. Select your CPU below. For 68LC060 don't forget to enable FPU
134 emulation.
135
136config SUN3
137 bool "Sun3 support"
138 depends on MMU
139 depends on !MMU_MOTOROLA
140 select MMU_SUN3 if MMU
Arnd Bergmann4a1c2872020-09-24 16:40:58 +0200141 select LEGACY_TIMER_TICK
Christoph Hellwig846f9e12020-07-14 14:18:54 +0200142 select NO_DMA
Greg Ungerer0e152d82011-06-20 15:49:09 +1000143 select M68020
144 help
145 This option enables support for the Sun 3 series of workstations
146 (3/50, 3/60, 3/1xx, 3/2xx systems). Enabling this option requires
147 that all other hardware types must be disabled, as Sun 3 kernels
148 are incompatible with all other m68k targets (including Sun 3x!).
149
150 If you don't want to compile a kernel exclusively for a Sun 3, say N.
151
152config PILOT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700153 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700154
155config PILOT3
156 bool "Pilot 1000/5000, PalmPilot Personal/Pro, or PalmIII support"
Arnd Bergmann8b228202020-10-30 15:26:24 +0100157 depends on !MMU
158 select M68328
Greg Ungerer0e152d82011-06-20 15:49:09 +1000159 select PILOT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700160 help
161 Support for the Palm Pilot 1000/5000, Personal/Pro and PalmIII.
162
163config XCOPILOT_BUGS
Greg Ungerer6869e942006-12-04 16:40:58 +1000164 bool "(X)Copilot support"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700165 depends on PILOT3
166 help
167 Support the bugs of Xcopilot.
168
169config UCSIMM
170 bool "uCsimm module support"
Arnd Bergmann8b228202020-10-30 15:26:24 +0100171 depends on !MMU
172 select M68EZ328
Linus Torvalds1da177e2005-04-16 15:20:36 -0700173 help
174 Support for the Arcturus Networks uCsimm module.
175
176config UCDIMM
177 bool "uDsimm module support"
Arnd Bergmann8b228202020-10-30 15:26:24 +0100178 depends on !MMU
179 select M68VZ328
Linus Torvalds1da177e2005-04-16 15:20:36 -0700180 help
181 Support for the Arcturus Networks uDsimm module.
182
183config DRAGEN2
184 bool "DragenEngine II board support"
Arnd Bergmann8b228202020-10-30 15:26:24 +0100185 depends on !MMU
186 select M68VZ328
Linus Torvalds1da177e2005-04-16 15:20:36 -0700187 help
188 Support for the DragenEngine II board.
189
190config DIRECT_IO_ACCESS
Greg Ungerer6869e942006-12-04 16:40:58 +1000191 bool "Allow user to access IO directly"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700192 depends on (UCSIMM || UCDIMM || DRAGEN2)
193 help
194 Disable the CPU internal registers protection in user mode,
Philippe De Muyter0a977ca2010-11-11 23:57:56 +0100195 to allow a user application to read/write them.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700196
197config INIT_LCD
Greg Ungerer6869e942006-12-04 16:40:58 +1000198 bool "Initialize LCD"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700199 depends on (UCSIMM || UCDIMM || DRAGEN2)
200 help
201 Initialize the LCD controller of the 68x328 processor.
202
203config MEMORY_RESERVE
Greg Ungerer6869e942006-12-04 16:40:58 +1000204 int "Memory reservation (MiB)"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700205 depends on (UCSIMM || UCDIMM)
Randy Dunlap1aaa5572021-10-02 17:02:23 -0700206 default 0
Linus Torvalds1da177e2005-04-16 15:20:36 -0700207 help
208 Reserve certain memory regions on 68x328 based boards.
209
Arnd Bergmann8b228202020-10-30 15:26:24 +0100210endif # M68KCLASSIC
211
Linus Torvalds1da177e2005-04-16 15:20:36 -0700212config ARN5206
213 bool "Arnewsh 5206 board support"
214 depends on M5206
215 help
216 Support for the Arnewsh 5206 board.
217
218config M5206eC3
219 bool "Motorola M5206eC3 board support"
220 depends on M5206e
221 help
222 Support for the Motorola M5206eC3 board.
223
224config ELITE
225 bool "Motorola M5206eLITE board support"
226 depends on M5206e
227 help
228 Support for the Motorola M5206eLITE board.
229
Greg Ungerer5c4dbba2005-09-02 10:42:52 +1000230config M5235EVB
231 bool "Freescale M5235EVB support"
232 depends on M523x
233 help
234 Support for the Freescale M5235EVB board.
235
Linus Torvalds1da177e2005-04-16 15:20:36 -0700236config M5249C3
237 bool "Motorola M5249C3 board support"
238 depends on M5249
239 help
240 Support for the Motorola M5249C3 board.
241
Linus Torvalds1da177e2005-04-16 15:20:36 -0700242config M5272C3
243 bool "Motorola M5272C3 board support"
244 depends on M5272
245 help
246 Support for the Motorola M5272C3 board.
247
Greg Ungerer906a2622007-07-25 22:07:20 +1000248config WILDFIRE
249 bool "Intec Automation Inc. WildFire board support"
250 depends on M528x
251 help
252 Support for the Intec Automation Inc. WildFire.
Greg Ungerer0e152d82011-06-20 15:49:09 +1000253
Greg Ungerer906a2622007-07-25 22:07:20 +1000254config WILDFIREMOD
255 bool "Intec Automation Inc. WildFire module support"
256 depends on M528x
257 help
258 Support for the Intec Automation Inc. WildFire module.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700259
260config ARN5307
261 bool "Arnewsh 5307 board support"
262 depends on M5307
263 help
264 Support for the Arnewsh 5307 board.
265
266config M5307C3
267 bool "Motorola M5307C3 board support"
268 depends on M5307
269 help
270 Support for the Motorola M5307C3 board.
271
Linus Torvalds1da177e2005-04-16 15:20:36 -0700272config SECUREEDGEMP3
273 bool "SnapGear SecureEdge/MP3 platform support"
274 depends on M5307
275 help
276 Support for the SnapGear SecureEdge/MP3 platform.
277
278config M5407C3
279 bool "Motorola M5407C3 board support"
280 depends on M5407
281 help
282 Support for the Motorola M5407C3 board.
283
Angelo Dureghelloa41cdd02016-10-06 20:41:35 +0200284config AMCORE
285 bool "Sysam AMCORE board support"
286 depends on M5307
287 help
288 Support for the Sysam AMCORE open-hardware generic board.
289
Angelo Dureghelloc8b61d52017-10-13 00:42:51 +0200290config STMARK2
Krzysztof Kozlowski1b43cb52019-11-20 21:37:21 +0800291 bool "Sysam stmark2 board support"
292 depends on M5441x
293 help
294 Support for the Sysam stmark2 open-hardware generic board.
Angelo Dureghelloc8b61d52017-10-13 00:42:51 +0200295
Greg Ungerer7badfab2011-03-06 23:20:19 +1000296config FIREBEE
297 bool "FireBee board support"
298 depends on M547x
299 help
300 Support for the FireBee ColdFire 5475 based board.
301
Linus Torvalds1da177e2005-04-16 15:20:36 -0700302config CLEOPATRA
303 bool "Feith CLEOPATRA board support"
304 depends on (M5307 || M5407)
305 help
306 Support for the Feith Cleopatra boards.
307
308config CANCam
309 bool "Feith CANCam board support"
310 depends on M5272
311 help
312 Support for the Feith CANCam board.
313
314config SCALES
315 bool "Feith SCALES board support"
316 depends on M5272
317 help
318 Support for the Feith SCALES board.
319
320config NETtel
321 bool "SecureEdge/NETtel board support"
322 depends on (M5206e || M5272 || M5307)
323 help
324 Support for the SnapGear NETtel/SecureEdge/SnapGear boards.
325
Greg Ungerer5c4dbba2005-09-02 10:42:52 +1000326config MOD5272
327 bool "Netburner MOD-5272 board support"
328 depends on M5272
329 help
330 Support for the Netburner MOD-5272 board.
331
Greg Ungerer0e152d82011-06-20 15:49:09 +1000332if !MMU || COLDFIRE
333
334comment "Machine Options"
335
Lennart Sorensen588baea2009-09-18 13:49:36 -0400336config UBOOT
337 bool "Support for U-Boot command line parameters"
338 help
339 If you say Y here kernel will try to collect command
340 line parameters from the initial u-boot stack.
Lennart Sorensen588baea2009-09-18 13:49:36 -0400341
Greg Ungerer5c4dbba2005-09-02 10:42:52 +1000342config 4KSTACKS
343 bool "Use 4Kb for kernel stacks instead of 8Kb"
344 default y
345 help
346 If you say Y here the kernel will use a 4Kb stacksize for the
347 kernel stack attached to each process/thread. This facilitates
348 running more threads on a system and also reduces the pressure
349 on the VM subsystem for higher order allocations.
350
Greg Ungerer63e413d2006-06-26 16:32:59 +1000351comment "RAM configuration"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700352
Greg Ungerer63e413d2006-06-26 16:32:59 +1000353config RAMBASE
354 hex "Address of the base of RAM"
355 default "0"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700356 help
Greg Ungerer63e413d2006-06-26 16:32:59 +1000357 Define the address that RAM starts at. On many platforms this is
358 0, the base of the address space. And this is the default. Some
359 platforms choose to setup their RAM at other addresses within the
360 processor address space.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700361
Greg Ungerer63e413d2006-06-26 16:32:59 +1000362config RAMSIZE
Philippe De Muyter73a99832010-05-19 13:30:49 +0200363 hex "Size of RAM (in bytes), or 0 for automatic"
Greg Ungerer63e413d2006-06-26 16:32:59 +1000364 default "0x400000"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700365 help
Greg Ungerer63e413d2006-06-26 16:32:59 +1000366 Define the size of the system RAM. If you select 0 then the
367 kernel will try to probe the RAM size at runtime. This is not
368 supported on all CPU types.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700369
Greg Ungerer63e413d2006-06-26 16:32:59 +1000370config VECTORBASE
371 hex "Address of the base of system vectors"
372 default "0"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700373 help
Matt LaPlante4b3f6862006-10-03 22:21:02 +0200374 Define the address of the system vectors. Commonly this is
Greg Ungerer63e413d2006-06-26 16:32:59 +1000375 put at the start of RAM, but it doesn't have to be. On ColdFire
376 platforms this address is programmed into the VBR register, thus
377 actually setting the address to use.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700378
Greg Ungererd4852a32011-03-06 21:53:28 +1000379config MBAR
380 hex "Address of the MBAR (internal peripherals)"
381 default "0x10000000"
382 depends on HAVE_MBAR
383 help
384 Define the address of the internal system peripherals. This value
385 is set in the processors MBAR register. This is generally setup by
386 the boot loader, and will not be written by the kernel. By far most
387 ColdFire boards use the default 0x10000000 value, so if unsure then
388 use this.
389
390config IPSBAR
391 hex "Address of the IPSBAR (internal peripherals)"
392 default "0x40000000"
393 depends on HAVE_IPSBAR
394 help
395 Define the address of the internal system peripherals. This value
396 is set in the processors IPSBAR register. This is generally setup by
397 the boot loader, and will not be written by the kernel. By far most
398 ColdFire boards use the default 0x40000000 value, so if unsure then
399 use this.
400
Greg Ungerer63e413d2006-06-26 16:32:59 +1000401config KERNELBASE
402 hex "Address of the base of kernel code"
403 default "0x400"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700404 help
Greg Ungerer63e413d2006-06-26 16:32:59 +1000405 Typically on m68k systems the kernel will not start at the base
406 of RAM, but usually some small offset from it. Define the start
407 address of the kernel here. The most common setup will have the
408 processor vectors at the base of RAM and then the start of the
409 kernel. On some platforms some RAM is reserved for boot loaders
410 and the kernel starts after that. The 0x400 default was based on
411 a system with the RAM based at address 0, and leaving enough room
412 for the theoretical maximum number of 256 vectors.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700413
Greg Ungererc750a012006-06-28 16:39:19 +1000414comment "ROM configuration"
415
416config ROM
417 bool "Specify ROM linker regions"
Greg Ungererc750a012006-06-28 16:39:19 +1000418 help
419 Define a ROM region for the linker script. This creates a kernel
420 that can be stored in flash, with possibly the text, and data
421 regions being copied out to RAM at startup.
422
423config ROMBASE
424 hex "Address of the base of ROM device"
425 default "0"
426 depends on ROM
427 help
428 Define the address that the ROM region starts at. Some platforms
429 use this to set their chip select region accordingly for the boot
430 device.
431
432config ROMVEC
433 hex "Address of the base of the ROM vectors"
434 default "0"
435 depends on ROM
436 help
437 This is almost always the same as the base of the ROM. Since on all
Matt LaPlante3cb2fcc2006-11-30 05:22:59 +0100438 68000 type variants the vectors are at the base of the boot device
Greg Ungererc750a012006-06-28 16:39:19 +1000439 on system startup.
440
Greg Ungererc750a012006-06-28 16:39:19 +1000441config ROMSTART
442 hex "Address of the base of system image in ROM"
443 default "0x400"
444 depends on ROM
445 help
446 Define the start address of the system image in ROM. Commonly this
447 is strait after the ROM vectors.
448
449config ROMSIZE
450 hex "Size of the ROM device"
451 default "0x100000"
452 depends on ROM
453 help
454 Size of the ROM device. On some platforms this is used to setup
455 the chip select that controls the boot ROM device.
456
Linus Torvalds1da177e2005-04-16 15:20:36 -0700457choice
458 prompt "Kernel executes from"
Masahiro Yamadaa7f7f622020-06-14 01:50:22 +0900459 help
Linus Torvalds1da177e2005-04-16 15:20:36 -0700460 Choose the memory type that the kernel will be running in.
461
462config RAMKERNEL
463 bool "RAM"
464 help
465 The kernel will be resident in RAM when running.
466
467config ROMKERNEL
468 bool "ROM"
Randy Dunlapcd3bf8c2021-07-07 09:37:29 -0700469 depends on ROM
Linus Torvalds1da177e2005-04-16 15:20:36 -0700470 help
Greg Ungerer63e413d2006-06-26 16:32:59 +1000471 The kernel will be resident in FLASH/ROM when running. This is
472 often referred to as Execute-in-Place (XIP), since the kernel
473 code executes from the position it is stored in the FLASH/ROM.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700474
475endchoice
476
Sebastian Siewior78f508a2008-05-12 14:02:05 -0700477endif