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