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