6 select ARCH_WANT_FRAME_POINTERS
8 select GENERIC_ATOMIC64
9 select GENERIC_CLOCKEVENTS
10 select HAVE_GENERIC_HARDIRQS
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
22 select HAVE_FUNCTION_TRACER
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/>.
31 config RWSEM_XCHGADD_ALGORITHM
34 config GENERIC_HWEIGHT
37 config ARCH_HAS_ILOG2_U32
40 config ARCH_HAS_ILOG2_U64
51 source "kernel/Kconfig.freezer"
53 config LOCKDEP_SUPPORT
56 config STACKTRACE_SUPPORT
59 config TRACE_IRQFLAGS_SUPPORT
65 config VARIANT_IRQ_SWITCH
68 menu "Processor type and features"
71 prompt "Xtensa Processor Configuration"
72 default XTENSA_VARIANT_FSF
74 config XTENSA_VARIANT_FSF
75 bool "fsf - default (not generic) configuration"
78 config XTENSA_VARIANT_DC232B
79 bool "dc232b - Diamond 232L Standard Core Rev.B (LE)"
82 This variant refers to Tensilica's Diamond 232L Standard core Rev.B (LE).
84 config XTENSA_VARIANT_DC233C
85 bool "dc233c - Diamond 233L Standard Core Rev.C (LE)"
88 This variant refers to Tensilica's Diamond 233L Standard core Rev.C (LE).
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
97 config XTENSA_UNALIGNED_USER
98 bool "Unaligned memory access in use space"
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.
104 Say Y here to enable unaligned memory access in user space.
106 source "kernel/Kconfig.preempt"
108 config MATH_EMULATION
109 bool "Math emulation"
111 Can we use information of configuration file?
113 config INITIALIZE_XTENSA_MMU_INSIDE_VMLINUX
114 bool "Initialize Xtensa MMU inside the Linux kernel code"
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).
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
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.
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.
144 config XTENSA_CALIBRATE_CCOUNT
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.
151 config SERIAL_CONSOLE
154 config XTENSA_ISS_NETWORK
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.
168 source "drivers/pci/Kconfig"
172 menu "Platform options"
175 prompt "Xtensa System Type"
176 default XTENSA_PLATFORM_ISS
178 config XTENSA_PLATFORM_ISS
181 select XTENSA_CALIBRATE_CCOUNT
182 select SERIAL_CONSOLE
183 select XTENSA_ISS_NETWORK
185 ISS is an acronym for Tensilica's Instruction Set Simulator.
187 config XTENSA_PLATFORM_XT2000
190 XT2000 is the name of Tensilica's feature-rich emulation platform.
191 This hardware is capable of running a full Linux distribution.
193 config XTENSA_PLATFORM_S6105
195 select SERIAL_CONSOLE
198 config XTENSA_PLATFORM_XTFPGA
200 select SERIAL_CONSOLE
202 select XTENSA_CALIBRATE_CCOUNT
204 XTFPGA is the name of Tensilica board family (LX60, LX110, LX200, ML605).
205 This hardware is capable of running a full Linux distribution.
210 config XTENSA_CPU_CLOCK
211 int "CPU clock rate [MHz]"
212 depends on !XTENSA_CALIBRATE_CCOUNT
215 config GENERIC_CALIBRATE_DELAY
216 bool "Auto calibration of the BogoMIPS value"
218 The BogoMIPS value can easily be derived from the CPU frequency.
221 bool "Default bootloader kernel arguments"
224 string "Initial kernel command string"
225 depends on CMDLINE_BOOL
226 default "console=ttyS0,38400 root=/dev/ram"
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).
235 bool "Flattened Device Tree support"
237 select OF_EARLY_FLATTREE
239 Include support for flattened device tree machine descriptions.
242 string "DTB to build into the kernel image"
245 config BLK_DEV_SIMDISK
246 tristate "Host file-based simulated block device support"
248 depends on XTENSA_PLATFORM_ISS
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.
254 config BLK_DEV_SIMDISK_COUNT
255 int "Number of host file-based simulated block devices"
257 depends on BLK_DEV_SIMDISK
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.
265 config SIMDISK0_FILENAME
266 string "Host filename for the first simulated device"
267 depends on BLK_DEV_SIMDISK = y
270 Attach a first simdisk to a host file. Conventionally, this file
271 contains a root file system.
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
278 Another simulated disk in a host file for a buildroot-independent
283 source "drivers/pcmcia/Kconfig"
285 source "drivers/pci/hotplug/Kconfig"
289 menu "Executable file formats"
291 source "fs/Kconfig.binfmt"
297 source "drivers/Kconfig"
301 source "arch/xtensa/Kconfig.debug"
303 source "security/Kconfig"
305 source "crypto/Kconfig"