arch/m68k/Kconfig.cpu

Source file repositories/reference/linux-study-clean/arch/m68k/Kconfig.cpu

File Facts

System
Linux kernel
Corpus path
arch/m68k/Kconfig.cpu
Extension
.cpu
Size
14614 bytes
Lines
563
Domain
Architecture Layer
Bucket
arch/m68k
Inferred role
Architecture Layer: arch/m68k
Status
atlas-only

Why This File Exists

CPU and platform-specific kernel glue: boot entry, traps, syscall entry, interrupts, page tables, context switch, and low-level barriers.

Dependency Surface

Detected Declarations

Annotated Snippet

# SPDX-License-Identifier: GPL-2.0
comment "Processor Type"

choice
	prompt "CPU/machine family support"
	default M68KCLASSIC if MMU
	default COLDFIRE if !MMU
	help
	  The Freescale (was Motorola) M68K family of processors implements
	  the full 68000 processor instruction set.
	  The Freescale ColdFire family of processors is a modern derivative
	  of the 68000 processor family. They are mainly targeted at embedded
	  applications, and are all System-On-Chip (SOC) devices, as opposed
	  to stand alone CPUs. They implement a subset of the original 68000
	  processor instruction set.
	  If you anticipate running this kernel on a computer with a classic
	  MC68xxx processor, select M68KCLASSIC.
	  If you anticipate running this kernel on a computer with a ColdFire
	  processor, select COLDFIRE.

config M68KCLASSIC
	bool "Classic M68K CPU/machine family support"
	select HAVE_ARCH_PFN_VALID
	select M68020 if MMU && !(M68030 || M68040 || M68060)

config COLDFIRE
	bool "Coldfire CPU family support"
	select CPU_HAS_NO_BITFIELDS
	select CPU_HAS_NO_CAS
	select CPU_HAS_NO_MULDIV64
	select GENERIC_CSUM
	select GPIOLIB
	select GPIOLIB_LEGACY if SPI_COLDFIRE_QSPI
	select HAVE_LEGACY_CLK
	select HAVE_PAGE_SIZE_8KB if !MMU

config SUN3
	bool "Sun3 machine support"
	depends on MMU
	select HAVE_ARCH_PFN_VALID
	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). These use a classic 68020 CPU
	  but the custom memory management unit makes them incompatible with
	  all other classic m68k machines, including Sun 3x.

endchoice

config M68000
	def_bool M68KCLASSIC && !MMU
	select CPU_HAS_NO_BITFIELDS
	select CPU_HAS_NO_CAS
	select CPU_HAS_NO_MULDIV64
	select CPU_HAS_NO_UNALIGNED
	select GENERIC_CSUM
	select CPU_NO_EFFICIENT_FFS
	select HAVE_ARCH_HASH
	select HAVE_PAGE_SIZE_4KB
	select LEGACY_TIMER_TICK
	help
	  The Freescale (was Motorola) 68000 CPU is the first generation of
	  the well known M68K family of processors. The CPU core as well as
	  being available as a stand alone CPU was also used in many
	  System-On-Chip devices (eg 68328, 68302, etc). It does not contain
	  a paging MMU.

config M68020

Annotation

Implementation Notes