config CAN_SOFTING
	tristate "Softing Gmbh CAN generic support"
	depends on CAN_DEV && HAS_IOMEM
	---help---
	  Support for CAN cards from Softing Gmbh & some cards
	  from Vector Gmbh.
	  Softing Gmbh CAN cards come with 1 or 2 physical busses.
	  Those cards typically use Dual Port RAM to communicate
	  with the host CPU. The interface is then identical for PCI
	  and PCMCIA cards. This driver operates on a platform device,
	  which has been created by softing_cs or softing_pci driver.
	  Warning:
	  The API of the card does not allow fine control per bus, but
	  controls the 2 busses on the card together.
	  As such, some actions (start/stop/busoff recovery) on 1 bus
	  must bring down the other bus too temporarily.

config CAN_SOFTING_CS
	tristate "Softing Gmbh CAN pcmcia cards"
	depends on PCMCIA
	depends on CAN_SOFTING
	---help---
	  Support for PCMCIA cards from Softing Gmbh & some cards
	  from Vector Gmbh.
	  You need firmware for these, which you can get at
	  http://developer.berlios.de/projects/socketcan/
	  This version of the driver is written against
	  firmware version 4.6 (softing-fw-4.6-binaries.tar.gz)
	  In order to use the card as CAN device, you need the Softing generic
	  support too.
