fa6dc4dd3b193597aea23f0516014f5d1f5005db
[linux-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 endchoice
84
85 config XTENSA_UNALIGNED_USER
86         bool "Unaligned memory access in use space"
87         help
88           The Xtensa architecture currently does not handle unaligned
89           memory accesses in hardware but through an exception handler.
90           Per default, unaligned memory accesses are disabled in user space.
91
92           Say Y here to enable unaligned memory access in user space.
93
94 config PREEMPT
95         bool "Preemptible Kernel"
96         help
97           This option reduces the latency of the kernel when reacting to
98           real-time or interactive events by allowing a low priority process to
99           be preempted even if it is in kernel mode executing a system call.
100           Unfortunately the kernel code has some race conditions if both
101           CONFIG_SMP and CONFIG_PREEMPT are enabled, so this option is
102           currently disabled if you are building an SMP kernel.
103
104           Say Y here if you are building a kernel for a desktop, embedded
105           or real-time system.  Say N if you are unsure.
106
107 config MATH_EMULATION
108         bool "Math emulation"
109         help
110         Can we use information of configuration file?
111
112 endmenu
113
114 config XTENSA_CALIBRATE_CCOUNT
115         def_bool n
116         help
117           On some platforms (XT2000, for example), the CPU clock rate can
118           vary.  The frequency can be determined, however, by measuring
119           against a well known, fixed frequency, such as an UART oscillator.
120
121 config SERIAL_CONSOLE
122         def_bool n
123
124 config XTENSA_ISS_NETWORK
125         def_bool n
126
127 menu "Bus options"
128
129 config PCI
130         bool "PCI support"
131         default y
132         help
133           Find out whether you have a PCI motherboard. PCI is the name of a
134           bus system, i.e. the way the CPU talks to the other stuff inside
135           your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
136           VESA. If you have PCI, say Y, otherwise N.
137
138 source "drivers/pci/Kconfig"
139
140 menu "Platform options"
141
142 choice
143         prompt "Xtensa System Type"
144         default XTENSA_PLATFORM_ISS
145
146 config XTENSA_PLATFORM_ISS
147         bool "ISS"
148         select XTENSA_CALIBRATE_CCOUNT
149         select SERIAL_CONSOLE
150         select XTENSA_ISS_NETWORK
151         help
152           ISS is an acronym for Tensilica's Instruction Set Simulator.
153
154 config XTENSA_PLATFORM_XT2000
155         bool "XT2000"
156         select XTENSA_CALIBRATE_CCOUNT
157         select PCI
158         help
159           XT2000 is the name of Tensilica's feature-rich emulation platform.
160           This hardware is capable of running a full Linux distribution.
161
162 config XTENSA_PLATFORM_S6105
163         bool "S6105"
164         select SERIAL_CONSOLE
165
166 endchoice
167
168
169 config XTENSA_CPU_CLOCK
170         int "CPU clock rate [MHz]"
171         depends on !XTENSA_CALIBRATE_CCOUNT
172         default 16
173
174 config GENERIC_CALIBRATE_DELAY
175         bool "Auto calibration of the BogoMIPS value"
176         help
177           The BogoMIPS value can easily be derived from the CPU frequency.
178
179 config CMDLINE_BOOL
180         bool "Default bootloader kernel arguments"
181
182 config CMDLINE
183         string "Initial kernel command string"
184         depends on CMDLINE_BOOL
185         default "console=ttyS0,38400 root=/dev/ram"
186         help
187           On some architectures (EBSA110 and CATS), there is currently no way
188           for the boot loader to pass arguments to the kernel. For these
189           architectures, you should supply some command-line options at build
190           time by entering them here. As a minimum, you should specify the
191           memory size and the root device (e.g., mem=64M root=/dev/nfs).
192
193 source "mm/Kconfig"
194
195 endmenu
196
197 config HOTPLUG
198         bool "Support for hot-pluggable devices"
199         help
200           Say Y here if you want to plug devices into your computer while
201           the system is running, and be able to use them quickly.  In many
202           cases, the devices can likewise be unplugged at any time too.
203
204           One well known example of this is PCMCIA- or PC-cards, credit-card
205           size devices such as network cards, modems or hard drives which are
206           plugged into slots found on all modern laptop computers.  Another
207           example, used on modern desktops as well as laptops, is USB.
208
209           Enable HOTPLUG and build a modular kernel.  Get agent software
210           (from <http://linux-hotplug.sourceforge.net/>) and install it.
211           Then your kernel will automatically call out to a user mode "policy
212           agent" (/sbin/hotplug) to load modules and set up software needed
213           to use devices as you hotplug them.
214
215 source "drivers/pcmcia/Kconfig"
216
217 source "drivers/pci/hotplug/Kconfig"
218
219 endmenu
220
221 menu "Executable file formats"
222
223 # only elf supported
224 config KCORE_ELF
225         def_bool y
226         depends on PROC_FS
227         help
228           If you enabled support for /proc file system then the file
229           /proc/kcore will contain the kernel core image in ELF format. This
230           can be used in gdb:
231
232           $ cd /usr/src/linux ; gdb vmlinux /proc/kcore
233
234           This is especially useful if you have compiled the kernel with the
235           "-g" option to preserve debugging information. It is mainly used
236           for examining kernel data structures on the live kernel.
237
238 source "fs/Kconfig.binfmt"
239
240 endmenu
241
242 source "net/Kconfig"
243
244 source "drivers/Kconfig"
245
246 source "fs/Kconfig"
247
248 menu "Xtensa initrd options"
249         depends on BLK_DEV_INITRD
250
251 config EMBEDDED_RAMDISK
252         bool "Embed root filesystem ramdisk into the kernel"
253
254 config EMBEDDED_RAMDISK_IMAGE
255         string "Filename of gzipped ramdisk image"
256         depends on EMBEDDED_RAMDISK
257         default "ramdisk.gz"
258         help
259           This is the filename of the ramdisk image to be built into the
260           kernel.  Relative pathnames are relative to arch/xtensa/boot/ramdisk/.
261           The ramdisk image is not part of the kernel distribution; you must
262           provide one yourself.
263 endmenu
264
265 source "arch/xtensa/Kconfig.debug"
266
267 source "security/Kconfig"
268
269 source "crypto/Kconfig"
270
271 source "lib/Kconfig"
272
273