linux/Documentation/isdn/README.sc
<<
>>
Prefs
   1Welcome to Beta Release 2 of the combination ISDN driver for SpellCaster's
   2ISA ISDN adapters. Please note this release 2 includes support for the
   3DataCommute/BRI and TeleCommute/BRI adapters only and any other use is 
   4guaranteed to fail. If you have a DataCommute/PRI installed in the test
   5computer, we recommend removing it as it will be detected but will not
   6be usable.  To see what we have done to Beta Release 2, see section 3.
   7
   8Speaking of guarantees, THIS IS BETA SOFTWARE and as such contains
   9bugs and defects either known or unknown. Use this software at your own
  10risk. There is NO SUPPORT for this software. Some help may be available
  11through the web site or the mailing list but such support is totally at
  12our own option and without warranty. If you choose to assume all and
  13total risk by using this driver, we encourage you to join the beta
  14mailing list.
  15
  16To join the Linux beta mailing list, send a message to:
  17majordomo@spellcast.com with the words "subscribe linux-beta" as the only
  18contents of the message. Do not include a signature. If you choose to
  19remove yourself from this list at a later date, send another message to
  20the same address with the words "unsubscribe linux-beta" as its only
  21contents.
  22
  23TABLE OF CONTENTS
  24-----------------
  25        1. Introduction
  26         1.1 What is ISDN4Linux?
  27         1.2 What is different between this driver and previous drivers?
  28         1.3 How do I setup my system with the correct software to use
  29             this driver release?
  30        
  31        2. Basic Operations
  32         2.1 Unpacking and installing the driver
  33         2.2 Read the man pages!!!
  34         2.3 Installing the driver
  35         2.4 Removing the driver
  36         2.5 What to do if it doesn't load
  37         2.6 How to setup ISDN4Linux with the driver
  38
  39        3. Beta Change Summaries and Miscellaneous Notes
  40
  411. Introduction
  42---------------
  43
  44The revision 2 Linux driver for SpellCaster ISA ISDN adapters is built
  45upon ISDN4Linux available separately or as included in Linux 2.0 and later.
  46The driver will support a maximum of 4 adapters in any one system of any
  47type including DataCommute/BRI, DataCommute/PRI and TeleCommute/BRI for a
  48maximum of 92 channels for host. The driver is supplied as a module in
  49source form and needs to be complied before it can be used. It has been
  50tested on Linux 2.0.20.
  51
  521.1 What Is ISDN4Linux
  53
  54ISDN4Linux is a driver and set of tools used to access and use ISDN devices
  55on a Linux platform in a common and standard way. It supports HDLC and PPP
  56protocols and offers channel bundling and MLPPP support. To use ISDN4Linux
  57you need to configure your kernel for ISDN support and get the ISDN4Linux
  58tool kit from our web site.
  59
  60ISDN4Linux creates a channel pool from all of the available ISDN channels
  61and therefore can function across adapters. When an ISDN4Linux compliant
  62driver (such as ours) is loaded, all of the channels go into a pool and
  63are used on a first-come first-served basis. In addition, individual
  64channels can be specifically bound to particular interfaces.
  65
  661.2 What is different between this driver and previous drivers?
  67
  68The revision 2 driver besides adopting the ISDN4Linux architecture has many
  69subtle and not so subtle functional differences from previous releases. These
  70include:
  71        - More efficient shared memory management combined with a simpler
  72          configuration. All adapters now use only 16Kbytes of shared RAM
  73          versus between 16K and 64K. New methods for using the shared RAM
  74          allow us to utilize all of the available RAM on the adapter through
  75          only one 16K page.
  76        - Better detection of available upper memory. The probing routines
  77          have been improved to better detect available shared RAM pages and
  78          used pages are now locked.
  79        - Decreased loading time and a wider range of I/O ports probed.
  80          We have significantly reduced the amount of time it takes to load
  81          the driver and at the same time doubled the number of I/O ports
  82          probed increasing the likelihood of finding an adapter.
  83        - We now support all ISA adapter models with a single driver instead
  84          of separate drivers for each model. The revision 2 driver supports
  85          the DataCommute/BRI, DataCommute/PRI and TeleCommute/BRI in any
  86          combination up to a maximum of four adapters per system.
  87        - On board PPP protocol support has been removed in favour of the
  88          sync-PPP support used in ISDN4Linux. This means more control of
  89          the protocol parameters, faster negotiation time and a more
  90          familiar interface.
  91
  921.3 How do I setup my system with the correct software to use
  93    this driver release?
  94
  95Before you can compile, install and use the SpellCaster ISA ISDN driver, you
  96must ensure that the following software is installed, configured and running:
  97
  98        - Linux kernel 2.0.20 or later with the required init and ps
  99          versions. Please see your distribution vendor for the correct
 100          utility packages. The latest kernel is available from
 101          ftp://sunsite.unc.edu/pub/Linux/kernel/v2.0/
 102
 103        - The latest modules package (modules-2.0.0.tar.gz) from
 104          ftp://sunsite.unc.edu/pub/Linux/kernel/modules-2.0.0.tar.gz
 105
 106        - The ISDN4Linux tools available from 
 107          ftp://ftp.franken.de/pub/isdn4linux/v2.0/isdn4k-utils-2.0.tar.gz
 108          This package may fail to compile for you so you can alternatively
 109          get a pre-compiled version from
 110          ftp://ftp.spellcast.com/pub/drivers/isdn4linux/isdn4k-bin-2.0.tar.gz
 111
 112
 1132. Basic Operations
 114-------------------
 115
 1162.1 Unpacking and installing the driver
 117
 118        1. As root, create a directory in a convenient place. We suggest
 119           /usr/src/spellcaster.
 120        
 121        2. Unpack the archive with :
 122                tar xzf sc-n.nn.tar.gz -C /usr/src/spellcaster
 123        
 124        3. Change directory to /usr/src/spellcaster
 125
 126        4. Read the README and RELNOTES files.
 127
 128        5. Run 'make' and if all goes well, run 'make install'.
 129
 1302.2 Read the man pages!!!
 131
 132Make sure you read the scctrl(8) and sc(4) manual pages before continuing
 133any further. Type 'man 8 scctrl' and 'man 4 sc'.
 134
 1352.3 Installing the driver
 136
 137To install the driver, type '/sbin/insmod sc' as root. sc(4) details options
 138you can specify but you shouldn't need to use any unless this doesn't work.
 139
 140Make sure the driver loaded and detected all of the adapters by typing
 141'dmesg'.
 142
 143The driver can be configured so that it is loaded upon startup.  To do this, 
 144edit the file "/etc/modules/'uname -f'/'uname -v'" and insert the driver name
 145"sc" into this file.
 146
 1472.4 Removing the driver
 148
 149To remove the driver, delete any interfaces that may exist (see isdnctrl(8)
 150for more on this) and then type '/sbin/rmmod sc'.
 151
 1522.5 What to do if it doesn't load
 153
 154If, when you try to install the driver, you get a message mentioning
 155'register_isdn' then you do not have the ISDN4Linux system installed. Please
 156make sure that ISDN support is configured in the kernel.
 157
 158If you get a message that says 'initialization of sc failed', then the
 159driver failed to detect an adapter or failed to find resources needed such
 160as a free IRQ line or shared memory segment. If you are sure there are free
 161resources available, use the insmod options detailed in sc(4) to override
 162the probing function.  
 163
 164Upon testing, the following problem was noted, the driver would load without
 165problems, but the board would not respond beyond that point.  When a check was 
 166done with 'cat /proc/interrupts' the interrupt count for sc was 0.  In the event 
 167of this problem, change the BIOS settings so that the interrupts in question are
 168reserved for ISA use only.   
 169
 170
 1712.6 How to setup ISDN4Linux with the driver
 172
 173There are three main configurations which you can use with the driver:
 174
 175A)      Basic HDLC connection
 176B)      PPP connection
 177C)      MLPPP connection
 178
 179It should be mentioned here that you may also use a tty connection if you
 180desire. The Documentation directory of the isdn4linux subsystem offers good
 181documentation on this feature.
 182
 183A) 10 steps to the establishment of a basic HDLC connection
 184-----------------------------------------------------------
 185
 186- please open the isdn-hdlc file in the examples directory and follow along...
 187        
 188        This file is a script used to configure a BRI ISDN TA to establish a 
 189        basic HDLC connection between its two channels.  Two network 
 190        interfaces are created and two routes added between the channels.
 191
 192        i)   using the isdnctrl utility, add an interface with "addif" and 
 193             name it "isdn0"
 194        ii)  add the outgoing and inbound telephone numbers
 195        iii) set the Layer 2 protocol to hdlc
 196        iv)  set the eaz of the interface to be the phone number of that 
 197             specific channel
 198        v)   to turn the callback features off, set the callback to "off" and
 199             the callback delay (cbdelay) to 0.
 200        vi)  the hangup timeout can be set to a specified number of seconds
 201        vii) the hangup upon incoming call can be set on or off 
 202        viii) use the ifconfig command to bring up the network interface with 
 203              a specific IP address and point to point address
 204        ix)  add a route to the IP address through the isdn0 interface
 205        x)   a ping should result in the establishment of the connection
 206
 207        
 208B) Establishment of a PPP connection
 209------------------------------------
 210
 211- please open the isdn-ppp file in the examples directory and follow along...
 212        
 213        This file is a script used to configure a BRI ISDN TA to establish a 
 214        PPP connection  between the two channels.  The file is almost 
 215        identical to the HDLC connection example except that the packet 
 216        encapsulation type has to be set.
 217        
 218        use the same procedure as in the HDLC connection from steps i) to 
 219        iii) then, after the Layer 2 protocol is set, set the encapsulation 
 220        "encap" to syncppp. With this done, the rest of the steps, iv) to x) 
 221        can be followed from above.
 222
 223        Then, the ipppd (ippp daemon) must be setup:
 224        
 225        xi)   use the ipppd function found in /sbin/ipppd to set the following:
 226        xii)  take out (minus) VJ compression and bsd compression
 227        xiii) set the mru size to 2000
 228        xiv)  link the two /dev interfaces to the daemon
 229
 230NOTE:  A "*" in the inbound telephone number specifies that a call can be 
 231accepted on any number.
 232
 233C) Establishment of a MLPPP connection
 234--------------------------------------
 235
 236- please open the isdn-mppp file in the examples directory and follow along...
 237        
 238        This file is a script used to configure a BRI ISDN TA to accept a 
 239        Multi Link PPP connection. 
 240        
 241        i)   using the isdnctrl utility, add an interface with "addif" and 
 242             name it "ippp0"
 243        ii)  add the inbound telephone number
 244        iii) set the Layer 2 protocol to hdlc and the Layer 3 protocol to 
 245             trans (transparent)
 246        iv)  set the packet encapsulation to syncppp
 247        v)   set the eaz of the interface to be the phone number of that 
 248             specific channel
 249        vi)  to turn the callback features off, set the callback to "off" and
 250             the callback delay (cbdelay) to 0.
 251        vi)  the hangup timeout can be set to a specified number of seconds
 252        vii) the hangup upon incoming call can be set on or off 
 253        viii) add a slave interface and name it "ippp32" for example
 254        ix)  set the similar parameters for the ippp32 interface
 255        x)   use the ifconfig command to bring-up the ippp0 interface with a 
 256             specific IP address and point to point address
 257        xi)  add a route to the IP address through the ippp0 interface
 258        xii) use the ipppd function found in /sbin/ipppd to set the following:
 259        xiii) take out (minus) bsd compression
 260        xiv) set the mru size to 2000
 261        xv)  add (+) the multi-link function "+mp"
 262        xvi)  link the two /dev interfaces to the daemon
 263
 264NOTE:  To use the MLPPP connection to dial OUT to a MLPPP connection, change 
 265the inbound telephone numbers to the outgoing telephone numbers of the MLPPP 
 266host.
 267
 268        
 2693. Beta Change Summaries and Miscellaneous Notes
 270------------------------------------------------
 271When using the "scctrl" utility to upload firmware revisions on the board,
 272please note that the byte count displayed at the end of the operation may be
 273different from the total number of bytes in the "dcbfwn.nn.sr" file. Please
 274disregard the displayed byte count.
 275
 276It was noted that in Beta Release 1, the module would fail to load and result
 277in a segmentation fault when 'insmod'ed. This problem was created when one of
 278the isdn4linux parameters, (isdn_ctrl, data field) was filled in. In some
 279cases, this data field was NULL, and was left unchecked, so when it was
 280referenced... segv. The bug has been fixed around line 63-68 of event.c.
 281
 282
lxr.linux.no kindly hosted by Redpill Linpro AS, provider of Linux consulting and operations services since 1995.