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 148config PILOT 149 bool 150 151config PILOT3 152 bool "Pilot 1000/5000, PalmPilot Personal/Pro, or PalmIII support" 153 depends on !MMU 154 select M68328 155 select PILOT 156 help 157 Support for the Palm Pilot 1000/5000, Personal/Pro and PalmIII. 158 159config XCOPILOT_BUGS 160 bool "(X)Copilot support" 161 depends on PILOT3 162 help 163 Support the bugs of Xcopilot. 164 165config UCSIMM 166 bool "uCsimm module support" 167 depends on !MMU 168 select M68EZ328 169 help 170 Support for the Arcturus Networks uCsimm module. 171 172config UCDIMM 173 bool "uDsimm module support" 174 depends on !MMU 175 select M68VZ328 176 help 177 Support for the Arcturus Networks uDsimm module. 178 179config DRAGEN2 180 bool "DragenEngine II board support" 181 depends on !MMU 182 select M68VZ328 183 help 184 Support for the DragenEngine II board. 185 186config DIRECT_IO_ACCESS 187 bool "Allow user to access IO directly" 188 depends on (UCSIMM || UCDIMM || DRAGEN2) 189 help 190 Disable the CPU internal registers protection in user mode, 191 to allow a user application to read/write them. 192 193config INIT_LCD 194 bool "Initialize LCD" 195 depends on (UCSIMM || UCDIMM || DRAGEN2) 196 help 197 Initialize the LCD controller of the 68x328 processor. 198 199config MEMORY_RESERVE 200 int "Memory reservation (MiB)" 201 depends on (UCSIMM || UCDIMM) 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 help 334 If you say Y here kernel will try to collect command 335 line parameters from the initial u-boot stack. 336 337config 4KSTACKS 338 bool "Use 4Kb for kernel stacks instead of 8Kb" 339 default y 340 help 341 If you say Y here the kernel will use a 4Kb stacksize for the 342 kernel stack attached to each process/thread. This facilitates 343 running more threads on a system and also reduces the pressure 344 on the VM subsystem for higher order allocations. 345 346comment "RAM configuration" 347 348config RAMBASE 349 hex "Address of the base of RAM" 350 default "0" 351 help 352 Define the address that RAM starts at. On many platforms this is 353 0, the base of the address space. And this is the default. Some 354 platforms choose to setup their RAM at other addresses within the 355 processor address space. 356 357config RAMSIZE 358 hex "Size of RAM (in bytes), or 0 for automatic" 359 default "0x400000" 360 help 361 Define the size of the system RAM. If you select 0 then the 362 kernel will try to probe the RAM size at runtime. This is not 363 supported on all CPU types. 364 365config VECTORBASE 366 hex "Address of the base of system vectors" 367 default "0" 368 help 369 Define the address of the system vectors. Commonly this is 370 put at the start of RAM, but it doesn't have to be. On ColdFire 371 platforms this address is programmed into the VBR register, thus 372 actually setting the address to use. 373 374config MBAR 375 hex "Address of the MBAR (internal peripherals)" 376 default "0x10000000" 377 depends on HAVE_MBAR 378 help 379 Define the address of the internal system peripherals. This value 380 is set in the processors MBAR register. This is generally setup by 381 the boot loader, and will not be written by the kernel. By far most 382 ColdFire boards use the default 0x10000000 value, so if unsure then 383 use this. 384 385config IPSBAR 386 hex "Address of the IPSBAR (internal peripherals)" 387 default "0x40000000" 388 depends on HAVE_IPSBAR 389 help 390 Define the address of the internal system peripherals. This value 391 is set in the processors IPSBAR register. This is generally setup by 392 the boot loader, and will not be written by the kernel. By far most 393 ColdFire boards use the default 0x40000000 value, so if unsure then 394 use this. 395 396config KERNELBASE 397 hex "Address of the base of kernel code" 398 default "0x400" 399 help 400 Typically on m68k systems the kernel will not start at the base 401 of RAM, but usually some small offset from it. Define the start 402 address of the kernel here. The most common setup will have the 403 processor vectors at the base of RAM and then the start of the 404 kernel. On some platforms some RAM is reserved for boot loaders 405 and the kernel starts after that. The 0x400 default was based on 406 a system with the RAM based at address 0, and leaving enough room 407 for the theoretical maximum number of 256 vectors. 408 409comment "ROM configuration" 410 411config ROM 412 bool "Specify ROM linker regions" 413 help 414 Define a ROM region for the linker script. This creates a kernel 415 that can be stored in flash, with possibly the text, and data 416 regions being copied out to RAM at startup. 417 418config ROMBASE 419 hex "Address of the base of ROM device" 420 default "0" 421 depends on ROM 422 help 423 Define the address that the ROM region starts at. Some platforms 424 use this to set their chip select region accordingly for the boot 425 device. 426 427config ROMVEC 428 hex "Address of the base of the ROM vectors" 429 default "0" 430 depends on ROM 431 help 432 This is almost always the same as the base of the ROM. Since on all 433 68000 type variants the vectors are at the base of the boot device 434 on system startup. 435 436config ROMSTART 437 hex "Address of the base of system image in ROM" 438 default "0x400" 439 depends on ROM 440 help 441 Define the start address of the system image in ROM. Commonly this 442 is strait after the ROM vectors. 443 444config ROMSIZE 445 hex "Size of the ROM device" 446 default "0x100000" 447 depends on ROM 448 help 449 Size of the ROM device. On some platforms this is used to setup 450 the chip select that controls the boot ROM device. 451 452choice 453 prompt "Kernel executes from" 454 help 455 Choose the memory type that the kernel will be running in. 456 457config RAMKERNEL 458 bool "RAM" 459 help 460 The kernel will be resident in RAM when running. 461 462config ROMKERNEL 463 bool "ROM" 464 help 465 The kernel will be resident in FLASH/ROM when running. This is 466 often referred to as Execute-in-Place (XIP), since the kernel 467 code executes from the position it is stored in the FLASH/ROM. 468 469endchoice 470 471endif 472