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