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