Merge branch 'regulator-4.18' into regulator-linus
[sfrench/cifs-2.6.git] / arch / hexagon / Kconfig
1 # SPDX-License-Identifier: GPL-2.0
2 # Hexagon configuration
3 comment "Linux Kernel Configuration for Hexagon"
4
5 config HEXAGON
6         def_bool y
7         select HAVE_OPROFILE
8         # Other pending projects/to-do items.
9         # select HAVE_REGS_AND_STACK_ACCESS_API
10         # select HAVE_HW_BREAKPOINT if PERF_EVENTS
11         # select ARCH_HAS_CPU_IDLE_WAIT
12         # select GPIOLIB
13         # select HAVE_CLK
14         # select GENERIC_PENDING_IRQ if SMP
15         select GENERIC_ATOMIC64
16         select HAVE_PERF_EVENTS
17         # GENERIC_ALLOCATOR is used by dma_alloc_coherent()
18         select GENERIC_ALLOCATOR
19         select GENERIC_IRQ_SHOW
20         select HAVE_ARCH_KGDB
21         select HAVE_ARCH_TRACEHOOK
22         select NEED_SG_DMA_LENGTH
23         select NO_IOPORT_MAP
24         select GENERIC_IOMAP
25         select GENERIC_SMP_IDLE_THREAD
26         select STACKTRACE_SUPPORT
27         select GENERIC_CLOCKEVENTS
28         select GENERIC_CLOCKEVENTS_BROADCAST
29         select MODULES_USE_ELF_RELA
30         select GENERIC_CPU_DEVICES
31         ---help---
32           Qualcomm Hexagon is a processor architecture designed for high
33           performance and low power across a wide variety of applications.
34
35 config HEXAGON_PHYS_OFFSET
36         def_bool y
37         ---help---
38           Platforms that don't load the kernel at zero set this.
39
40 config FRAME_POINTER
41         def_bool y
42
43 config LOCKDEP_SUPPORT
44         def_bool y
45
46 config PCI
47         def_bool n
48
49 config EARLY_PRINTK
50         def_bool y
51
52 config MMU
53         def_bool y
54
55 config TRACE_IRQFLAGS_SUPPORT
56         def_bool y
57
58 config GENERIC_CSUM
59         def_bool y
60
61 #
62 # Use the generic interrupt handling code in kernel/irq/:
63 #
64 config GENERIC_IRQ_PROBE
65         def_bool y
66
67 config RWSEM_GENERIC_SPINLOCK
68         def_bool n
69
70 config RWSEM_XCHGADD_ALGORITHM
71         def_bool y
72
73 config GENERIC_HWEIGHT
74         def_bool y
75
76 config STACKTRACE_SUPPORT
77         def_bool y
78         select STACKTRACE
79
80 config GENERIC_BUG
81         def_bool y
82         depends on BUG
83
84 menu "Machine selection"
85
86 choice
87         prompt "System type"
88         default HEXAGON_COMET
89
90 config HEXAGON_COMET
91         bool "Comet Board"
92         ---help---
93           Support for the Comet platform.
94
95 endchoice
96
97 config HEXAGON_ARCH_VERSION
98         int "Architecture version"
99         default 2
100
101 config CMDLINE
102         string "Default kernel command string"
103         default ""
104         help
105           On some platforms, there is currently no way for the boot loader
106           to pass arguments to the kernel. For these, you should supply some
107           command-line options at build time by entering them here.  At a
108           minimum, you should specify the memory size and the root device
109           (e.g., mem=64M root=/dev/nfs).
110
111 config SMP
112         bool "Multi-Processing support"
113         ---help---
114           Enables SMP support in the kernel.  If unsure, say "Y"
115
116 config NR_CPUS
117         int "Maximum number of CPUs" if SMP
118         range 2 6 if SMP
119         default "1" if !SMP
120         default "6" if SMP
121         ---help---
122           This allows you to specify the maximum number of CPUs which this
123           kernel will support.  The maximum supported value is 6 and the
124           minimum value which makes sense is 2.
125
126           This is purely to save memory - each supported CPU adds
127           approximately eight kilobytes to the kernel image.
128
129 choice
130         prompt "Kernel page size"
131         default PAGE_SIZE_4KB
132         ---help---
133           Changes the default page size; use with caution.
134
135 config PAGE_SIZE_4KB
136         bool "4KB"
137
138 config PAGE_SIZE_16KB
139         bool "16KB"
140
141 config PAGE_SIZE_64KB
142         bool "64KB"
143
144 config PAGE_SIZE_256KB
145         bool "256KB"
146
147 endchoice
148
149 source "mm/Kconfig"
150
151 source "kernel/Kconfig.hz"
152
153 endmenu
154
155 source "init/Kconfig"
156 source "kernel/Kconfig.freezer"
157 source "drivers/Kconfig"
158 source "fs/Kconfig"
159
160 menu "Executable File Formats"
161 source "fs/Kconfig.binfmt"
162 endmenu
163
164 source "net/Kconfig"
165 source "security/Kconfig"
166 source "crypto/Kconfig"
167 source "lib/Kconfig"
168
169 menu "Kernel hacking"
170 source "lib/Kconfig.debug"
171 endmenu