GNU Linux-libre 4.19.286-gnu1
[releases.git] / arch / c6x / Kconfig
1 # SPDX-License-Identifier: GPL-2.0
2 #
3 # For a description of the syntax of this configuration file,
4 # see Documentation/kbuild/kconfig-language.txt.
5 #
6
7 config C6X
8         def_bool y
9         select ARCH_HAS_SYNC_DMA_FOR_CPU
10         select ARCH_HAS_SYNC_DMA_FOR_DEVICE
11         select CLKDEV_LOOKUP
12         select DMA_NONCOHERENT_OPS
13         select GENERIC_ATOMIC64
14         select GENERIC_IRQ_SHOW
15         select HAVE_ARCH_TRACEHOOK
16         select HAVE_MEMBLOCK
17         select SPARSE_IRQ
18         select IRQ_DOMAIN
19         select OF
20         select OF_EARLY_FLATTREE
21         select GENERIC_CLOCKEVENTS
22         select MODULES_USE_ELF_RELA
23         select ARCH_NO_COHERENT_DMA_MMAP
24
25 config MMU
26         def_bool n
27
28 config FPU
29         def_bool n
30
31 config RWSEM_GENERIC_SPINLOCK
32         def_bool y
33
34 config GENERIC_CALIBRATE_DELAY
35         def_bool y
36
37 config GENERIC_HWEIGHT
38         def_bool y
39
40 config GENERIC_BUG
41         def_bool y
42         depends on BUG
43
44 config C6X_BIG_KERNEL
45         bool "Build a big kernel"
46         help
47           The C6X function call instruction has a limited range of +/- 2MiB.
48           This is sufficient for most kernels, but some kernel configurations
49           with lots of compiled-in functionality may require a larger range
50           for function calls. Use this option to have the compiler generate
51           function calls with 32-bit range. This will make the kernel both
52           larger and slower.
53
54           If unsure, say N.
55
56 # Use the generic interrupt handling code in kernel/irq/
57
58 config CMDLINE_BOOL
59         bool "Default bootloader kernel arguments"
60
61 config CMDLINE
62         string "Kernel command line"
63         depends on CMDLINE_BOOL
64         default "console=ttyS0,57600"
65         help
66           On some architectures there is currently no way for the boot loader
67           to pass arguments to the kernel. For these architectures, you should
68           supply some command-line options at build time by entering them
69           here.
70
71 config CMDLINE_FORCE
72         bool "Force default kernel command string"
73         depends on CMDLINE_BOOL
74         default n
75         help
76           Set this to have arguments from the default kernel command string
77           override those passed by the boot loader.
78
79 config CPU_BIG_ENDIAN
80         bool "Build big-endian kernel"
81         default n
82         help
83           Say Y if you plan on running a kernel in big-endian mode.
84           Note that your board must be properly built and your board
85           port must properly enable any big-endian related features
86           of your chipset/board/processor.
87
88 config FORCE_MAX_ZONEORDER
89         int "Maximum zone order"
90         default "13"
91         help
92           The kernel memory allocator divides physically contiguous memory
93           blocks into "zones", where each zone is a power of two number of
94           pages.  This option selects the largest power of two that the kernel
95           keeps in the memory allocator.  If you need to allocate very large
96           blocks of physically contiguous memory, then you may need to
97           increase this value.
98
99           This config option is actually maximum order plus one. For example,
100           a value of 11 means that the largest free memory block is 2^10 pages.
101
102 menu "Processor type and features"
103
104 source "arch/c6x/platforms/Kconfig"
105
106 config KERNEL_RAM_BASE_ADDRESS
107         hex "Virtual address of memory base"
108         default 0xe0000000 if SOC_TMS320C6455
109         default 0xe0000000 if SOC_TMS320C6457
110         default 0xe0000000 if SOC_TMS320C6472
111         default 0x80000000
112
113 source "kernel/Kconfig.hz"
114
115 endmenu