1# SPDX-License-Identifier: GPL-2.0 2comment "Machine Types" 3 4if M68KCLASSIC 5 6config AMIGA 7 bool "Amiga support" 8 depends on MMU 9 select LEGACY_TIMER_TICK 10 help 11 This option enables support for the Amiga series of computers. If 12 you plan to use this kernel on an Amiga, say Y here and browse the 13 material available in <file:Documentation/arch/m68k>; otherwise say N. 14 15config ATARI 16 bool "Atari support" 17 depends on MMU 18 select HAVE_ARCH_NVRAM_OPS 19 select LEGACY_TIMER_TICK 20 help 21 This option enables support for the 68000-based Atari series of 22 computers (including the TT, Falcon and Medusa). If you plan to use 23 this kernel on an Atari, say Y here and browse the material 24 available in <file:Documentation/arch/m68k>; otherwise say N. 25 26config ATARI_KBD_CORE 27 bool 28 29config MAC 30 bool "Macintosh support" 31 depends on MMU 32 select HAVE_ARCH_NVRAM_OPS 33 select HAVE_PATA_PLATFORM 34 select LEGACY_TIMER_TICK 35 help 36 This option enables support for the Apple Macintosh series of 37 computers. If you plan to use this kernel on a Mac, say Y here and 38 browse the documentation available at <http://www.mac.linux-m68k.org/>; 39 otherwise say N. 40 41config APOLLO 42 bool "Apollo support" 43 depends on MMU 44 select LEGACY_TIMER_TICK 45 help 46 Say Y here if you want to run Linux on an MC680x0-based Apollo 47 Domain workstation such as the DN3500. 48 49config VME 50 bool "VME (Motorola and BVM) support" 51 depends on MMU 52 help 53 Say Y here if you want to build a kernel for a 680x0 based VME 54 board. Boards currently supported include Motorola boards MVME147, 55 MVME162, MVME166, MVME167, MVME172, and MVME177. BVME4000 and 56 BVME6000 boards from BVM Ltd are also supported. 57 58config MVME147 59 bool "MVME147 support" 60 depends on MMU 61 depends on VME 62 select LEGACY_TIMER_TICK 63 help 64 Say Y to include support for early Motorola VME boards. This will 65 build a kernel which can run on MVME147 single-board computers. If 66 you select this option you will have to select the appropriate 67 drivers for SCSI, Ethernet and serial ports later on. 68 69config MVME16x 70 bool "MVME162, 166 and 167 support" 71 depends on MMU 72 depends on VME 73 select LEGACY_TIMER_TICK 74 help 75 Say Y to include support for Motorola VME boards. This will build a 76 kernel which can run on MVME162, MVME166, MVME167, MVME172, and 77 MVME177 boards. If you select this option you will have to select 78 the appropriate drivers for SCSI, Ethernet and serial ports later 79 on. 80 81config BVME6000 82 bool "BVME4000 and BVME6000 support" 83 depends on MMU 84 depends on VME 85 select LEGACY_TIMER_TICK 86 help 87 Say Y to include support for VME boards from BVM Ltd. This will 88 build a kernel which can run on BVME4000 and BVME6000 boards. If 89 you select this option you will have to select the appropriate 90 drivers for SCSI, Ethernet and serial ports later on. 91 92config HP300 93 bool "HP9000/300 and HP9000/400 support" 94 depends on MMU 95 select LEGACY_TIMER_TICK 96 help 97 This option enables support for the HP9000/300 and HP9000/400 series 98 of workstations. Support for these machines is still somewhat 99 experimental. If you plan to try to use the kernel on such a machine 100 say Y here. 101 Everybody else says N. 102 103config SUN3X 104 bool "Sun3x support" 105 depends on MMU 106 select LEGACY_TIMER_TICK 107 select M68030 108 help 109 This option enables support for the Sun 3x series of workstations. 110 Be warned that this support is very experimental. 111 Note that Sun 3x kernels are not compatible with Sun 3 hardware. 112 General Linux information on the Sun 3x series (now discontinued) 113 is at <http://www.angelfire.com/ca2/tech68k/sun3.html>. 114 115 If you don't want to compile a kernel for a Sun 3x, say N. 116 117config Q40 118 bool "Q40/Q60 support" 119 depends on MMU 120 select LEGACY_TIMER_TICK 121 help 122 The Q40 is a Motorola 68040-based successor to the Sinclair QL 123 manufactured in Germany. There is an official Q40 home page at 124 <http://www.q40.de/>. This option enables support for the Q40 and 125 Q60. Select your CPU below. For 68LC060 don't forget to enable FPU 126 emulation. 127 128config VIRT 129 bool "Virtual M68k Machine support" 130 depends on MMU 131 select GENERIC_CLOCKEVENTS 132 select GOLDFISH 133 select GOLDFISH_TIMER 134 select GOLDFISH_TTY 135 select M68040 136 select POWER_RESET 137 select POWER_RESET_QEMU_VIRT_CTRL 138 select RTC_CLASS 139 select RTC_DRV_GOLDFISH 140 select TTY 141 select VIRTIO_MENU 142 select VIRTIO_MMIO 143 help 144 This options enable a pure virtual machine based on m68k, 145 VIRTIO MMIO devices and GOLDFISH interfaces (TTY, RTC, PIC). 146 147config PILOT 148 bool 149 150config PILOT3 151 bool "Pilot 1000/5000, PalmPilot Personal/Pro, or PalmIII support" 152 depends on !MMU 153 select M68328 154 select PILOT 155 help 156 Support for the Palm Pilot 1000/5000, Personal/Pro and PalmIII. 157 158config XCOPILOT_BUGS 159 bool "(X)Copilot support" 160 depends on PILOT3 161 help 162 Support the bugs of Xcopilot. 163 164config UCSIMM 165 bool "uCsimm module support" 166 depends on !MMU 167 select M68EZ328 168 help 169 Support for the Arcturus Networks uCsimm module. 170 171config UCDIMM 172 bool "uCdimm module support" 173 depends on !MMU 174 select M68VZ328 175 help 176 Support for the Arcturus Networks uCdimm module. 177 178config DRAGEN2 179 bool "DragonEngine II board support" 180 depends on !MMU 181 select M68VZ328 182 help 183 Support for the DragonEngine II board. 184 185config DIRECT_IO_ACCESS 186 bool "Allow user to access IO directly" 187 depends on (UCSIMM || UCDIMM || DRAGEN2) 188 help 189 Disable the CPU internal registers protection in user mode, 190 to allow a user application to read/write them. 191 192config INIT_LCD 193 bool "Initialize LCD" 194 depends on (UCSIMM || UCDIMM || DRAGEN2) 195 help 196 Initialize the LCD controller of the 68x328 processor. 197 198config MEMORY_RESERVE 199 int "Memory reservation (MiB)" 200 depends on (UCSIMM || UCDIMM) 201 default 0 202 help 203 Reserve certain memory regions on 68x328 based boards. 204 205endif # M68KCLASSIC 206 207config ARN5206 208 bool "Arnewsh 5206 board support" 209 depends on M5206 210 help 211 Support for the Arnewsh 5206 board. 212 213config M5206eC3 214 bool "Motorola M5206eC3 board support" 215 depends on M5206e 216 help 217 Support for the Motorola M5206eC3 board. 218 219config ELITE 220 bool "Motorola M5206eLITE board support" 221 depends on M5206e 222 help 223 Support for the Motorola M5206eLITE board. 224 225config M5235EVB 226 bool "Freescale M5235EVB support" 227 depends on M523x 228 help 229 Support for the Freescale M5235EVB board. 230 231config M5249C3 232 bool "Motorola M5249C3 board support" 233 depends on M5249 234 help 235 Support for the Motorola M5249C3 board. 236 237config M5272C3 238 bool "Motorola M5272C3 board support" 239 depends on M5272 240 help 241 Support for the Motorola M5272C3 board. 242 243config WILDFIRE 244 bool "Intec Automation Inc. WildFire board support" 245 depends on M528x 246 help 247 Support for the Intec Automation Inc. WildFire. 248 249config WILDFIREMOD 250 bool "Intec Automation Inc. WildFire module support" 251 depends on M528x 252 help 253 Support for the Intec Automation Inc. WildFire module. 254 255config ARN5307 256 bool "Arnewsh 5307 board support" 257 depends on M5307 258 help 259 Support for the Arnewsh 5307 board. 260 261config M5307C3 262 bool "Motorola M5307C3 board support" 263 depends on M5307 264 help 265 Support for the Motorola M5307C3 board. 266 267config SECUREEDGEMP3 268 bool "SnapGear SecureEdge/MP3 platform support" 269 depends on M5307 270 help 271 Support for the SnapGear SecureEdge/MP3 platform. 272 273config M5407C3 274 bool "Motorola M5407C3 board support" 275 depends on M5407 276 help 277 Support for the Motorola M5407C3 board. 278 279config AMCORE 280 bool "Sysam AMCORE board support" 281 depends on M5307 282 help 283 Support for the Sysam AMCORE open-hardware generic board. 284 285config STMARK2 286 bool "Sysam stmark2 board support" 287 depends on M5441x 288 help 289 Support for the Sysam stmark2 open-hardware generic board. 290 291config FIREBEE 292 bool "FireBee board support" 293 depends on M547x 294 help 295 Support for the FireBee ColdFire 5475 based board. 296 297config CLEOPATRA 298 bool "Feith CLEOPATRA board support" 299 depends on (M5307 || M5407) 300 help 301 Support for the Feith Cleopatra boards. 302 303config CANCam 304 bool "Feith CANCam board support" 305 depends on M5272 306 help 307 Support for the Feith CANCam board. 308 309config SCALES 310 bool "Feith SCALES board support" 311 depends on M5272 312 help 313 Support for the Feith SCALES board. 314 315config NETtel 316 bool "SecureEdge/NETtel board support" 317 depends on (M5206e || M5272 || M5307) 318 help 319 Support for the SnapGear NETtel/SecureEdge/SnapGear boards. 320 321config MOD5272 322 bool "Netburner MOD-5272 board support" 323 depends on M5272 324 help 325 Support for the Netburner MOD-5272 board. 326 327if !MMU || COLDFIRE 328 329comment "Machine Options" 330 331config UBOOT 332 bool "Support for U-Boot command line parameters" 333 depends on COLDFIRE 334 help 335 If you say Y here kernel will try to collect command 336 line parameters from the initial u-boot stack. 337 338config 4KSTACKS 339 bool "Use 4Kb for kernel stacks instead of 8Kb" 340 default y 341 help 342 If you say Y here the kernel will use a 4Kb stacksize for the 343 kernel stack attached to each process/thread. This facilitates 344 running more threads on a system and also reduces the pressure 345 on the VM subsystem for higher order allocations. 346 347comment "RAM configuration" 348 349config RAMBASE 350 hex "Address of the base of RAM" 351 default "0" 352 help 353 Define the address that RAM starts at. On many platforms this is 354 0, the base of the address space. And this is the default. Some 355 platforms choose to setup their RAM at other addresses within the 356 processor address space. 357 358config RAMSIZE 359 hex "Size of RAM (in bytes), or 0 for automatic" 360 default "0x400000" 361 help 362 Define the size of the system RAM. If you select 0 then the 363 kernel will try to probe the RAM size at runtime. This is not 364 supported on all CPU types. 365 366config VECTORBASE 367 hex "Address of the base of system vectors" 368 default "0" 369 help 370 Define the address of the system vectors. Commonly this is 371 put at the start of RAM, but it doesn't have to be. On ColdFire 372 platforms this address is programmed into the VBR register, thus 373 actually setting the address to use. 374 375config MBAR 376 hex "Address of the MBAR (internal peripherals)" 377 default "0x10000000" 378 depends on HAVE_MBAR 379 help 380 Define the address of the internal system peripherals. This value 381 is set in the processors MBAR register. This is generally setup by 382 the boot loader, and will not be written by the kernel. By far most 383 ColdFire boards use the default 0x10000000 value, so if unsure then 384 use this. 385 386config IPSBAR 387 hex "Address of the IPSBAR (internal peripherals)" 388 default "0x40000000" 389 depends on HAVE_IPSBAR 390 help 391 Define the address of the internal system peripherals. This value 392 is set in the processors IPSBAR register. This is generally setup by 393 the boot loader, and will not be written by the kernel. By far most 394 ColdFire boards use the default 0x40000000 value, so if unsure then 395 use this. 396 397config KERNELBASE 398 hex "Address of the base of kernel code" 399 default "0x400" 400 help 401 Typically on m68k systems the kernel will not start at the base 402 of RAM, but usually some small offset from it. Define the start 403 address of the kernel here. The most common setup will have the 404 processor vectors at the base of RAM and then the start of the 405 kernel. On some platforms some RAM is reserved for boot loaders 406 and the kernel starts after that. The 0x400 default was based on 407 a system with the RAM based at address 0, and leaving enough room 408 for the theoretical maximum number of 256 vectors. 409 410comment "ROM configuration" 411 412config ROM 413 bool "Specify ROM linker regions" 414 help 415 Define a ROM region for the linker script. This creates a kernel 416 that can be stored in flash, with possibly the text, and data 417 regions being copied out to RAM at startup. 418 419config ROMVEC 420 hex "Address of the base of the ROM vectors" 421 default "0x10c10000" 422 depends on ROM 423 help 424 This is almost always the same as the base of the ROM. Since on all 425 68000 type variants the vectors are at the base of the boot device 426 on system startup. 427 428config ROMSTART 429 hex "Address of the base of system image in ROM" 430 default "0x10c10400" 431 depends on ROM 432 help 433 Define the start address of the system image in ROM. Commonly this 434 is strait after the ROM vectors. 435 436choice 437 prompt "Kernel executes from" 438 help 439 Choose the memory type that the kernel will be running in. 440 441config RAMKERNEL 442 bool "RAM" 443 help 444 The kernel will be resident in RAM when running. 445 446config ROMKERNEL 447 bool "ROM" 448 depends on ROM 449 help 450 The kernel will be resident in FLASH/ROM when running. This is 451 often referred to as Execute-in-Place (XIP), since the kernel 452 code executes from the position it is stored in the FLASH/ROM. 453 454endchoice 455 456endif # !MMU || COLDFIRE 457