kconfig: add basic helper macros to scripts/Kconfig.include
[linux-2.6-block.git] / arch / x86 / um / Kconfig
1 # SPDX-License-Identifier: GPL-2.0
2 mainmenu "User Mode Linux/$(SUBARCH) $(KERNELVERSION) Kernel Configuration"
3
4 comment "Compiler: $(CC_VERSION_TEXT)"
5
6 source "scripts/Kconfig.include"
7
8 source "arch/um/Kconfig.common"
9
10 menu "UML-specific options"
11
12 menu "Host processor type and features"
13
14 source "arch/x86/Kconfig.cpu"
15
16 endmenu
17
18 config UML_X86
19         def_bool y
20         select GENERIC_FIND_FIRST_BIT
21
22 config 64BIT
23         bool "64-bit kernel" if "$(SUBARCH)" = "x86"
24         default "$(SUBARCH)" != "i386"
25
26 config 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
35 config X86_64
36         def_bool 64BIT
37         select MODULES_USE_ELF_RELA
38
39 config 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
44 config RWSEM_XCHGADD_ALGORITHM
45         def_bool 64BIT
46
47 config RWSEM_GENERIC_SPINLOCK
48         def_bool !RWSEM_XCHGADD_ALGORITHM
49
50 config 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
61 config ARCH_HAS_SC_SIGNALS
62         def_bool !64BIT
63
64 config ARCH_REUSE_HOST_VSYSCALL_AREA
65         def_bool !64BIT
66
67 config GENERIC_HWEIGHT
68         def_bool y
69
70 source "arch/um/Kconfig.um"
71
72 endmenu
73
74 source "arch/um/Kconfig.rest"