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