blob: 667cfc511cf99972b6e0e9d75bee22b7d534d823 [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
Yury Norov942fa982018-05-16 11:18:49 +03007 select ARCH_32BIT_OFF_T
Christoph Hellwige0a93172018-08-20 13:54:29 +02008 select ARCH_HAS_SYNC_DMA_FOR_DEVICE
Christoph Hellwig87a4c372018-07-31 13:39:32 +02009 select ARCH_NO_PREEMPT
Richard Kuoe95bf452011-10-31 18:55:58 -050010 select HAVE_OPROFILE
Richard Kuoe95bf452011-10-31 18:55:58 -050011 # Other pending projects/to-do items.
12 # select HAVE_REGS_AND_STACK_ACCESS_API
13 # select HAVE_HW_BREAKPOINT if PERF_EVENTS
14 # select ARCH_HAS_CPU_IDLE_WAIT
Linus Walleijd4f80b82016-04-19 11:15:21 +020015 # select GPIOLIB
Richard Kuoe95bf452011-10-31 18:55:58 -050016 # select HAVE_CLK
Richard Kuoe95bf452011-10-31 18:55:58 -050017 # select GENERIC_PENDING_IRQ if SMP
18 select GENERIC_ATOMIC64
19 select HAVE_PERF_EVENTS
Richard Kuoe95bf452011-10-31 18:55:58 -050020 # GENERIC_ALLOCATOR is used by dma_alloc_coherent()
21 select GENERIC_ALLOCATOR
22 select GENERIC_IRQ_SHOW
23 select HAVE_ARCH_KGDB
24 select HAVE_ARCH_TRACEHOOK
Christoph Hellwig86596f02018-04-05 09:44:52 +020025 select NEED_SG_DMA_LENGTH
Uwe Kleine-Königce816fa2014-04-07 15:39:19 -070026 select NO_IOPORT_MAP
Michael S. Tsirkin4673ca82011-11-24 14:54:28 +020027 select GENERIC_IOMAP
Thomas Gleixner3b0132c2012-04-20 13:05:51 +000028 select GENERIC_SMP_IDLE_THREAD
Richard Kuo5042ab92011-11-15 16:31:48 -060029 select STACKTRACE_SUPPORT
Anna-Maria Gleixner24a6f352012-05-18 16:45:47 +000030 select GENERIC_CLOCKEVENTS
31 select GENERIC_CLOCKEVENTS_BROADCAST
David Howells786d35d2012-09-28 14:31:03 +093032 select MODULES_USE_ELF_RELA
Richard Kuo53debcd2012-04-03 18:15:42 -050033 select GENERIC_CPU_DEVICES
Masahiro Yamadaa7f7f622020-06-14 01:50:22 +090034 help
Richard Kuoe95bf452011-10-31 18:55:58 -050035 Qualcomm Hexagon is a processor architecture designed for high
36 performance and low power across a wide variety of applications.
37
Richard Kuo8f5a0b9d2013-03-22 16:05:40 -050038config HEXAGON_PHYS_OFFSET
39 def_bool y
Masahiro Yamadaa7f7f622020-06-14 01:50:22 +090040 help
Richard Kuo8f5a0b9d2013-03-22 16:05:40 -050041 Platforms that don't load the kernel at zero set this.
42
Richard Kuoe95bf452011-10-31 18:55:58 -050043config FRAME_POINTER
44 def_bool y
45
46config LOCKDEP_SUPPORT
47 def_bool y
48
Richard Kuoe95bf452011-10-31 18:55:58 -050049config 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 GENERIC_HWEIGHT
68 def_bool y
69
Richard Kuoe95bf452011-10-31 18:55:58 -050070config STACKTRACE_SUPPORT
71 def_bool y
72 select STACKTRACE
73
74config GENERIC_BUG
75 def_bool y
76 depends on BUG
77
Richard Kuoe95bf452011-10-31 18:55:58 -050078menu "Machine selection"
79
80choice
81 prompt "System type"
Richard Kuo5042ab92011-11-15 16:31:48 -060082 default HEXAGON_COMET
Richard Kuoe95bf452011-10-31 18:55:58 -050083
84config HEXAGON_COMET
85 bool "Comet Board"
Masahiro Yamadaa7f7f622020-06-14 01:50:22 +090086 help
Richard Kuoe95bf452011-10-31 18:55:58 -050087 Support for the Comet platform.
88
89endchoice
90
Richard Kuo66b03db2012-03-27 17:37:33 -050091config HEXAGON_ARCH_VERSION
92 int "Architecture version"
93 default 2
94
Richard Kuoe95bf452011-10-31 18:55:58 -050095config CMDLINE
96 string "Default kernel command string"
97 default ""
98 help
99 On some platforms, there is currently no way for the boot loader
100 to pass arguments to the kernel. For these, you should supply some
101 command-line options at build time by entering them here. At a
102 minimum, you should specify the memory size and the root device
103 (e.g., mem=64M root=/dev/nfs).
104
Richard Kuoe95bf452011-10-31 18:55:58 -0500105config SMP
106 bool "Multi-Processing support"
Masahiro Yamadaa7f7f622020-06-14 01:50:22 +0900107 help
Richard Kuoe95bf452011-10-31 18:55:58 -0500108 Enables SMP support in the kernel. If unsure, say "Y"
109
110config NR_CPUS
111 int "Maximum number of CPUs" if SMP
112 range 2 6 if SMP
113 default "1" if !SMP
114 default "6" if SMP
Masahiro Yamadaa7f7f622020-06-14 01:50:22 +0900115 help
Richard Kuoe95bf452011-10-31 18:55:58 -0500116 This allows you to specify the maximum number of CPUs which this
117 kernel will support. The maximum supported value is 6 and the
118 minimum value which makes sense is 2.
119
120 This is purely to save memory - each supported CPU adds
121 approximately eight kilobytes to the kernel image.
122
123choice
124 prompt "Kernel page size"
125 default PAGE_SIZE_4KB
Masahiro Yamadaa7f7f622020-06-14 01:50:22 +0900126 help
Richard Kuoe95bf452011-10-31 18:55:58 -0500127 Changes the default page size; use with caution.
128
129config PAGE_SIZE_4KB
130 bool "4KB"
131
132config PAGE_SIZE_16KB
133 bool "16KB"
134
135config PAGE_SIZE_64KB
136 bool "64KB"
137
138config PAGE_SIZE_256KB
139 bool "256KB"
140
141endchoice
142
Richard Kuoe95bf452011-10-31 18:55:58 -0500143source "kernel/Kconfig.hz"
Richard Kuoe95bf452011-10-31 18:55:58 -0500144
Richard Kuoe95bf452011-10-31 18:55:58 -0500145endmenu