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