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