Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/kaber/nf-2.6
[linux-2.6] / arch / mn10300 / Kconfig
1 #
2 # For a description of the syntax of this configuration file,
3 # see Documentation/kbuild/kconfig-language.txt.
4 #
5
6 mainmenu "Linux Kernel Configuration"
7
8 config MN10300
9         def_bool y
10         select HAVE_OPROFILE
11
12 config AM33
13         def_bool y
14
15 config MMU
16         def_bool y
17
18 config HIGHMEM
19         def_bool n
20
21 config NUMA
22         def_bool n
23
24 config UID16
25         def_bool y
26
27 config RWSEM_GENERIC_SPINLOCK
28         def_bool y
29
30 config RWSEM_XCHGADD_ALGORITHM
31         bool
32
33 config GENERIC_HARDIRQS_NO__DO_IRQ
34         def_bool y
35
36 config GENERIC_CALIBRATE_DELAY
37         def_bool y
38
39 config GENERIC_FIND_NEXT_BIT
40         def_bool y
41
42 config GENERIC_HWEIGHT
43         def_bool y
44
45 config GENERIC_TIME
46         def_bool y
47
48 config GENERIC_BUG
49         def_bool y
50
51 config QUICKLIST
52         def_bool y
53
54 config ARCH_HAS_ILOG2_U32
55         def_bool y
56
57 # Use the generic interrupt handling code in kernel/irq/
58 config GENERIC_HARDIRQS
59         def_bool y
60
61 config HOTPLUG_CPU
62         def_bool n
63
64 config HZ
65         int
66         default 1000
67
68 mainmenu "Matsushita MN10300/AM33 Kernel Configuration"
69
70 source "init/Kconfig"
71
72 source "kernel/Kconfig.freezer"
73
74
75 menu "Matsushita MN10300 system setup"
76
77 choice
78         prompt "Unit type"
79         default MN10300_UNIT_ASB2303
80         help
81           This option specifies board for which the kernel will be
82           compiled. It affects the external peripherals catered for.
83
84 config MN10300_UNIT_ASB2303
85         bool "ASB2303"
86
87 config MN10300_UNIT_ASB2305
88         bool "ASB2305"
89
90 endchoice
91
92 choice
93         prompt "Processor support"
94         default MN10300_PROC_MN103E010
95         help
96           This option specifies the processor for which the kernel will be
97           compiled. It affects the on-chip peripherals catered for.
98
99 config MN10300_PROC_MN103E010
100         bool "MN103E010"
101         depends on MN10300_UNIT_ASB2303 || MN10300_UNIT_ASB2305
102         select MN10300_PROC_HAS_TTYSM0
103         select MN10300_PROC_HAS_TTYSM1
104         select MN10300_PROC_HAS_TTYSM2
105
106 endchoice
107
108 choice
109         prompt "Processor core support"
110         default MN10300_CPU_AM33V2
111         help
112           This option specifies the processor core for which the kernel will be
113           compiled. It affects the instruction set used.
114
115 config MN10300_CPU_AM33V2
116         bool "AM33v2"
117
118 endchoice
119
120 config FPU
121         bool "FPU present"
122         default y
123         depends on MN10300_PROC_MN103E010
124
125 choice
126         prompt "CPU Caching mode"
127         default MN10300_CACHE_WBACK
128         help
129           This option determines the caching mode for the kernel.
130
131           Write-Back caching mode involves the all reads and writes causing
132           the affected cacheline to be read into the cache first before being
133           operated upon. Memory is not then updated by a write until the cache
134           is filled and a cacheline needs to be displaced from the cache to
135           make room. Only at that point is it written back.
136
137           Write-Through caching only fetches cachelines from memory on a
138           read. Writes always get written directly to memory. If the affected
139           cacheline is also in cache, it will be updated too.
140
141           The final option is to turn of caching entirely.
142
143 config MN10300_CACHE_WBACK
144         bool "Write-Back"
145
146 config MN10300_CACHE_WTHRU
147         bool "Write-Through"
148
149 config MN10300_CACHE_DISABLED
150         bool "Disabled"
151
152 endchoice
153
154 menu "Memory layout options"
155
156 config KERNEL_RAM_BASE_ADDRESS
157         hex "Base address of kernel RAM"
158         default "0x90000000"
159
160 config INTERRUPT_VECTOR_BASE
161         hex "Base address of vector table"
162         default "0x90000000"
163         help
164           The base address of the vector table will be programmed into
165           the TBR register. It must be on 16MiB address boundary.
166
167 config KERNEL_TEXT_ADDRESS
168         hex "Base address of kernel"
169         default "0x90001000"
170
171 config KERNEL_ZIMAGE_BASE_ADDRESS
172         hex "Base address of compressed vmlinux image"
173         default "0x90700000"
174
175 endmenu
176
177 config PREEMPT
178         bool "Preemptible Kernel"
179         help
180           This option reduces the latency of the kernel when reacting to
181           real-time or interactive events by allowing a low priority process to
182           be preempted even if it is in kernel mode executing a system call.
183           This allows applications to run more reliably even when the system is
184           under load.
185
186           Say Y here if you are building a kernel for a desktop, embedded
187           or real-time system.  Say N if you are unsure.
188
189 config MN10300_CURRENT_IN_E2
190         bool "Hold current task address in E2 register"
191         default y
192         help
193           This option removes the E2/R2 register from the set available to gcc
194           for normal use and instead uses it to store the address of the
195           current process's task_struct whilst in the kernel.
196
197           This means the kernel doesn't need to calculate the address each time
198           "current" is used (take SP, AND with mask and dereference pointer
199           just to get the address), and instead can just use E2+offset
200           addressing each time.
201
202           This has no effect on userspace.
203
204 config MN10300_USING_JTAG
205         bool "Using JTAG to debug kernel"
206         default y
207         help
208           This options indicates that JTAG will be used to debug the kernel. It
209           suppresses the use of certain hardware debugging features, such as
210           single-stepping, which are taken over completely by the JTAG unit.
211
212 config MN10300_RTC
213         bool "Using MN10300 RTC"
214         depends on MN10300_PROC_MN103E010
215         default n
216         help
217
218           This option enables support for the RTC, thus enabling time to be
219           tracked, even when system is powered down. This is available on-chip
220           on the MN103E010.
221
222 config MN10300_WD_TIMER
223         bool "Using MN10300 watchdog timer"
224         default y
225         help
226           This options indicates that the watchdog timer will be used.
227
228 config PCI
229         bool "Use PCI"
230         depends on MN10300_UNIT_ASB2305
231         default y
232         help
233           Some systems (such as the ASB2305) have PCI onboard. If you have one
234           of these boards and you wish to use the PCI facilities, say Y here.
235
236           The PCI-HOWTO, available from
237           <http://www.tldp.org/docs.html#howto>, contains valuable
238           information about which PCI hardware does work under Linux and which
239           doesn't.
240
241 source "drivers/pci/Kconfig"
242
243 source "drivers/pcmcia/Kconfig"
244
245 menu "MN10300 internal serial options"
246
247 config MN10300_PROC_HAS_TTYSM0
248         bool
249         default n
250
251 config MN10300_PROC_HAS_TTYSM1
252         bool
253         default n
254
255 config MN10300_PROC_HAS_TTYSM2
256         bool
257         default n
258
259 config MN10300_TTYSM
260         bool "Support for ttySM serial ports"
261         depends on MN10300
262         default y
263         select SERIAL_CORE
264         help
265           This option enables support for the on-chip serial ports that the
266           MN10300 has available.
267
268 config MN10300_TTYSM_CONSOLE
269         bool "Support for console on ttySM serial ports"
270         depends on MN10300_TTYSM
271         select SERIAL_CORE_CONSOLE
272         help
273           This option enables support for a console on the on-chip serial ports
274           that the MN10300 has available.
275
276 #
277 # /dev/ttySM0
278 #
279 config MN10300_TTYSM0
280         bool "Enable SIF0 (/dev/ttySM0)"
281         depends on MN10300_TTYSM && MN10300_PROC_HAS_TTYSM0
282         help
283           Enable access to SIF0 through /dev/ttySM0 or gdb-stub
284
285 choice
286         prompt "Select the timer to supply the clock for SIF0"
287         default MN10300_TTYSM0_TIMER8
288         depends on MN10300_TTYSM0
289
290 config MN10300_TTYSM0_TIMER8
291         bool "Use timer 8 (16-bit)"
292
293 config MN10300_TTYSM0_TIMER2
294         bool "Use timer 2 (8-bit)"
295
296 endchoice
297
298 #
299 # /dev/ttySM1
300 #
301 config MN10300_TTYSM1
302         bool "Enable SIF1 (/dev/ttySM1)"
303         depends on MN10300_TTYSM && MN10300_PROC_HAS_TTYSM1
304         help
305           Enable access to SIF1 through /dev/ttySM1 or gdb-stub
306
307 choice
308         prompt "Select the timer to supply the clock for SIF1"
309         default MN10300_TTYSM0_TIMER9
310         depends on MN10300_TTYSM1
311
312 config MN10300_TTYSM1_TIMER9
313         bool "Use timer 9 (16-bit)"
314
315 config MN10300_TTYSM1_TIMER3
316         bool "Use timer 3 (8-bit)"
317
318 endchoice
319
320 #
321 # /dev/ttySM2
322 #
323 config MN10300_TTYSM2
324         bool "Enable SIF2 (/dev/ttySM2)"
325         depends on MN10300_TTYSM && MN10300_PROC_HAS_TTYSM2
326         help
327           Enable access to SIF2 through /dev/ttySM2 or gdb-stub
328
329 choice
330         prompt "Select the timer to supply the clock for SIF2"
331         default MN10300_TTYSM0_TIMER10
332         depends on MN10300_TTYSM2
333
334 config MN10300_TTYSM2_TIMER10
335         bool "Use timer 10 (16-bit)"
336
337 endchoice
338
339 config MN10300_TTYSM2_CTS
340         bool "Enable the use of the CTS line /dev/ttySM2"
341         depends on MN10300_TTYSM2
342
343 endmenu
344
345 source "mm/Kconfig"
346
347 menu "Power management options"
348 source kernel/power/Kconfig
349 endmenu
350
351 endmenu
352
353
354 menu "Executable formats"
355
356 source "fs/Kconfig.binfmt"
357
358 endmenu
359
360 source "net/Kconfig"
361
362 source "drivers/Kconfig"
363
364 source "fs/Kconfig"
365
366 source "arch/mn10300/Kconfig.debug"
367
368 source "security/Kconfig"
369
370 source "crypto/Kconfig"
371
372 source "lib/Kconfig"