linux/drivers/net/tokenring/Kconfig
Al Viro da09128685 CONFIG_TR/CONFIG_LLC: work around the problem with select
As it is, with PCI/ISA/MCA/CCW all set to n and PCMCIA set to m
setting TR to y will set LLC to m, with very unpleasant results -
net/802/psnap gets picked into obj-y, resulting in the kernel
that won't link - psnap calls functions from llc.  The cause,
AFAICS, is that kconfig gets rev_dep for LLC containing
|| TR && (deps for TR)
and even though TR is boolean, both LLC and PCMCIA are tristate
and that thing becomes || y && (n || m), i.e. || m.  The reason
for dependency on PCMCIA is that when none of PCI, ISA, MCA, CCW
or PCMCIA is set there'll be no tokenring drivers, so there's no
point building tokenring core.  Proper fix probably belongs in
kconfig (we need strict and, such that y <strict_and> m would be
y, so that rev_deps added for tristate selected by bool would
use that instead of &&; we'd have || TR <strict_and> (deps for TR)
in this case), but it's a rather intrusive change.  There's an
easy workaround in case of TR -> LLC select, namely to have a def_bool y
symbol sitting under if TR and have that symbol selecting LLC.
Kudos to johill for suggesting that one...

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
2012-02-07 13:06:14 -05:00

200 lines
6.4 KiB
Plaintext

#
# Token Ring driver configuration
#
# So far, we only have PCI, ISA, and MCA token ring devices
menuconfig TR
bool "Token Ring driver support"
depends on NETDEVICES && !UML
depends on (PCI || ISA || MCA || CCW || PCMCIA)
help
Token Ring is IBM's way of communication on a local network; the
rest of the world uses Ethernet. To participate on a Token Ring
network, you need a special Token ring network card. If you are
connected to such a Token Ring network and want to use your Token
Ring card under Linux, say Y here and to the driver for your
particular card below and read the Token-Ring mini-HOWTO, available
from <http://www.tldp.org/docs.html#howto>. Most people can
say N here.
if TR
config WANT_LLC
def_bool y
select LLC
config PCMCIA_IBMTR
tristate "IBM PCMCIA tokenring adapter support"
depends on IBMTR!=y && PCMCIA
---help---
Say Y here if you intend to attach this type of Token Ring PCMCIA
card to your computer. You then also need to say Y to "Token Ring
driver support".
To compile this driver as a module, choose M here: the module will be
called ibmtr_cs.
config IBMTR
tristate "IBM Tropic chipset based adapter support"
depends on ISA || MCA
---help---
This is support for all IBM Token Ring cards that don't use DMA. If
you have such a beast, say Y and read the Token-Ring mini-HOWTO,
available from <http://www.tldp.org/docs.html#howto>.
Warning: this driver will almost definitely fail if more than one
active Token Ring card is present.
To compile this driver as a module, choose M here: the module will be
called ibmtr.
config IBMOL
tristate "IBM Olympic chipset PCI adapter support"
depends on PCI
---help---
This is support for all non-Lanstreamer IBM PCI Token Ring Cards.
Specifically this is all IBM PCI, PCI Wake On Lan, PCI II, PCI II
Wake On Lan, and PCI 100/16/4 adapters.
If you have such an adapter, say Y and read the Token-Ring
mini-HOWTO, available from <http://www.tldp.org/docs.html#howto>.
To compile this driver as a module, choose M here: the module will be
called olympic.
Also read <file:Documentation/networking/olympic.txt> or check the
Linux Token Ring Project site for the latest information at
<http://www.linuxtr.net/>.
config IBMLS
tristate "IBM Lanstreamer chipset PCI adapter support"
depends on PCI && !64BIT
help
This is support for IBM Lanstreamer PCI Token Ring Cards.
If you have such an adapter, say Y and read the Token-Ring
mini-HOWTO, available from <http://www.tldp.org/docs.html#howto>.
To compile this driver as a module, choose M here: the module will be
called lanstreamer.
config 3C359
tristate "3Com 3C359 Token Link Velocity XL adapter support"
depends on PCI
---help---
This is support for the 3Com PCI Velocity XL cards, specifically
the 3Com 3C359, please note this is not for the 3C339 cards, you
should use the tms380 driver instead.
If you have such an adapter, say Y and read the Token-Ring
mini-HOWTO, available from <http://www.tldp.org/docs.html#howto>.
To compile this driver as a module, choose M here: the module will be
called 3c359.
Also read the file <file:Documentation/networking/3c359.txt> or check the
Linux Token Ring Project site for the latest information at
<http://www.linuxtr.net>
config TMS380TR
tristate "Generic TMS380 Token Ring ISA/PCI adapter support"
depends on PCI || ISA && ISA_DMA_API || MCA
select FW_LOADER
---help---
This driver provides generic support for token ring adapters
based on the Texas Instruments TMS380 series chipsets. This
includes the SysKonnect TR4/16(+) ISA (SK-4190), SysKonnect
TR4/16(+) PCI (SK-4590), SysKonnect TR4/16 PCI (SK-4591),
Compaq 4/16 PCI, Thomas-Conrad TC4048 4/16 PCI, and several
Madge adapters. If you say Y here, you will be asked to select
which cards to support below. If you're using modules, each
class of card will be supported by a separate module.
If you have such an adapter and would like to use it, say Y and
read the Token-Ring mini-HOWTO, available from
<http://www.tldp.org/docs.html#howto>.
Also read the file <file:Documentation/networking/tms380tr.txt> or
check <http://www.auk.cx/tms380tr/>.
To compile this driver as a module, choose M here: the module will be
called tms380tr.
config TMSPCI
tristate "Generic TMS380 PCI support"
depends on TMS380TR && PCI
---help---
This tms380 module supports generic TMS380-based PCI cards.
These cards are known to work:
- Compaq 4/16 TR PCI
- SysKonnect TR4/16 PCI (SK-4590/SK-4591)
- Thomas-Conrad TC4048 PCI 4/16
- 3Com Token Link Velocity
To compile this driver as a module, choose M here: the module will be
called tmspci.
config SKISA
tristate "SysKonnect TR4/16 ISA support"
depends on TMS380TR && ISA
help
This tms380 module supports SysKonnect TR4/16 ISA cards.
These cards are known to work:
- SysKonnect TR4/16 ISA (SK-4190)
To compile this driver as a module, choose M here: the module will be
called skisa.
config PROTEON
tristate "Proteon ISA support"
depends on TMS380TR && ISA
help
This tms380 module supports Proteon ISA cards.
These cards are known to work:
- Proteon 1392
- Proteon 1392 plus
To compile this driver as a module, choose M here: the module will be
called proteon.
config ABYSS
tristate "Madge Smart 16/4 PCI Mk2 support"
depends on TMS380TR && PCI
help
This tms380 module supports the Madge Smart 16/4 PCI Mk2
cards (51-02).
To compile this driver as a module, choose M here: the module will be
called abyss.
config MADGEMC
tristate "Madge Smart 16/4 Ringnode MicroChannel"
depends on TMS380TR && MCA
help
This tms380 module supports the Madge Smart 16/4 MC16 and MC32
MicroChannel adapters.
To compile this driver as a module, choose M here: the module will be
called madgemc.
config SMCTR
tristate "SMC ISA/MCA adapter support"
depends on (ISA || MCA_LEGACY) && (BROKEN || !64BIT)
---help---
This is support for the ISA and MCA SMC Token Ring cards,
specifically SMC TokenCard Elite (8115T) and SMC TokenCard Elite/A
(8115T/A) adapters.
If you have such an adapter and would like to use it, say Y or M and
read the Token-Ring mini-HOWTO, available from
<http://www.tldp.org/docs.html#howto> and the file
<file:Documentation/networking/smctr.txt>.
To compile this driver as a module, choose M here: the module will be
called smctr.
endif # TR