#
# ISDN device configuration
#

menuconfig ISDN
	tristate "ISDN support"
	depends on NET
	depends on !S390
	---help---
	  ISDN ("Integrated Services Digital Networks", called RNIS in France)
	  is a special type of fully digital telephone service; it's mostly
	  used to connect to your Internet service provider (with SLIP or
	  PPP).  The main advantage is that the speed is higher than ordinary
	  modem/telephone connections, and that you can have voice
	  conversations while downloading stuff.  It only works if your
	  computer is equipped with an ISDN card and both you and your service
	  provider purchased an ISDN line from the phone company.  For
	  details, read <http://www.alumni.caltech.edu/~dank/isdn/> on the WWW.

	  Select this option if you want your kernel to support ISDN.

if ISDN

menuconfig ISDN_I4L
	tristate "Old ISDN4Linux (deprecated)"
	---help---
	  This driver allows you to use an ISDN adapter for networking
	  connections and as dialin/out device.  The isdn-tty's have a built
	  in AT-compatible modem emulator.  Network devices support autodial,
	  channel-bundling, callback and caller-authentication without having
	  a daemon running.  A reduced T.70 protocol is supported with tty's
	  suitable for German BTX.  On D-Channel, the protocols EDSS1
	  (Euro-ISDN) and 1TR6 (German style) are supported.  See
	  <file:Documentation/isdn/README> for more information.

	  ISDN support in the linux kernel is moving towards a new API,
	  called CAPI (Common ISDN Application Programming Interface).
	  Therefore the old ISDN4Linux layer will eventually become obsolete.
	  It is still available, though, for use with adapters that are not
	  supported by the new CAPI subsystem yet.

if ISDN_I4L
source "drivers/isdn/i4l/Kconfig"
endif

menuconfig ISDN_CAPI
	tristate "CAPI 2.0 subsystem"
	help
	  This provides the CAPI (Common ISDN Application Programming
	  Interface, a standard making it easy for programs to access ISDN
	  hardware, see <http://www.capi.org/>.  This is needed for AVM's set
	  of active ISDN controllers like B1, T1, M1.

if ISDN_CAPI

source "drivers/isdn/capi/Kconfig"

source "drivers/isdn/hardware/Kconfig"

endif # ISDN_CAPI

endif # ISDN
