1comment "Machine Types"
2
3if M68KCLASSIC
4
5config AMIGA
6	bool "Amiga support"
7	depends on MMU
8	select MMU_MOTOROLA if MMU
9	help
10	  This option enables support for the Amiga series of computers. If
11	  you plan to use this kernel on an Amiga, say Y here and browse the
12	  material available in <file:Documentation/m68k>; otherwise say N.
13
14config ATARI
15	bool "Atari support"
16	depends on MMU
17	select MMU_MOTOROLA if MMU
18	help
19	  This option enables support for the 68000-based Atari series of
20	  computers (including the TT, Falcon and Medusa). If you plan to use
21	  this kernel on an Atari, say Y here and browse the material
22	  available in <file:Documentation/m68k>; otherwise say N.
23
24config MAC
25	bool "Macintosh support"
26	depends on MMU
27	select MMU_MOTOROLA if MMU
28	help
29	  This option enables support for the Apple Macintosh series of
30	  computers (yes, there is experimental support now, at least for part
31	  of the series).
32
33	  Say N unless you're willing to code the remaining necessary support.
34	  ;)
35
36config APOLLO
37	bool "Apollo support"
38	depends on MMU
39	select MMU_MOTOROLA if MMU
40	help
41	  Say Y here if you want to run Linux on an MC680x0-based Apollo
42	  Domain workstation such as the DN3500.
43
44config VME
45	bool "VME (Motorola and BVM) support"
46	depends on MMU
47	select MMU_MOTOROLA if MMU
48	help
49	  Say Y here if you want to build a kernel for a 680x0 based VME
50	  board.  Boards currently supported include Motorola boards MVME147,
51	  MVME162, MVME166, MVME167, MVME172, and MVME177.  BVME4000 and
52	  BVME6000 boards from BVM Ltd are also supported.
53
54config MVME147
55	bool "MVME147 support"
56	depends on MMU
57	depends on VME
58	help
59	  Say Y to include support for early Motorola VME boards.  This will
60	  build a kernel which can run on MVME147 single-board computers.  If
61	  you select this option you will have to select the appropriate
62	  drivers for SCSI, Ethernet and serial ports later on.
63
64config MVME16x
65	bool "MVME162, 166 and 167 support"
66	depends on MMU
67	depends on VME
68	help
69	  Say Y to include support for Motorola VME boards.  This will build a
70	  kernel which can run on MVME162, MVME166, MVME167, MVME172, and
71	  MVME177 boards.  If you select this option you will have to select
72	  the appropriate drivers for SCSI, Ethernet and serial ports later
73	  on.
74
75config BVME6000
76	bool "BVME4000 and BVME6000 support"
77	depends on MMU
78	depends on VME
79	help
80	  Say Y to include support for VME boards from BVM Ltd.  This will
81	  build a kernel which can run on BVME4000 and BVME6000 boards.  If
82	  you select this option you will have to select the appropriate
83	  drivers for SCSI, Ethernet and serial ports later on.
84
85config HP300
86	bool "HP9000/300 and HP9000/400 support"
87	depends on MMU
88	select MMU_MOTOROLA if MMU
89	help
90	  This option enables support for the HP9000/300 and HP9000/400 series
91	  of workstations. Support for these machines is still somewhat
92	  experimental. If you plan to try to use the kernel on such a machine
93	  say Y here.
94	  Everybody else says N.
95
96config SUN3X
97	bool "Sun3x support"
98	depends on MMU
99	select MMU_MOTOROLA if MMU
100	select M68030
101	help
102	  This option enables support for the Sun 3x series of workstations.
103	  Be warned that this support is very experimental.
104	  Note that Sun 3x kernels are not compatible with Sun 3 hardware.
105	  General Linux information on the Sun 3x series (now discontinued)
106	  is at <http://www.angelfire.com/ca2/tech68k/sun3.html>.
107
108	  If you don't want to compile a kernel for a Sun 3x, say N.
109
110config Q40
111	bool "Q40/Q60 support"
112	depends on MMU
113	select MMU_MOTOROLA if MMU
114	help
115	  The Q40 is a Motorola 68040-based successor to the Sinclair QL
116	  manufactured in Germany.  There is an official Q40 home page at
117	  <http://www.q40.de/>.  This option enables support for the Q40 and
118	  Q60. Select your CPU below.  For 68LC060 don't forget to enable FPU
119	  emulation.
120
121config SUN3
122	bool "Sun3 support"
123	depends on MMU
124	depends on !MMU_MOTOROLA
125	select MMU_SUN3 if MMU
126	select M68020
127	help
128	  This option enables support for the Sun 3 series of workstations
129	  (3/50, 3/60, 3/1xx, 3/2xx systems). Enabling this option requires
130	  that all other hardware types must be disabled, as Sun 3 kernels
131	  are incompatible with all other m68k targets (including Sun 3x!).
132
133	  If you don't want to compile a kernel exclusively for a Sun 3, say N.
134
135endif # M68KCLASSIC
136
137config PILOT
138	bool
139
140config PILOT3
141	bool "Pilot 1000/5000, PalmPilot Personal/Pro, or PalmIII support"
142	depends on M68328
143	select PILOT
144	help
145	  Support for the Palm Pilot 1000/5000, Personal/Pro and PalmIII.
146
147config XCOPILOT_BUGS
148	bool "(X)Copilot support"
149	depends on PILOT3
150	help
151	  Support the bugs of Xcopilot.
152
153config UCSIMM
154	bool "uCsimm module support"
155	depends on M68EZ328
156	help
157	  Support for the Arcturus Networks uCsimm module.
158
159config UCDIMM
160	bool "uDsimm module support"
161	depends on M68VZ328
162	help
163	  Support for the Arcturus Networks uDsimm module.
164
165config DRAGEN2
166	bool "DragenEngine II board support"
167	depends on M68VZ328
168	help
169	  Support for the DragenEngine II board.
170
171config DIRECT_IO_ACCESS
172	bool "Allow user to access IO directly"
173	depends on (UCSIMM || UCDIMM || DRAGEN2)
174	help
175	  Disable the CPU internal registers protection in user mode,
176	  to allow a user application to read/write them.
177
178config INIT_LCD
179	bool "Initialize LCD"
180	depends on (UCSIMM || UCDIMM || DRAGEN2)
181	help
182	  Initialize the LCD controller of the 68x328 processor.
183
184config MEMORY_RESERVE
185	int "Memory reservation (MiB)"
186	depends on (UCSIMM || UCDIMM)
187	help
188	  Reserve certain memory regions on 68x328 based boards.
189
190config UCQUICC
191	bool "Lineo uCquicc board support"
192	depends on M68360
193	help
194	  Support for the Lineo uCquicc board.
195
196config ARN5206
197	bool "Arnewsh 5206 board support"
198	depends on M5206
199	help
200	  Support for the Arnewsh 5206 board.
201
202config M5206eC3
203	bool "Motorola M5206eC3 board support"
204	depends on M5206e
205	help
206	  Support for the Motorola M5206eC3 board.
207
208config ELITE
209	bool "Motorola M5206eLITE board support"
210	depends on M5206e
211	help
212	  Support for the Motorola M5206eLITE board.
213
214config M5235EVB
215	bool "Freescale M5235EVB support"
216	depends on M523x
217	help
218	  Support for the Freescale M5235EVB board.
219
220config M5249C3
221	bool "Motorola M5249C3 board support"
222	depends on M5249
223	help
224	  Support for the Motorola M5249C3 board.
225
226config M5272C3
227	bool "Motorola M5272C3 board support"
228	depends on M5272
229	help
230	  Support for the Motorola M5272C3 board.
231
232config WILDFIRE
233	bool "Intec Automation Inc. WildFire board support"
234	depends on M528x
235	help
236	  Support for the Intec Automation Inc. WildFire.
237
238config WILDFIREMOD
239	bool "Intec Automation Inc. WildFire module support"
240	depends on M528x
241	help
242	  Support for the Intec Automation Inc. WildFire module.
243
244config ARN5307
245	bool "Arnewsh 5307 board support"
246	depends on M5307
247	help
248	  Support for the Arnewsh 5307 board.
249
250config M5307C3
251	bool "Motorola M5307C3 board support"
252	depends on M5307
253	help
254	  Support for the Motorola M5307C3 board.
255
256config SECUREEDGEMP3
257	bool "SnapGear SecureEdge/MP3 platform support"
258	depends on M5307
259	help
260	  Support for the SnapGear SecureEdge/MP3 platform.
261
262config M5407C3
263	bool "Motorola M5407C3 board support"
264	depends on M5407
265	help
266	  Support for the Motorola M5407C3 board.
267
268config FIREBEE
269	bool "FireBee board support"
270	depends on M547x
271	help
272	  Support for the FireBee ColdFire 5475 based board.
273
274config CLEOPATRA
275	bool "Feith CLEOPATRA board support"
276	depends on (M5307 || M5407)
277	help
278	  Support for the Feith Cleopatra boards.
279
280config CANCam
281	bool "Feith CANCam board support"
282	depends on M5272
283	help
284	  Support for the Feith CANCam board.
285
286config SCALES
287	bool "Feith SCALES board support"
288	depends on M5272
289	help
290	  Support for the Feith SCALES board.
291
292config NETtel
293	bool "SecureEdge/NETtel board support"
294	depends on (M5206e || M5272 || M5307)
295	help
296	  Support for the SnapGear NETtel/SecureEdge/SnapGear boards.
297
298config MOD5272
299	bool "Netburner MOD-5272 board support"
300	depends on M5272
301	help
302	  Support for the Netburner MOD-5272 board.
303
304if !MMU || COLDFIRE
305
306comment "Machine Options"
307
308config UBOOT
309	bool "Support for U-Boot command line parameters"
310	help
311	  If you say Y here kernel will try to collect command
312	  line parameters from the initial u-boot stack.
313	default n
314
315config 4KSTACKS
316	bool "Use 4Kb for kernel stacks instead of 8Kb"
317	default y
318	help
319	  If you say Y here the kernel will use a 4Kb stacksize for the
320	  kernel stack attached to each process/thread. This facilitates
321	  running more threads on a system and also reduces the pressure
322	  on the VM subsystem for higher order allocations.
323
324comment "RAM configuration"
325
326config RAMBASE
327	hex "Address of the base of RAM"
328	default "0"
329	help
330	  Define the address that RAM starts at. On many platforms this is
331	  0, the base of the address space. And this is the default. Some
332	  platforms choose to setup their RAM at other addresses within the
333	  processor address space.
334
335config RAMSIZE
336	hex "Size of RAM (in bytes), or 0 for automatic"
337	default "0x400000"
338	help
339	  Define the size of the system RAM. If you select 0 then the
340	  kernel will try to probe the RAM size at runtime. This is not
341	  supported on all CPU types.
342
343config VECTORBASE
344	hex "Address of the base of system vectors"
345	default "0"
346	help
347	  Define the address of the system vectors. Commonly this is
348	  put at the start of RAM, but it doesn't have to be. On ColdFire
349	  platforms this address is programmed into the VBR register, thus
350	  actually setting the address to use.
351
352config MBAR
353	hex "Address of the MBAR (internal peripherals)"
354	default "0x10000000"
355	depends on HAVE_MBAR
356	help
357	  Define the address of the internal system peripherals. This value
358	  is set in the processors MBAR register. This is generally setup by
359	  the boot loader, and will not be written by the kernel. By far most
360	  ColdFire boards use the default 0x10000000 value, so if unsure then
361	  use this.
362
363config IPSBAR
364	hex "Address of the IPSBAR (internal peripherals)"
365	default "0x40000000"
366	depends on HAVE_IPSBAR
367	help
368	  Define the address of the internal system peripherals. This value
369	  is set in the processors IPSBAR register. This is generally setup by
370	  the boot loader, and will not be written by the kernel. By far most
371	  ColdFire boards use the default 0x40000000 value, so if unsure then
372	  use this.
373
374config KERNELBASE
375	hex "Address of the base of kernel code"
376	default "0x400"
377	help
378	  Typically on m68k systems the kernel will not start at the base
379	  of RAM, but usually some small offset from it. Define the start
380	  address of the kernel here. The most common setup will have the
381	  processor vectors at the base of RAM and then the start of the
382	  kernel. On some platforms some RAM is reserved for boot loaders
383	  and the kernel starts after that. The 0x400 default was based on
384	  a system with the RAM based at address 0, and leaving enough room
385	  for the theoretical maximum number of 256 vectors.
386
387comment "ROM configuration"
388
389config ROM
390	bool "Specify ROM linker regions"
391	default n
392	help
393	  Define a ROM region for the linker script. This creates a kernel
394	  that can be stored in flash, with possibly the text, and data
395	  regions being copied out to RAM at startup.
396
397config ROMBASE
398	hex "Address of the base of ROM device"
399	default "0"
400	depends on ROM
401	help
402	  Define the address that the ROM region starts at. Some platforms
403	  use this to set their chip select region accordingly for the boot
404	  device.
405
406config ROMVEC
407	hex "Address of the base of the ROM vectors"
408	default "0"
409	depends on ROM
410	help
411	  This is almost always the same as the base of the ROM. Since on all
412	  68000 type variants the vectors are at the base of the boot device
413	  on system startup.
414
415config ROMSTART
416	hex "Address of the base of system image in ROM"
417	default "0x400"
418	depends on ROM
419	help
420	  Define the start address of the system image in ROM. Commonly this
421	  is strait after the ROM vectors.
422
423config ROMSIZE
424	hex "Size of the ROM device"
425	default "0x100000"
426	depends on ROM
427	help
428	  Size of the ROM device. On some platforms this is used to setup
429	  the chip select that controls the boot ROM device.
430
431choice
432	prompt "Kernel executes from"
433	---help---
434	  Choose the memory type that the kernel will be running in.
435
436config RAMKERNEL
437	bool "RAM"
438	help
439	  The kernel will be resident in RAM when running.
440
441config ROMKERNEL
442	bool "ROM"
443	help
444	  The kernel will be resident in FLASH/ROM when running. This is
445	  often referred to as Execute-in-Place (XIP), since the kernel
446	  code executes from the position it is stored in the FLASH/ROM.
447
448endchoice
449
450endif
451