kconfig: include common Kconfig files from top-level Kconfig
[linux-2.6-block.git] / arch / hexagon / Kconfig
CommitLineData
b2441318 1# SPDX-License-Identifier: GPL-2.0
e95bf452
RK
2# Hexagon configuration
3comment "Linux Kernel Configuration for Hexagon"
4
5config HEXAGON
6 def_bool y
7 select HAVE_OPROFILE
e95bf452
RK
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
d4f80b81 12 # select GPIOLIB
e95bf452 13 # select HAVE_CLK
e95bf452
RK
14 # select GENERIC_PENDING_IRQ if SMP
15 select GENERIC_ATOMIC64
16 select HAVE_PERF_EVENTS
e95bf452
RK
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
86596f0a 22 select NEED_SG_DMA_LENGTH
ce816fa8 23 select NO_IOPORT_MAP
4673ca8e 24 select GENERIC_IOMAP
3b0132ce 25 select GENERIC_SMP_IDLE_THREAD
5042ab91 26 select STACKTRACE_SUPPORT
24a6f35e
AMG
27 select GENERIC_CLOCKEVENTS
28 select GENERIC_CLOCKEVENTS_BROADCAST
786d35d4 29 select MODULES_USE_ELF_RELA
53debcd5 30 select GENERIC_CPU_DEVICES
e95bf452
RK
31 ---help---
32 Qualcomm Hexagon is a processor architecture designed for high
33 performance and low power across a wide variety of applications.
34
8f5a0b9d
RK
35config HEXAGON_PHYS_OFFSET
36 def_bool y
37 ---help---
38 Platforms that don't load the kernel at zero set this.
39
e95bf452
RK
40config 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
e95bf452
RK
52config 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
e95bf452
RK
66
67config RWSEM_GENERIC_SPINLOCK
68 def_bool n
69
70config RWSEM_XCHGADD_ALGORITHM
71 def_bool y
72
e95bf452
RK
73config GENERIC_HWEIGHT
74 def_bool y
75
e95bf452
RK
76config STACKTRACE_SUPPORT
77 def_bool y
78 select STACKTRACE
79
80config GENERIC_BUG
81 def_bool y
82 depends on BUG
83
e95bf452
RK
84menu "Machine selection"
85
86choice
87 prompt "System type"
5042ab91 88 default HEXAGON_COMET
e95bf452
RK
89
90config HEXAGON_COMET
91 bool "Comet Board"
e95bf452
RK
92 ---help---
93 Support for the Comet platform.
94
95endchoice
96
66b03dbf
RK
97config HEXAGON_ARCH_VERSION
98 int "Architecture version"
99 default 2
100
e95bf452
RK
101config 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
e95bf452
RK
111config 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
e95bf452 149source "kernel/Kconfig.hz"
e95bf452 150
e95bf452
RK
151endmenu
152
e95bf452
RK
153menu "Kernel hacking"
154source "lib/Kconfig.debug"
155endmenu