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