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