Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jlbec...
[sfrench/cifs-2.6.git] / arch / xtensa / Kconfig
1 # For a description of the syntax of this configuration file,
2 # see Documentation/kbuild/kconfig-language.txt.
3
4 mainmenu "Linux/Xtensa Kernel Configuration"
5
6 config FRAME_POINTER
7         def_bool n
8
9 config ZONE_DMA
10         def_bool y
11
12 config XTENSA
13         def_bool y
14         select HAVE_IDE
15         help
16           Xtensa processors are 32-bit RISC machines designed by Tensilica
17           primarily for embedded systems.  These processors are both
18           configurable and extensible.  The Linux port to the Xtensa
19           architecture supports all processor configurations and extensions,
20           with reasonable minimum requirements.  The Xtensa Linux project has
21           a home page at <http://xtensa.sourceforge.net/>.
22
23 config RWSEM_XCHGADD_ALGORITHM
24         def_bool y
25
26 config GENERIC_FIND_NEXT_BIT
27         def_bool y
28
29 config GENERIC_HWEIGHT
30         def_bool y
31
32 config GENERIC_HARDIRQS
33         def_bool y
34
35 config GENERIC_GPIO
36         def_bool y
37
38 config ARCH_HAS_ILOG2_U32
39         def_bool n
40
41 config ARCH_HAS_ILOG2_U64
42         def_bool n
43
44 config NO_IOPORT
45         def_bool y
46
47 config HZ
48         int
49         default 100
50
51 config GENERIC_TIME
52         def_bool y
53
54 source "init/Kconfig"
55 source "kernel/Kconfig.freezer"
56
57 config MMU
58         def_bool n
59
60 config VARIANT_IRQ_SWITCH
61         def_bool n
62
63 menu "Processor type and features"
64
65 choice
66         prompt "Xtensa Processor Configuration"
67         default XTENSA_VARIANT_FSF
68
69 config XTENSA_VARIANT_FSF
70         bool "fsf - default (not generic) configuration"
71         select MMU
72
73 config XTENSA_VARIANT_DC232B
74         bool "dc232b - Diamond 232L Standard Core Rev.B (LE)"
75         select MMU
76         help
77           This variant refers to Tensilica's Diamond 232L Standard core Rev.B (LE).
78
79 config XTENSA_VARIANT_S6000
80         bool "s6000 - Stretch software configurable processor"
81         select VARIANT_IRQ_SWITCH
82         select ARCH_REQUIRE_GPIOLIB
83         select XTENSA_CALIBRATE_CCOUNT
84 endchoice
85
86 config XTENSA_UNALIGNED_USER
87         bool "Unaligned memory access in use space"
88         help
89           The Xtensa architecture currently does not handle unaligned
90           memory accesses in hardware but through an exception handler.
91           Per default, unaligned memory accesses are disabled in user space.
92
93           Say Y here to enable unaligned memory access in user space.
94
95 config PREEMPT
96         bool "Preemptible Kernel"
97         help
98           This option reduces the latency of the kernel when reacting to
99           real-time or interactive events by allowing a low priority process to
100           be preempted even if it is in kernel mode executing a system call.
101           Unfortunately the kernel code has some race conditions if both
102           CONFIG_SMP and CONFIG_PREEMPT are enabled, so this option is
103           currently disabled if you are building an SMP kernel.
104
105           Say Y here if you are building a kernel for a desktop, embedded
106           or real-time system.  Say N if you are unsure.
107
108 config MATH_EMULATION
109         bool "Math emulation"
110         help
111         Can we use information of configuration file?
112
113 endmenu
114
115 config XTENSA_CALIBRATE_CCOUNT
116         def_bool n
117         help
118           On some platforms (XT2000, for example), the CPU clock rate can
119           vary.  The frequency can be determined, however, by measuring
120           against a well known, fixed frequency, such as an UART oscillator.
121
122 config SERIAL_CONSOLE
123         def_bool n
124
125 config XTENSA_ISS_NETWORK
126         def_bool n
127
128 menu "Bus options"
129
130 config PCI
131         bool "PCI support"
132         default y
133         help
134           Find out whether you have a PCI motherboard. PCI is the name of a
135           bus system, i.e. the way the CPU talks to the other stuff inside
136           your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
137           VESA. If you have PCI, say Y, otherwise N.
138
139 source "drivers/pci/Kconfig"
140
141 endmenu
142
143 menu "Platform options"
144
145 choice
146         prompt "Xtensa System Type"
147         default XTENSA_PLATFORM_ISS
148
149 config XTENSA_PLATFORM_ISS
150         bool "ISS"
151         select XTENSA_CALIBRATE_CCOUNT
152         select SERIAL_CONSOLE
153         select XTENSA_ISS_NETWORK
154         help
155           ISS is an acronym for Tensilica's Instruction Set Simulator.
156
157 config XTENSA_PLATFORM_XT2000
158         bool "XT2000"
159         help
160           XT2000 is the name of Tensilica's feature-rich emulation platform.
161           This hardware is capable of running a full Linux distribution.
162
163 config XTENSA_PLATFORM_S6105
164         bool "S6105"
165         select SERIAL_CONSOLE
166
167 endchoice
168
169
170 config XTENSA_CPU_CLOCK
171         int "CPU clock rate [MHz]"
172         depends on !XTENSA_CALIBRATE_CCOUNT
173         default 16
174
175 config GENERIC_CALIBRATE_DELAY
176         bool "Auto calibration of the BogoMIPS value"
177         help
178           The BogoMIPS value can easily be derived from the CPU frequency.
179
180 config CMDLINE_BOOL
181         bool "Default bootloader kernel arguments"
182
183 config CMDLINE
184         string "Initial kernel command string"
185         depends on CMDLINE_BOOL
186         default "console=ttyS0,38400 root=/dev/ram"
187         help
188           On some architectures (EBSA110 and CATS), there is currently no way
189           for the boot loader to pass arguments to the kernel. For these
190           architectures, you should supply some command-line options at build
191           time by entering them here. As a minimum, you should specify the
192           memory size and the root device (e.g., mem=64M root=/dev/nfs).
193
194 source "mm/Kconfig"
195
196 config HOTPLUG
197         bool "Support for hot-pluggable devices"
198         help
199           Say Y here if you want to plug devices into your computer while
200           the system is running, and be able to use them quickly.  In many
201           cases, the devices can likewise be unplugged at any time too.
202
203           One well known example of this is PCMCIA- or PC-cards, credit-card
204           size devices such as network cards, modems or hard drives which are
205           plugged into slots found on all modern laptop computers.  Another
206           example, used on modern desktops as well as laptops, is USB.
207
208           Enable HOTPLUG and build a modular kernel.  Get agent software
209           (from <http://linux-hotplug.sourceforge.net/>) and install it.
210           Then your kernel will automatically call out to a user mode "policy
211           agent" (/sbin/hotplug) to load modules and set up software needed
212           to use devices as you hotplug them.
213
214 source "drivers/pcmcia/Kconfig"
215
216 source "drivers/pci/hotplug/Kconfig"
217
218 endmenu
219
220 menu "Executable file formats"
221
222 # only elf supported
223 config KCORE_ELF
224         def_bool y
225         depends on PROC_FS
226         help
227           If you enabled support for /proc file system then the file
228           /proc/kcore will contain the kernel core image in ELF format. This
229           can be used in gdb:
230
231           $ cd /usr/src/linux ; gdb vmlinux /proc/kcore
232
233           This is especially useful if you have compiled the kernel with the
234           "-g" option to preserve debugging information. It is mainly used
235           for examining kernel data structures on the live kernel.
236
237 source "fs/Kconfig.binfmt"
238
239 endmenu
240
241 source "net/Kconfig"
242
243 source "drivers/Kconfig"
244
245 source "fs/Kconfig"
246
247 menu "Xtensa initrd options"
248         depends on BLK_DEV_INITRD
249
250 config EMBEDDED_RAMDISK
251         bool "Embed root filesystem ramdisk into the kernel"
252
253 config EMBEDDED_RAMDISK_IMAGE
254         string "Filename of gzipped ramdisk image"
255         depends on EMBEDDED_RAMDISK
256         default "ramdisk.gz"
257         help
258           This is the filename of the ramdisk image to be built into the
259           kernel.  Relative pathnames are relative to arch/xtensa/boot/ramdisk/.
260           The ramdisk image is not part of the kernel distribution; you must
261           provide one yourself.
262 endmenu
263
264 source "arch/xtensa/Kconfig.debug"
265
266 source "security/Kconfig"
267
268 source "crypto/Kconfig"
269
270 source "lib/Kconfig"
271
272