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