About Kernel Documentation Linux Kernel Contact Linux Resources Linux Blog

Documentation / isdn / README.sc


Based on kernel version 4.3. Page generated on 2015-11-02 12:50 EST.

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	
8	Speaking of guarantees, THIS IS BETA SOFTWARE and as such contains
9	bugs and defects either known or unknown. Use this software at your own
10	risk. There is NO SUPPORT for this software. Some help may be available
11	through the web site or the mailing list but such support is totally at
12	our own option and without warranty. If you choose to assume all and
13	total risk by using this driver, we encourage you to join the beta
14	mailing list.
15	
16	To join the Linux beta mailing list, send a message to:
17	majordomo@spellcast.com with the words "subscribe linux-beta" as the only
18	contents of the message. Do not include a signature. If you choose to
19	remove yourself from this list at a later date, send another message to
20	the same address with the words "unsubscribe linux-beta" as its only
21	contents.
22	
23	TABLE 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	
41	1. Introduction
42	---------------
43	
44	The revision 2 Linux driver for SpellCaster ISA ISDN adapters is built
45	upon ISDN4Linux available separately or as included in Linux 2.0 and later.
46	The driver will support a maximum of 4 adapters in any one system of any
47	type including DataCommute/BRI, DataCommute/PRI and TeleCommute/BRI for a
48	maximum of 92 channels for host. The driver is supplied as a module in
49	source form and needs to be complied before it can be used. It has been
50	tested on Linux 2.0.20.
51	
52	1.1 What Is ISDN4Linux
53	
54	ISDN4Linux is a driver and set of tools used to access and use ISDN devices
55	on a Linux platform in a common and standard way. It supports HDLC and PPP
56	protocols and offers channel bundling and MLPPP support. To use ISDN4Linux
57	you need to configure your kernel for ISDN support and get the ISDN4Linux
58	tool kit from our web site.
59	
60	ISDN4Linux creates a channel pool from all of the available ISDN channels
61	and therefore can function across adapters. When an ISDN4Linux compliant
62	driver (such as ours) is loaded, all of the channels go into a pool and
63	are used on a first-come first-served basis. In addition, individual
64	channels can be specifically bound to particular interfaces.
65	
66	1.2 What is different between this driver and previous drivers?
67	
68	The revision 2 driver besides adopting the ISDN4Linux architecture has many
69	subtle and not so subtle functional differences from previous releases. These
70	include:
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	
92	1.3 How do I setup my system with the correct software to use
93	    this driver release?
94	
95	Before you can compile, install and use the SpellCaster ISA ISDN driver, you
96	must 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	
113	2. Basic Operations
114	-------------------
115	
116	2.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	
130	2.2 Read the man pages!!!
131	
132	Make sure you read the scctrl(8) and sc(4) manual pages before continuing
133	any further. Type 'man 8 scctrl' and 'man 4 sc'.
134	
135	2.3 Installing the driver
136	
137	To install the driver, type '/sbin/insmod sc' as root. sc(4) details options
138	you can specify but you shouldn't need to use any unless this doesn't work.
139	
140	Make sure the driver loaded and detected all of the adapters by typing
141	'dmesg'.
142	
143	The driver can be configured so that it is loaded upon startup.  To do this, 
144	edit the file "/etc/modules/'uname -f'/'uname -v'" and insert the driver name
145	"sc" into this file.
146	
147	2.4 Removing the driver
148	
149	To remove the driver, delete any interfaces that may exist (see isdnctrl(8)
150	for more on this) and then type '/sbin/rmmod sc'.
151	
152	2.5 What to do if it doesn't load
153	
154	If, 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
156	make sure that ISDN support is configured in the kernel.
157	
158	If you get a message that says 'initialization of sc failed', then the
159	driver failed to detect an adapter or failed to find resources needed such
160	as a free IRQ line or shared memory segment. If you are sure there are free
161	resources available, use the insmod options detailed in sc(4) to override
162	the probing function.  
163	
164	Upon testing, the following problem was noted, the driver would load without
165	problems, but the board would not respond beyond that point.  When a check was 
166	done with 'cat /proc/interrupts' the interrupt count for sc was 0.  In the event 
167	of this problem, change the BIOS settings so that the interrupts in question are
168	reserved for ISA use only.   
169	
170	
171	2.6 How to setup ISDN4Linux with the driver
172	
173	There are three main configurations which you can use with the driver:
174	
175	A)	Basic HDLC connection
176	B)	PPP connection
177	C)	MLPPP connection
178	
179	It should be mentioned here that you may also use a tty connection if you
180	desire. The Documentation directory of the isdn4linux subsystem offers good
181	documentation on this feature.
182	
183	A) 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		
208	B) 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	
230	NOTE:  A "*" in the inbound telephone number specifies that a call can be 
231	accepted on any number.
232	
233	C) 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	
264	NOTE:  To use the MLPPP connection to dial OUT to a MLPPP connection, change 
265	the inbound telephone numbers to the outgoing telephone numbers of the MLPPP 
266	host.
267	
268		
269	3. Beta Change Summaries and Miscellaneous Notes
270	------------------------------------------------
271	When using the "scctrl" utility to upload firmware revisions on the board,
272	please note that the byte count displayed at the end of the operation may be
273	different from the total number of bytes in the "dcbfwn.nn.sr" file. Please
274	disregard the displayed byte count.
275	
276	It was noted that in Beta Release 1, the module would fail to load and result
277	in a segmentation fault when 'insmod'ed. This problem was created when one of
278	the isdn4linux parameters, (isdn_ctrl, data field) was filled in. In some
279	cases, this data field was NULL, and was left unchecked, so when it was
280	referenced... segv. The bug has been fixed around line 63-68 of event.c.
Hide Line Numbers


About Kernel Documentation Linux Kernel Contact Linux Resources Linux Blog