Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
[linux-btrfs-devel.git] / arch / m32r / Kconfig
blob6c4e9aaa70c195c57cfedc49281e941a53649e1d
1 config M32R
2         bool
3         default y
4         select HAVE_IDE
5         select HAVE_OPROFILE
6         select INIT_ALL_POSSIBLE
7         select HAVE_KERNEL_GZIP
8         select HAVE_KERNEL_BZIP2
9         select HAVE_KERNEL_LZMA
10         select HAVE_GENERIC_HARDIRQS
11         select GENERIC_IRQ_PROBE
12         select GENERIC_IRQ_SHOW
13         select GENERIC_ATOMIC64
15 config SBUS
16         bool
18 config GENERIC_ISA_DMA
19         bool
20         default y
22 config ZONE_DMA
23         bool
24         default y
26 config NO_IOPORT
27         def_bool y
29 config NO_DMA
30         def_bool y
32 config HZ
33         int
34         default 100
36 config ARCH_USES_GETTIMEOFFSET
37         def_bool y
39 source "init/Kconfig"
41 source "kernel/Kconfig.freezer"
44 menu "Processor type and features"
46 choice
47         prompt "Platform Type"
48         default PLAT_MAPPI
50 config PLAT_MAPPI
51         bool "Mappi-I"
52         help
53           The Mappi-I is an FPGA board for SOC (System-On-a-Chip) prototyping.
54           You can operate a Linux system on this board by using an M32R
55           softmacro core, which is a fully-synthesizable functional model
56           described in Verilog-HDL.
58           The Mappi-I board was the first platform, which had been used
59           to port and develop a Linux system for the M32R processor.
60           Currently, the Mappi-II, an heir to the Mappi-I, is available.
62 config PLAT_USRV
63         bool "uServer"
64         select PLAT_HAS_INT1ICU
66 config PLAT_M32700UT
67         bool "M32700UT"
68         select PLAT_HAS_INT0ICU
69         select PLAT_HAS_INT1ICU
70         select PLAT_HAS_INT2ICU
71         help
72           The M3T-M32700UT is an evaluation board based on uT-Engine
73           specification.  This board has an M32700 (Chaos) evaluation chip.
74           You can say Y for SMP, because the M32700 is a single chip
75           multiprocessor.
77 config PLAT_OPSPUT
78         bool "OPSPUT"
79         select PLAT_HAS_INT0ICU
80         select PLAT_HAS_INT1ICU
81         select PLAT_HAS_INT2ICU
82         help
83           The OPSPUT is an evaluation board based on uT-Engine
84           specification.  This board has a OPSP-REP chip.
86 config PLAT_OAKS32R
87         bool "OAKS32R"
88         help
89           The OAKS32R is a tiny, inexpensive evaluation board.
90           Please note that if you say Y here and choose chip "M32102",
91           say N for MMU and select a no-MMU version kernel, otherwise
92           a kernel with MMU support will not work, because the M32102
93           is a microcontroller for embedded systems and it has no MMU.
95 config PLAT_MAPPI2
96        bool "Mappi-II(M3A-ZA36/M3A-ZA52)"
98 config PLAT_MAPPI3
99        bool "Mappi-III(M3A-2170)"
101 config PLAT_M32104UT
102         bool "M32104UT"
103         select PLAT_HAS_INT1ICU
104         help
105           The M3T-M32104UT is an reference board based on uT-Engine
106           specification.  This board has a M32104 chip.
108 endchoice
110 choice
111         prompt "Processor family"
112         default CHIP_M32700
114 config CHIP_M32700
115         bool "M32700 (Chaos)"
117 config CHIP_M32102
118         bool "M32102"
120 config CHIP_M32104
121         bool "M32104"
122         depends on PLAT_M32104UT
124 config CHIP_VDEC2
125        bool "VDEC2"
127 config CHIP_OPSP
128        bool "OPSP"
130 endchoice
132 config MMU
133         bool "Support for memory management hardware"
134         depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
135         default y
137 config TLB_ENTRIES
138        int "TLB Entries"
139        depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
140        default 32 if CHIP_M32700 || CHIP_OPSP
141        default 16 if CHIP_VDEC2
144 config ISA_M32R
145         bool
146         depends on CHIP_M32102 || CHIP_M32104
147         default y
149 config ISA_M32R2
150         bool
151         depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
152         default y
154 config ISA_DSP_LEVEL2
155         bool
156         depends on CHIP_M32700 || CHIP_OPSP
157         default y
159 config ISA_DUAL_ISSUE
160         bool
161         depends on CHIP_M32700 || CHIP_OPSP
162         default y
164 config PLAT_HAS_INT0ICU
165         bool
166         default n
168 config PLAT_HAS_INT1ICU
169         bool
170         default n
172 config PLAT_HAS_INT2ICU
173         bool
174         default n
176 config BUS_CLOCK
177         int "Bus Clock [Hz] (integer)"
178         default "70000000" if PLAT_MAPPI
179         default "25000000" if PLAT_USRV
180         default "50000000" if PLAT_MAPPI3
181         default "50000000" if PLAT_M32700UT
182         default "50000000" if PLAT_OPSPUT
183         default "54000000" if PLAT_M32104UT
184         default "33333333" if PLAT_OAKS32R
185         default "20000000" if PLAT_MAPPI2
187 config TIMER_DIVIDE
188         int "Timer divider (integer)"
189         default "128"
191 config CPU_LITTLE_ENDIAN
192         bool "Generate little endian code"
193         default n
195 config MEMORY_START
196         hex "Physical memory start address (hex)"
197         default "08000000" if PLAT_MAPPI || PLAT_MAPPI2 || PLAT_MAPPI3
198         default "08000000" if PLAT_USRV
199         default "08000000" if PLAT_M32700UT
200         default "08000000" if PLAT_OPSPUT
201         default "04000000" if PLAT_M32104UT
202         default "01000000" if PLAT_OAKS32R
204 config MEMORY_SIZE
205         hex "Physical memory size (hex)"
206         default "08000000" if PLAT_MAPPI3
207         default "04000000" if PLAT_MAPPI || PLAT_MAPPI2
208         default "02000000" if PLAT_USRV
209         default "01000000" if PLAT_M32700UT
210         default "01000000" if PLAT_OPSPUT
211         default "01000000" if PLAT_M32104UT
212         default "00800000" if PLAT_OAKS32R
214 config ARCH_DISCONTIGMEM_ENABLE
215         bool "Internal RAM Support"
216         depends on CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104
217         default y
219 source "mm/Kconfig"
221 config IRAM_START
222         hex "Internal memory start address (hex)"
223         default "00f00000" if !CHIP_M32104
224         default "00700000" if CHIP_M32104
225         depends on (CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104) && DISCONTIGMEM
227 config IRAM_SIZE
228         hex "Internal memory size (hex)"
229         depends on (CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104) && DISCONTIGMEM
230         default "00080000" if CHIP_M32700
231         default "00010000" if CHIP_M32102 || CHIP_OPSP || CHIP_M32104
232         default "00008000" if CHIP_VDEC2
235 # Define implied options from the CPU selection here
238 config GENERIC_LOCKBREAK
239         bool
240         default y
241         depends on SMP && PREEMPT
243 config RWSEM_GENERIC_SPINLOCK
244         bool
245         depends on M32R
246         default y
248 config RWSEM_XCHGADD_ALGORITHM
249         bool
250         default n
252 config ARCH_HAS_ILOG2_U32
253         bool
254         default n
256 config ARCH_HAS_ILOG2_U64
257         bool
258         default n
260 config GENERIC_HWEIGHT
261         bool
262         default y
264 config GENERIC_CALIBRATE_DELAY
265         bool
266         default y
268 config SCHED_OMIT_FRAME_POINTER
269         bool
270         default y
272 source "kernel/Kconfig.preempt"
274 config SMP
275         bool "Symmetric multi-processing support"
276         select USE_GENERIC_SMP_HELPERS
277         ---help---
278           This enables support for systems with more than one CPU. If you have
279           a system with only one CPU, like most personal computers, say N. If
280           you have a system with more than one CPU, say Y.
282           If you say N here, the kernel will run on single and multiprocessor
283           machines, but will use only one CPU of a multiprocessor machine. If
284           you say Y here, the kernel will run on many, but not all,
285           singleprocessor machines. On a singleprocessor machine, the kernel
286           will run faster if you say N here.
288           People using multiprocessor machines who say Y here should also say
289           Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
290           Management" code will be disabled if you say Y here.
292           See also the SMP-HOWTO available at
293           <http://tldp.org/HOWTO/SMP-HOWTO.html>.
295           If you don't know what to do here, say N.
297 config CHIP_M32700_TS1
298         bool "Workaround code for the M32700 TS1 chip's bug"
299         depends on (CHIP_M32700 && SMP)
300         default n
302 config NR_CPUS
303         int "Maximum number of CPUs (2-32)"
304         range 2 32
305         depends on SMP
306         default "2"
307         help
308           This allows you to specify the maximum number of CPUs which this
309           kernel will support.  The maximum supported value is 32 and the
310           minimum value which makes sense is 2.
312           This is purely to save memory - each supported CPU adds
313           approximately eight kilobytes to the kernel image.
315 # Common NUMA Features
316 config NUMA
317         bool "Numa Memory Allocation Support"
318         depends on SMP && BROKEN
319         default n
321 config NODES_SHIFT
322         int
323         default "1"
324         depends on NEED_MULTIPLE_NODES
326 # turning this on wastes a bunch of space.
327 # Summit needs it only when NUMA is on
328 config BOOT_IOREMAP
329         bool
330         depends on NUMA
331         default n
333 endmenu
336 menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)"
338 config PCI
339         bool "PCI support"
340         depends on BROKEN
341         default n
342         help
343           Find out whether you have a PCI motherboard. PCI is the name of a
344           bus system, i.e. the way the CPU talks to the other stuff inside
345           your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
346           VESA. If you have PCI, say Y, otherwise N.
348 choice
349         prompt "PCI access mode"
350         depends on PCI
351         default PCI_GOANY
353 config PCI_GOBIOS
354         bool "BIOS"
355         ---help---
356           On PCI systems, the BIOS can be used to detect the PCI devices and
357           determine their configuration. However, some old PCI motherboards
358           have BIOS bugs and may crash if this is done. Also, some embedded
359           PCI-based systems don't have any BIOS at all. Linux can also try to
360           detect the PCI hardware directly without using the BIOS.
362           With this option, you can specify how Linux should detect the PCI
363           devices. If you choose "BIOS", the BIOS will be used, if you choose
364           "Direct", the BIOS won't be used, and if you choose "Any", the
365           kernel will try the direct access method and falls back to the BIOS
366           if that doesn't work. If unsure, go with the default, which is
367           "Any".
369 config PCI_GODIRECT
370         bool "Direct"
372 config PCI_GOANY
373         bool "Any"
375 endchoice
377 config PCI_BIOS
378         bool
379         depends on PCI && (PCI_GOBIOS || PCI_GOANY)
380         default y
382 config PCI_DIRECT
383         bool
384         depends on PCI && (PCI_GODIRECT || PCI_GOANY)
385         default y
387 source "drivers/pci/Kconfig"
389 config ISA
390         bool
392 source "drivers/pcmcia/Kconfig"
394 source "drivers/pci/hotplug/Kconfig"
396 endmenu
399 menu "Executable file formats"
401 source "fs/Kconfig.binfmt"
403 endmenu
405 source "net/Kconfig"
407 source "drivers/Kconfig"
409 source "fs/Kconfig"
411 source "arch/m32r/Kconfig.debug"
413 source "security/Kconfig"
415 source "crypto/Kconfig"
417 source "lib/Kconfig"