Commit 238690e7 authored by Dominik Brodowski's avatar Dominik Brodowski Committed by Russell King

[PCMCIA] 06-Kconfig_PCMCIA.diff

After noting three things, namely
1.) CardBus cards work without ds a.k.a. pcmcia loaded,
2.) ds a.k.a pcmcia cannot be built as module if pcmcia_core is
    built in, and
3.) some commenting in drivers/pcmcia/Kconfig was obsolete
    [to use 32-bit cards, you don't need pcmcia-cs],
I wrote this patch which introduces more config options for fine-
grained tuning of what to built as what and what not to built. In
future, 16-bit-specific code in pcmcia_core may be surrounded by
CONFIG_PCMCIA. Also, I'll try to remove the dependency of
yenta_socket on cardbus.
parent c3a7b9b2
......@@ -36,7 +36,7 @@ obj-$(CONFIG_FUSION) += message/
obj-$(CONFIG_IEEE1394) += ieee1394/
obj-y += cdrom/
obj-$(CONFIG_MTD) += mtd/
obj-$(CONFIG_PCMCIA) += pcmcia/
obj-$(CONFIG_PCCARD) += pcmcia/
obj-$(CONFIG_DIO) += dio/
obj-$(CONFIG_SBUS) += sbus/
obj-$(CONFIG_ZORRO) += zorro/
......
......@@ -5,30 +5,24 @@
# by the integrated kernel driver.
#
menu "PCMCIA/CardBus support"
menu "PCCARD (PCMCIA/CardBus) support"
depends on HOTPLUG
config PCMCIA
tristate "PCMCIA/CardBus support"
config PCCARD
tristate "PCCard (PCMCIA/CardBus) support"
---help---
Say Y here if you want to attach PCMCIA- or PC-cards to your Linux
computer. These are credit-card size devices such as network cards,
modems or hard drives often used with laptops computers. There are
actually two varieties of these cards: the older 16 bit PCMCIA cards
and the newer 32 bit CardBus cards. If you want to use CardBus
cards, you need to say Y here and also to "CardBus support" below.
To use your PC-cards, you will need supporting software from David
Hinds' pcmcia-cs package (see the file <file:Documentation/Changes>
for location). Please also read the PCMCIA-HOWTO, available from
<http://www.tldp.org/docs.html#howto>.
and the newer 32 bit CardBus cards.
To compile this driver as modules, choose M here: the
modules will be called pcmcia_core and ds.
module will be called pcmcia_core.
config PCMCIA_DEBUG
bool "Enable PCMCIA debugging"
depends on PCMCIA != n
bool "Enable PCCARD debugging"
depends on PCCARD != n
help
Say Y here to enable PCMCIA subsystem debugging. You
will need to choose the debugging level either via the
......@@ -46,10 +40,10 @@ config PCMCIA_DEBUG
level.
config PCMCIA_OBSOLETE
bool "Enable obsolete PCMCIA code"
depends on PCMCIA != n
bool "Enable obsolete PCCARD code"
depends on PCCARD != n
help
Say Y here to enable some code found in the PCMCIA subsystem
Say Y here to enable some code found in the PCCARD subsystem
which has no in-kernel usage, but might be needed for certain
external PCMCIA drivers. If you do need to say Y here so that
one such driver compiles and/or works correctly, please report
......@@ -57,29 +51,57 @@ config PCMCIA_OBSOLETE
If unsure, say N
config YENTA
tristate "CardBus yenta-compatible bridge support"
depends on PCMCIA && PCI
config PCMCIA
tristate "16-bit PCMCIA support"
depends on PCCARD
default y
---help---
This option enables support for 16-bit PCMCIA cards. Most older
PC-cards are such 16-bit PCMCIA cards, so unless you know you're
only using 32-bit CardBus cards, say Y or M here.
To use 16-bit PCMCIA cards, you will need supporting software from
David Hinds' pcmcia-cs package (see the file <file:Documentation/Changes>
for location). Please also read the PCMCIA-HOWTO, available from
<http://www.tldp.org/docs.html#howto>.
To compile this driver as modules, choose M here: the
module will be called pcmcia.
If unsure, say Y.
config CARDBUS
bool "32-bit CardBus support"
depends on PCCARD && PCI
default y
---help---
CardBus is a bus mastering architecture for PC-cards, which allows
for 32 bit PC-cards (the original PCMCIA standard specifies only
a 16 bit wide bus). Many newer PC-cards are actually CardBus cards.
This option enables support for CardBus PC Cards, as well as support
for CardBus host bridges. Virtually all modern PCMCIA bridges are
CardBus compatible. A "bridge" is the hardware inside your computer
that PCMCIA cards are plugged into.
To use your PC-cards, you will need supporting software from David
Hinds' pcmcia-cs package (see the file <file:Documentation/Changes>
for location).
To use 32 bit PC-cards, you also need a CardBus compatible host
bridge. Virtually all modern PCMCIA bridges do this, and most of
them are "yenta-compatible", so say Y or M there, too.
If unsure, say Y.
config CARDBUS
bool
depends on YENTA
default y if YENTA
comment "PC-card bridges"
config YENTA
tristate "CardBus yenta-compatible bridge support"
depends on PCCARD && PCI
#fixme: remove dependendcy on CARDBUS
depends on CARDBUS
---help---
This option enables support for CardBus host bridges. Virtually
all modern PCMCIA bridges are CardBus compatible. A "bridge" is
the hardware inside your computer that PCMCIA cards are plugged
into.
To compile this driver as modules, choose M here: the
module will be called yenta_socket.
If unsure, say Y.
config PD6729
tristate "Cirrus PD6729 compatible bridge support"
......
......@@ -6,7 +6,16 @@ ifeq ($(CONFIG_PCMCIA_DEBUG),y)
EXTRA_CFLAGS += -DDEBUG
endif
obj-$(CONFIG_PCMCIA) += pcmcia_core.o pcmcia.o
pcmcia_core-y += cs.o cistpl.o rsrc_mgr.o socket_sysfs.o
pcmcia_core-$(CONFIG_CARDBUS) += cardbus.o
obj-$(CONFIG_PCCARD) += pcmcia_core.o
pcmcia-y += ds.o bulkmem.o
obj-$(CONFIG_PCMCIA) += pcmcia.o
# socket drivers
obj-$(CONFIG_YENTA) += yenta_socket.o
obj-$(CONFIG_PD6729) += pd6729.o
......@@ -18,11 +27,6 @@ obj-$(CONFIG_PCMCIA_SA1100) += sa11xx_core.o sa1100_cs.o
obj-$(CONFIG_PCMCIA_SA1111) += sa11xx_core.o sa1111_cs.o
obj-$(CONFIG_PCMCIA_PXA2XX) += pxa2xx_core.o pxa2xx_cs.o
pcmcia_core-y += cistpl.o rsrc_mgr.o cs.o socket_sysfs.o
pcmcia_core-$(CONFIG_CARDBUS) += cardbus.o
pcmcia-y += ds.o bulkmem.o
sa11xx_core-y += soc_common.o sa11xx_base.o
pxa2xx_core-y += soc_common.o pxa2xx_base.o
......
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