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