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