Blame view
arch/tile/Kconfig
12.4 KB
867e359b9 arch/tile: core s... |
1 |
# For a description of the syntax of this configuration file, |
5fb682b06 arch/tile: fix so... |
2 |
# see Documentation/kbuild/kconfig-language.txt. |
867e359b9 arch/tile: core s... |
3 |
|
8df274064 tile: Use generic... |
4 |
config TILE |
867e359b9 arch/tile: core s... |
5 |
def_bool y |
4ef00aa30 tile: sort the "s... |
6 |
select ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE |
446f24d11 Kconfig: consolid... |
7 |
select ARCH_HAS_DEBUG_STRICT_USER_COPY_CHECKS |
21266be9e arch: consolidate... |
8 |
select ARCH_HAS_DEVMEM_IS_ALLOWED |
8d6951439 arch/tile/Kconfig... |
9 |
select ARCH_HAVE_NMI_SAFE_CMPXCHG |
49cf78ef7 tile: support FRA... |
10 |
select ARCH_WANT_FRAME_POINTERS |
4ef00aa30 tile: sort the "s... |
11 |
select CC_OPTIMIZE_FOR_SIZE |
b01aec9b2 EDAC: Cleanup ato... |
12 |
select EDAC_SUPPORT |
4ef00aa30 tile: sort the "s... |
13 14 15 16 17 |
select GENERIC_CLOCKEVENTS select GENERIC_FIND_FIRST_BIT select GENERIC_IRQ_PROBE select GENERIC_IRQ_SHOW select GENERIC_PENDING_IRQ if SMP |
5bf6c07a1 tile: add <asm/wo... |
18 19 |
select GENERIC_STRNCPY_FROM_USER select GENERIC_STRNLEN_USER |
a0ddef81f tile: enable full... |
20 |
select HAVE_ARCH_SECCOMP_FILTER |
4ef00aa30 tile: sort the "s... |
21 22 23 24 25 26 |
select HAVE_ARCH_TRACEHOOK select HAVE_CONTEXT_TRACKING select HAVE_DEBUG_BUGVERBOSE select HAVE_DEBUG_KMEMLEAK select HAVE_DEBUG_STACKOVERFLOW select HAVE_DMA_API_DEBUG |
d6542d76e Merge git://git.k... |
27 |
select HAVE_EXIT_THREAD |
4ef00aa30 tile: sort the "s... |
28 |
select HAVE_KVM if !TILEGX |
d6542d76e Merge git://git.k... |
29 |
select HAVE_NMI if USE_PMC |
4ef00aa30 tile: sort the "s... |
30 31 32 33 34 35 36 37 |
select HAVE_PERF_EVENTS select HAVE_SYSCALL_TRACEPOINTS select MODULES_USE_ELF_RELA select SYSCTL_EXCEPTION_TRACE select SYS_HYPERVISOR select USER_STACKTRACE_SUPPORT select USE_PMC if PERF_EVENTS select VIRT_TO_BUS |
867e359b9 arch/tile: core s... |
38 |
|
8df274064 tile: Use generic... |
39 |
config MMU |
867e359b9 arch/tile: core s... |
40 |
def_bool y |
8df274064 tile: Use generic... |
41 |
config GENERIC_CSUM |
867e359b9 arch/tile: core s... |
42 |
def_bool y |
867e359b9 arch/tile: core s... |
43 |
|
867e359b9 arch/tile: core s... |
44 45 46 47 48 49 50 |
config HAVE_ARCH_ALLOC_REMAP def_bool y config HAVE_SETUP_PER_CPU_AREA def_bool y config NEED_PER_CPU_PAGE_FIRST_CHUNK |
5fb682b06 arch/tile: fix so... |
51 |
def_bool y |
867e359b9 arch/tile: core s... |
52 53 54 |
config SYS_SUPPORTS_HUGETLBFS def_bool y |
621b19551 arch/tile: suppor... |
55 56 57 58 59 60 61 |
# Support for additional huge page sizes besides HPAGE_SIZE. # The software support is currently only present in the TILE-Gx # hypervisor. TILEPro in any case does not support page sizes # larger than the default HPAGE_SIZE. config HUGETLB_SUPER_PAGES depends on HUGETLB_PAGE && TILEGX def_bool y |
4a556f4f5 tile: implement g... |
62 63 |
config GENERIC_TIME_VSYSCALL def_bool y |
8e3441eba tile: Add support... |
64 65 66 |
# Enable PMC if PERF_EVENTS, OPROFILE, or WATCHPOINTS are enabled. config USE_PMC bool |
25985edce Fix common misspe... |
67 |
# FIXME: tilegx can implement a more efficient rwsem. |
867e359b9 arch/tile: core s... |
68 69 |
config RWSEM_GENERIC_SPINLOCK def_bool y |
867e359b9 arch/tile: core s... |
70 71 72 73 74 75 |
# We only support gcc 4.4 and above, so this should work. config ARCH_SUPPORTS_OPTIMIZED_INLINING def_bool y config ARCH_PHYS_ADDR_T_64BIT def_bool y |
d31eb5194 tile: enable ARCH... |
76 77 |
config ARCH_DMA_ADDR_T_64BIT def_bool y |
3d1e8a81c arch/tile/Kconfig... |
78 79 |
config NEED_DMA_MAP_STATE def_bool y |
41bb38fc5 tile pci: enable ... |
80 81 |
config ARCH_HAS_DMA_SET_COHERENT_MASK bool |
867e359b9 arch/tile: core s... |
82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 |
config LOCKDEP_SUPPORT def_bool y config STACKTRACE_SUPPORT def_bool y select STACKTRACE # We use discontigmem for now; at some point we may want to switch # to sparsemem (Tilera bug 7996). config ARCH_DISCONTIGMEM_ENABLE def_bool y config ARCH_DISCONTIGMEM_DEFAULT def_bool y config TRACE_IRQFLAGS_SUPPORT def_bool y |
867e359b9 arch/tile: core s... |
99 100 101 |
# SMP is required for Tilera Linux. config SMP def_bool y |
867e359b9 arch/tile: core s... |
102 |
config HVC_TILE |
4f73bc4dd tty: Added a CONF... |
103 |
depends on TTY |
867e359b9 arch/tile: core s... |
104 |
select HVC_DRIVER |
bda0f5bad tile: various con... |
105 |
select HVC_IRQ if TILEGX |
867e359b9 arch/tile: core s... |
106 |
def_bool y |
41dd496c8 tile: force CONFI... |
107 108 |
# Building with ARCH=tilegx (or ARCH=tile) implies using the # 64-bit TILE-Gx toolchain, so force CONFIG_TILEGX on. |
867e359b9 arch/tile: core s... |
109 |
config TILEGX |
41dd496c8 tile: force CONFI... |
110 |
def_bool ARCH != "tilepro" |
4ef00aa30 tile: sort the "s... |
111 |
select ARCH_SUPPORTS_ATOMIC_RMW |
b26d851ff tile: Use SPARSE_IRQ |
112 |
select GENERIC_IRQ_LEGACY_ALLOC_HWIRQ |
4ef00aa30 tile: sort the "s... |
113 114 |
select HAVE_ARCH_JUMP_LABEL select HAVE_ARCH_KGDB |
a61fd5e36 tile: support ftr... |
115 116 |
select HAVE_DYNAMIC_FTRACE select HAVE_FTRACE_MCOUNT_RECORD |
4ef00aa30 tile: sort the "s... |
117 118 |
select HAVE_FUNCTION_GRAPH_TRACER select HAVE_FUNCTION_TRACER |
3fa17c395 tile: support kpr... |
119 120 |
select HAVE_KPROBES select HAVE_KRETPROBES |
4ef00aa30 tile: sort the "s... |
121 |
select SPARSE_IRQ |
867e359b9 arch/tile: core s... |
122 |
|
acd1a19e0 arch/tile: mark T... |
123 124 |
config TILEPRO def_bool !TILEGX |
867e359b9 arch/tile: core s... |
125 |
config 64BIT |
acd1a19e0 arch/tile: mark T... |
126 |
def_bool TILEGX |
867e359b9 arch/tile: core s... |
127 128 129 |
config ARCH_DEFCONFIG string |
3d1e8a81c arch/tile/Kconfig... |
130 |
default "arch/tile/configs/tilepro_defconfig" if !TILEGX |
867e359b9 arch/tile: core s... |
131 |
default "arch/tile/configs/tilegx_defconfig" if TILEGX |
909d45e62 tile: expose numb... |
132 133 134 135 |
config PGTABLE_LEVELS int default 3 if 64BIT default 2 |
867e359b9 arch/tile: core s... |
136 |
source "init/Kconfig" |
99a844b73 tile: include ker... |
137 |
source "kernel/Kconfig.freezer" |
867e359b9 arch/tile: core s... |
138 139 140 141 142 143 144 145 146 147 148 |
menu "Tilera-specific configuration" config NR_CPUS int "Maximum number of tiles (2-255)" range 2 255 depends on SMP default "64" ---help--- Building with 64 is the recommended value, but a slightly smaller kernel memory footprint results from using a smaller value on chips with fewer tiles. |
d5d14ed6f arch/tile: Allow ... |
149 150 151 152 153 154 155 156 157 |
choice prompt "Kernel page size" default PAGE_SIZE_64KB help This lets you select the page size of the kernel. For best performance on memory-intensive applications, a page size of 64KB is recommended. For workloads involving many small files, many connections, etc., it may be better to select 16KB, which uses memory more efficiently at some cost in TLB performance. |
c1b27ab5d tile: provide CON... |
158 159 160 161 162 |
Note that for TILEPro, you must also rebuild the hypervisor with a matching page size. config PAGE_SIZE_4KB bool "4KB" if TILEPRO |
d5d14ed6f arch/tile: Allow ... |
163 164 165 166 167 168 169 170 |
config PAGE_SIZE_16KB bool "16KB" config PAGE_SIZE_64KB bool "64KB" endchoice |
867e359b9 arch/tile: core s... |
171 172 173 174 |
source "kernel/Kconfig.hz" config KEXEC bool "kexec system call" |
2965faa5e kexec: split kexe... |
175 |
select KEXEC_CORE |
867e359b9 arch/tile: core s... |
176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 |
---help--- kexec is a system call that implements the ability to shutdown your current kernel, and to start another kernel. It is like a reboot but it is independent of the system firmware. It is used to implement the "mboot" Tilera booter. The name comes from the similarity to the exec system call. config COMPAT bool "Support 32-bit TILE-Gx binaries in addition to 64-bit" depends on TILEGX select COMPAT_BINFMT_ELF default y ---help--- If enabled, the kernel will support running TILE-Gx binaries that were built with the -m32 option. |
a0ddef81f tile: enable full... |
192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 |
config SECCOMP bool "Enable seccomp to safely compute untrusted bytecode" depends on PROC_FS help This kernel feature is useful for number crunching applications that may need to compute untrusted bytecode during their execution. By using pipes or other transports made available to the process as file descriptors supporting the read/write syscalls, it's possible to isolate those applications in their own address space using seccomp. Once seccomp is enabled via prctl, it cannot be disabled and the task is only allowed to execute a few safe syscalls defined by each seccomp mode. If unsure, say N. |
867e359b9 arch/tile: core s... |
207 208 209 |
config SYSVIPC_COMPAT def_bool y depends on COMPAT && SYSVIPC |
d7c966111 tile: remove supp... |
210 |
# We do not currently support disabling HIGHMEM on tilepro. |
867e359b9 arch/tile: core s... |
211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 |
config HIGHMEM bool # "Support for more than 512 MB of RAM" default !TILEGX ---help--- Linux can use the full amount of RAM in the system by default. However, the address space of TILE processors is only 4 Gigabytes large. That means that, if you have a large amount of physical memory, not all of it can be "permanently mapped" by the kernel. The physical memory that's not permanently mapped is called "high memory". If you are compiling a kernel which will never run on a machine with more than 512 MB total physical RAM, answer "false" here. This will result in the kernel mapping all of physical memory into the top 1 GB of virtual memory space. If unsure, say "true". |
eef015c8a arch/tile: enable... |
228 229 |
config ZONE_DMA def_bool y |
41bb38fc5 tile pci: enable ... |
230 231 232 233 234 235 236 237 238 239 240 241 |
config IOMMU_HELPER bool config NEED_SG_DMA_LENGTH bool config SWIOTLB bool default TILEGX select IOMMU_HELPER select NEED_SG_DMA_LENGTH select ARCH_HAS_DMA_SET_COHERENT_MASK |
867e359b9 arch/tile: core s... |
242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 |
# We do not currently support disabling NUMA. config NUMA bool # "NUMA Memory Allocation and Scheduler Support" depends on SMP && DISCONTIGMEM default y ---help--- NUMA memory allocation is required for TILE processors unless booting with memory striping enabled in the hypervisor, or with only a single memory controller. It is recommended that this option always be enabled. config NODES_SHIFT int "Log base 2 of the max number of memory controllers" default 2 depends on NEED_MULTIPLE_NODES ---help--- By default, 2, i.e. 2^2 == 4 DDR2 controllers. In a system with more controllers, this value should be raised. |
867e359b9 arch/tile: core s... |
260 261 |
choice depends on !TILEGX |
6a108a14f kconfig: rename C... |
262 |
prompt "Memory split" if EXPERT |
867e359b9 arch/tile: core s... |
263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 |
default VMSPLIT_3G ---help--- Select the desired split between kernel and user memory. If the address range available to the kernel is less than the physical memory installed, the remaining memory will be available as "high memory". Accessing high memory is a little more costly than low memory, as it needs to be mapped into the kernel first. Note that increasing the kernel address space limits the range available to user programs, making the address space there tighter. Selecting anything other than the default 3G/1G split will also likely make your kernel incompatible with binary-only kernel modules. If you are not absolutely sure what you are doing, leave this option alone! |
5592840ba arch/tile: use be... |
279 |
config VMSPLIT_3_75G |
867e359b9 arch/tile: core s... |
280 |
bool "3.75G/0.25G user/kernel split (no kernel networking)" |
5592840ba arch/tile: use be... |
281 |
config VMSPLIT_3_5G |
867e359b9 arch/tile: core s... |
282 283 284 |
bool "3.5G/0.5G user/kernel split" config VMSPLIT_3G bool "3G/1G user/kernel split" |
09c17eab0 arch/tile: add so... |
285 286 287 288 289 290 |
config VMSPLIT_2_75G bool "2.75G/1.25G user/kernel split (for full 1G low memory)" config VMSPLIT_2_5G bool "2.5G/1.5G user/kernel split" config VMSPLIT_2_25G bool "2.25G/1.75G user/kernel split" |
867e359b9 arch/tile: core s... |
291 292 293 294 295 296 297 298 |
config VMSPLIT_2G bool "2G/2G user/kernel split" config VMSPLIT_1G bool "1G/3G user/kernel split" endchoice config PAGE_OFFSET hex |
884197f7e arch/tile/Kconfig... |
299 |
depends on !64BIT |
5592840ba arch/tile: use be... |
300 301 |
default 0xF0000000 if VMSPLIT_3_75G default 0xE0000000 if VMSPLIT_3_5G |
09c17eab0 arch/tile: add so... |
302 303 304 |
default 0xB0000000 if VMSPLIT_2_75G default 0xA0000000 if VMSPLIT_2_5G default 0x90000000 if VMSPLIT_2_25G |
867e359b9 arch/tile: core s... |
305 306 307 308 309 |
default 0x80000000 if VMSPLIT_2G default 0x40000000 if VMSPLIT_1G default 0xC0000000 source "mm/Kconfig" |
bc1a298f4 tile: support CON... |
310 |
source "kernel/Kconfig.preempt" |
867e359b9 arch/tile: core s... |
311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 |
config CMDLINE_BOOL bool "Built-in kernel command line" default n ---help--- Allow for specifying boot arguments to the kernel at build time. On some systems (e.g. embedded ones), it is necessary or convenient to provide some or all of the kernel boot arguments with the kernel itself (that is, to not rely on the boot loader to provide them.) To compile command line arguments into the kernel, set this option to 'Y', then fill in the the boot arguments in CONFIG_CMDLINE. Systems with fully functional boot loaders (e.g. mboot, or if booting over PCI) should leave this option set to 'N'. config CMDLINE string "Built-in kernel command string" depends on CMDLINE_BOOL default "" ---help--- Enter arguments here that should be compiled into the kernel image and used at boot time. If the boot loader provides a command line at boot time, it is appended to this string to form the full kernel command line, when the system boots. However, you can use the CONFIG_CMDLINE_OVERRIDE option to change this behavior. In most cases, the command line (whether built-in or provided by the boot loader) should specify the device for the root file system. config CMDLINE_OVERRIDE bool "Built-in command line overrides boot loader arguments" default n depends on CMDLINE_BOOL ---help--- Set this option to 'Y' to have the kernel ignore the boot loader command line, and use ONLY the built-in command line. This is used to work around broken boot loaders. This should be set to 'N' under normal conditions. config VMALLOC_RESERVE hex |
ad2a4bb37 tile: double defa... |
358 |
default 0x2000000 |
867e359b9 arch/tile: core s... |
359 |
|
9f9c0382c arch/tile: Add dr... |
360 361 362 |
config HARDWALL bool "Hardwall support to allow access to user dynamic network" default y |
a78c942df arch/tile: parame... |
363 364 365 |
config KERNEL_PL int "Processor protection level for kernel" range 1 2 |
c539914dc tile: support new... |
366 367 |
default 2 if TILEGX default 1 if !TILEGX |
a78c942df arch/tile: parame... |
368 |
---help--- |
c539914dc tile: support new... |
369 370 371 372 373 374 375 376 |
Since MDE 4.2, the Tilera hypervisor runs the kernel at PL2 by default. If running under an older hypervisor, or as a KVM guest, you must run at PL1. (The current hypervisor may also be recompiled with "make HV_PL=2" to allow it to run a kernel at PL1, but clients running at PL1 are not expected to be supported indefinitely.) If you're not sure, don't change the default. |
a78c942df arch/tile: parame... |
377 |
|
37b82b5de arch/tile: introd... |
378 |
source "arch/tile/gxio/Kconfig" |
867e359b9 arch/tile: core s... |
379 380 381 |
endmenu # Tilera-specific configuration menu "Bus options" |
f02cbbe65 pci root complex:... |
382 383 384 385 |
config PCI bool "PCI support" default y select PCI_DOMAINS |
845501213 tile: switch to G... |
386 |
select GENERIC_PCI_IOMAP |
129622672 arch/tile: tilegx... |
387 |
select TILE_GXIO_TRIO if TILEGX |
129622672 arch/tile: tilegx... |
388 |
select PCI_MSI if TILEGX |
f02cbbe65 pci root complex:... |
389 390 391 392 393 394 395 |
---help--- Enable PCI root complex support, so PCIe endpoint devices can be attached to the Tile chip. Many, but not all, PCI devices are supported under Tilera's root complex driver. config PCI_DOMAINS bool |
867e359b9 arch/tile: core s... |
396 397 |
config NO_IOMEM def_bool !PCI |
ce816fa88 Kconfig: rename H... |
398 |
config NO_IOPORT_MAP |
867e359b9 arch/tile: core s... |
399 |
def_bool !PCI |
cf89c4262 tile PCI RC: supp... |
400 401 402 403 404 405 406 407 408 |
config TILE_PCI_IO bool "PCI I/O space support" default n depends on PCI depends on TILEGX ---help--- Enable PCI I/O space support on TILEGx. Since the PCI I/O space is used by few modern PCIe endpoint devices, its support is disabled by default to save the TRIO PIO Region resource for other purposes. |
867e359b9 arch/tile: core s... |
409 |
source "drivers/pci/Kconfig" |
47fc28bff usb: add host sup... |
410 411 412 413 414 415 416 417 418 |
config TILE_USB tristate "Tilera USB host adapter support" default y depends on USB depends on TILEGX select TILE_GXIO_USB_HOST ---help--- Provides USB host adapter support for the built-in EHCI and OHCI interfaces on TILE-Gx chips. |
867e359b9 arch/tile: core s... |
419 420 421 |
endmenu menu "Executable file formats" |
867e359b9 arch/tile: core s... |
422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 |
source "fs/Kconfig.binfmt" endmenu source "net/Kconfig" source "drivers/Kconfig" source "fs/Kconfig" source "arch/tile/Kconfig.debug" source "security/Kconfig" source "crypto/Kconfig" source "lib/Kconfig" |
a78c942df arch/tile: parame... |
439 440 |
source "arch/tile/kvm/Kconfig" |