Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
1# SPDX-License-Identifier: GPL-2.0
2# Hexagon configuration
3comment "Linux Kernel Configuration for Hexagon"
4
5config 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 NO_IOPORT_MAP
34 select GENERIC_IOMAP
35 select GENERIC_IOREMAP
36 select GENERIC_SMP_IDLE_THREAD
37 select STACKTRACE_SUPPORT
38 select GENERIC_CLOCKEVENTS_BROADCAST
39 select LOCK_MM_AND_FIND_VMA
40 select MODULES_USE_ELF_RELA
41 select GENERIC_CPU_DEVICES
42 select ARCH_WANT_LD_ORPHAN_WARN
43 select TRACE_IRQFLAGS_SUPPORT
44 help
45 Qualcomm Hexagon is a processor architecture designed for high
46 performance and low power across a wide variety of applications.
47
48config HEXAGON_PHYS_OFFSET
49 def_bool y
50 help
51 Platforms that don't load the kernel at zero set this.
52
53config LOCKDEP_SUPPORT
54 def_bool y
55
56config EARLY_PRINTK
57 def_bool y
58
59config MMU
60 def_bool y
61
62config GENERIC_CSUM
63 def_bool y
64
65config GENERIC_HWEIGHT
66 def_bool y
67
68config STACKTRACE_SUPPORT
69 def_bool y
70 select STACKTRACE
71
72config GENERIC_BUG
73 def_bool y
74 depends on BUG
75
76menu "Machine selection"
77
78choice
79 prompt "System type"
80 default HEXAGON_COMET
81
82config HEXAGON_COMET
83 bool "Comet Board"
84 help
85 Support for the Comet platform.
86
87endchoice
88
89config HEXAGON_ARCH_VERSION
90 int "Architecture version"
91 default 2
92
93config CMDLINE
94 string "Default kernel command string"
95 default ""
96 help
97 On some platforms, there is currently no way for the boot loader
98 to pass arguments to the kernel. For these, you should supply some
99 command-line options at build time by entering them here. At a
100 minimum, you should specify the memory size and the root device
101 (e.g., mem=64M root=/dev/nfs).
102
103config SMP
104 bool "Multi-Processing support"
105 help
106 Enables SMP support in the kernel. If unsure, say "Y"
107
108config NR_CPUS
109 int "Maximum number of CPUs" if SMP
110 range 2 6 if SMP
111 default "1" if !SMP
112 default "6" if SMP
113 help
114 This allows you to specify the maximum number of CPUs which this
115 kernel will support. The maximum supported value is 6 and the
116 minimum value which makes sense is 2.
117
118 This is purely to save memory - each supported CPU adds
119 approximately eight kilobytes to the kernel image.
120
121source "kernel/Kconfig.hz"
122
123endmenu