README.sc 12 KB

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