xref: /openbmc/linux/arch/um/Kconfig (revision f30828a6)
1config DEFCONFIG_LIST
2	string
3	option defconfig_list
4	default "arch/$ARCH/defconfig"
5
6# UML uses the generic IRQ subsystem
7config GENERIC_HARDIRQS
8	bool
9	default y
10
11config UML
12	bool
13	default y
14
15config MMU
16	bool
17	default y
18
19config NO_IOMEM
20	def_bool y
21
22mainmenu "Linux/Usermode Kernel Configuration"
23
24config ISA
25	bool
26
27config SBUS
28	bool
29
30config PCI
31	bool
32
33config PCMCIA
34	bool
35
36# Yet to do!
37config TRACE_IRQFLAGS_SUPPORT
38	bool
39	default n
40
41config LOCKDEP_SUPPORT
42	bool
43	default y
44
45config STACKTRACE_SUPPORT
46	bool
47	default n
48
49config GENERIC_CALIBRATE_DELAY
50	bool
51	default y
52
53config GENERIC_BUG
54	bool
55	default y
56	depends on BUG
57
58config GENERIC_TIME
59	bool
60	default y
61
62config GENERIC_CLOCKEVENTS
63	bool
64	default y
65
66# Used in kernel/irq/manage.c and include/linux/irq.h
67config IRQ_RELEASE_METHOD
68	bool
69	default y
70
71config HZ
72	int
73	default 100
74
75menu "UML-specific options"
76
77config STATIC_LINK
78	bool "Force a static link"
79	default n
80	help
81	  This option gives you the ability to force a static link of UML.
82	  Normally, UML is linked as a shared binary.  This is inconvenient for
83	  use in a chroot jail.  So, if you intend to run UML inside a chroot,
84	  you probably want to say Y here.
85	  Additionally, this option enables using higher memory spaces (up to
86	  2.75G) for UML.
87
88source "arch/um/Kconfig.arch"
89source "mm/Kconfig"
90source "kernel/time/Kconfig"
91
92config LD_SCRIPT_STATIC
93	bool
94	default y
95	depends on STATIC_LINK
96
97config LD_SCRIPT_DYN
98	bool
99	default y
100	depends on !LD_SCRIPT_STATIC
101
102source "fs/Kconfig.binfmt"
103
104config HOSTFS
105	tristate "Host filesystem"
106	help
107          While the User-Mode Linux port uses its own root file system for
108          booting and normal file access, this module lets the UML user
109          access files stored on the host.  It does not require any
110          network connection between the Host and UML.  An example use of
111          this might be:
112
113          mount none /tmp/fromhost -t hostfs -o /tmp/umlshare
114
115          where /tmp/fromhost is an empty directory inside UML and
116          /tmp/umlshare is a directory on the host with files the UML user
117          wishes to access.
118
119          For more information, see
120          <http://user-mode-linux.sourceforge.net/hostfs.html>.
121
122          If you'd like to be able to work with files stored on the host,
123          say Y or M here; otherwise say N.
124
125config HPPFS
126	tristate "HoneyPot ProcFS (EXPERIMENTAL)"
127	depends on EXPERIMENTAL
128	help
129	  hppfs (HoneyPot ProcFS) is a filesystem which allows UML /proc
130	  entries to be overridden, removed, or fabricated from the host.
131	  Its purpose is to allow a UML to appear to be a physical machine
132	  by removing or changing anything in /proc which gives away the
133	  identity of a UML.
134
135	  See <http://user-mode-linux.sf.net/old/hppfs.html> for more information.
136
137	  You only need this if you are setting up a UML honeypot.  Otherwise,
138	  it is safe to say 'N' here.
139
140config MCONSOLE
141	bool "Management console"
142	default y
143	help
144          The user mode linux management console is a low-level interface to
145          the kernel, somewhat like the i386 SysRq interface.  Since there is
146          a full-blown operating system running under every user mode linux
147          instance, there is much greater flexibility possible than with the
148          SysRq mechanism.
149
150          If you answer 'Y' to this option, to use this feature, you need the
151          mconsole client (called uml_mconsole) which is present in CVS in
152          2.4.5-9um and later (path /tools/mconsole), and is also in the
153          distribution RPM package in 2.4.6 and later.
154
155          It is safe to say 'Y' here.
156
157config MAGIC_SYSRQ
158	bool "Magic SysRq key"
159	depends on MCONSOLE
160	help
161	  If you say Y here, you will have some control over the system even
162	  if the system crashes for example during kernel debugging (e.g., you
163	  will be able to flush the buffer cache to disk, reboot the system
164	  immediately or dump some status information). A key for each of the
165	  possible requests is provided.
166
167	  This is the feature normally accomplished by pressing a key
168	  while holding SysRq (Alt+PrintScreen).
169
170	  On UML, this is accomplished by sending a "sysrq" command with
171	  mconsole, followed by the letter for the requested command.
172
173	  The keys are documented in <file:Documentation/sysrq.txt>. Don't say Y
174	  unless you really know what this hack does.
175
176config SMP
177	bool "Symmetric multi-processing support (EXPERIMENTAL)"
178	default n
179	depends on BROKEN
180	help
181	  This option enables UML SMP support.
182	  It is NOT related to having a real SMP box. Not directly, at least.
183
184	  UML implements virtual SMP by allowing as many processes to run
185	  simultaneously on the host as there are virtual processors configured.
186
187	  Obviously, if the host is a uniprocessor, those processes will
188	  timeshare, but, inside UML, will appear to be running simultaneously.
189	  If the host is a multiprocessor, then UML processes may run
190	  simultaneously, depending on the host scheduler.
191
192	  This, however, is supported only in TT mode. So, if you use the SKAS
193	  patch on your host, switching to TT mode and enabling SMP usually
194	  gives	you worse performances.
195	  Also, since the support for SMP has been under-developed, there could
196	  be some bugs being exposed by enabling SMP.
197
198	  If you don't know what to do, say N.
199
200config NR_CPUS
201	int "Maximum number of CPUs (2-32)"
202	range 2 32
203	depends on SMP
204	default "32"
205
206config HIGHMEM
207	bool "Highmem support (EXPERIMENTAL)"
208	depends on !64BIT && EXPERIMENTAL
209	default n
210	help
211	  This was used to allow UML to run with big amounts of memory.
212	  Currently it is unstable, so if unsure say N.
213
214	  To use big amounts of memory, it is recommended enable static
215	  linking (i.e. CONFIG_STATIC_LINK) - this should allow the
216	  guest to use up to 2.75G of memory.
217
218config KERNEL_STACK_ORDER
219	int "Kernel stack size order"
220	default 1 if 64BIT
221	range 1 10 if 64BIT
222	default 0 if !64BIT
223	help
224	  This option determines the size of UML kernel stacks.  They will
225	  be 1 << order pages.  The default is OK unless you're running Valgrind
226	  on UML, in which case, set this to 3.
227
228endmenu
229
230source "init/Kconfig"
231
232source "drivers/block/Kconfig"
233
234source "arch/um/Kconfig.char"
235
236source "drivers/base/Kconfig"
237
238source "net/Kconfig"
239
240source "arch/um/Kconfig.net"
241
242source "drivers/net/Kconfig"
243
244source "drivers/connector/Kconfig"
245
246source "fs/Kconfig"
247
248source "security/Kconfig"
249
250source "crypto/Kconfig"
251
252source "lib/Kconfig"
253
254source "drivers/scsi/Kconfig"
255
256source "drivers/md/Kconfig"
257
258if BROKEN
259	source "drivers/mtd/Kconfig"
260endif
261
262source "drivers/leds/Kconfig"
263
264#This is just to shut up some Kconfig warnings, so no prompt.
265config INPUT
266	bool
267	default n
268
269source "arch/um/Kconfig.debug"
270