]> Pileus Git - ~andy/linux/blob - arch/xtensa/Kconfig
7ea6451a3a33207508660141670cafeb309c309e
[~andy/linux] / arch / xtensa / Kconfig
1 config ZONE_DMA
2         def_bool y
3
4 config XTENSA
5         def_bool y
6         select ARCH_WANT_FRAME_POINTERS
7         select HAVE_IDE
8         select GENERIC_ATOMIC64
9         select GENERIC_CLOCKEVENTS
10         select HAVE_GENERIC_HARDIRQS
11         select VIRT_TO_BUS
12         select GENERIC_IRQ_SHOW
13         select GENERIC_CPU_DEVICES
14         select GENERIC_SCHED_CLOCK
15         select MODULES_USE_ELF_RELA
16         select GENERIC_PCI_IOMAP
17         select ARCH_WANT_IPC_PARSE_VERSION
18         select ARCH_WANT_OPTIONAL_GPIOLIB
19         select CLONE_BACKWARDS
20         select IRQ_DOMAIN
21         select HAVE_OPROFILE
22         select HAVE_FUNCTION_TRACER
23         help
24           Xtensa processors are 32-bit RISC machines designed by Tensilica
25           primarily for embedded systems.  These processors are both
26           configurable and extensible.  The Linux port to the Xtensa
27           architecture supports all processor configurations and extensions,
28           with reasonable minimum requirements.  The Xtensa Linux project has
29           a home page at <http://www.linux-xtensa.org/>.
30
31 config RWSEM_XCHGADD_ALGORITHM
32         def_bool y
33
34 config GENERIC_HWEIGHT
35         def_bool y
36
37 config ARCH_HAS_ILOG2_U32
38         def_bool n
39
40 config ARCH_HAS_ILOG2_U64
41         def_bool n
42
43 config NO_IOPORT
44         def_bool n
45
46 config HZ
47         int
48         default 100
49
50 source "init/Kconfig"
51 source "kernel/Kconfig.freezer"
52
53 config LOCKDEP_SUPPORT
54         def_bool y
55
56 config STACKTRACE_SUPPORT
57         def_bool y
58
59 config TRACE_IRQFLAGS_SUPPORT
60         def_bool y
61
62 config MMU
63         def_bool n
64
65 config VARIANT_IRQ_SWITCH
66         def_bool n
67
68 menu "Processor type and features"
69
70 choice
71         prompt "Xtensa Processor Configuration"
72         default XTENSA_VARIANT_FSF
73
74 config XTENSA_VARIANT_FSF
75         bool "fsf - default (not generic) configuration"
76         select MMU
77
78 config XTENSA_VARIANT_DC232B
79         bool "dc232b - Diamond 232L Standard Core Rev.B (LE)"
80         select MMU
81         help
82           This variant refers to Tensilica's Diamond 232L Standard core Rev.B (LE).
83
84 config XTENSA_VARIANT_DC233C
85         bool "dc233c - Diamond 233L Standard Core Rev.C (LE)"
86         select MMU
87         help
88           This variant refers to Tensilica's Diamond 233L Standard core Rev.C (LE).
89
90 config XTENSA_VARIANT_S6000
91         bool "s6000 - Stretch software configurable processor"
92         select VARIANT_IRQ_SWITCH
93         select ARCH_REQUIRE_GPIOLIB
94         select XTENSA_CALIBRATE_CCOUNT
95 endchoice
96
97 config XTENSA_UNALIGNED_USER
98         bool "Unaligned memory access in use space"
99         help
100           The Xtensa architecture currently does not handle unaligned
101           memory accesses in hardware but through an exception handler.
102           Per default, unaligned memory accesses are disabled in user space.
103
104           Say Y here to enable unaligned memory access in user space.
105
106 source "kernel/Kconfig.preempt"
107
108 config MATH_EMULATION
109         bool "Math emulation"
110         help
111         Can we use information of configuration file?
112
113 config INITIALIZE_XTENSA_MMU_INSIDE_VMLINUX
114         bool "Initialize Xtensa MMU inside the Linux kernel code"
115         default y
116         help
117           Earlier version initialized the MMU in the exception vector
118           before jumping to _startup in head.S and had an advantage that
119           it was possible to place a software breakpoint at 'reset' and
120           then enter your normal kernel breakpoints once the MMU was mapped
121           to the kernel mappings (0XC0000000).
122
123           This unfortunately doesn't work for U-Boot and likley also wont
124           work for using KEXEC to have a hot kernel ready for doing a
125           KDUMP.
126
127           So now the MMU is initialized in head.S but it's necessary to
128           use hardware breakpoints (gdb 'hbreak' cmd) to break at _startup.
129           xt-gdb can't place a Software Breakpoint in the  0XD region prior
130           to mapping the MMU and after mapping even if the area of low memory
131           was mapped gdb wouldn't remove the breakpoint on hitting it as the
132           PC wouldn't match. Since Hardware Breakpoints are recommended for
133           Linux configurations it seems reasonable to just assume they exist
134           and leave this older mechanism for unfortunate souls that choose
135           not to follow Tensilica's recommendation.
136
137           Selecting this will cause U-Boot to set the KERNEL Load and Entry
138           address at 0x00003000 instead of the mapped std of 0xD0003000.
139
140           If in doubt, say Y.
141
142 endmenu
143
144 config XTENSA_CALIBRATE_CCOUNT
145         def_bool n
146         help
147           On some platforms (XT2000, for example), the CPU clock rate can
148           vary.  The frequency can be determined, however, by measuring
149           against a well known, fixed frequency, such as an UART oscillator.
150
151 config SERIAL_CONSOLE
152         def_bool n
153
154 config XTENSA_ISS_NETWORK
155         def_bool n
156
157 menu "Bus options"
158
159 config PCI
160         bool "PCI support"
161         default y
162         help
163           Find out whether you have a PCI motherboard. PCI is the name of a
164           bus system, i.e. the way the CPU talks to the other stuff inside
165           your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
166           VESA. If you have PCI, say Y, otherwise N.
167
168 source "drivers/pci/Kconfig"
169
170 endmenu
171
172 menu "Platform options"
173
174 choice
175         prompt "Xtensa System Type"
176         default XTENSA_PLATFORM_ISS
177
178 config XTENSA_PLATFORM_ISS
179         bool "ISS"
180         depends on TTY
181         select XTENSA_CALIBRATE_CCOUNT
182         select SERIAL_CONSOLE
183         select XTENSA_ISS_NETWORK
184         help
185           ISS is an acronym for Tensilica's Instruction Set Simulator.
186
187 config XTENSA_PLATFORM_XT2000
188         bool "XT2000"
189         help
190           XT2000 is the name of Tensilica's feature-rich emulation platform.
191           This hardware is capable of running a full Linux distribution.
192
193 config XTENSA_PLATFORM_S6105
194         bool "S6105"
195         select SERIAL_CONSOLE
196         select NO_IOPORT
197
198 config XTENSA_PLATFORM_XTFPGA
199         bool "XTFPGA"
200         select SERIAL_CONSOLE
201         select ETHOC
202         select XTENSA_CALIBRATE_CCOUNT
203         help
204           XTFPGA is the name of Tensilica board family (LX60, LX110, LX200, ML605).
205           This hardware is capable of running a full Linux distribution.
206
207 endchoice
208
209
210 config XTENSA_CPU_CLOCK
211         int "CPU clock rate [MHz]"
212         depends on !XTENSA_CALIBRATE_CCOUNT
213         default 16
214
215 config GENERIC_CALIBRATE_DELAY
216         bool "Auto calibration of the BogoMIPS value"
217         help
218           The BogoMIPS value can easily be derived from the CPU frequency.
219
220 config CMDLINE_BOOL
221         bool "Default bootloader kernel arguments"
222
223 config CMDLINE
224         string "Initial kernel command string"
225         depends on CMDLINE_BOOL
226         default "console=ttyS0,38400 root=/dev/ram"
227         help
228           On some architectures (EBSA110 and CATS), there is currently no way
229           for the boot loader to pass arguments to the kernel. For these
230           architectures, you should supply some command-line options at build
231           time by entering them here. As a minimum, you should specify the
232           memory size and the root device (e.g., mem=64M root=/dev/nfs).
233
234 config USE_OF
235         bool "Flattened Device Tree support"
236         select OF
237         select OF_EARLY_FLATTREE
238         help
239           Include support for flattened device tree machine descriptions.
240
241 config BUILTIN_DTB
242         string "DTB to build into the kernel image"
243         depends on OF
244
245 config BLK_DEV_SIMDISK
246         tristate "Host file-based simulated block device support"
247         default n
248         depends on XTENSA_PLATFORM_ISS
249         help
250           Create block devices that map to files in the host file system.
251           Device binding to host file may be changed at runtime via proc
252           interface provided the device is not in use.
253
254 config BLK_DEV_SIMDISK_COUNT
255         int "Number of host file-based simulated block devices"
256         range 1 10
257         depends on BLK_DEV_SIMDISK
258         default 2
259         help
260           This is the default minimal number of created block devices.
261           Kernel/module parameter 'simdisk_count' may be used to change this
262           value at runtime. More file names (but no more than 10) may be
263           specified as parameters, simdisk_count grows accordingly.
264
265 config SIMDISK0_FILENAME
266         string "Host filename for the first simulated device"
267         depends on BLK_DEV_SIMDISK = y
268         default ""
269         help
270           Attach a first simdisk to a host file. Conventionally, this file
271           contains a root file system.
272
273 config SIMDISK1_FILENAME
274         string "Host filename for the second simulated device"
275         depends on BLK_DEV_SIMDISK = y && BLK_DEV_SIMDISK_COUNT != 1
276         default ""
277         help
278           Another simulated disk in a host file for a buildroot-independent
279           storage.
280
281 source "mm/Kconfig"
282
283 source "drivers/pcmcia/Kconfig"
284
285 source "drivers/pci/hotplug/Kconfig"
286
287 endmenu
288
289 menu "Executable file formats"
290
291 source "fs/Kconfig.binfmt"
292
293 endmenu
294
295 source "net/Kconfig"
296
297 source "drivers/Kconfig"
298
299 source "fs/Kconfig"
300
301 source "arch/xtensa/Kconfig.debug"
302
303 source "security/Kconfig"
304
305 source "crypto/Kconfig"
306
307 source "lib/Kconfig"
308
309