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 NO_DMA 133 select M68020 134 help 135 This option enables support for the Sun 3 series of workstations 136 (3/50, 3/60, 3/1xx, 3/2xx systems). Enabling this option requires 137 that all other hardware types must be disabled, as Sun 3 kernels 138 are incompatible with all other m68k targets (including Sun 3x!). 139 140 If you don't want to compile a kernel exclusively for a Sun 3, say N. 141 142endif # M68KCLASSIC 143 144config PILOT 145 bool 146 147config PILOT3 148 bool "Pilot 1000/5000, PalmPilot Personal/Pro, or PalmIII support" 149 depends on M68328 150 select PILOT 151 help 152 Support for the Palm Pilot 1000/5000, Personal/Pro and PalmIII. 153 154config XCOPILOT_BUGS 155 bool "(X)Copilot support" 156 depends on PILOT3 157 help 158 Support the bugs of Xcopilot. 159 160config UCSIMM 161 bool "uCsimm module support" 162 depends on M68EZ328 163 help 164 Support for the Arcturus Networks uCsimm module. 165 166config UCDIMM 167 bool "uDsimm module support" 168 depends on M68VZ328 169 help 170 Support for the Arcturus Networks uDsimm module. 171 172config DRAGEN2 173 bool "DragenEngine II board support" 174 depends on M68VZ328 175 help 176 Support for the DragenEngine II board. 177 178config DIRECT_IO_ACCESS 179 bool "Allow user to access IO directly" 180 depends on (UCSIMM || UCDIMM || DRAGEN2) 181 help 182 Disable the CPU internal registers protection in user mode, 183 to allow a user application to read/write them. 184 185config INIT_LCD 186 bool "Initialize LCD" 187 depends on (UCSIMM || UCDIMM || DRAGEN2) 188 help 189 Initialize the LCD controller of the 68x328 processor. 190 191config MEMORY_RESERVE 192 int "Memory reservation (MiB)" 193 depends on (UCSIMM || UCDIMM) 194 default 0 195 help 196 Reserve certain memory regions on 68x328 based boards. 197 198config ARN5206 199 bool "Arnewsh 5206 board support" 200 depends on M5206 201 help 202 Support for the Arnewsh 5206 board. 203 204config M5206eC3 205 bool "Motorola M5206eC3 board support" 206 depends on M5206e 207 help 208 Support for the Motorola M5206eC3 board. 209 210config ELITE 211 bool "Motorola M5206eLITE board support" 212 depends on M5206e 213 help 214 Support for the Motorola M5206eLITE board. 215 216config M5235EVB 217 bool "Freescale M5235EVB support" 218 depends on M523x 219 help 220 Support for the Freescale M5235EVB board. 221 222config M5249C3 223 bool "Motorola M5249C3 board support" 224 depends on M5249 225 help 226 Support for the Motorola M5249C3 board. 227 228config M5272C3 229 bool "Motorola M5272C3 board support" 230 depends on M5272 231 help 232 Support for the Motorola M5272C3 board. 233 234config WILDFIRE 235 bool "Intec Automation Inc. WildFire board support" 236 depends on M528x 237 help 238 Support for the Intec Automation Inc. WildFire. 239 240config WILDFIREMOD 241 bool "Intec Automation Inc. WildFire module support" 242 depends on M528x 243 help 244 Support for the Intec Automation Inc. WildFire module. 245 246config ARN5307 247 bool "Arnewsh 5307 board support" 248 depends on M5307 249 help 250 Support for the Arnewsh 5307 board. 251 252config M5307C3 253 bool "Motorola M5307C3 board support" 254 depends on M5307 255 help 256 Support for the Motorola M5307C3 board. 257 258config SECUREEDGEMP3 259 bool "SnapGear SecureEdge/MP3 platform support" 260 depends on M5307 261 help 262 Support for the SnapGear SecureEdge/MP3 platform. 263 264config M5407C3 265 bool "Motorola M5407C3 board support" 266 depends on M5407 267 help 268 Support for the Motorola M5407C3 board. 269 270config AMCORE 271 bool "Sysam AMCORE board support" 272 depends on M5307 273 help 274 Support for the Sysam AMCORE open-hardware generic board. 275 276config STMARK2 277 bool "Sysam stmark2 board support" 278 depends on M5441x 279 help 280 Support for the Sysam stmark2 open-hardware generic board. 281 282config FIREBEE 283 bool "FireBee board support" 284 depends on M547x 285 help 286 Support for the FireBee ColdFire 5475 based board. 287 288config CLEOPATRA 289 bool "Feith CLEOPATRA board support" 290 depends on (M5307 || M5407) 291 help 292 Support for the Feith Cleopatra boards. 293 294config CANCam 295 bool "Feith CANCam board support" 296 depends on M5272 297 help 298 Support for the Feith CANCam board. 299 300config SCALES 301 bool "Feith SCALES board support" 302 depends on M5272 303 help 304 Support for the Feith SCALES board. 305 306config NETtel 307 bool "SecureEdge/NETtel board support" 308 depends on (M5206e || M5272 || M5307) 309 help 310 Support for the SnapGear NETtel/SecureEdge/SnapGear boards. 311 312config MOD5272 313 bool "Netburner MOD-5272 board support" 314 depends on M5272 315 help 316 Support for the Netburner MOD-5272 board. 317 318if !MMU || COLDFIRE 319 320comment "Machine Options" 321 322config UBOOT 323 bool "Support for U-Boot command line parameters" 324 depends on COLDFIRE 325 help 326 If you say Y here kernel will try to collect command 327 line parameters from the initial u-boot stack. 328 329config 4KSTACKS 330 bool "Use 4Kb for kernel stacks instead of 8Kb" 331 default y 332 help 333 If you say Y here the kernel will use a 4Kb stacksize for the 334 kernel stack attached to each process/thread. This facilitates 335 running more threads on a system and also reduces the pressure 336 on the VM subsystem for higher order allocations. 337 338comment "RAM configuration" 339 340config RAMBASE 341 hex "Address of the base of RAM" 342 default "0" 343 help 344 Define the address that RAM starts at. On many platforms this is 345 0, the base of the address space. And this is the default. Some 346 platforms choose to setup their RAM at other addresses within the 347 processor address space. 348 349config RAMSIZE 350 hex "Size of RAM (in bytes), or 0 for automatic" 351 default "0x400000" 352 help 353 Define the size of the system RAM. If you select 0 then the 354 kernel will try to probe the RAM size at runtime. This is not 355 supported on all CPU types. 356 357config VECTORBASE 358 hex "Address of the base of system vectors" 359 default "0" 360 help 361 Define the address of the system vectors. Commonly this is 362 put at the start of RAM, but it doesn't have to be. On ColdFire 363 platforms this address is programmed into the VBR register, thus 364 actually setting the address to use. 365 366config MBAR 367 hex "Address of the MBAR (internal peripherals)" 368 default "0x10000000" 369 depends on HAVE_MBAR 370 help 371 Define the address of the internal system peripherals. This value 372 is set in the processors MBAR register. This is generally setup by 373 the boot loader, and will not be written by the kernel. By far most 374 ColdFire boards use the default 0x10000000 value, so if unsure then 375 use this. 376 377config IPSBAR 378 hex "Address of the IPSBAR (internal peripherals)" 379 default "0x40000000" 380 depends on HAVE_IPSBAR 381 help 382 Define the address of the internal system peripherals. This value 383 is set in the processors IPSBAR 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 0x40000000 value, so if unsure then 386 use this. 387 388config KERNELBASE 389 hex "Address of the base of kernel code" 390 default "0x400" 391 help 392 Typically on m68k systems the kernel will not start at the base 393 of RAM, but usually some small offset from it. Define the start 394 address of the kernel here. The most common setup will have the 395 processor vectors at the base of RAM and then the start of the 396 kernel. On some platforms some RAM is reserved for boot loaders 397 and the kernel starts after that. The 0x400 default was based on 398 a system with the RAM based at address 0, and leaving enough room 399 for the theoretical maximum number of 256 vectors. 400 401comment "ROM configuration" 402 403config ROM 404 bool "Specify ROM linker regions" 405 help 406 Define a ROM region for the linker script. This creates a kernel 407 that can be stored in flash, with possibly the text, and data 408 regions being copied out to RAM at startup. 409 410config ROMBASE 411 hex "Address of the base of ROM device" 412 default "0" 413 depends on ROM 414 help 415 Define the address that the ROM region starts at. Some platforms 416 use this to set their chip select region accordingly for the boot 417 device. 418 419config ROMVEC 420 hex "Address of the base of the ROM vectors" 421 default "0" 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 "0x400" 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 436config ROMSIZE 437 hex "Size of the ROM device" 438 default "0x100000" 439 depends on ROM 440 help 441 Size of the ROM device. On some platforms this is used to setup 442 the chip select that controls the boot ROM device. 443 444choice 445 prompt "Kernel executes from" 446 help 447 Choose the memory type that the kernel will be running in. 448 449config RAMKERNEL 450 bool "RAM" 451 help 452 The kernel will be resident in RAM when running. 453 454config ROMKERNEL 455 bool "ROM" 456 help 457 The kernel will be resident in FLASH/ROM when running. This is 458 often referred to as Execute-in-Place (XIP), since the kernel 459 code executes from the position it is stored in the FLASH/ROM. 460 461endchoice 462 463endif 464