Commit 0e152d80 authored by Greg Ungerer's avatar Greg Ungerer

m68k: reorganize Kconfig options to improve mmu/non-mmu selections

The current mmu and non-mmu Kconfig files can be merged to form
a more general selection of options. The current break up of options
is due to the simple brute force merge from the m68k and m68knommu
arch directories.

Many of the options are not at all specific to having the MMU enabled
or not. They are actually associated with a particular CPU type or
platform type.

Ultimately as we support all processors with the MMU disabled we need
many of these options to be selectable without the MMU option enabled.
And likewise some of the ColdFire processors, which currently are only
supported with the MMU disabled, do have MMU hardware, and will need
to have options selected on CPU type, not MMU disabled.

This patch removes the old mmu and non-mmu Kconfigs and instead breaks
up the configuration into four areas: cpu, machine, bus, devices.

The Kconfig.cpu lists all the options associated with selecting a CPU,
and includes options specific to each CPU type as well.

Kconfig.machine lists all options associated with selecting a machine
type. Almost always the machines selectable is restricted by the chosen
CPU.

Kconfig.bus contains options associated with selecting bus types on the
various machine types. That includes PCI bus, PCMCIA bus, etc.

Kconfig.devices contains options for drivers and driver associated
options.
Signed-off-by: default avatarGreg Ungerer <gerg@uclinux.org>
parent 89127ed3
......@@ -21,6 +21,15 @@ config ARCH_HAS_ILOG2_U32
config ARCH_HAS_ILOG2_U64
bool
config GENERIC_CLOCKEVENTS
bool
config GENERIC_CMOS_UPDATE
def_bool !MMU
config GENERIC_GPIO
bool
config GENERIC_HWEIGHT
bool
default y
......@@ -29,10 +38,16 @@ config GENERIC_CALIBRATE_DELAY
bool
default y
config GENERIC_IOMAP
def_bool MMU
config TIME_LOW_RES
bool
default y
config ARCH_USES_GETTIMEOFFSET
def_bool MMU
config NO_IOPORT
def_bool y
......@@ -62,13 +77,31 @@ config MMU
Select if you want MMU-based virtualised addressing space
support by paged memory management. If unsure, say 'Y'.
menu "Platform dependent setup"
config MMU_MOTOROLA
bool
config MMU_SUN3
bool
depends on MMU && !MMU_MOTOROLA
menu "Platform setup"
source arch/m68k/Kconfig.cpu
source arch/m68k/Kconfig.machine
source arch/m68k/Kconfig.bus
endmenu
menu "Kernel Features"
if MMU
source arch/m68k/Kconfig.mmu
if COLDFIRE
source "kernel/Kconfig.preempt"
endif
if !MMU
source arch/m68k/Kconfig.nommu
if !MMU || COLDFIRE
source "kernel/time/Kconfig"
endif
source "mm/Kconfig"
......@@ -85,9 +118,9 @@ if !MMU
menu "Power management options"
config PM
bool "Power Management support"
help
Support processor power management modes
bool "Power Management support"
help
Support processor power management modes
endmenu
endif
......@@ -96,151 +129,7 @@ source "net/Kconfig"
source "drivers/Kconfig"
if MMU
menu "Character devices"
config ATARI_MFPSER
tristate "Atari MFP serial support"
depends on ATARI
---help---
If you like to use the MFP serial ports ("Modem1", "Serial1") under
Linux, say Y. The driver equally supports all kinds of MFP serial
ports and automatically detects whether Serial1 is available.
To compile this driver as a module, choose M here.
Note for Falcon users: You also have an MFP port, it's just not
wired to the outside... But you could use the port under Linux.
config ATARI_MIDI
tristate "Atari MIDI serial support"
depends on ATARI
help
If you want to use your Atari's MIDI port in Linux, say Y.
To compile this driver as a module, choose M here.
config ATARI_DSP56K
tristate "Atari DSP56k support (EXPERIMENTAL)"
depends on ATARI && EXPERIMENTAL
help
If you want to be able to use the DSP56001 in Falcons, say Y. This
driver is still experimental, and if you don't know what it is, or
if you don't have this processor, just say N.
To compile this driver as a module, choose M here.
config AMIGA_BUILTIN_SERIAL
tristate "Amiga builtin serial support"
depends on AMIGA
help
If you want to use your Amiga's built-in serial port in Linux,
answer Y.
To compile this driver as a module, choose M here.
config MULTIFACE_III_TTY
tristate "Multiface Card III serial support"
depends on AMIGA
help
If you want to use a Multiface III card's serial port in Linux,
answer Y.
To compile this driver as a module, choose M here.
config GVPIOEXT
tristate "GVP IO-Extender support"
depends on PARPORT=n && ZORRO
help
If you want to use a GVP IO-Extender serial card in Linux, say Y.
Otherwise, say N.
config GVPIOEXT_LP
tristate "GVP IO-Extender parallel printer support"
depends on GVPIOEXT
help
Say Y to enable driving a printer from the parallel port on your
GVP IO-Extender card, N otherwise.
config GVPIOEXT_PLIP
tristate "GVP IO-Extender PLIP support"
depends on GVPIOEXT
help
Say Y to enable doing IP over the parallel port on your GVP
IO-Extender card, N otherwise.
config MAC_HID
bool
depends on INPUT_ADBHID
default y
config HPDCA
tristate "HP DCA serial support"
depends on DIO && SERIAL_8250
help
If you want to use the internal "DCA" serial ports on an HP300
machine, say Y here.
config HPAPCI
tristate "HP APCI serial support"
depends on HP300 && SERIAL_8250 && EXPERIMENTAL
help
If you want to use the internal "APCI" serial ports on an HP400
machine, say Y here.
config MVME147_SCC
bool "SCC support for MVME147 serial ports"
depends on MVME147 && BROKEN
help
This is the driver for the serial ports on the Motorola MVME147
boards. Everyone using one of these boards should say Y here.
config MVME162_SCC
bool "SCC support for MVME162 serial ports"
depends on MVME16x && BROKEN
help
This is the driver for the serial ports on the Motorola MVME162 and
172 boards. Everyone using one of these boards should say Y here.
config BVME6000_SCC
bool "SCC support for BVME6000 serial ports"
depends on BVME6000 && BROKEN
help
This is the driver for the serial ports on the BVME4000 and BVME6000
boards from BVM Ltd. Everyone using one of these boards should say
Y here.
config DN_SERIAL
bool "Support for DN serial port (dummy)"
depends on APOLLO
config SERIAL_CONSOLE
bool "Support for serial port console"
depends on (AMIGA || ATARI || SUN3 || SUN3X || VME || APOLLO) && (ATARI_MFPSER=y || ATARI_MIDI=y || AMIGA_BUILTIN_SERIAL=y || GVPIOEXT=y || MULTIFACE_III_TTY=y || SERIAL=y || MVME147_SCC || SERIAL167 || MVME162_SCC || BVME6000_SCC || DN_SERIAL)
---help---
If you say Y here, it will be possible to use a serial port as the
system console (the system console is the device which receives all
kernel messages and warnings and which allows logins in single user
mode). This could be useful if some terminal or printer is connected
to that serial port.
Even if you say Y here, the currently visible virtual console
(/dev/tty0) will still be used as the system console by default, but
you can alter that using a kernel command line option such as
"console=ttyS1". (Try "man bootparam" or see the documentation of
your boot loader (lilo or loadlin) about how to pass options to the
kernel at boot time.)
If you don't have a VGA card installed and you say Y here, the
kernel will automatically use the first serial line, /dev/ttyS0, as
system console.
If unsure, say N.
endmenu
endif
source "arch/m68k/Kconfig.devices"
source "fs/Kconfig"
......
if MMU
comment "Bus Support"
config NUBUS
bool
depends on MAC
default y
config ZORRO
bool "Amiga Zorro (AutoConfig) bus support"
depends on AMIGA
help
This enables support for the Zorro bus in the Amiga. If you have
expansion cards in your Amiga that conform to the Amiga
AutoConfig(tm) specification, say Y, otherwise N. Note that even
expansion cards that do not fit in the Zorro slots but fit in e.g.
the CPU slot may fall in this category, so you have to say Y to let
Linux use these.
config AMIGA_PCMCIA
bool "Amiga 1200/600 PCMCIA support (EXPERIMENTAL)"
depends on AMIGA && EXPERIMENTAL
help
Include support in the kernel for pcmcia on Amiga 1200 and Amiga
600. If you intend to use pcmcia cards say Y; otherwise say N.
config ISA
bool
depends on Q40 || AMIGA_PCMCIA
default y
help
Find out whether you have ISA slots on your motherboard. ISA is the
name of a bus system, i.e. the way the CPU talks to the other stuff
inside your box. Other bus systems are PCI, EISA, MicroChannel
(MCA) or VESA. ISA is an older system, now being displaced by PCI;
newer boards don't support it. If you have ISA, say Y, otherwise N.
config GENERIC_ISA_DMA
def_bool ISA
source "drivers/pci/Kconfig"
source "drivers/zorro/Kconfig"
endif
if !MMU
config ISA_DMA_API
def_bool !M5272
source "drivers/pcmcia/Kconfig"
endif
if MMU
config ARCH_MAY_HAVE_PC_FDC
bool
depends on BROKEN && (Q40 || SUN3X)
default y
menu "Platform devices"
config HEARTBEAT
bool "Use power LED as a heartbeat" if AMIGA || APOLLO || ATARI || MAC ||Q40
default y if !AMIGA && !APOLLO && !ATARI && !MAC && !Q40 && HP300
help
Use the power-on LED on your machine as a load meter. The exact
behavior is platform-dependent, but normally the flash frequency is
a hyperbolic function of the 5-minute load average.
# We have a dedicated heartbeat LED. :-)
config PROC_HARDWARE
bool "/proc/hardware support"
help
Say Y here to support the /proc/hardware file, which gives you
access to information about the machine you're running on,
including the model, CPU, MMU, clock speed, BogoMIPS rating,
and memory size.
endmenu
menu "Character devices"
config ATARI_MFPSER
tristate "Atari MFP serial support"
depends on ATARI
---help---
If you like to use the MFP serial ports ("Modem1", "Serial1") under
Linux, say Y. The driver equally supports all kinds of MFP serial
ports and automatically detects whether Serial1 is available.
To compile this driver as a module, choose M here.
Note for Falcon users: You also have an MFP port, it's just not
wired to the outside... But you could use the port under Linux.
config ATARI_MIDI
tristate "Atari MIDI serial support"
depends on ATARI
help
If you want to use your Atari's MIDI port in Linux, say Y.
To compile this driver as a module, choose M here.
config ATARI_DSP56K
tristate "Atari DSP56k support (EXPERIMENTAL)"
depends on ATARI && EXPERIMENTAL
help
If you want to be able to use the DSP56001 in Falcons, say Y. This
driver is still experimental, and if you don't know what it is, or
if you don't have this processor, just say N.
To compile this driver as a module, choose M here.
config AMIGA_BUILTIN_SERIAL
tristate "Amiga builtin serial support"
depends on AMIGA
help
If you want to use your Amiga's built-in serial port in Linux,
answer Y.
To compile this driver as a module, choose M here.
config MULTIFACE_III_TTY
tristate "Multiface Card III serial support"
depends on AMIGA
help
If you want to use a Multiface III card's serial port in Linux,
answer Y.
To compile this driver as a module, choose M here.
config GVPIOEXT
tristate "GVP IO-Extender support"
depends on PARPORT=n && ZORRO
help
If you want to use a GVP IO-Extender serial card in Linux, say Y.
Otherwise, say N.
config GVPIOEXT_LP
tristate "GVP IO-Extender parallel printer support"
depends on GVPIOEXT
help
Say Y to enable driving a printer from the parallel port on your
GVP IO-Extender card, N otherwise.
config GVPIOEXT_PLIP
tristate "GVP IO-Extender PLIP support"
depends on GVPIOEXT
help
Say Y to enable doing IP over the parallel port on your GVP
IO-Extender card, N otherwise.
config MAC_HID
bool
depends on INPUT_ADBHID
default y
config HPDCA
tristate "HP DCA serial support"
depends on DIO && SERIAL_8250
help
If you want to use the internal "DCA" serial ports on an HP300
machine, say Y here.
config HPAPCI
tristate "HP APCI serial support"
depends on HP300 && SERIAL_8250 && EXPERIMENTAL
help
If you want to use the internal "APCI" serial ports on an HP400
machine, say Y here.
config MVME147_SCC
bool "SCC support for MVME147 serial ports"
depends on MVME147 && BROKEN
help
This is the driver for the serial ports on the Motorola MVME147
boards. Everyone using one of these boards should say Y here.
config MVME162_SCC
bool "SCC support for MVME162 serial ports"
depends on MVME16x && BROKEN
help
This is the driver for the serial ports on the Motorola MVME162 and
172 boards. Everyone using one of these boards should say Y here.
config BVME6000_SCC
bool "SCC support for BVME6000 serial ports"
depends on BVME6000 && BROKEN
help
This is the driver for the serial ports on the BVME4000 and BVME6000
boards from BVM Ltd. Everyone using one of these boards should say
Y here.
config DN_SERIAL
bool "Support for DN serial port (dummy)"
depends on APOLLO
config SERIAL_CONSOLE
bool "Support for serial port console"
depends on (AMIGA || ATARI || SUN3 || SUN3X || VME || APOLLO) && (ATARI_MFPSER=y || ATARI_MIDI=y || AMIGA_BUILTIN_SERIAL=y || GVPIOEXT=y || MULTIFACE_III_TTY=y || SERIAL=y || MVME147_SCC || SERIAL167 || MVME162_SCC || BVME6000_SCC || DN_SERIAL)
---help---
If you say Y here, it will be possible to use a serial port as the
system console (the system console is the device which receives all
kernel messages and warnings and which allows logins in single user
mode). This could be useful if some terminal or printer is connected
to that serial port.
Even if you say Y here, the currently visible virtual console
(/dev/tty0) will still be used as the system console by default, but
you can alter that using a kernel command line option such as
"console=ttyS1". (Try "man bootparam" or see the documentation of
your boot loader (lilo or loadlin) about how to pass options to the
kernel at boot time.)
If you don't have a VGA card installed and you say Y here, the
kernel will automatically use the first serial line, /dev/ttyS0, as
system console.
If unsure, say N.
endmenu
endif
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment