^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) # SPDX-License-Identifier: GPL-2.0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) config M68K
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5) select ARCH_32BIT_OFF_T
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) select ARCH_HAS_BINFMT_FLAT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) select ARCH_HAS_DMA_PREP_COHERENT if HAS_DMA && MMU && !COLDFIRE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) select ARCH_HAS_SYNC_DMA_FOR_DEVICE if HAS_DMA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) select ARCH_HAVE_NMI_SAFE_CMPXCHG if RMW_INSNS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) select ARCH_MIGHT_HAVE_PC_PARPORT if ISA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) select ARCH_NO_PREEMPT if !COLDFIRE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) select ARCH_WANT_IPC_PARSE_VERSION
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) select BINFMT_FLAT_ARGVP_ENVP_ON_STACK
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) select DMA_DIRECT_REMAP if HAS_DMA && MMU && !COLDFIRE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) select GENERIC_ATOMIC64
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) select GENERIC_CPU_DEVICES
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) select GENERIC_IOMAP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) select GENERIC_IRQ_SHOW
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) select GENERIC_STRNCPY_FROM_USER if MMU
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) select GENERIC_STRNLEN_USER if MMU
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) select HAVE_AOUT if MMU
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) select HAVE_ASM_MODVERSIONS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) select HAVE_DEBUG_BUGVERBOSE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) select HAVE_FUTEX_CMPXCHG if MMU && FUTEX
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) select HAVE_IDE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) select HAVE_MOD_ARCH_SPECIFIC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) select HAVE_UID16
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) select MMU_GATHER_NO_RANGE if MMU
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) select MODULES_USE_ELF_REL
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) select MODULES_USE_ELF_RELA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) select NO_DMA if !MMU && !COLDFIRE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) select OLD_SIGACTION
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) select OLD_SIGSUSPEND3
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) select SET_FS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) select UACCESS_MEMCPY if !MMU
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) select VIRT_TO_BUS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) config CPU_BIG_ENDIAN
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) def_bool y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) config ARCH_HAS_ILOG2_U32
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) config ARCH_HAS_ILOG2_U64
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) config GENERIC_HWEIGHT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) config GENERIC_CALIBRATE_DELAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55) config GENERIC_CSUM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 58) config TIME_LOW_RES
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 59) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 60) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 61)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 62) config NO_IOPORT_MAP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 63) def_bool y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 64)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 65) config ZONE_DMA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 66) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 67) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 68)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 69) config HZ
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 70) int
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 71) default 1000 if CLEOPATRA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 72) default 100
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 73)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 74) config PGTABLE_LEVELS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 75) default 2 if SUN3 || COLDFIRE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 76) default 3
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 77)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 78) config MMU
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 79) bool "MMU-based Paged Memory Management Support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 80) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 81) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 82) Select if you want MMU-based virtualised addressing space
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 83) support by paged memory management. If unsure, say 'Y'.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 84)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 85) config MMU_MOTOROLA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 86) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 87)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 88) config MMU_COLDFIRE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 89) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 90)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 91) config MMU_SUN3
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 92) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 93) depends on MMU && !MMU_MOTOROLA && !MMU_COLDFIRE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 94)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 95) config KEXEC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 96) bool "kexec system call"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 97) depends on M68KCLASSIC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 98) select KEXEC_CORE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 99) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 100) kexec is a system call that implements the ability to shutdown your
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 101) current kernel, and to start another kernel. It is like a reboot
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 102) but it is independent of the system firmware. And like a reboot
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 103) you can start any kernel with it, not just Linux.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 104)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 105) The name comes from the similarity to the exec system call.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 106)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 107) It is an ongoing process to be certain the hardware in a machine
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 108) is properly shutdown, so do not be surprised if this code does not
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 109) initially work for you. As of this writing the exact hardware
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 110) interface is strongly in flux, so no good recommendation can be
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 111) made.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 112)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 113) config BOOTINFO_PROC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 114) bool "Export bootinfo in procfs"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 115) depends on KEXEC && M68KCLASSIC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 116) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 117) Say Y to export the bootinfo used to boot the kernel in a
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 118) "bootinfo" file in procfs. This is useful with kexec.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 119)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 120) menu "Platform setup"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 121)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 122) source "arch/m68k/Kconfig.cpu"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 123)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 124) source "arch/m68k/Kconfig.machine"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 125)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 126) source "arch/m68k/Kconfig.bus"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 127)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 128) endmenu
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 129)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 130) menu "Kernel Features"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 131)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 132) endmenu
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 133)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 134) if !MMU
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 135) menu "Power management options"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 136)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 137) config PM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 138) bool "Power Management support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 139) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 140) Support processor power management modes
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 141)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 142) endmenu
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 143) endif
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 144)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 145) source "arch/m68k/Kconfig.devices"