Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph...
[cascardo/linux.git] / arch / hexagon / Kconfig
1 # Hexagon configuration
2 comment "Linux Kernel Configuration for Hexagon"
3
4 config HEXAGON
5         def_bool y
6         select HAVE_OPROFILE
7         select USE_GENERIC_SMP_HELPERS if SMP
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
12         # select ARCH_WANT_OPTIONAL_GPIOLIB
13         # select ARCH_REQUIRE_GPIOLIB
14         # select HAVE_CLK
15         # select IRQ_PER_CPU
16         # select GENERIC_PENDING_IRQ if SMP
17         select HAVE_IRQ_WORK
18         select GENERIC_ATOMIC64
19         select HAVE_PERF_EVENTS
20         select HAVE_GENERIC_HARDIRQS
21         # GENERIC_ALLOCATOR is used by dma_alloc_coherent()
22         select GENERIC_ALLOCATOR
23         select GENERIC_IRQ_SHOW
24         select HAVE_ARCH_KGDB
25         select HAVE_ARCH_TRACEHOOK
26         select NO_IOPORT
27         select GENERIC_IOMAP
28         select GENERIC_SMP_IDLE_THREAD
29         select STACKTRACE_SUPPORT
30         select KTIME_SCALAR
31         select GENERIC_CLOCKEVENTS
32         select GENERIC_CLOCKEVENTS_BROADCAST
33         select MODULES_USE_ELF_RELA
34         ---help---
35           Qualcomm Hexagon is a processor architecture designed for high
36           performance and low power across a wide variety of applications.
37
38 config HEXAGON_ARCH_V1
39         bool
40
41 config HEXAGON_ARCH_V2
42         bool
43
44 config HEXAGON_ARCH_V3
45         bool
46
47 config HEXAGON_ARCH_V4
48         bool
49
50 config FRAME_POINTER
51         def_bool y
52
53 config LOCKDEP_SUPPORT
54         def_bool y
55
56 config PCI
57         def_bool n
58
59 config EARLY_PRINTK
60         def_bool y
61
62 config MMU
63         def_bool y
64
65 config TRACE_IRQFLAGS_SUPPORT
66         def_bool y
67
68 config GENERIC_CSUM
69         def_bool y
70
71 #
72 # Use the generic interrupt handling code in kernel/irq/:
73 #
74 config GENERIC_IRQ_PROBE
75         def_bool y
76
77 config NEED_SG_DMA_LENGTH
78         def_bool y
79
80 config RWSEM_GENERIC_SPINLOCK
81         def_bool n
82
83 config RWSEM_XCHGADD_ALGORITHM
84         def_bool y
85
86 config GENERIC_FIND_NEXT_BIT
87         def_bool y
88
89 config GENERIC_HWEIGHT
90         def_bool y
91
92 config STACKTRACE_SUPPORT
93         def_bool y
94         select STACKTRACE
95
96 config GENERIC_BUG
97         def_bool y
98         depends on BUG
99
100 menu "Machine selection"
101
102 choice
103         prompt "System type"
104         default HEXAGON_COMET
105
106 config HEXAGON_COMET
107         bool "Comet Board"
108         select HEXAGON_ARCH_V2
109         ---help---
110           Support for the Comet platform.
111
112 endchoice
113
114 config HEXAGON_VM
115         def_bool y
116
117 config CMDLINE
118         string "Default kernel command string"
119         default ""
120         help
121           On some platforms, there is currently no way for the boot loader
122           to pass arguments to the kernel. For these, you should supply some
123           command-line options at build time by entering them here.  At a
124           minimum, you should specify the memory size and the root device
125           (e.g., mem=64M root=/dev/nfs).
126
127 config HEXAGON_ANGEL_TRAPS
128         bool "Use Angel Traps"
129         default n
130         ---help---
131           Enable angel debug traps (for printk's).
132
133 config SMP
134         bool "Multi-Processing support"
135         ---help---
136           Enables SMP support in the kernel.  If unsure, say "Y"
137
138 config NR_CPUS
139         int "Maximum number of CPUs" if SMP
140         range 2 6 if SMP
141         default "1" if !SMP
142         default "6" if SMP
143         ---help---
144           This allows you to specify the maximum number of CPUs which this
145           kernel will support.  The maximum supported value is 6 and the
146           minimum value which makes sense is 2.
147
148           This is purely to save memory - each supported CPU adds
149           approximately eight kilobytes to the kernel image.
150
151 choice
152         prompt "Kernel page size"
153         default PAGE_SIZE_4KB
154         ---help---
155           Changes the default page size; use with caution.
156
157 config PAGE_SIZE_4KB
158         bool "4KB"
159
160 config PAGE_SIZE_16KB
161         bool "16KB"
162
163 config PAGE_SIZE_64KB
164         bool "64KB"
165
166 config PAGE_SIZE_256KB
167         bool "256KB"
168
169 endchoice
170
171 source "mm/Kconfig"
172
173 source "kernel/Kconfig.hz"
174
175 config GENERIC_GPIO
176         def_bool n
177
178 endmenu
179
180 source "init/Kconfig"
181 source "drivers/Kconfig"
182 source "fs/Kconfig"
183
184 menu "Executable File Formats"
185 source "fs/Kconfig.binfmt"
186 endmenu
187
188 source "net/Kconfig"
189 source "security/Kconfig"
190 source "crypto/Kconfig"
191 source "lib/Kconfig"
192
193 menu "Kernel hacking"
194 source "lib/Kconfig.debug"
195 endmenu