blob: 37adb2003033539a85bfbf22b29eba47d8ca247c [file] [log] [blame]
Greg Kroah-Hartmanb2441312017-11-01 15:07:57 +01001# SPDX-License-Identifier: GPL-2.0
Richard Kuoe95bf452011-10-31 18:55:58 -05002# Hexagon configuration
3comment "Linux Kernel Configuration for Hexagon"
4
5config HEXAGON
6 def_bool y
7 select HAVE_OPROFILE
Richard Kuoe95bf452011-10-31 18:55:58 -05008 # 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
Linus Walleijd4f80b82016-04-19 11:15:21 +020012 # select GPIOLIB
Richard Kuoe95bf452011-10-31 18:55:58 -050013 # select HAVE_CLK
Richard Kuoe95bf452011-10-31 18:55:58 -050014 # select GENERIC_PENDING_IRQ if SMP
15 select GENERIC_ATOMIC64
16 select HAVE_PERF_EVENTS
Richard Kuoe95bf452011-10-31 18:55:58 -050017 # 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
Christoph Hellwig86596f02018-04-05 09:44:52 +020022 select NEED_SG_DMA_LENGTH
Uwe Kleine-Königce816fa2014-04-07 15:39:19 -070023 select NO_IOPORT_MAP
Michael S. Tsirkin4673ca82011-11-24 14:54:28 +020024 select GENERIC_IOMAP
Thomas Gleixner3b0132c2012-04-20 13:05:51 +000025 select GENERIC_SMP_IDLE_THREAD
Richard Kuo5042ab92011-11-15 16:31:48 -060026 select STACKTRACE_SUPPORT
Anna-Maria Gleixner24a6f352012-05-18 16:45:47 +000027 select GENERIC_CLOCKEVENTS
28 select GENERIC_CLOCKEVENTS_BROADCAST
David Howells786d35d2012-09-28 14:31:03 +093029 select MODULES_USE_ELF_RELA
Richard Kuo53debcd2012-04-03 18:15:42 -050030 select GENERIC_CPU_DEVICES
Richard Kuoe95bf452011-10-31 18:55:58 -050031 ---help---
32 Qualcomm Hexagon is a processor architecture designed for high
33 performance and low power across a wide variety of applications.
34
Richard Kuo8f5a0b9d2013-03-22 16:05:40 -050035config HEXAGON_PHYS_OFFSET
36 def_bool y
37 ---help---
38 Platforms that don't load the kernel at zero set this.
39
Richard Kuoe95bf452011-10-31 18:55:58 -050040config FRAME_POINTER
41 def_bool y
42
43config LOCKDEP_SUPPORT
44 def_bool y
45
46config PCI
47 def_bool n
48
49config EARLY_PRINTK
50 def_bool y
51
Richard Kuoe95bf452011-10-31 18:55:58 -050052config MMU
53 def_bool y
54
55config TRACE_IRQFLAGS_SUPPORT
56 def_bool y
57
58config GENERIC_CSUM
59 def_bool y
60
61#
62# Use the generic interrupt handling code in kernel/irq/:
63#
64config GENERIC_IRQ_PROBE
65 def_bool y
66
Richard Kuoe95bf452011-10-31 18:55:58 -050067config RWSEM_GENERIC_SPINLOCK
68 def_bool n
69
70config RWSEM_XCHGADD_ALGORITHM
71 def_bool y
72
Richard Kuoe95bf452011-10-31 18:55:58 -050073config GENERIC_HWEIGHT
74 def_bool y
75
Richard Kuoe95bf452011-10-31 18:55:58 -050076config STACKTRACE_SUPPORT
77 def_bool y
78 select STACKTRACE
79
80config GENERIC_BUG
81 def_bool y
82 depends on BUG
83
Richard Kuoe95bf452011-10-31 18:55:58 -050084menu "Machine selection"
85
86choice
87 prompt "System type"
Richard Kuo5042ab92011-11-15 16:31:48 -060088 default HEXAGON_COMET
Richard Kuoe95bf452011-10-31 18:55:58 -050089
90config HEXAGON_COMET
91 bool "Comet Board"
Richard Kuoe95bf452011-10-31 18:55:58 -050092 ---help---
93 Support for the Comet platform.
94
95endchoice
96
Richard Kuo66b03db2012-03-27 17:37:33 -050097config HEXAGON_ARCH_VERSION
98 int "Architecture version"
99 default 2
100
Richard Kuoe95bf452011-10-31 18:55:58 -0500101config 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
Richard Kuoe95bf452011-10-31 18:55:58 -0500111config SMP
112 bool "Multi-Processing support"
113 ---help---
114 Enables SMP support in the kernel. If unsure, say "Y"
115
116config 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
129choice
130 prompt "Kernel page size"
131 default PAGE_SIZE_4KB
132 ---help---
133 Changes the default page size; use with caution.
134
135config PAGE_SIZE_4KB
136 bool "4KB"
137
138config PAGE_SIZE_16KB
139 bool "16KB"
140
141config PAGE_SIZE_64KB
142 bool "64KB"
143
144config PAGE_SIZE_256KB
145 bool "256KB"
146
147endchoice
148
149source "mm/Kconfig"
150
151source "kernel/Kconfig.hz"
Richard Kuoe95bf452011-10-31 18:55:58 -0500152
Richard Kuoe95bf452011-10-31 18:55:58 -0500153endmenu
154
155source "init/Kconfig"
Chen Gang57a1a192013-08-13 16:01:02 -0700156source "kernel/Kconfig.freezer"
Richard Kuoe95bf452011-10-31 18:55:58 -0500157source "drivers/Kconfig"
158source "fs/Kconfig"
159
160menu "Executable File Formats"
161source "fs/Kconfig.binfmt"
162endmenu
163
164source "net/Kconfig"
165source "security/Kconfig"
166source "crypto/Kconfig"
167source "lib/Kconfig"
168
169menu "Kernel hacking"
170source "lib/Kconfig.debug"
171endmenu