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