Merge tag 'hwmon-for-v6.13-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git...
[linux.git] / arch / hexagon / Kconfig
blob3eb51fbe804ea2a35af3e1251e1123d03c2414db
1 # SPDX-License-Identifier: GPL-2.0
2 # Hexagon configuration
3 comment "Linux Kernel Configuration for Hexagon"
5 config HEXAGON
6         def_bool y
7         select ARCH_32BIT_OFF_T
8         select ARCH_HAS_SYNC_DMA_FOR_DEVICE
9         select ARCH_NO_PREEMPT
10         select ARCH_WANT_FRAME_POINTERS
11         select DMA_GLOBAL_POOL
12         select HAVE_PAGE_SIZE_4KB
13         select HAVE_PAGE_SIZE_16KB
14         select HAVE_PAGE_SIZE_64KB
15         select HAVE_PAGE_SIZE_256KB
16         select FRAME_POINTER
17         # Other pending projects/to-do items.
18         # select HAVE_REGS_AND_STACK_ACCESS_API
19         # select HAVE_HW_BREAKPOINT if PERF_EVENTS
20         # select ARCH_HAS_CPU_IDLE_WAIT
21         # select GPIOLIB
22         # select HAVE_CLK
23         # select GENERIC_PENDING_IRQ if SMP
24         select GENERIC_ATOMIC64
25         select HAVE_PERF_EVENTS
26         # GENERIC_ALLOCATOR is used by dma_alloc_coherent()
27         select GENERIC_ALLOCATOR
28         select GENERIC_IRQ_PROBE
29         select GENERIC_IRQ_SHOW
30         select HAVE_ARCH_KGDB
31         select HAVE_ARCH_TRACEHOOK
32         select NEED_SG_DMA_LENGTH
33         select GENERIC_IOREMAP
34         select GENERIC_SMP_IDLE_THREAD
35         select STACKTRACE_SUPPORT
36         select GENERIC_CLOCKEVENTS_BROADCAST
37         select LOCK_MM_AND_FIND_VMA
38         select MODULES_USE_ELF_RELA
39         select GENERIC_CPU_DEVICES
40         select ARCH_WANT_LD_ORPHAN_WARN
41         select TRACE_IRQFLAGS_SUPPORT
42         help
43           Qualcomm Hexagon is a processor architecture designed for high
44           performance and low power across a wide variety of applications.
46 config HEXAGON_PHYS_OFFSET
47         def_bool y
48         help
49           Platforms that don't load the kernel at zero set this.
51 config LOCKDEP_SUPPORT
52         def_bool y
54 config EARLY_PRINTK
55         def_bool y
57 config MMU
58         def_bool y
60 config NO_IOPORT_MAP
61         def_bool y
63 config GENERIC_CSUM
64         def_bool y
66 config GENERIC_HWEIGHT
67         def_bool y
69 config STACKTRACE_SUPPORT
70         def_bool y
71         select STACKTRACE
73 config GENERIC_BUG
74         def_bool y
75         depends on BUG
77 menu "Machine selection"
79 choice
80         prompt "System type"
81         default HEXAGON_COMET
83 config HEXAGON_COMET
84         bool "Comet Board"
85         help
86           Support for the Comet platform.
88 endchoice
90 config HEXAGON_ARCH_VERSION
91         int "Architecture version"
92         default 2
94 config CMDLINE
95         string "Default kernel command string"
96         default ""
97         help
98           On some platforms, there is currently no way for the boot loader
99           to pass arguments to the kernel. For these, you should supply some
100           command-line options at build time by entering them here.  At a
101           minimum, you should specify the memory size and the root device
102           (e.g., mem=64M root=/dev/nfs).
104 config SMP
105         bool "Multi-Processing support"
106         help
107           Enables SMP support in the kernel.  If unsure, say "Y"
109 config NR_CPUS
110         int "Maximum number of CPUs" if SMP
111         range 2 6 if SMP
112         default "1" if !SMP
113         default "6" if SMP
114         help
115           This allows you to specify the maximum number of CPUs which this
116           kernel will support.  The maximum supported value is 6 and the
117           minimum value which makes sense is 2.
119           This is purely to save memory - each supported CPU adds
120           approximately eight kilobytes to the kernel image.
122 source "kernel/Kconfig.hz"
124 endmenu