blob: 3e89767cea72ef4b6a764e23ceb298ca4de5b007 [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
21config UID16
22 bool
23 default n
24
25config RWSEM_XCHGADD_ALGORITHM
26 bool
27 default y
28
29config HAVE_DEC_LOCK
30 bool
31 default y
32
33config 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---
135 The BogoMIPS value can easily derived from the CPU frequency.
136
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
161endmenu
162
163menu "Bus options"
164
165config PCI
166 bool "PCI support" if !XTENSA_PLATFORM_ISS
167 depends on !XTENSA_PLATFORM_ISS
168 default y
169 help
170 Find out whether you have a PCI motherboard. PCI is the name of a
171 bus system, i.e. the way the CPU talks to the other stuff inside
172 your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
173 VESA. If you have PCI, say Y, otherwise N.
174
175 The PCI-HOWTO, available from
176 <http://www.linuxdoc.org/docs.html#howto>, contains valuable
177 information about which PCI hardware does work under Linux and which
178 doesn't
179
180source "drivers/pci/Kconfig"
181
182config HOTPLUG
183
184 bool "Support for hot-pluggable devices"
185 ---help---
186 Say Y here if you want to plug devices into your computer while
187 the system is running, and be able to use them quickly. In many
188 cases, the devices can likewise be unplugged at any time too.
189
190 One well known example of this is PCMCIA- or PC-cards, credit-card
191 size devices such as network cards, modems or hard drives which are
192 plugged into slots found on all modern laptop computers. Another
193 example, used on modern desktops as well as laptops, is USB.
194
195 Enable HOTPLUG and KMOD, and build a modular kernel. Get agent
196 software (at <http://linux-hotplug.sourceforge.net/>) and install it.
197 Then your kernel will automatically call out to a user mode "policy
198 agent" (/sbin/hotplug) to load modules and set up software needed
199 to use devices as you hotplug them.
200
201source "drivers/pcmcia/Kconfig"
202
203source "drivers/pci/hotplug/Kconfig"
204
205endmenu
206
207menu "Exectuable file formats"
208
209# only elf supported
210config KCORE_ELF
211 bool
212 depends on PROC_FS
213 default y
214 help
215 If you enabled support for /proc file system then the file
216 /proc/kcore will contain the kernel core image in ELF format. This
217 can be used in gdb:
218
219 $ cd /usr/src/linux ; gdb vmlinux /proc/kcore
220
221 This is especially useful if you have compiled the kernel with the
222 "-g" option to preserve debugging information. It is mainly used
223 for examining kernel data structures on the live kernel.
224
225source "fs/Kconfig.binfmt"
226
227endmenu
228
229source "drivers/Kconfig"
230
231source "fs/Kconfig"
232
233menu "Xtensa initrd options"
234 depends on BLK_DEV_INITRD
235
236 config EMBEDDED_RAMDISK
237 bool "Embed root filesystem ramdisk into the kernel"
238
239config EMBEDDED_RAMDISK_IMAGE
240 string "Filename of gziped ramdisk image"
241 depends on EMBEDDED_RAMDISK
242 default "ramdisk.gz"
243 help
244 This is the filename of the ramdisk image to be built into the
245 kernel. Relative pathnames are relative to arch/xtensa/boot/ramdisk/.
246 The ramdisk image is not part of the kernel distribution; you must
247 provide one yourself.
248endmenu
249
250source "arch/xtensa/Kconfig.debug"
251
252source "security/Kconfig"
253
254source "crypto/Kconfig"
255
256source "lib/Kconfig"
257
258