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