1config SYMBOL_PREFIX 2 string 3 default "_" 4 5config METAG 6 def_bool y 7 select EMBEDDED 8 select GENERIC_ATOMIC64 9 select GENERIC_CLOCKEVENTS 10 select GENERIC_IRQ_SHOW 11 select GENERIC_SMP_IDLE_THREAD 12 select HAVE_64BIT_ALIGNED_ACCESS 13 select HAVE_ARCH_TRACEHOOK 14 select HAVE_C_RECORDMCOUNT 15 select HAVE_DEBUG_KMEMLEAK 16 select HAVE_DYNAMIC_FTRACE 17 select HAVE_FTRACE_MCOUNT_RECORD 18 select HAVE_FUNCTION_TRACER 19 select HAVE_FUNCTION_TRACE_MCOUNT_TEST 20 select HAVE_GENERIC_HARDIRQS 21 select HAVE_KERNEL_BZIP2 22 select HAVE_KERNEL_GZIP 23 select HAVE_KERNEL_LZO 24 select HAVE_KERNEL_XZ 25 select HAVE_MEMBLOCK 26 select HAVE_MEMBLOCK_NODE_MAP 27 select HAVE_MOD_ARCH_SPECIFIC 28 select HAVE_PERF_EVENTS 29 select HAVE_SYSCALL_TRACEPOINTS 30 select IRQ_DOMAIN 31 select MODULES_USE_ELF_RELA 32 select OF 33 select OF_EARLY_FLATTREE 34 select SPARSE_IRQ 35 36config STACKTRACE_SUPPORT 37 def_bool y 38 39config LOCKDEP_SUPPORT 40 def_bool y 41 42config HAVE_LATENCYTOP_SUPPORT 43 def_bool y 44 45config RWSEM_GENERIC_SPINLOCK 46 def_bool y 47 48config RWSEM_XCHGADD_ALGORITHM 49 bool 50 51config GENERIC_HWEIGHT 52 def_bool y 53 54config GENERIC_CALIBRATE_DELAY 55 def_bool y 56 57config GENERIC_GPIO 58 def_bool n 59 60config NO_IOPORT 61 def_bool y 62 63source "init/Kconfig" 64 65source "kernel/Kconfig.freezer" 66 67menu "Processor type and features" 68 69config MMU 70 def_bool y 71 72config STACK_GROWSUP 73 def_bool y 74 75config HOTPLUG_CPU 76 bool "Enable CPU hotplug support" 77 depends on SMP 78 help 79 Say Y here to allow turning CPUs off and on. CPUs can be 80 controlled through /sys/devices/system/cpu. 81 82 Say N if you want to disable CPU hotplug. 83 84config HIGHMEM 85 bool "High Memory Support" 86 help 87 The address space of Meta processors is only 4 Gigabytes large 88 and it has to accommodate user address space, kernel address 89 space as well as some memory mapped IO. That means that, if you 90 have a large amount of physical memory and/or IO, not all of the 91 memory can be "permanently mapped" by the kernel. The physical 92 memory that is not permanently mapped is called "high memory". 93 94 Depending on the selected kernel/user memory split, minimum 95 vmalloc space and actual amount of RAM, you may not need this 96 option which should result in a slightly faster kernel. 97 98 If unsure, say n. 99 100source "arch/metag/mm/Kconfig" 101 102source "arch/metag/Kconfig.soc" 103 104config METAG_META12 105 bool 106 help 107 Select this from the SoC config symbol to indicate that it contains a 108 Meta 1.2 core. 109 110config METAG_META21 111 bool 112 help 113 Select this from the SoC config symbol to indicate that it contains a 114 Meta 2.1 core. 115 116config SMP 117 bool "Symmetric multi-processing support" 118 depends on METAG_META21 && METAG_META21_MMU 119 select USE_GENERIC_SMP_HELPERS 120 help 121 This enables support for systems with more than one thread running 122 Linux. If you have a system with only one thread running Linux, 123 say N. Otherwise, say Y. 124 125config NR_CPUS 126 int "Maximum number of CPUs (2-4)" if SMP 127 range 2 4 if SMP 128 default "1" if !SMP 129 default "4" if SMP 130 131config METAG_SMP_WRITE_REORDERING 132 bool 133 help 134 This attempts to prevent cache-memory incoherence due to external 135 reordering of writes from different hardware threads when SMP is 136 enabled. It adds fences (system event 0) to smp_mb and smp_rmb in an 137 attempt to catch some of the cases, and also before writes to shared 138 memory in LOCK1 protected atomics and spinlocks. 139 This will not completely prevent cache incoherency on affected cores. 140 141config METAG_LNKGET_AROUND_CACHE 142 bool 143 depends on METAG_META21 144 help 145 This indicates that the LNKGET/LNKSET instructions go around the 146 cache, which requires some extra cache flushes when the memory needs 147 to be accessed by normal GET/SET instructions too. 148 149choice 150 prompt "Atomicity primitive" 151 default METAG_ATOMICITY_LNKGET 152 help 153 This option selects the mechanism for performing atomic operations. 154 155config METAG_ATOMICITY_IRQSOFF 156 depends on !SMP 157 bool "irqsoff" 158 help 159 This option disables interrupts to achieve atomicity. This mechanism 160 is not SMP-safe. 161 162config METAG_ATOMICITY_LNKGET 163 depends on METAG_META21 164 bool "lnkget/lnkset" 165 help 166 This option uses the LNKGET and LNKSET instructions to achieve 167 atomicity. LNKGET/LNKSET are load-link/store-conditional instructions. 168 Choose this option if your system requires low latency. 169 170config METAG_ATOMICITY_LOCK1 171 depends on SMP 172 bool "lock1" 173 help 174 This option uses the LOCK1 instruction for atomicity. This is mainly 175 provided as a debugging aid if the lnkget/lnkset atomicity primitive 176 isn't working properly. 177 178endchoice 179 180config METAG_FPU 181 bool "FPU Support" 182 depends on METAG_META21 183 default y 184 help 185 This option allows processes to use FPU hardware available with this 186 CPU. If this option is not enabled FPU registers will not be saved 187 and restored on context-switch. 188 189 If you plan on running programs which are compiled to use hard floats 190 say Y here. 191 192config METAG_DSP 193 bool "DSP Support" 194 help 195 This option allows processes to use DSP hardware available 196 with this CPU. If this option is not enabled DSP registers 197 will not be saved and restored on context-switch. 198 199 If you plan on running DSP programs say Y here. 200 201config METAG_PERFCOUNTER_IRQS 202 bool "PerfCounters interrupt support" 203 depends on METAG_META21 204 help 205 This option enables using interrupts to collect information from 206 Performance Counters. This option is supported in new META21 207 (starting from HTP265). 208 209 When disabled, Performance Counters information will be collected 210 based on Timer Interrupt. 211 212config METAG_DA 213 bool "DA support" 214 help 215 Say Y if you plan to use a DA debug adapter with Linux. The presence 216 of the DA will be detected automatically at boot, so it is safe to say 217 Y to this option even when booting without a DA. 218 219 This enables support for services provided by DA JTAG debug adapters, 220 such as: 221 - communication over DA channels (such as the console driver). 222 - use of the DA filesystem. 223 224menu "Boot options" 225 226config METAG_BUILTIN_DTB 227 bool "Embed DTB in kernel image" 228 default y 229 help 230 Embeds a device tree binary in the kernel image. 231 232config METAG_BUILTIN_DTB_NAME 233 string "Built in DTB" 234 depends on METAG_BUILTIN_DTB 235 help 236 Set the name of the DTB to embed (leave blank to pick one 237 automatically based on kernel configuration). 238 239config CMDLINE_BOOL 240 bool "Default bootloader kernel arguments" 241 242config CMDLINE 243 string "Kernel command line" 244 depends on CMDLINE_BOOL 245 help 246 On some architectures there is currently no way for the boot loader 247 to pass arguments to the kernel. For these architectures, you should 248 supply some command-line options at build time by entering them 249 here. 250 251config CMDLINE_FORCE 252 bool "Force default kernel command string" 253 depends on CMDLINE_BOOL 254 help 255 Set this to have arguments from the default kernel command string 256 override those passed by the boot loader. 257 258endmenu 259 260source "kernel/Kconfig.preempt" 261 262source kernel/Kconfig.hz 263 264endmenu 265 266menu "Power management options" 267 268source kernel/power/Kconfig 269 270endmenu 271 272menu "Executable file formats" 273 274source "fs/Kconfig.binfmt" 275 276endmenu 277 278source "net/Kconfig" 279 280source "drivers/Kconfig" 281 282source "fs/Kconfig" 283 284source "arch/metag/Kconfig.debug" 285 286source "security/Kconfig" 287 288source "crypto/Kconfig" 289 290source "lib/Kconfig" 291