|  | # SPDX-License-Identifier: GPL-2.0 | 
|  | comment "Machine Types" | 
|  |  | 
|  | if M68KCLASSIC | 
|  |  | 
|  | config AMIGA | 
|  | bool "Amiga support" | 
|  | depends on MMU | 
|  | select MMU_MOTOROLA if MMU | 
|  | select LEGACY_TIMER_TICK | 
|  | help | 
|  | This option enables support for the Amiga series of computers. If | 
|  | you plan to use this kernel on an Amiga, say Y here and browse the | 
|  | material available in <file:Documentation/arch/m68k>; otherwise say N. | 
|  |  | 
|  | config ATARI | 
|  | bool "Atari support" | 
|  | depends on MMU | 
|  | select MMU_MOTOROLA if MMU | 
|  | select HAVE_ARCH_NVRAM_OPS | 
|  | select LEGACY_TIMER_TICK | 
|  | help | 
|  | This option enables support for the 68000-based Atari series of | 
|  | computers (including the TT, Falcon and Medusa). If you plan to use | 
|  | this kernel on an Atari, say Y here and browse the material | 
|  | available in <file:Documentation/arch/m68k>; otherwise say N. | 
|  |  | 
|  | config ATARI_KBD_CORE | 
|  | bool | 
|  |  | 
|  | config MAC | 
|  | bool "Macintosh support" | 
|  | depends on MMU | 
|  | select MMU_MOTOROLA if MMU | 
|  | select HAVE_ARCH_NVRAM_OPS | 
|  | select HAVE_PATA_PLATFORM | 
|  | select LEGACY_TIMER_TICK | 
|  | help | 
|  | This option enables support for the Apple Macintosh series of | 
|  | computers. If you plan to use this kernel on a Mac, say Y here and | 
|  | browse the documentation available at <http://www.mac.linux-m68k.org/>; | 
|  | otherwise say N. | 
|  |  | 
|  | config APOLLO | 
|  | bool "Apollo support" | 
|  | depends on MMU | 
|  | select MMU_MOTOROLA if MMU | 
|  | select LEGACY_TIMER_TICK | 
|  | help | 
|  | Say Y here if you want to run Linux on an MC680x0-based Apollo | 
|  | Domain workstation such as the DN3500. | 
|  |  | 
|  | config VME | 
|  | bool "VME (Motorola and BVM) support" | 
|  | depends on MMU | 
|  | select MMU_MOTOROLA if MMU | 
|  | help | 
|  | Say Y here if you want to build a kernel for a 680x0 based VME | 
|  | board.  Boards currently supported include Motorola boards MVME147, | 
|  | MVME162, MVME166, MVME167, MVME172, and MVME177.  BVME4000 and | 
|  | BVME6000 boards from BVM Ltd are also supported. | 
|  |  | 
|  | config MVME147 | 
|  | bool "MVME147 support" | 
|  | depends on MMU | 
|  | depends on VME | 
|  | select LEGACY_TIMER_TICK | 
|  | help | 
|  | Say Y to include support for early Motorola VME boards.  This will | 
|  | build a kernel which can run on MVME147 single-board computers.  If | 
|  | you select this option you will have to select the appropriate | 
|  | drivers for SCSI, Ethernet and serial ports later on. | 
|  |  | 
|  | config MVME16x | 
|  | bool "MVME162, 166 and 167 support" | 
|  | depends on MMU | 
|  | depends on VME | 
|  | select LEGACY_TIMER_TICK | 
|  | help | 
|  | Say Y to include support for Motorola VME boards.  This will build a | 
|  | kernel which can run on MVME162, MVME166, MVME167, MVME172, and | 
|  | MVME177 boards.  If you select this option you will have to select | 
|  | the appropriate drivers for SCSI, Ethernet and serial ports later | 
|  | on. | 
|  |  | 
|  | config BVME6000 | 
|  | bool "BVME4000 and BVME6000 support" | 
|  | depends on MMU | 
|  | depends on VME | 
|  | select LEGACY_TIMER_TICK | 
|  | help | 
|  | Say Y to include support for VME boards from BVM Ltd.  This will | 
|  | build a kernel which can run on BVME4000 and BVME6000 boards.  If | 
|  | you select this option you will have to select the appropriate | 
|  | drivers for SCSI, Ethernet and serial ports later on. | 
|  |  | 
|  | config HP300 | 
|  | bool "HP9000/300 and HP9000/400 support" | 
|  | depends on MMU | 
|  | select MMU_MOTOROLA if MMU | 
|  | select LEGACY_TIMER_TICK | 
|  | help | 
|  | This option enables support for the HP9000/300 and HP9000/400 series | 
|  | of workstations. Support for these machines is still somewhat | 
|  | experimental. If you plan to try to use the kernel on such a machine | 
|  | say Y here. | 
|  | Everybody else says N. | 
|  |  | 
|  | config SUN3X | 
|  | bool "Sun3x support" | 
|  | depends on MMU | 
|  | select LEGACY_TIMER_TICK | 
|  | select MMU_MOTOROLA if MMU | 
|  | select M68030 | 
|  | help | 
|  | This option enables support for the Sun 3x series of workstations. | 
|  | Be warned that this support is very experimental. | 
|  | Note that Sun 3x kernels are not compatible with Sun 3 hardware. | 
|  | General Linux information on the Sun 3x series (now discontinued) | 
|  | is at <http://www.angelfire.com/ca2/tech68k/sun3.html>. | 
|  |  | 
|  | If you don't want to compile a kernel for a Sun 3x, say N. | 
|  |  | 
|  | config Q40 | 
|  | bool "Q40/Q60 support" | 
|  | depends on MMU | 
|  | select MMU_MOTOROLA if MMU | 
|  | select LEGACY_TIMER_TICK | 
|  | help | 
|  | The Q40 is a Motorola 68040-based successor to the Sinclair QL | 
|  | manufactured in Germany.  There is an official Q40 home page at | 
|  | <http://www.q40.de/>.  This option enables support for the Q40 and | 
|  | Q60. Select your CPU below.  For 68LC060 don't forget to enable FPU | 
|  | emulation. | 
|  |  | 
|  | config SUN3 | 
|  | bool "Sun3 support" | 
|  | depends on MMU | 
|  | depends on !MMU_MOTOROLA | 
|  | select MMU_SUN3 if MMU | 
|  | select LEGACY_TIMER_TICK | 
|  | select NO_DMA | 
|  | select M68020 | 
|  | help | 
|  | This option enables support for the Sun 3 series of workstations | 
|  | (3/50, 3/60, 3/1xx, 3/2xx systems). Enabling this option requires | 
|  | that all other hardware types must be disabled, as Sun 3 kernels | 
|  | are incompatible with all other m68k targets (including Sun 3x!). | 
|  |  | 
|  | If you don't want to compile a kernel exclusively for a Sun 3, say N. | 
|  |  | 
|  | config VIRT | 
|  | bool "Virtual M68k Machine support" | 
|  | depends on MMU | 
|  | select GENERIC_CLOCKEVENTS | 
|  | select GOLDFISH | 
|  | select GOLDFISH_TIMER | 
|  | select GOLDFISH_TTY | 
|  | select M68040 | 
|  | select MMU_MOTOROLA if MMU | 
|  | select RTC_CLASS | 
|  | select RTC_DRV_GOLDFISH | 
|  | select TTY | 
|  | select VIRTIO_MENU | 
|  | select VIRTIO_MMIO | 
|  | help | 
|  | This options enable a pure virtual machine based on m68k, | 
|  | VIRTIO MMIO devices and GOLDFISH interfaces (TTY, RTC, PIC). | 
|  |  | 
|  | config PILOT | 
|  | bool | 
|  |  | 
|  | config PILOT3 | 
|  | bool "Pilot 1000/5000, PalmPilot Personal/Pro, or PalmIII support" | 
|  | depends on !MMU | 
|  | select M68328 | 
|  | select PILOT | 
|  | help | 
|  | Support for the Palm Pilot 1000/5000, Personal/Pro and PalmIII. | 
|  |  | 
|  | config XCOPILOT_BUGS | 
|  | bool "(X)Copilot support" | 
|  | depends on PILOT3 | 
|  | help | 
|  | Support the bugs of Xcopilot. | 
|  |  | 
|  | config UCSIMM | 
|  | bool "uCsimm module support" | 
|  | depends on !MMU | 
|  | select M68EZ328 | 
|  | help | 
|  | Support for the Arcturus Networks uCsimm module. | 
|  |  | 
|  | config UCDIMM | 
|  | bool "uCdimm module support" | 
|  | depends on !MMU | 
|  | select M68VZ328 | 
|  | help | 
|  | Support for the Arcturus Networks uCdimm module. | 
|  |  | 
|  | config DRAGEN2 | 
|  | bool "DragonEngine II board support" | 
|  | depends on !MMU | 
|  | select M68VZ328 | 
|  | help | 
|  | Support for the DragonEngine II board. | 
|  |  | 
|  | config DIRECT_IO_ACCESS | 
|  | bool "Allow user to access IO directly" | 
|  | depends on (UCSIMM || UCDIMM || DRAGEN2) | 
|  | help | 
|  | Disable the CPU internal registers protection in user mode, | 
|  | to allow a user application to read/write them. | 
|  |  | 
|  | config INIT_LCD | 
|  | bool "Initialize LCD" | 
|  | depends on (UCSIMM || UCDIMM || DRAGEN2) | 
|  | help | 
|  | Initialize the LCD controller of the 68x328 processor. | 
|  |  | 
|  | config MEMORY_RESERVE | 
|  | int "Memory reservation (MiB)" | 
|  | depends on (UCSIMM || UCDIMM) | 
|  | default 0 | 
|  | help | 
|  | Reserve certain memory regions on 68x328 based boards. | 
|  |  | 
|  | endif # M68KCLASSIC | 
|  |  | 
|  | config ARN5206 | 
|  | bool "Arnewsh 5206 board support" | 
|  | depends on M5206 | 
|  | help | 
|  | Support for the Arnewsh 5206 board. | 
|  |  | 
|  | config M5206eC3 | 
|  | bool "Motorola M5206eC3 board support" | 
|  | depends on M5206e | 
|  | help | 
|  | Support for the Motorola M5206eC3 board. | 
|  |  | 
|  | config ELITE | 
|  | bool "Motorola M5206eLITE board support" | 
|  | depends on M5206e | 
|  | help | 
|  | Support for the Motorola M5206eLITE board. | 
|  |  | 
|  | config M5235EVB | 
|  | bool "Freescale M5235EVB support" | 
|  | depends on M523x | 
|  | help | 
|  | Support for the Freescale M5235EVB board. | 
|  |  | 
|  | config M5249C3 | 
|  | bool "Motorola M5249C3 board support" | 
|  | depends on M5249 | 
|  | help | 
|  | Support for the Motorola M5249C3 board. | 
|  |  | 
|  | config M5272C3 | 
|  | bool "Motorola M5272C3 board support" | 
|  | depends on M5272 | 
|  | help | 
|  | Support for the Motorola M5272C3 board. | 
|  |  | 
|  | config WILDFIRE | 
|  | bool "Intec Automation Inc. WildFire board support" | 
|  | depends on M528x | 
|  | help | 
|  | Support for the Intec Automation Inc. WildFire. | 
|  |  | 
|  | config WILDFIREMOD | 
|  | bool "Intec Automation Inc. WildFire module support" | 
|  | depends on M528x | 
|  | help | 
|  | Support for the Intec Automation Inc. WildFire module. | 
|  |  | 
|  | config ARN5307 | 
|  | bool "Arnewsh 5307 board support" | 
|  | depends on M5307 | 
|  | help | 
|  | Support for the Arnewsh 5307 board. | 
|  |  | 
|  | config M5307C3 | 
|  | bool "Motorola M5307C3 board support" | 
|  | depends on M5307 | 
|  | help | 
|  | Support for the Motorola M5307C3 board. | 
|  |  | 
|  | config SECUREEDGEMP3 | 
|  | bool "SnapGear SecureEdge/MP3 platform support" | 
|  | depends on M5307 | 
|  | help | 
|  | Support for the SnapGear SecureEdge/MP3 platform. | 
|  |  | 
|  | config M5407C3 | 
|  | bool "Motorola M5407C3 board support" | 
|  | depends on M5407 | 
|  | help | 
|  | Support for the Motorola M5407C3 board. | 
|  |  | 
|  | config AMCORE | 
|  | bool "Sysam AMCORE board support" | 
|  | depends on M5307 | 
|  | help | 
|  | Support for the Sysam AMCORE open-hardware generic board. | 
|  |  | 
|  | config STMARK2 | 
|  | bool "Sysam stmark2 board support" | 
|  | depends on M5441x | 
|  | help | 
|  | Support for the Sysam stmark2 open-hardware generic board. | 
|  |  | 
|  | config FIREBEE | 
|  | bool "FireBee board support" | 
|  | depends on M547x | 
|  | help | 
|  | Support for the FireBee ColdFire 5475 based board. | 
|  |  | 
|  | config CLEOPATRA | 
|  | bool "Feith CLEOPATRA board support" | 
|  | depends on (M5307 || M5407) | 
|  | help | 
|  | Support for the Feith Cleopatra boards. | 
|  |  | 
|  | config CANCam | 
|  | bool "Feith CANCam board support" | 
|  | depends on M5272 | 
|  | help | 
|  | Support for the Feith CANCam board. | 
|  |  | 
|  | config SCALES | 
|  | bool "Feith SCALES board support" | 
|  | depends on M5272 | 
|  | help | 
|  | Support for the Feith SCALES board. | 
|  |  | 
|  | config NETtel | 
|  | bool "SecureEdge/NETtel board support" | 
|  | depends on (M5206e || M5272 || M5307) | 
|  | help | 
|  | Support for the SnapGear NETtel/SecureEdge/SnapGear boards. | 
|  |  | 
|  | config MOD5272 | 
|  | bool "Netburner MOD-5272 board support" | 
|  | depends on M5272 | 
|  | help | 
|  | Support for the Netburner MOD-5272 board. | 
|  |  | 
|  | if !MMU || COLDFIRE | 
|  |  | 
|  | comment "Machine Options" | 
|  |  | 
|  | config UBOOT | 
|  | bool "Support for U-Boot command line parameters" | 
|  | depends on COLDFIRE | 
|  | help | 
|  | If you say Y here kernel will try to collect command | 
|  | line parameters from the initial u-boot stack. | 
|  |  | 
|  | config 4KSTACKS | 
|  | bool "Use 4Kb for kernel stacks instead of 8Kb" | 
|  | default y | 
|  | help | 
|  | If you say Y here the kernel will use a 4Kb stacksize for the | 
|  | kernel stack attached to each process/thread. This facilitates | 
|  | running more threads on a system and also reduces the pressure | 
|  | on the VM subsystem for higher order allocations. | 
|  |  | 
|  | comment "RAM configuration" | 
|  |  | 
|  | config RAMBASE | 
|  | hex "Address of the base of RAM" | 
|  | default "0" | 
|  | help | 
|  | Define the address that RAM starts at. On many platforms this is | 
|  | 0, the base of the address space. And this is the default. Some | 
|  | platforms choose to setup their RAM at other addresses within the | 
|  | processor address space. | 
|  |  | 
|  | config RAMSIZE | 
|  | hex "Size of RAM (in bytes), or 0 for automatic" | 
|  | default "0x400000" | 
|  | help | 
|  | Define the size of the system RAM. If you select 0 then the | 
|  | kernel will try to probe the RAM size at runtime. This is not | 
|  | supported on all CPU types. | 
|  |  | 
|  | config VECTORBASE | 
|  | hex "Address of the base of system vectors" | 
|  | default "0" | 
|  | help | 
|  | Define the address of the system vectors. Commonly this is | 
|  | put at the start of RAM, but it doesn't have to be. On ColdFire | 
|  | platforms this address is programmed into the VBR register, thus | 
|  | actually setting the address to use. | 
|  |  | 
|  | config MBAR | 
|  | hex "Address of the MBAR (internal peripherals)" | 
|  | default "0x10000000" | 
|  | depends on HAVE_MBAR | 
|  | help | 
|  | Define the address of the internal system peripherals. This value | 
|  | is set in the processors MBAR register. This is generally setup by | 
|  | the boot loader, and will not be written by the kernel. By far most | 
|  | ColdFire boards use the default 0x10000000 value, so if unsure then | 
|  | use this. | 
|  |  | 
|  | config IPSBAR | 
|  | hex "Address of the IPSBAR (internal peripherals)" | 
|  | default "0x40000000" | 
|  | depends on HAVE_IPSBAR | 
|  | help | 
|  | Define the address of the internal system peripherals. This value | 
|  | is set in the processors IPSBAR register. This is generally setup by | 
|  | the boot loader, and will not be written by the kernel. By far most | 
|  | ColdFire boards use the default 0x40000000 value, so if unsure then | 
|  | use this. | 
|  |  | 
|  | config KERNELBASE | 
|  | hex "Address of the base of kernel code" | 
|  | default "0x400" | 
|  | help | 
|  | Typically on m68k systems the kernel will not start at the base | 
|  | of RAM, but usually some small offset from it. Define the start | 
|  | address of the kernel here. The most common setup will have the | 
|  | processor vectors at the base of RAM and then the start of the | 
|  | kernel. On some platforms some RAM is reserved for boot loaders | 
|  | and the kernel starts after that. The 0x400 default was based on | 
|  | a system with the RAM based at address 0, and leaving enough room | 
|  | for the theoretical maximum number of 256 vectors. | 
|  |  | 
|  | comment "ROM configuration" | 
|  |  | 
|  | config ROM | 
|  | bool "Specify ROM linker regions" | 
|  | help | 
|  | Define a ROM region for the linker script. This creates a kernel | 
|  | that can be stored in flash, with possibly the text, and data | 
|  | regions being copied out to RAM at startup. | 
|  |  | 
|  | config ROMVEC | 
|  | hex "Address of the base of the ROM vectors" | 
|  | default "0" | 
|  | depends on ROM | 
|  | help | 
|  | This is almost always the same as the base of the ROM. Since on all | 
|  | 68000 type variants the vectors are at the base of the boot device | 
|  | on system startup. | 
|  |  | 
|  | config ROMSTART | 
|  | hex "Address of the base of system image in ROM" | 
|  | default "0x400" | 
|  | depends on ROM | 
|  | help | 
|  | Define the start address of the system image in ROM. Commonly this | 
|  | is strait after the ROM vectors. | 
|  |  | 
|  | choice | 
|  | prompt "Kernel executes from" | 
|  | help | 
|  | Choose the memory type that the kernel will be running in. | 
|  |  | 
|  | config RAMKERNEL | 
|  | bool "RAM" | 
|  | help | 
|  | The kernel will be resident in RAM when running. | 
|  |  | 
|  | config ROMKERNEL | 
|  | bool "ROM" | 
|  | depends on ROM | 
|  | help | 
|  | The kernel will be resident in FLASH/ROM when running. This is | 
|  | often referred to as Execute-in-Place (XIP), since the kernel | 
|  | code executes from the position it is stored in the FLASH/ROM. | 
|  |  | 
|  | endchoice | 
|  |  | 
|  | endif # !MMU || COLDFIRE |