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