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