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