xref: /openbmc/linux/arch/x86/um/Kconfig (revision d2ba09c1)
1# SPDX-License-Identifier: GPL-2.0
2mainmenu "User Mode Linux/$SUBARCH $KERNELVERSION Kernel Configuration"
3
4source "arch/um/Kconfig.common"
5
6menu "UML-specific options"
7
8menu "Host processor type and features"
9
10source "arch/x86/Kconfig.cpu"
11
12endmenu
13
14config UML_X86
15	def_bool y
16	select GENERIC_FIND_FIRST_BIT
17
18config 64BIT
19	bool "64-bit kernel" if SUBARCH = "x86"
20	default SUBARCH != "i386"
21
22config X86_32
23	def_bool !64BIT
24	select HAVE_AOUT
25	select ARCH_WANT_IPC_PARSE_VERSION
26	select MODULES_USE_ELF_REL
27	select CLONE_BACKWARDS
28	select OLD_SIGSUSPEND3
29	select OLD_SIGACTION
30
31config X86_64
32	def_bool 64BIT
33	select MODULES_USE_ELF_RELA
34
35config ARCH_DEFCONFIG
36	string
37	default "arch/um/configs/i386_defconfig" if X86_32
38	default "arch/um/configs/x86_64_defconfig" if X86_64
39
40config RWSEM_XCHGADD_ALGORITHM
41	def_bool 64BIT
42
43config RWSEM_GENERIC_SPINLOCK
44	def_bool !RWSEM_XCHGADD_ALGORITHM
45
46config 3_LEVEL_PGTABLES
47	bool "Three-level pagetables" if !64BIT
48	default 64BIT
49	help
50	Three-level pagetables will let UML have more than 4G of physical
51	memory.  All the memory that can't be mapped directly will be treated
52	as high memory.
53
54	However, this it experimental on 32-bit architectures, so if unsure say
55	N (on x86-64 it's automatically enabled, instead, as it's safe there).
56
57config ARCH_HAS_SC_SIGNALS
58	def_bool !64BIT
59
60config ARCH_REUSE_HOST_VSYSCALL_AREA
61	def_bool !64BIT
62
63config GENERIC_HWEIGHT
64	def_bool y
65
66source "arch/um/Kconfig.um"
67
68endmenu
69
70source "arch/um/Kconfig.rest"
71