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