diff options
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/isdn/Makefile | 3 | ||||
-rw-r--r-- | drivers/isdn/i4l/Kconfig | 10 | ||||
-rw-r--r-- | drivers/staging/Kconfig | 2 | ||||
-rw-r--r-- | drivers/staging/Makefile | 1 | ||||
-rw-r--r-- | drivers/staging/i4l/Documentation/README.act2000 | 104 | ||||
-rw-r--r-- | drivers/staging/i4l/Documentation/README.icn | 148 | ||||
-rw-r--r-- | drivers/staging/i4l/Documentation/README.pcbit | 40 | ||||
-rw-r--r-- | drivers/staging/i4l/Documentation/README.sc | 281 | ||||
-rw-r--r-- | drivers/staging/i4l/Kconfig | 13 | ||||
-rw-r--r-- | drivers/staging/i4l/Makefile | 5 | ||||
-rw-r--r-- | drivers/staging/i4l/TODO | 3 | ||||
-rw-r--r-- | drivers/staging/i4l/act2000/Kconfig (renamed from drivers/isdn/act2000/Kconfig) | 0 | ||||
-rw-r--r-- | drivers/staging/i4l/act2000/Makefile (renamed from drivers/isdn/act2000/Makefile) | 0 | ||||
-rw-r--r-- | drivers/staging/i4l/act2000/act2000.h (renamed from drivers/isdn/act2000/act2000.h) | 0 | ||||
-rw-r--r-- | drivers/staging/i4l/act2000/act2000_isa.c (renamed from drivers/isdn/act2000/act2000_isa.c) | 0 | ||||
-rw-r--r-- | drivers/staging/i4l/act2000/act2000_isa.h (renamed from drivers/isdn/act2000/act2000_isa.h) | 0 | ||||
-rw-r--r-- | drivers/staging/i4l/act2000/capi.c (renamed from drivers/isdn/act2000/capi.c) | 0 | ||||
-rw-r--r-- | drivers/staging/i4l/act2000/capi.h (renamed from drivers/isdn/act2000/capi.h) | 0 | ||||
-rw-r--r-- | drivers/staging/i4l/act2000/module.c (renamed from drivers/isdn/act2000/module.c) | 0 | ||||
-rw-r--r-- | drivers/staging/i4l/icn/Kconfig (renamed from drivers/isdn/icn/Kconfig) | 0 | ||||
-rw-r--r-- | drivers/staging/i4l/icn/Makefile (renamed from drivers/isdn/icn/Makefile) | 0 | ||||
-rw-r--r-- | drivers/staging/i4l/icn/icn.c (renamed from drivers/isdn/icn/icn.c) | 0 | ||||
-rw-r--r-- | drivers/staging/i4l/icn/icn.h (renamed from drivers/isdn/icn/icn.h) | 0 | ||||
-rw-r--r-- | drivers/staging/i4l/pcbit/Kconfig (renamed from drivers/isdn/pcbit/Kconfig) | 0 | ||||
-rw-r--r-- | drivers/staging/i4l/pcbit/Makefile (renamed from drivers/isdn/pcbit/Makefile) | 0 | ||||
-rw-r--r-- | drivers/staging/i4l/pcbit/callbacks.c (renamed from drivers/isdn/pcbit/callbacks.c) | 0 | ||||
-rw-r--r-- | drivers/staging/i4l/pcbit/callbacks.h (renamed from drivers/isdn/pcbit/callbacks.h) | 0 | ||||
-rw-r--r-- | drivers/staging/i4l/pcbit/capi.c (renamed from drivers/isdn/pcbit/capi.c) | 0 | ||||
-rw-r--r-- | drivers/staging/i4l/pcbit/capi.h (renamed from drivers/isdn/pcbit/capi.h) | 0 | ||||
-rw-r--r-- | drivers/staging/i4l/pcbit/drv.c (renamed from drivers/isdn/pcbit/drv.c) | 0 | ||||
-rw-r--r-- | drivers/staging/i4l/pcbit/edss1.c (renamed from drivers/isdn/pcbit/edss1.c) | 0 | ||||
-rw-r--r-- | drivers/staging/i4l/pcbit/edss1.h (renamed from drivers/isdn/pcbit/edss1.h) | 0 | ||||
-rw-r--r-- | drivers/staging/i4l/pcbit/layer2.c (renamed from drivers/isdn/pcbit/layer2.c) | 0 | ||||
-rw-r--r-- | drivers/staging/i4l/pcbit/layer2.h (renamed from drivers/isdn/pcbit/layer2.h) | 0 | ||||
-rw-r--r-- | drivers/staging/i4l/pcbit/module.c (renamed from drivers/isdn/pcbit/module.c) | 0 | ||||
-rw-r--r-- | drivers/staging/i4l/pcbit/pcbit.h (renamed from drivers/isdn/pcbit/pcbit.h) | 0 |
36 files changed, 597 insertions, 13 deletions
diff --git a/drivers/isdn/Makefile b/drivers/isdn/Makefile index 91c81965e7ca..c32e45826c2c 100644 --- a/drivers/isdn/Makefile +++ b/drivers/isdn/Makefile @@ -8,9 +8,6 @@ obj-$(CONFIG_MISDN) += mISDN/ obj-$(CONFIG_ISDN) += hardware/ obj-$(CONFIG_ISDN_DIVERSION) += divert/ obj-$(CONFIG_ISDN_DRV_HISAX) += hisax/ -obj-$(CONFIG_ISDN_DRV_ICN) += icn/ -obj-$(CONFIG_ISDN_DRV_PCBIT) += pcbit/ obj-$(CONFIG_ISDN_DRV_LOOP) += isdnloop/ -obj-$(CONFIG_ISDN_DRV_ACT2000) += act2000/ obj-$(CONFIG_HYSDN) += hysdn/ obj-$(CONFIG_ISDN_DRV_GIGASET) += gigaset/ diff --git a/drivers/isdn/i4l/Kconfig b/drivers/isdn/i4l/Kconfig index f5b714cd7618..68e54d9f2f53 100644 --- a/drivers/isdn/i4l/Kconfig +++ b/drivers/isdn/i4l/Kconfig @@ -123,16 +123,6 @@ comment "ISDN4Linux hardware drivers" source "drivers/isdn/hisax/Kconfig" - -menu "Active cards" - -source "drivers/isdn/icn/Kconfig" - -source "drivers/isdn/pcbit/Kconfig" - -source "drivers/isdn/act2000/Kconfig" - -endmenu # end ISDN_I4L endif diff --git a/drivers/staging/Kconfig b/drivers/staging/Kconfig index 5f9a97a77393..ff894bc63b3b 100644 --- a/drivers/staging/Kconfig +++ b/drivers/staging/Kconfig @@ -104,4 +104,6 @@ source "drivers/staging/wilc1000/Kconfig" source "drivers/staging/most/Kconfig" +source "drivers/staging/i4l/Kconfig" + endif # STAGING diff --git a/drivers/staging/Makefile b/drivers/staging/Makefile index b3920c224013..8242923371ad 100644 --- a/drivers/staging/Makefile +++ b/drivers/staging/Makefile @@ -41,3 +41,4 @@ obj-$(CONFIG_FB_TFT) += fbtft/ obj-$(CONFIG_FSL_MC_BUS) += fsl-mc/ obj-$(CONFIG_WILC1000) += wilc1000/ obj-$(CONFIG_MOST) += most/ +obj-$(CONFIG_ISDN_I4L) += i4l/ diff --git a/drivers/staging/i4l/Documentation/README.act2000 b/drivers/staging/i4l/Documentation/README.act2000 new file mode 100644 index 000000000000..ce7115e7f4ce --- /dev/null +++ b/drivers/staging/i4l/Documentation/README.act2000 @@ -0,0 +1,104 @@ +$Id: README.act2000,v 1.3 2000/08/06 09:22:51 armin Exp $ + +This document describes the ACT2000 driver for the +IBM Active 2000 ISDN card. + +There are 3 Types of this card available. A ISA-, MCA-, and PCMCIA-Bus +Version. Currently, only the ISA-Bus version of the card is supported. +However MCA and PCMCIA will follow soon. + +The ISA-Bus Version uses 8 IO-ports. The base port address has to be set +manually using the DIP switches. + +Setting up the DIP switches for the IBM Active 2000 ISDN card: + + Note: S5 and S6 always set off! + + S1 S2 S3 S4 Base-port + on on on on 0x0200 (Factory default) + off on on on 0x0240 + on off on on 0x0280 + off off on on 0x02c0 + on on off on 0x0300 + off on off on 0x0340 + on off off on 0x0380 + on on on off 0xcfe0 + off on on off 0xcfa0 + on off on off 0xcf60 + off off on off 0xcf20 + on on off off 0xcee0 + off on off off 0xcea0 + on off off off 0xce60 + off off off off Card disabled + +IRQ is configured by software. Possible values are: + + 3, 5, 7, 10, 11, 12, 15 and none (polled mode) + + +The ACT2000 driver may either be built into the kernel or as a module. +Initialization depends on how the driver is built: + +Driver built into the kernel: + + The ACT2000 driver can be configured using the commandline-feature while + loading the kernel with LILO or LOADLIN. It accepts the following syntax: + + act2000=b,p,i[,idstring] + + where + + b = Bus-Type (1=ISA, 2=MCA, 3=PCMCIA) + p = portbase (-1 means autoprobe) + i = Interrupt (-1 means use next free IRQ, 0 means polled mode) + + The idstring is an arbitrary string used for referencing the card + by the actctrl tool later. + + Defaults used, when no parameters given at all: + + 1,-1,-1,"" + + which means: Autoprobe for an ISA card, use next free IRQ, let the + ISDN linklevel fill the IdString (usually "line0" for the first card). + + If you like to use more than one card, you can use the program + "actctrl" from the utility-package to configure additional cards. + + Using the "actctrl"-utility, portbase and irq can also be changed + during runtime. The D-channel protocol is configured by the "dproto" + option of the "actctrl"-utility after loading the firmware into the + card's memory using the "actctrl"-utility. + +Driver built as module: + + The module act2000.o can be configured during modprobe (insmod) by + appending its parameters to the modprobe resp. insmod commandline. + The following syntax is accepted: + + act_bus=b act_port=p act_irq=i act_id=idstring + + where b, p, i and idstring have the same meanings as the parameters + described for the builtin version above. + + Using the "actctrl"-utility, the same features apply to the modularized + version as to the kernel-builtin one. (i.e. loading of firmware and + configuring the D-channel protocol) + +Loading the firmware into the card: + + The firmware is supplied together with the isdn4k-utils package. It + can be found in the subdirectory act2000/firmware/ + + Assuming you have installed the utility-package correctly, the firmware + will be downloaded into the card using the following command: + + actctrl -d idstring load /etc/isdn/bip11.btl + + where idstring is the Name of the card, given during insmod-time or + (for kernel-builtin driver) on the kernel commandline. If only one + ISDN card is used, the -d isdstrin may be omitted. + + For further documentation (adding more IBM Active 2000 cards), refer to + the manpage actctrl.8 which is included in the isdn4k-utils package. + diff --git a/drivers/staging/i4l/Documentation/README.icn b/drivers/staging/i4l/Documentation/README.icn new file mode 100644 index 000000000000..13f833d4e910 --- /dev/null +++ b/drivers/staging/i4l/Documentation/README.icn @@ -0,0 +1,148 @@ +$Id: README.icn,v 1.7 2000/08/06 09:22:51 armin Exp $ + +You can get the ICN-ISDN-card from: + +Thinking Objects Software GmbH +Versbacher Röthe 159 +97078 Würzburg +Tel: +49 931 2877950 +Fax: +49 931 2877951 + +email info@think.de +WWW http:/www.think.de + + +The card communicates with the PC by two interfaces: + 1. A range of 4 successive port-addresses, whose base address can be + configured with the switches. + 2. A memory window with 16KB-256KB size, which can be setup in 16k steps + over the whole range of 16MB. Isdn4linux only uses a 16k window. + The base address of the window can be configured when loading + the lowlevel-module (see README). If using more than one card, + all cards are mapped to the same window and activated as needed. + +Setting up the IO-address dipswitches for the ICN-ISDN-card: + + Two types of cards exist, one with dip-switches and one with + hook-switches. + + 1. Setting for the card with hook-switches: + + (0 = switch closed, 1 = switch open) + + S3 S2 S1 Base-address + 0 0 0 0x300 + 0 0 1 0x310 + 0 1 0 0x320 (Default for isdn4linux) + 0 1 1 0x330 + 1 0 0 0x340 + 1 0 1 0x350 + 1 1 0 0x360 + 1 1 1 NOT ALLOWED! + + 2. Setting for the card with dip-switches: + + (0 = switch closed, 1 = switch open) + + S1 S2 S3 S4 Base-Address + 0 0 0 0 0x300 + 0 0 0 1 0x310 + 0 0 1 0 0x320 (Default for isdn4linux) + 0 0 1 1 0x330 + 0 1 0 0 0x340 + 0 1 0 1 0x350 + 0 1 1 0 0x360 + 0 1 1 1 NOT ALLOWED! + 1 0 0 0 0x308 + 1 0 0 1 0x318 + 1 0 1 0 0x328 + 1 0 1 1 0x338 + 1 1 0 0 0x348 + 1 1 0 1 0x358 + 1 1 1 0 0x368 + 1 1 1 1 NOT ALLOWED! + +The ICN driver may be built into the kernel or as a module. Initialization +depends on how the driver is built: + +Driver built into the kernel: + + The ICN driver can be configured using the commandline-feature while + loading the kernel with LILO or LOADLIN. It accepts the following syntax: + + icn=p,m[,idstring1[,idstring2]] + + where + + p = portbase (default: 0x320) + m = shared memory (default: 0xd0000) + + When using the ICN double card (4B), you MUST define TWO idstrings. + idstring must start with a character! There is no way for the driver + to distinguish between a 2B and 4B type card. Therefore, by supplying + TWO idstrings, you tell the driver that you have a 4B installed. + + If you like to use more than one card, you can use the program + "icnctrl" from the utility-package to configure additional cards. + You need to configure shared memory only once, since the icn-driver + maps all cards into the same address-space. + + Using the "icnctrl"-utility, portbase and shared memory can also be + changed during runtime. + + The D-channel protocol is configured by loading different firmware + into the card's memory using the "icnctrl"-utility. + + +Driver built as module: + + The module icn.o can be configured during "insmod'ing" it by + appending its parameters to the insmod-commandline. The following + syntax is accepted: + + portbase=p membase=m icn_id=idstring [icn_id2=idstring2] + + where p, m, idstring1 and idstring2 have the same meanings as the + parameters described for the kernel-version above. + + When using the ICN double card (4B), you MUST define TWO idstrings. + idstring must start with a character! There is no way for the driver + to distinguish between a 2B and 4B type card. Therefore, by supplying + TWO idstrings, you tell the driver that you have a 4B installed. + + Using the "icnctrl"-utility, the same features apply to the modularized + version like to the kernel-builtin one. + + The D-channel protocol is configured by loading different firmware + into the card's memory using the "icnctrl"-utility. + +Loading the firmware into the card: + + The firmware is supplied together with the isdn4k-utils package. It + can be found in the subdirectory icnctrl/firmware/ + + There are 3 files: + + loadpg.bin - Image of the bootstrap loader. + pc_1t_ca.bin - Image of firmware for german 1TR6 protocol. + pc_eu_ca.bin - Image if firmware for EDSS1 (Euro-ISDN) protocol. + + Assuming you have installed the utility-package correctly, the firmware + will be downloaded into the 2B-card using the following command: + + icnctrl -d Idstring load /etc/isdn/loadpg.bin /etc/isdn/pc_XX_ca.bin + + where XX is either "1t" or "eu", depending on the D-Channel protocol + used on your S0-bus and Idstring is the Name of the card, given during + insmod-time or (for kernel-builtin driver) on the kernel commandline. + + To load a 4B-card, the same command is used, except a second firmware + file is appended to the commandline of icnctrl. + + -> After downloading firmware, the two LEDs at the back cover of the card + (ICN-4B: 4 LEDs) must be blinking intermittently now. If a connection + is up, the corresponding led is lit continuously. + + For further documentation (adding more ICN-cards), refer to the manpage + icnctrl.8 which is included in the isdn4k-utils package. + diff --git a/drivers/staging/i4l/Documentation/README.pcbit b/drivers/staging/i4l/Documentation/README.pcbit new file mode 100644 index 000000000000..5125002282e5 --- /dev/null +++ b/drivers/staging/i4l/Documentation/README.pcbit @@ -0,0 +1,40 @@ +------------------------------------------------------------------------------ + README file for the PCBIT-D Device Driver. +------------------------------------------------------------------------------ + +The PCBIT is a Euro ISDN adapter manufactured in Portugal by Octal and +developed in cooperation with Portugal Telecom and Inesc. +The driver interfaces with the standard kernel isdn facilities +originally developed by Fritz Elfert in the isdn4linux project. + +The common versions of the pcbit board require a firmware that is +distributed (and copyrighted) by the manufacturer. To load this +firmware you need "pcbitctl" available on the standard isdn4k-utils +package or in the pcbit package available in: + +ftp://ftp.di.fc.ul.pt/pub/systems/Linux/isdn + +Known Limitations: + +- The board reset procedure is at the moment incorrect and will only +allow you to load the firmware after a hard reset. + +- Only HDLC in B-channels is supported at the moment. There is no +current support for X.25 in B or D channels nor LAPD in B +channels. The main reason is that these two other protocol modes have, +to my knowledge, very little use. If you want to see them implemented +*do* send me a mail. + +- The driver often triggers errors in the board that I and the +manufacturer believe to be caused by bugs in the firmware. The current +version includes several procedures for error recovery that should +allow normal operation. Plans for the future include cooperation with +the manufacturer in order to solve this problem. + +Information/hints/help can be obtained in the linux isdn +mailing list (isdn4linux@listserv.isdn4linux.de) or directly from me. + +regards, + Pedro. + +<roque@di.fc.ul.pt> diff --git a/drivers/staging/i4l/Documentation/README.sc b/drivers/staging/i4l/Documentation/README.sc new file mode 100644 index 000000000000..1153cd926059 --- /dev/null +++ b/drivers/staging/i4l/Documentation/README.sc @@ -0,0 +1,281 @@ +Welcome to Beta Release 2 of the combination ISDN driver for SpellCaster's +ISA ISDN adapters. Please note this release 2 includes support for the +DataCommute/BRI and TeleCommute/BRI adapters only and any other use is +guaranteed to fail. If you have a DataCommute/PRI installed in the test +computer, we recommend removing it as it will be detected but will not +be usable. To see what we have done to Beta Release 2, see section 3. + +Speaking of guarantees, THIS IS BETA SOFTWARE and as such contains +bugs and defects either known or unknown. Use this software at your own +risk. There is NO SUPPORT for this software. Some help may be available +through the web site or the mailing list but such support is totally at +our own option and without warranty. If you choose to assume all and +total risk by using this driver, we encourage you to join the beta +mailing list. + +To join the Linux beta mailing list, send a message to: +majordomo@spellcast.com with the words "subscribe linux-beta" as the only +contents of the message. Do not include a signature. If you choose to +remove yourself from this list at a later date, send another message to +the same address with the words "unsubscribe linux-beta" as its only +contents. + +TABLE OF CONTENTS +----------------- + 1. Introduction + 1.1 What is ISDN4Linux? + 1.2 What is different between this driver and previous drivers? + 1.3 How do I setup my system with the correct software to use + this driver release? + + 2. Basic Operations + 2.1 Unpacking and installing the driver + 2.2 Read the man pages!!! + 2.3 Installing the driver + 2.4 Removing the driver + 2.5 What to do if it doesn't load + 2.6 How to setup ISDN4Linux with the driver + + 3. Beta Change Summaries and Miscellaneous Notes + +1. Introduction +--------------- + +The revision 2 Linux driver for SpellCaster ISA ISDN adapters is built +upon ISDN4Linux available separately or as included in Linux 2.0 and later. +The driver will support a maximum of 4 adapters in any one system of any +type including DataCommute/BRI, DataCommute/PRI and TeleCommute/BRI for a +maximum of 92 channels for host. The driver is supplied as a module in +source form and needs to be complied before it can be used. It has been +tested on Linux 2.0.20. + +1.1 What Is ISDN4Linux + +ISDN4Linux is a driver and set of tools used to access and use ISDN devices +on a Linux platform in a common and standard way. It supports HDLC and PPP +protocols and offers channel bundling and MLPPP support. To use ISDN4Linux +you need to configure your kernel for ISDN support and get the ISDN4Linux +tool kit from our web site. + +ISDN4Linux creates a channel pool from all of the available ISDN channels +and therefore can function across adapters. When an ISDN4Linux compliant +driver (such as ours) is loaded, all of the channels go into a pool and +are used on a first-come first-served basis. In addition, individual +channels can be specifically bound to particular interfaces. + +1.2 What is different between this driver and previous drivers? + +The revision 2 driver besides adopting the ISDN4Linux architecture has many +subtle and not so subtle functional differences from previous releases. These +include: + - More efficient shared memory management combined with a simpler + configuration. All adapters now use only 16Kbytes of shared RAM + versus between 16K and 64K. New methods for using the shared RAM + allow us to utilize all of the available RAM on the adapter through + only one 16K page. + - Better detection of available upper memory. The probing routines + have been improved to better detect available shared RAM pages and + used pages are now locked. + - Decreased loading time and a wider range of I/O ports probed. + We have significantly reduced the amount of time it takes to load + the driver and at the same time doubled the number of I/O ports + probed increasing the likelihood of finding an adapter. + - We now support all ISA adapter models with a single driver instead + of separate drivers for each model. The revision 2 driver supports + the DataCommute/BRI, DataCommute/PRI and TeleCommute/BRI in any + combination up to a maximum of four adapters per system. + - On board PPP protocol support has been removed in favour of the + sync-PPP support used in ISDN4Linux. This means more control of + the protocol parameters, faster negotiation time and a more + familiar interface. + +1.3 How do I setup my system with the correct software to use + this driver release? + +Before you can compile, install and use the SpellCaster ISA ISDN driver, you +must ensure that the following software is installed, configured and running: + + - Linux kernel 2.0.20 or later with the required init and ps + versions. Please see your distribution vendor for the correct + utility packages. The latest kernel is available from + ftp://sunsite.unc.edu/pub/Linux/kernel/v2.0/ + + - The latest modules package (modules-2.0.0.tar.gz) from + ftp://sunsite.unc.edu/pub/Linux/kernel/modules-2.0.0.tar.gz + + - The ISDN4Linux tools available from + ftp://ftp.franken.de/pub/isdn4linux/v2.0/isdn4k-utils-2.0.tar.gz + This package may fail to compile for you so you can alternatively + get a pre-compiled version from + ftp://ftp.spellcast.com/pub/drivers/isdn4linux/isdn4k-bin-2.0.tar.gz + + +2. Basic Operations +------------------- + +2.1 Unpacking and installing the driver + + 1. As root, create a directory in a convenient place. We suggest + /usr/src/spellcaster. + + 2. Unpack the archive with : + tar xzf sc-n.nn.tar.gz -C /usr/src/spellcaster + + 3. Change directory to /usr/src/spellcaster + + 4. Read the README and RELNOTES files. + + 5. Run 'make' and if all goes well, run 'make install'. + +2.2 Read the man pages!!! + +Make sure you read the scctrl(8) and sc(4) manual pages before continuing +any further. Type 'man 8 scctrl' and 'man 4 sc'. + +2.3 Installing the driver + +To install the driver, type '/sbin/insmod sc' as root. sc(4) details options +you can specify but you shouldn't need to use any unless this doesn't work. + +Make sure the driver loaded and detected all of the adapters by typing +'dmesg'. + +The driver can be configured so that it is loaded upon startup. To do this, +edit the file "/etc/modules/'uname -f'/'uname -v'" and insert the driver name +"sc" into this file. + +2.4 Removing the driver + +To remove the driver, delete any interfaces that may exist (see isdnctrl(8) +for more on this) and then type '/sbin/rmmod sc'. + +2.5 What to do if it doesn't load + +If, when you try to install the driver, you get a message mentioning +'register_isdn' then you do not have the ISDN4Linux system installed. Please +make sure that ISDN support is configured in the kernel. + +If you get a message that says 'initialization of sc failed', then the +driver failed to detect an adapter or failed to find resources needed such +as a free IRQ line or shared memory segment. If you are sure there are free +resources available, use the insmod options detailed in sc(4) to override +the probing function. + +Upon testing, the following problem was noted, the driver would load without +problems, but the board would not respond beyond that point. When a check was +done with 'cat /proc/interrupts' the interrupt count for sc was 0. In the event +of this problem, change the BIOS settings so that the interrupts in question are +reserved for ISA use only. + + +2.6 How to setup ISDN4Linux with the driver + +There are three main configurations which you can use with the driver: + +A) Basic HDLC connection +B) PPP connection +C) MLPPP connection + +It should be mentioned here that you may also use a tty connection if you +desire. The Documentation directory of the isdn4linux subsystem offers good +documentation on this feature. + +A) 10 steps to the establishment of a basic HDLC connection +----------------------------------------------------------- + +- please open the isdn-hdlc file in the examples directory and follow along... + + This file is a script used to configure a BRI ISDN TA to establish a + basic HDLC connection between its two channels. Two network + interfaces are created and two routes added between the channels. + + i) using the isdnctrl utility, add an interface with "addif" and + name it "isdn0" + ii) add the outgoing and inbound telephone numbers + iii) set the Layer 2 protocol to hdlc + iv) set the eaz of the interface to be the phone number of that + specific channel + v) to turn the callback features off, set the callback to "off" and + the callback delay (cbdelay) to 0. + vi) the hangup timeout can be set to a specified number of seconds + vii) the hangup upon incoming call can be set on or off + viii) use the ifconfig command to bring up the network interface with + a specific IP address and point to point address + ix) add a route to the IP address through the isdn0 interface + x) a ping should result in the establishment of the connection + + +B) Establishment of a PPP connection +------------------------------------ + +- please open the isdn-ppp file in the examples directory and follow along... + + This file is a script used to configure a BRI ISDN TA to establish a + PPP connection between the two channels. The file is almost + identical to the HDLC connection example except that the packet + encapsulation type has to be set. + + use the same procedure as in the HDLC connection from steps i) to + iii) then, after the Layer 2 protocol is set, set the encapsulation + "encap" to syncppp. With this done, the rest of the steps, iv) to x) + can be followed from above. + + Then, the ipppd (ippp daemon) must be setup: + + xi) use the ipppd function found in /sbin/ipppd to set the following: + xii) take out (minus) VJ compression and bsd compression + xiii) set the mru size to 2000 + xiv) link the two /dev interfaces to the daemon + +NOTE: A "*" in the inbound telephone number specifies that a call can be +accepted on any number. + +C) Establishment of a MLPPP connection +-------------------------------------- + +- please open the isdn-mppp file in the examples directory and follow along... + + This file is a script used to configure a BRI ISDN TA to accept a + Multi Link PPP connection. + + i) using the isdnctrl utility, add an interface with "addif" and + name it "ippp0" + ii) add the inbound telephone number + iii) set the Layer 2 protocol to hdlc and the Layer 3 protocol to + trans (transparent) + iv) set the packet encapsulation to syncppp + v) set the eaz of the interface to be the phone number of that + specific channel + vi) to turn the callback features off, set the callback to "off" and + the callback delay (cbdelay) to 0. + vi) the hangup timeout can be set to a specified number of seconds + vii) the hangup upon incoming call can be set on or off + viii) add a slave interface and name it "ippp32" for example + ix) set the similar parameters for the ippp32 interface + x) use the ifconfig command to bring-up the ippp0 interface with a + specific IP address and point to point address + xi) add a route to the IP address through the ippp0 interface + xii) use the ipppd function found in /sbin/ipppd to set the following: + xiii) take out (minus) bsd compression + xiv) set the mru size to 2000 + xv) add (+) the multi-link function "+mp" + xvi) link the two /dev interfaces to the daemon + +NOTE: To use the MLPPP connection to dial OUT to a MLPPP connection, change +the inbound telephone numbers to the outgoing telephone numbers of the MLPPP +host. + + +3. Beta Change Summaries and Miscellaneous Notes +------------------------------------------------ +When using the "scctrl" utility to upload firmware revisions on the board, +please note that the byte count displayed at the end of the operation may be +different from the total number of bytes in the "dcbfwn.nn.sr" file. Please +disregard the displayed byte count. + +It was noted that in Beta Release 1, the module would fail to load and result +in a segmentation fault when 'insmod'ed. This problem was created when one of +the isdn4linux parameters, (isdn_ctrl, data field) was filled in. In some +cases, this data field was NULL, and was left unchecked, so when it was +referenced... segv. The bug has been fixed around line 63-68 of event.c. + diff --git a/drivers/staging/i4l/Kconfig b/drivers/staging/i4l/Kconfig new file mode 100644 index 000000000000..920216e88de7 --- /dev/null +++ b/drivers/staging/i4l/Kconfig @@ -0,0 +1,13 @@ +# +# Old ISDN4Linux config +# +menu "Old ISDN4Linux (deprecated)" + depends on ISDN_I4L + +source "drivers/staging/i4l/icn/Kconfig" + +source "drivers/staging/i4l/pcbit/Kconfig" + +source "drivers/staging/i4l/act2000/Kconfig" + +endmenu diff --git a/drivers/staging/i4l/Makefile b/drivers/staging/i4l/Makefile new file mode 100644 index 000000000000..158b87093db5 --- /dev/null +++ b/drivers/staging/i4l/Makefile @@ -0,0 +1,5 @@ +# Makefile for the old ISDN I4L subsystem and device drivers. + +obj-$(CONFIG_ISDN_DRV_ICN) += icn/ +obj-$(CONFIG_ISDN_DRV_PCBIT) += pcbit/ +obj-$(CONFIG_ISDN_DRV_ACT2000) += act2000/ diff --git a/drivers/staging/i4l/TODO b/drivers/staging/i4l/TODO new file mode 100644 index 000000000000..6fe2c08bec7a --- /dev/null +++ b/drivers/staging/i4l/TODO @@ -0,0 +1,3 @@ +* The icn, pcbit and act2000 drivers are dead, remove them in 2017 + after another longterm kernel has been released, just in the + unlikely case someone still has this hardware. diff --git a/drivers/isdn/act2000/Kconfig b/drivers/staging/i4l/act2000/Kconfig index fa2673fc69c2..fa2673fc69c2 100644 --- a/drivers/isdn/act2000/Kconfig +++ b/drivers/staging/i4l/act2000/Kconfig diff --git a/drivers/isdn/act2000/Makefile b/drivers/staging/i4l/act2000/Makefile index 05e582fb5c00..05e582fb5c00 100644 --- a/drivers/isdn/act2000/Makefile +++ b/drivers/staging/i4l/act2000/Makefile diff --git a/drivers/isdn/act2000/act2000.h b/drivers/staging/i4l/act2000/act2000.h index 321d437f579e..321d437f579e 100644 --- a/drivers/isdn/act2000/act2000.h +++ b/drivers/staging/i4l/act2000/act2000.h diff --git a/drivers/isdn/act2000/act2000_isa.c b/drivers/staging/i4l/act2000/act2000_isa.c index b5fad29a9ba6..b5fad29a9ba6 100644 --- a/drivers/isdn/act2000/act2000_isa.c +++ b/drivers/staging/i4l/act2000/act2000_isa.c diff --git a/drivers/isdn/act2000/act2000_isa.h b/drivers/staging/i4l/act2000/act2000_isa.h index 1a728984ede1..1a728984ede1 100644 --- a/drivers/isdn/act2000/act2000_isa.h +++ b/drivers/staging/i4l/act2000/act2000_isa.h diff --git a/drivers/isdn/act2000/capi.c b/drivers/staging/i4l/act2000/capi.c index 3f66ca20b5e5..3f66ca20b5e5 100644 --- a/drivers/isdn/act2000/capi.c +++ b/drivers/staging/i4l/act2000/capi.c diff --git a/drivers/isdn/act2000/capi.h b/drivers/staging/i4l/act2000/capi.h index 01ccdecd43f7..01ccdecd43f7 100644 --- a/drivers/isdn/act2000/capi.h +++ b/drivers/staging/i4l/act2000/capi.h diff --git a/drivers/isdn/act2000/module.c b/drivers/staging/i4l/act2000/module.c index 68073d0da0e3..68073d0da0e3 100644 --- a/drivers/isdn/act2000/module.c +++ b/drivers/staging/i4l/act2000/module.c diff --git a/drivers/isdn/icn/Kconfig b/drivers/staging/i4l/icn/Kconfig index 4534f21a1852..4534f21a1852 100644 --- a/drivers/isdn/icn/Kconfig +++ b/drivers/staging/i4l/icn/Kconfig diff --git a/drivers/isdn/icn/Makefile b/drivers/staging/i4l/icn/Makefile index d9b476fcf384..d9b476fcf384 100644 --- a/drivers/isdn/icn/Makefile +++ b/drivers/staging/i4l/icn/Makefile diff --git a/drivers/isdn/icn/icn.c b/drivers/staging/i4l/icn/icn.c index 46d957c34be1..46d957c34be1 100644 --- a/drivers/isdn/icn/icn.c +++ b/drivers/staging/i4l/icn/icn.c diff --git a/drivers/isdn/icn/icn.h b/drivers/staging/i4l/icn/icn.h index f8f2e76d34bf..f8f2e76d34bf 100644 --- a/drivers/isdn/icn/icn.h +++ b/drivers/staging/i4l/icn/icn.h diff --git a/drivers/isdn/pcbit/Kconfig b/drivers/staging/i4l/pcbit/Kconfig index e9b2dd85d410..e9b2dd85d410 100644 --- a/drivers/isdn/pcbit/Kconfig +++ b/drivers/staging/i4l/pcbit/Kconfig diff --git a/drivers/isdn/pcbit/Makefile b/drivers/staging/i4l/pcbit/Makefile index 2d026c3242e8..2d026c3242e8 100644 --- a/drivers/isdn/pcbit/Makefile +++ b/drivers/staging/i4l/pcbit/Makefile diff --git a/drivers/isdn/pcbit/callbacks.c b/drivers/staging/i4l/pcbit/callbacks.c index efb6d6a3639a..efb6d6a3639a 100644 --- a/drivers/isdn/pcbit/callbacks.c +++ b/drivers/staging/i4l/pcbit/callbacks.c diff --git a/drivers/isdn/pcbit/callbacks.h b/drivers/staging/i4l/pcbit/callbacks.h index a036b4a7ffad..a036b4a7ffad 100644 --- a/drivers/isdn/pcbit/callbacks.h +++ b/drivers/staging/i4l/pcbit/callbacks.h diff --git a/drivers/isdn/pcbit/capi.c b/drivers/staging/i4l/pcbit/capi.c index 4e3cbf857d60..4e3cbf857d60 100644 --- a/drivers/isdn/pcbit/capi.c +++ b/drivers/staging/i4l/pcbit/capi.c diff --git a/drivers/isdn/pcbit/capi.h b/drivers/staging/i4l/pcbit/capi.h index 635f63476944..635f63476944 100644 --- a/drivers/isdn/pcbit/capi.h +++ b/drivers/staging/i4l/pcbit/capi.h diff --git a/drivers/isdn/pcbit/drv.c b/drivers/staging/i4l/pcbit/drv.c index 4172e22ae7ed..4172e22ae7ed 100644 --- a/drivers/isdn/pcbit/drv.c +++ b/drivers/staging/i4l/pcbit/drv.c diff --git a/drivers/isdn/pcbit/edss1.c b/drivers/staging/i4l/pcbit/edss1.c index b2262ba6f0c9..b2262ba6f0c9 100644 --- a/drivers/isdn/pcbit/edss1.c +++ b/drivers/staging/i4l/pcbit/edss1.c diff --git a/drivers/isdn/pcbit/edss1.h b/drivers/staging/i4l/pcbit/edss1.h index 2f6b3a8edfba..2f6b3a8edfba 100644 --- a/drivers/isdn/pcbit/edss1.h +++ b/drivers/staging/i4l/pcbit/edss1.h diff --git a/drivers/isdn/pcbit/layer2.c b/drivers/staging/i4l/pcbit/layer2.c index 46e1240ae074..46e1240ae074 100644 --- a/drivers/isdn/pcbit/layer2.c +++ b/drivers/staging/i4l/pcbit/layer2.c diff --git a/drivers/isdn/pcbit/layer2.h b/drivers/staging/i4l/pcbit/layer2.h index be1327bc162a..be1327bc162a 100644 --- a/drivers/isdn/pcbit/layer2.h +++ b/drivers/staging/i4l/pcbit/layer2.h diff --git a/drivers/isdn/pcbit/module.c b/drivers/staging/i4l/pcbit/module.c index 0a59bd0b8210..0a59bd0b8210 100644 --- a/drivers/isdn/pcbit/module.c +++ b/drivers/staging/i4l/pcbit/module.c diff --git a/drivers/isdn/pcbit/pcbit.h b/drivers/staging/i4l/pcbit/pcbit.h index 0a5a99440a80..0a5a99440a80 100644 --- a/drivers/isdn/pcbit/pcbit.h +++ b/drivers/staging/i4l/pcbit/pcbit.h |