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