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