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