mm: migrate: check movability of hugepage in unmap_and_move_huge_page()
[linux-2.6-block.git] / arch / metag / Kconfig
CommitLineData
5633004c
JH
1config METAG
2 def_bool y
3 select EMBEDDED
4 select GENERIC_ATOMIC64
5 select GENERIC_CLOCKEVENTS
6 select GENERIC_IRQ_SHOW
5633004c
JH
7 select GENERIC_SMP_IDLE_THREAD
8 select HAVE_64BIT_ALIGNED_ACCESS
9 select HAVE_ARCH_TRACEHOOK
00512bdd 10 select HAVE_C_RECORDMCOUNT
5633004c 11 select HAVE_DEBUG_KMEMLEAK
00512bdd
JH
12 select HAVE_DYNAMIC_FTRACE
13 select HAVE_FTRACE_MCOUNT_RECORD
14 select HAVE_FUNCTION_TRACER
15 select HAVE_FUNCTION_TRACE_MCOUNT_TEST
5633004c 16 select HAVE_GENERIC_HARDIRQS
5633004c
JH
17 select HAVE_KERNEL_BZIP2
18 select HAVE_KERNEL_GZIP
19 select HAVE_KERNEL_LZO
20 select HAVE_KERNEL_XZ
21 select HAVE_MEMBLOCK
22 select HAVE_MEMBLOCK_NODE_MAP
23 select HAVE_MOD_ARCH_SPECIFIC
00e6c923 24 select HAVE_OPROFILE
903b20ad 25 select HAVE_PERF_EVENTS
5633004c 26 select HAVE_SYSCALL_TRACEPOINTS
b92021b0 27 select HAVE_UNDERSCORE_SYMBOL_PREFIX
5633004c
JH
28 select IRQ_DOMAIN
29 select MODULES_USE_ELF_RELA
30 select OF
31 select OF_EARLY_FLATTREE
32 select SPARSE_IRQ
d1a1dc0b 33 select HAVE_DEBUG_STACKOVERFLOW
5633004c 34
5633004c
JH
35config STACKTRACE_SUPPORT
36 def_bool y
37
38config LOCKDEP_SUPPORT
39 def_bool y
40
41config HAVE_LATENCYTOP_SUPPORT
42 def_bool y
43
44config RWSEM_GENERIC_SPINLOCK
45 def_bool y
46
47config RWSEM_XCHGADD_ALGORITHM
48 bool
49
50config GENERIC_HWEIGHT
51 def_bool y
52
53config GENERIC_CALIBRATE_DELAY
54 def_bool y
55
5633004c
JH
56config NO_IOPORT
57 def_bool y
58
59source "init/Kconfig"
60
61source "kernel/Kconfig.freezer"
62
63menu "Processor type and features"
64
65config MMU
66 def_bool y
67
68config STACK_GROWSUP
69 def_bool y
70
71config HOTPLUG_CPU
72 bool "Enable CPU hotplug support"
73 depends on SMP
74 help
75 Say Y here to allow turning CPUs off and on. CPUs can be
76 controlled through /sys/devices/system/cpu.
77
78 Say N if you want to disable CPU hotplug.
79
80config HIGHMEM
81 bool "High Memory Support"
82 help
83 The address space of Meta processors is only 4 Gigabytes large
84 and it has to accommodate user address space, kernel address
85 space as well as some memory mapped IO. That means that, if you
86 have a large amount of physical memory and/or IO, not all of the
87 memory can be "permanently mapped" by the kernel. The physical
88 memory that is not permanently mapped is called "high memory".
89
90 Depending on the selected kernel/user memory split, minimum
91 vmalloc space and actual amount of RAM, you may not need this
92 option which should result in a slightly faster kernel.
93
94 If unsure, say n.
95
96source "arch/metag/mm/Kconfig"
97
98source "arch/metag/Kconfig.soc"
99
100config METAG_META12
101 bool
102 help
103 Select this from the SoC config symbol to indicate that it contains a
104 Meta 1.2 core.
105
106config METAG_META21
107 bool
108 help
109 Select this from the SoC config symbol to indicate that it contains a
110 Meta 2.1 core.
111
112config SMP
113 bool "Symmetric multi-processing support"
114 depends on METAG_META21 && METAG_META21_MMU
115 select USE_GENERIC_SMP_HELPERS
116 help
117 This enables support for systems with more than one thread running
118 Linux. If you have a system with only one thread running Linux,
119 say N. Otherwise, say Y.
120
121config NR_CPUS
122 int "Maximum number of CPUs (2-4)" if SMP
123 range 2 4 if SMP
124 default "1" if !SMP
125 default "4" if SMP
126
127config METAG_SMP_WRITE_REORDERING
128 bool
129 help
130 This attempts to prevent cache-memory incoherence due to external
131 reordering of writes from different hardware threads when SMP is
132 enabled. It adds fences (system event 0) to smp_mb and smp_rmb in an
133 attempt to catch some of the cases, and also before writes to shared
134 memory in LOCK1 protected atomics and spinlocks.
135 This will not completely prevent cache incoherency on affected cores.
136
137config METAG_LNKGET_AROUND_CACHE
138 bool
139 depends on METAG_META21
140 help
141 This indicates that the LNKGET/LNKSET instructions go around the
142 cache, which requires some extra cache flushes when the memory needs
143 to be accessed by normal GET/SET instructions too.
144
145choice
146 prompt "Atomicity primitive"
147 default METAG_ATOMICITY_LNKGET
148 help
149 This option selects the mechanism for performing atomic operations.
150
151config METAG_ATOMICITY_IRQSOFF
152 depends on !SMP
153 bool "irqsoff"
154 help
155 This option disables interrupts to achieve atomicity. This mechanism
156 is not SMP-safe.
157
158config METAG_ATOMICITY_LNKGET
159 depends on METAG_META21
160 bool "lnkget/lnkset"
161 help
162 This option uses the LNKGET and LNKSET instructions to achieve
163 atomicity. LNKGET/LNKSET are load-link/store-conditional instructions.
164 Choose this option if your system requires low latency.
165
166config METAG_ATOMICITY_LOCK1
167 depends on SMP
168 bool "lock1"
169 help
170 This option uses the LOCK1 instruction for atomicity. This is mainly
171 provided as a debugging aid if the lnkget/lnkset atomicity primitive
172 isn't working properly.
173
174endchoice
175
176config METAG_FPU
177 bool "FPU Support"
178 depends on METAG_META21
179 default y
180 help
181 This option allows processes to use FPU hardware available with this
182 CPU. If this option is not enabled FPU registers will not be saved
183 and restored on context-switch.
184
185 If you plan on running programs which are compiled to use hard floats
186 say Y here.
187
188config METAG_DSP
189 bool "DSP Support"
190 help
191 This option allows processes to use DSP hardware available
192 with this CPU. If this option is not enabled DSP registers
193 will not be saved and restored on context-switch.
194
195 If you plan on running DSP programs say Y here.
196
197config METAG_PERFCOUNTER_IRQS
198 bool "PerfCounters interrupt support"
199 depends on METAG_META21
200 help
201 This option enables using interrupts to collect information from
202 Performance Counters. This option is supported in new META21
203 (starting from HTP265).
204
205 When disabled, Performance Counters information will be collected
206 based on Timer Interrupt.
207
00e6c923
JH
208config HW_PERF_EVENTS
209 def_bool METAG_PERFCOUNTER_IRQS && PERF_EVENTS
210
ae85ac71
JH
211config METAG_DA
212 bool "DA support"
213 help
214 Say Y if you plan to use a DA debug adapter with Linux. The presence
215 of the DA will be detected automatically at boot, so it is safe to say
216 Y to this option even when booting without a DA.
217
218 This enables support for services provided by DA JTAG debug adapters,
219 such as:
220 - communication over DA channels (such as the console driver).
221 - use of the DA filesystem.
222
5633004c
JH
223menu "Boot options"
224
225config METAG_BUILTIN_DTB
226 bool "Embed DTB in kernel image"
227 default y
228 help
229 Embeds a device tree binary in the kernel image.
230
231config METAG_BUILTIN_DTB_NAME
232 string "Built in DTB"
233 depends on METAG_BUILTIN_DTB
234 help
235 Set the name of the DTB to embed (leave blank to pick one
236 automatically based on kernel configuration).
237
238config CMDLINE_BOOL
239 bool "Default bootloader kernel arguments"
240
241config CMDLINE
242 string "Kernel command line"
243 depends on CMDLINE_BOOL
244 help
245 On some architectures there is currently no way for the boot loader
246 to pass arguments to the kernel. For these architectures, you should
247 supply some command-line options at build time by entering them
248 here.
249
250config CMDLINE_FORCE
251 bool "Force default kernel command string"
252 depends on CMDLINE_BOOL
253 help
254 Set this to have arguments from the default kernel command string
255 override those passed by the boot loader.
256
257endmenu
258
259source "kernel/Kconfig.preempt"
260
261source kernel/Kconfig.hz
262
263endmenu
264
265menu "Power management options"
266
267source kernel/power/Kconfig
268
269endmenu
270
271menu "Executable file formats"
272
273source "fs/Kconfig.binfmt"
274
275endmenu
276
277source "net/Kconfig"
278
279source "drivers/Kconfig"
280
281source "fs/Kconfig"
282
283source "arch/metag/Kconfig.debug"
284
285source "security/Kconfig"
286
287source "crypto/Kconfig"
288
289source "lib/Kconfig"