OpenCores
URL https://opencores.org/ocsvn/test_project/test_project/trunk

Subversion Repositories test_project

[/] [test_project/] [trunk/] [linux_sd_driver/] [Documentation/] [isdn/] [README.HiSax] - Blame information for rev 62

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 62 marcus.erl
HiSax is a Linux hardware-level driver for passive ISDN cards with Siemens
2
chipset (ISAC_S 2085/2086/2186, HSCX SAB 82525). It is based on the Teles
3
driver from Jan den Ouden.
4
It is meant to be used with isdn4linux, an ISDN link-level module for Linux
5
written by Fritz Elfert.
6
 
7
    This program is free software; you can redistribute it and/or modify
8
    it under the terms of the GNU General Public License as published by
9
    the Free Software Foundation; either version 2 of the License, or
10
    (at your option) any later version.
11
 
12
    This program is distributed in the hope that it will be useful,
13
    but WITHOUT ANY WARRANTY; without even the implied warranty of
14
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15
    GNU General Public License for more details.
16
 
17
    You should have received a copy of the GNU General Public License
18
    along with this program; if not, write to the Free Software
19
    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
20
 
21
 
22
Supported cards
23
---------------
24
 
25
Teles 8.0/16.0/16.3 and compatible ones
26
Teles 16.3c
27
Teles S0/PCMCIA
28
Teles PCI
29
Teles S0Box
30
Creatix S0Box
31
Creatix PnP S0
32
Compaq ISDN S0 ISA card
33
AVM A1 (Fritz, Teledat 150)
34
AVM Fritz PCMCIA
35
AVM Fritz PnP
36
AVM Fritz PCI
37
ELSA Microlink PCC-16, PCF, PCF-Pro, PCC-8
38
ELSA Quickstep 1000
39
ELSA Quickstep 1000PCI
40
ELSA Quickstep 3000 (same settings as QS1000)
41
ELSA Quickstep 3000PCI
42
ELSA PCMCIA
43
ITK ix1-micro Rev.2
44
Eicon Diva 2.0 ISA and PCI (S0 and U interface, no PRO version)
45
Eicon Diva 2.01 ISA and PCI
46
Eicon Diva 2.02 PCI
47
Eicon Diva Piccola
48
ASUSCOM NETWORK INC. ISDNLink 128K PC adapter (order code I-IN100-ST-D)
49
Dynalink IS64PH (OEM version of ASUSCOM NETWORK INC. ISDNLink 128K adapter)
50
PCBIT-DP (OEM version of ASUSCOM NETWORK INC. ISDNLink)
51
HFC-2BS0 based cards (TeleInt SA1)
52
Sedlbauer Speed Card (Speed Win, Teledat 100, PCI, Fax+)
53
Sedlbauer Speed Star/Speed Star2 (PCMCIA)
54
Sedlbauer ISDN-Controller PC/104
55
USR Sportster internal TA (compatible Stollmann tina-pp V3)
56
USR internal TA PCI
57
ith Kommunikationstechnik GmbH MIC 16 ISA card
58
Traverse Technologie NETjet PCI S0 card and NETspider U card
59
Ovislink ISDN sc100-p card (NETjet driver)
60
Dr. Neuhaus Niccy PnP/PCI
61
Siemens I-Surf 1.0
62
Siemens I-Surf 2.0 (with IPAC, try type 12 asuscom)
63
ACER P10
64
HST Saphir
65
Berkom Telekom A4T
66
Scitel Quadro
67
Gazel ISDN cards
68
HFC-PCI based cards
69
Winbond W6692 based cards
70
HFC-S+, HFC-SP/PCMCIA cards
71
formula-n enternow
72
Gerdes Power ISDN
73
 
74
Note: PCF, PCF-Pro: up to now, only the ISDN part is supported
75
      PCC-8: not tested yet
76
      Eicon.Diehl Diva U interface not tested
77
 
78
If you know other passive cards with the Siemens chipset, please let me know.
79
You can combine any card, if there is no conflict between the resources
80
(io, mem, irq).
81
 
82
 
83
Configuring the driver
84
----------------------
85
 
86
The HiSax driver can either be built directly into the kernel or as a module.
87
It can be configured using the command line feature while loading the kernel
88
with LILO or LOADLIN or, if built as a module, using insmod/modprobe with
89
parameters.
90
There is also some config needed before you compile the kernel and/or
91
modules. It is included in the normal "make [menu]config" target at the
92
kernel. Don't forget it, especially to select the right D-channel protocol.
93
 
94
Please note: In older versions of the HiSax driver, all PnP cards
95
needed to be configured with isapnp and worked only with the HiSax
96
driver used as a module.
97
 
98
In the current version, HiSax will automatically use the in-kernel
99
ISAPnP support, provided you selected it during kernel configuration
100
(CONFIG_ISAPNP), if you don't give the io=, irq= command line parameters.
101
 
102
The affected card types are: 4,7,12,14,19,27-30
103
 
104
a) when built as a module
105
-------------------------
106
 
107
insmod/modprobe  hisax.o \
108
  io=iobase irq=IRQ mem=membase type=card_type \
109
  protocol=D_channel_protocol id=idstring
110
 
111
or, if several cards are installed:
112
 
113
insmod/modprobe hisax.o \
114
  io=iobase1,iobase2,... irq=IRQ1,IRQ2,... mem=membase1,membase2,... \
115
  type=card_type1,card_type2,... \
116
  protocol=D_channel_protocol1,D_channel_protocol2,... \
117
  id=idstring1%idstring2 ...
118
 
119
where "iobaseN" represents the I/O base address of the Nth card, "membaseN"
120
the memory base address of the Nth card, etc.
121
 
122
The reason for the delimiter "%" being used in the idstrings is that ","
123
won't work with the current modules package.
124
 
125
The parameters may be specified in any order. For example, the "io"
126
parameter may precede the "irq" parameter, or vice versa. If several
127
cards are installed, the ordering within the comma separated parameter
128
lists must of course be consistent.
129
 
130
Only parameters applicable to the card type need to be specified. For
131
example, the Teles 16.3 card is not memory-mapped, so the "mem"
132
parameter may be omitted for this card. Sometimes it may be necessary
133
to specify a dummy parameter, however. This is the case when there is
134
a card of a different type later in the list that needs a parameter
135
which the preceding card does not. For instance, if a Teles 16.0 card
136
is listed after a Teles 16.3 card, a dummy memory base parameter of 0
137
must be specified for the 16.3. Instead of a dummy value, the parameter
138
can also be skipped by simply omitting the value. For example:
139
mem=,0xd0000. See example 6 below.
140
 
141
The parameter for the D-Channel protocol may be omitted if you selected the
142
correct one during kernel config. Valid values are "1" for German 1TR6,
143
"2" for EDSS1 (Euro ISDN), "3" for leased lines (no D-Channel) and "4"
144
for US NI1.
145
With US NI1 you have to include your SPID into the MSN setting in the form
146
: for example (your phonenumber is 1234 your SPID 5678):
147
AT&E1234:5678                       on ttyI interfaces
148
isdnctrl eaz ippp0 1234:5678        on network devices
149
 
150
The Creatix/Teles PnP cards use io1= and io2= instead of io= for specifying
151
the I/O addresses of the ISAC and HSCX chips, respectively.
152
 
153
Card types:
154
 
155
    Type                Required parameters (in addition to type and protocol)
156
 
157
    1   Teles 16.0               irq, mem, io
158
    2   Teles  8.0               irq, mem
159
    3   Teles 16.3 (non PnP)     irq, io
160
    4   Creatix/Teles PnP        irq, io0 (ISAC), io1 (HSCX)
161
    5   AVM A1 (Fritz)           irq, io
162
    6   ELSA PCC/PCF cards       io or nothing for autodetect (the iobase is
163
                                 required only if you have more than one ELSA
164
                                 card in your PC)
165
    7   ELSA Quickstep 1000      irq, io  (from isapnp setup)
166
    8   Teles 16.3 PCMCIA        irq, io
167
    9   ITK ix1-micro Rev.2      irq, io
168
   10   ELSA PCMCIA              irq, io  (set with card manager)
169
   11   Eicon.Diehl Diva ISA PnP irq, io
170
   11   Eicon.Diehl Diva PCI     no parameter
171
   12   ASUS COM ISDNLink        irq, io  (from isapnp setup)
172
   13   HFC-2BS0 based cards     irq, io
173
   14   Teles 16.3c PnP          irq, io
174
   15   Sedlbauer Speed Card     irq, io
175
   15   Sedlbauer PC/104         irq, io
176
   15   Sedlbauer Speed PCI      no parameter
177
   16   USR Sportster internal   irq, io
178
   17   MIC card                 irq, io
179
   18   ELSA Quickstep 1000PCI   no parameter
180
   19   Compaq ISDN S0 ISA card  irq, io0, io1, io (from isapnp setup io=IO2)
181
   20   NETjet PCI card          no parameter
182
   21   Teles PCI                no parameter
183
   22   Sedlbauer Speed Star (PCMCIA) irq, io (set with card manager)
184
   24   Dr. Neuhaus Niccy PnP    irq, io0, io1 (from isapnp setup)
185
   24   Dr. Neuhaus Niccy PCI    no parameter
186
   25   Teles S0Box              irq, io (of the used lpt port)
187
   26   AVM A1 PCMCIA (Fritz!)   irq, io (set with card manager)
188
   27   AVM PnP (Fritz!PnP)      irq, io  (from isapnp setup)
189
   27   AVM PCI (Fritz!PCI)      no parameter
190
   28   Sedlbauer Speed Fax+     irq, io (from isapnp setup)
191
   29   Siemens I-Surf 1.0       irq, io, memory (from isapnp setup)
192
   30   ACER P10                 irq, io (from isapnp setup)
193
   31   HST Saphir               irq, io
194
   32   Telekom A4T              none
195
   33   Scitel Quadro            subcontroller (4*S0, subctrl 1...4)
196
   34   Gazel ISDN cards (ISA)   irq,io
197
   34   Gazel ISDN cards (PCI)   none
198
   35   HFC 2BDS0 PCI            none
199
   36   W6692 based PCI cards    none
200
   37   HFC 2BDS0 S+, SP         irq,io
201
   38   NETspider U PCI card     none
202
   39   HFC 2BDS0 SP/PCMCIA      irq,io (set with cardmgr)
203
   40   hotplug interface
204
   41   Formula-n enter:now PCI  none
205
 
206
At the moment IRQ sharing is only possible with PCI cards. Please make sure
207
that your IRQ is free and enabled for ISA use.
208
 
209
 
210
Examples for module loading
211
 
212
1. Teles 16.3, Euro ISDN, I/O base 280 hex, IRQ 10
213
   modprobe hisax type=3 protocol=2 io=0x280 irq=10
214
 
215
2. Teles 16.0, 1TR6 ISDN, I/O base d80 hex, IRQ 5, Memory d0000 hex
216
   modprobe hisax protocol=1 type=1 io=0xd80 mem=0xd0000 irq=5
217
 
218
3. Fritzcard, Euro ISDN, I/O base 340 hex, IRQ 10 and ELSA PCF, Euro ISDN
219
   modprobe hisax type=5,6 protocol=2,2 io=0x340 irq=10 id=Fritz%Elsa
220
 
221
4. Any ELSA PCC/PCF card, Euro ISDN
222
   modprobe hisax type=6 protocol=2
223
 
224
5. Teles 16.3 PnP, Euro ISDN, with isapnp configured
225
   isapnp config:  (INT 0 (IRQ 10 (MODE +E)))
226
                   (IO 0 (BASE 0x0580))
227
                   (IO 1 (BASE 0x0180))
228
   modprobe hisax type=4 protocol=2 irq=10 io0=0x580 io1=0x180
229
 
230
   In the current version of HiSax, you can instead simply use
231
 
232
   modprobe hisax type=4 protocol=2
233
 
234
   if you configured your kernel for ISAPnP. Don't run isapnp in
235
   this case!
236
 
237
6. Teles 16.3, Euro ISDN, I/O base 280 hex, IRQ 12 and
238
   Teles 16.0, 1TR6, IRQ 5, Memory d0000 hex
239
   modprobe hisax type=3,1 protocol=2,1 io=0x280 mem=0,0xd0000
240
 
241
   Please note the dummy 0 memory address for the Teles 16.3, used as a
242
   placeholder as described above, in the last example.
243
 
244
7. Teles PCMCIA, Euro ISDN, I/O base 180 hex, IRQ 15 (default values)
245
   modprobe hisax type=8 protocol=2 io=0x180 irq=15
246
 
247
 
248
b) using LILO/LOADLIN, with the driver compiled directly into the kernel
249
------------------------------------------------------------------------
250
 
251
hisax=typ1,dp1,pa_1,pb_1,pc_1[,typ2,dp2,pa_2 ... \
252
      typn,dpn,pa_n,pb_n,pc_n][,idstring1[,idstring2,...,idstringn]]
253
 
254
where
255
     typ1 = type of 1st card (default depends on kernel settings)
256
     dp1  = D-Channel protocol of 1st card. 1=1TR6, 2=EDSS1, 3=leased
257
     pa_1 = 1st parameter (depending on the type of the card)
258
     pb_1 = 2nd parameter (    "     "   "   "   "   "   "  )
259
     pc_1 = 3rd parameter (    "     "   "   "   "   "   "  )
260
 
261
     typ2,dp2,pa_2,pb_2,pc_2 = Parameters of the second card (defaults: none)
262
     typn,dpn,pa_n,pb_n,pc_n = Parameters of the n'th card (up to 16 cards are
263
                                                                     supported)
264
 
265
     idstring = Driver ID for accessing the particular card with utility
266
                programs and for identification when using a line monitor
267
                (default: "HiSax")
268
 
269
                Note: the ID string must start with an alphabetical character!
270
 
271
Card types:
272
 
273
type
274
    1   Teles 16.0              pa=irq  pb=membase  pc=iobase
275
    2   Teles  8.0              pa=irq  pb=membase
276
    3   Teles 16.3              pa=irq  pb=iobase
277
    4   Creatix/Teles PNP       ONLY WORKS AS A MODULE !
278
    5   AVM A1 (Fritz)          pa=irq  pb=iobase
279
    6   ELSA PCC/PCF cards      pa=iobase or nothing for autodetect
280
    7   ELSA Quickstep 1000     ONLY WORKS AS A MODULE !
281
    8   Teles S0 PCMCIA         pa=irq  pb=iobase
282
    9   ITK ix1-micro Rev.2     pa=irq  pb=iobase
283
   10   ELSA PCMCIA             pa=irq, pb=io  (set with card manager)
284
   11   Eicon.Diehl Diva ISAPnP ONLY WORKS AS A MODULE !
285
   11   Eicon.Diehl Diva PCI    no parameter
286
   12   ASUS COM ISDNLink       ONLY WORKS AS A MODULE !
287
   13   HFC-2BS0 based cards    pa=irq  pb=io
288
   14   Teles 16.3c PnP         ONLY WORKS AS A MODULE !
289
   15   Sedlbauer Speed Card    pa=irq  pb=io (Speed Win only as module !)
290
   15   Sedlbauer PC/104        pa=irq  pb=io
291
   15   Sedlbauer Speed PCI     no parameter
292
   16   USR Sportster internal  pa=irq  pb=io
293
   17   MIC card                pa=irq  pb=io
294
   18   ELSA Quickstep 1000PCI  no parameter
295
   19   Compaq ISDN S0 ISA card ONLY WORKS AS A MODULE !
296
   20   NETjet PCI card         no parameter
297
   21   Teles PCI               no parameter
298
   22   Sedlbauer Speed Star (PCMCIA)  pa=irq, pb=io  (set with card manager)
299
   24   Dr. Neuhaus Niccy PnP   ONLY WORKS AS A MODULE !
300
   24   Dr. Neuhaus Niccy PCI   no parameter
301
   25   Teles S0Box             pa=irq, pb=io (of the used lpt port)
302
   26   AVM A1 PCMCIA (Fritz!)  pa=irq, pb=io (set with card manager)
303
   27   AVM PnP (Fritz!PnP)     ONLY WORKS AS A MODULE !
304
   27   AVM PCI (Fritz!PCI)     no parameter
305
   28   Sedlbauer Speed Fax+    ONLY WORKS AS A MODULE !
306
   29   Siemens I-Surf 1.0      ONLY WORKS AS A MODULE !
307
   30   ACER P10                ONLY WORKS AS A MODULE !
308
   31   HST Saphir              pa=irq, pb=io
309
   32   Telekom A4T             no parameter
310
   33   Scitel Quadro           subcontroller (4*S0, subctrl 1...4)
311
   34   Gazel ISDN cards (ISA)  pa=irq, pb=io
312
   34   Gazel ISDN cards (PCI)  no parameter
313
   35   HFC 2BDS0 PCI           no parameter
314
   36   W6692 based PCI cards   none
315
   37   HFC 2BDS0 S+,SP/PCMCIA  ONLY WORKS AS A MODULE !
316
   38   NETspider U PCI card    none
317
   39   HFC 2BDS0 SP/PCMCIA     ONLY WORKS AS A MODULE !
318
   40   hotplug interface       ONLY WORKS AS A MODULE !
319
   41   Formula-n enter:now PCI none
320
 
321
Running the driver
322
------------------
323
 
324
When you insmod isdn.o and hisax.o (or with the in-kernel version, during
325
boot time), a few lines should appear in your syslog. Look for something like:
326
 
327
Apr 13 21:01:59 kke01 kernel: HiSax: Driver for Siemens chip set ISDN cards
328
Apr 13 21:01:59 kke01 kernel: HiSax: Version 2.9
329
Apr 13 21:01:59 kke01 kernel: HiSax: Revisions 1.14/1.9/1.10/1.25/1.8
330
Apr 13 21:01:59 kke01 kernel: HiSax: Total 1 card defined
331
Apr 13 21:01:59 kke01 kernel: HiSax: Card 1 Protocol EDSS1 Id=HiSax1 (0)
332
Apr 13 21:01:59 kke01 kernel: HiSax: Elsa driver Rev. 1.13
333
...
334
Apr 13 21:01:59 kke01 kernel: Elsa: PCF-Pro found at 0x360 Rev.:C IRQ 10
335
Apr 13 21:01:59 kke01 kernel: Elsa: timer OK; resetting card
336
Apr 13 21:01:59 kke01 kernel: Elsa: HSCX version A: V2.1  B: V2.1
337
Apr 13 21:01:59 kke01 kernel: Elsa: ISAC 2086/2186 V1.1
338
...
339
Apr 13 21:01:59 kke01 kernel: HiSax: DSS1 Rev. 1.14
340
Apr 13 21:01:59 kke01 kernel: HiSax: 2 channels added
341
 
342
This means that the card is ready for use.
343
Cabling problems or line-downs are not detected, and only some ELSA cards can
344
detect the S0 power.
345
 
346
Remember that, according to the new strategy for accessing low-level drivers
347
from within isdn4linux, you should also define a driver ID while doing
348
insmod: Simply append hisax_id= to the insmod command line. This
349
string MUST NOT start with a digit or a small 'x'!
350
 
351
At this point you can run a 'cat /dev/isdnctrl0' and view debugging messages.
352
 
353
At the moment, debugging messages are enabled with the hisaxctrl tool:
354
 
355
    hisaxctrl  DebugCmd 
356
 
357
 default is HiSax, if you didn't specify one.
358
 
359
DebugCmd is  1  for generic debugging
360
            11  for layer 1 development debugging
361
            13  for layer 3 development debugging
362
 
363
where  is the integer sum of the following debugging
364
options you wish enabled:
365
 
366
With DebugCmd set to 1:
367
 
368
   0x0001  Link-level <--> hardware-level communication
369
   0x0002  Top state machine
370
   0x0004  D-Channel Frames for isdnlog
371
   0x0008  D-Channel Q.921
372
   0x0010  B-Channel X.75
373
   0x0020  D-Channel l2
374
   0x0040  B-Channel l2
375
   0x0080  D-Channel link state debugging
376
   0x0100  B-Channel link state debugging
377
   0x0200  TEI debug
378
   0x0400  LOCK debug in callc.c
379
   0x0800  More paranoid debug in callc.c (not for normal use)
380
   0x1000  D-Channel l1 state debugging
381
   0x2000  B-Channel l1 state debugging
382
 
383
With DebugCmd set to 11:
384
 
385
   0x0001  Warnings (default: on)
386
   0x0002  IRQ status
387
   0x0004  ISAC
388
   0x0008  ISAC FIFO
389
   0x0010  HSCX
390
   0x0020  HSCX FIFO (attention: full B-Channel output!)
391
   0x0040  D-Channel LAPD frame types
392
   0x0080  IPAC debug
393
   0x0100  HFC receive debug
394
   0x0200  ISAC monitor debug
395
   0x0400  D-Channel frames for isdnlog (set with 1 0x4 too)
396
   0x0800  D-Channel message verbose
397
 
398
With DebugCmd set to 13:
399
 
400
         1  Warnings (default: on)
401
         2  l3 protocol descriptor errors
402
         4  l3 state machine
403
         8  charge info debugging (1TR6)
404
 
405
For example, 'hisaxctrl HiSax 1 0x3ff' enables full generic debugging.
406
 
407
Because of some obscure problems with some switch equipment, the delay
408
between the CONNECT message and sending the first data on the B-channel is now
409
configurable with
410
 
411
hisaxctrl  2 
412
 in ms Value between 50 and 800 ms is recommended.
413
 
414
Downloading Firmware
415
--------------------
416
At the moment, the Sedlbauer speed fax+ is the only card, which
417
needs to download firmware.
418
The firmware is downloaded with the hisaxctrl tool:
419
 
420
    hisaxctrl  9 
421
 
422
 default is HiSax, if you didn't specify one,
423
 
424
where  is the filename of the firmware file.
425
 
426
For example, 'hisaxctrl HiSax 9 ISAR.BIN' downloads the firmware for
427
ISAR based cards (like the Sedlbauer speed fax+).
428
 
429
Warning
430
-------
431
HiSax is a work in progress and may crash your machine.
432
For certification look at HiSax.cert file.
433
 
434
Limitations
435
-----------
436
At this time, HiSax only works on Euro ISDN lines and German 1TR6 lines.
437
For leased lines see appendix.
438
 
439
Bugs
440
----
441
If you find any, please let me know.
442
 
443
 
444
Thanks
445
------
446
Special thanks to:
447
 
448
        Emil Stephan for the name HiSax which is a mix of HSCX and ISAC.
449
 
450
        Fritz Elfert, Jan den Ouden, Michael Hipp, Michael Wein,
451
        Andreas Kool, Pekka Sarnila, Sim Yskes, Johan Myrre'en,
452
        Klaus-Peter Nischke (ITK AG), Christof Petig, Werner Fehn (ELSA GmbH),
453
        Volker Schmidt
454
        Edgar Toernig and Marcus Niemann for the Sedlbauer driver
455
        Stephan von Krawczynski
456
        Juergen Quade for the Leased Line part
457
        Klaus Lichtenwalder (Klaus.Lichtenwalder@WebForum.DE), for ELSA PCMCIA support
458
        Enrik Berkhan (enrik@starfleet.inka.de) for S0BOX specific stuff
459
        Ton van Rosmalen for Teles PCI
460
        Petr Novak  for Winbond W6692 support
461
        Werner Cornelius  for HFC-PCI, HFC-S(+/P) and supplementary services support
462
        and more people who are hunting bugs. (If I forgot somebody, please
463
        send me a mail).
464
 
465
        Firma ELSA GmbH
466
        Firma Eicon.Diehl GmbH
467
        Firma Dynalink NL
468
        Firma ASUSCOM NETWORK INC. Taiwan
469
        Firma S.u.S.E
470
        Firma ith Kommunikationstechnik GmbH
471
        Firma Traverse Technologie Australia
472
        Firma Medusa GmbH  (www.medusa.de).
473
        Firma Quant-X Austria for sponsoring a DEC Alpha board+CPU
474
        Firma Cologne Chip Designs GmbH
475
 
476
        My girl friend and partner in life Ute for her patience with me.
477
 
478
 
479
Enjoy,
480
 
481
Karsten Keil
482
keil@isdn4linux.de
483
 
484
 
485
Appendix: Teles PCMCIA driver
486
-----------------------------
487
 
488
See
489
   http://www.stud.uni-wuppertal.de/~ea0141/pcmcia.html
490
for instructions.
491
 
492
Appendix: Linux and ISDN-leased lines
493
-------------------------------------
494
 
495
Original from Juergen Quade, new version KKe.
496
 
497
Attention NEW VERSION, the old leased line syntax won't work !!!
498
 
499
You can use HiSax to connect your Linux-Box via an ISDN leased line
500
to e.g. the Internet:
501
 
502
1. Build a kernel which includes the HiSax driver either as a module
503
   or as part of the kernel.
504
     cd /usr/src/linux
505
     make menuconfig
506
     
507
     make clean; make zImage; make modules; make modules_install
508
2. Install the new kernel
509
     cp /usr/src/linux/arch/i386/boot/zImage /etc/kernel/linux.isdn
510
     vi /etc/lilo.conf
511
     
512
     lilo
513
3. in case the hisax driver is a "fixed" part of the kernel, configure
514
   the driver with lilo:
515
     vi /etc/lilo.conf
516
     
517
     lilo
518
   Your lilo.conf _might_ look like the following:
519
 
520
        # LILO configuration-file
521
        # global section
522
    # teles 16.0 on IRQ=5, MEM=0xd8000, PORT=0xd80
523
        append="hisax=1,3,5,0xd8000,0xd80,HiSax"
524
    # teles 16.3 (non pnp) on IRQ=15, PORT=0xd80
525
        # append="hisax=3,3,5,0xd8000,0xd80,HiSax"
526
        boot=/dev/sda
527
        compact        # faster, but won't work on all systems.
528
        linear
529
        read-only
530
        prompt
531
        timeout=100
532
        vga = normal    # force sane state
533
        # Linux bootable partition config begins
534
        image = /etc/kernel/linux.isdn
535
        root = /dev/sda1
536
        label = linux.isdn
537
        #
538
        image = /etc/kernel/linux-2.0.30
539
        root = /dev/sda1
540
        label = linux.secure
541
 
542
   In the line starting with "append" you have to adapt the parameters
543
   according to your card (see above in this file)
544
 
545
3. boot the new linux.isdn kernel
546
4. start the ISDN subsystem:
547
   a) load - if necessary - the modules (depends, whether you compiled
548
      the ISDN driver as module or not)
549
      According to the type of card you have to specify the necessary
550
      driver parameter (irq, io, mem, type, protocol).
551
      For the leased line the protocol is "3". See the table above for
552
      the parameters, which you have to specify depending on your card.
553
   b) configure i4l
554
      /sbin/isdnctrl addif isdn0
555
      # EAZ  1 -- B1 channel   2 --B2 channel
556
      /sbin/isdnctrl eaz isdn0 1
557
      /sbin/isdnctrl secure isdn0 on
558
      /sbin/isdnctrl huptimeout isdn0 0
559
      /sbin/isdnctrl l2_prot isdn0 hdlc
560
      # Attention you must not set an outgoing number !!! This won't work !!!
561
      # The incoming number is LEASED0 for the first card, LEASED1 for the
562
      # second and so on.
563
      /sbin/isdnctrl addphone isdn0 in LEASED0
564
      # Here is no need to bind the channel.
565
   c) in case the remote partner is a CISCO:
566
      /sbin/isdnctrl encap isdn0 cisco-h
567
   d) configure the interface
568
      /sbin/ifconfig isdn0 ${LOCAL_IP} pointopoint ${REMOTE_IP}
569
   e) set the routes
570
      /sbin/route add -host ${REMOTE_IP} isdn0
571
      /sbin/route add default gw ${REMOTE_IP}
572
   f) switch the card into leased mode for each used B-channel
573
      /sbin/hisaxctrl HiSax 5 1
574
 
575
Remarks:
576
a) Use state of the art isdn4k-utils
577
 
578
Here an example script:
579
#!/bin/sh
580
# Start/Stop ISDN leased line connection
581
 
582
I4L_AS_MODULE=yes
583
I4L_REMOTE_IS_CISCO=no
584
I4L_MODULE_PARAMS="type=16 io=0x268 irq=7 "
585
I4L_DEBUG=no
586
I4L_LEASED_128K=yes
587
LOCAL_IP=192.168.1.1
588
REMOTE_IP=192.168.2.1
589
 
590
case "$1" in
591
    start)
592
        echo "Starting ISDN ..."
593
        if [ ${I4L_AS_MODULE} = "yes" ]; then
594
                echo "loading modules..."
595
                /sbin/modprobe hisax ${I4L_MODULE_PARAMS}
596
        fi
597
        # configure interface
598
        /sbin/isdnctrl addif isdn0
599
        /sbin/isdnctrl secure isdn0 on
600
        if [ ${I4L_DEBUG} = "yes" ]; then
601
                /sbin/isdnctrl verbose 7
602
                /sbin/hisaxctrl HiSax 1 0xffff
603
                /sbin/hisaxctrl HiSax 11 0xff
604
                cat  /dev/isdnctrl >/tmp/lea.log &
605
        fi
606
        if [ ${I4L_REMOTE_IS_CISCO} = "yes" ]; then
607
                /sbin/isdnctrl encap isdn0 cisco-h
608
        fi
609
        /sbin/isdnctrl huptimeout isdn0 0
610
        # B-CHANNEL 1
611
        /sbin/isdnctrl eaz isdn0 1
612
        /sbin/isdnctrl l2_prot isdn0 hdlc
613
        # 1. card
614
        /sbin/isdnctrl addphone isdn0 in LEASED0
615
        if [ ${I4L_LEASED_128K} = "yes" ]; then
616
                /sbin/isdnctrl addslave isdn0 isdn0s
617
                /sbin/isdnctrl secure isdn0s on
618
                /sbin/isdnctrl huptimeout isdn0s 0
619
                # B-CHANNEL 2
620
                /sbin/isdnctrl eaz isdn0s 2
621
                /sbin/isdnctrl l2_prot isdn0s hdlc
622
                # 1. card
623
                /sbin/isdnctrl addphone isdn0s in LEASED0
624
                if [ ${I4L_REMOTE_IS_CISCO} = "yes" ]; then
625
                        /sbin/isdnctrl encap isdn0s cisco-h
626
                fi
627
        fi
628
        /sbin/isdnctrl dialmode isdn0 manual
629
        # configure tcp/ip
630
        /sbin/ifconfig isdn0 ${LOCAL_IP} pointopoint ${REMOTE_IP}
631
        /sbin/route add -host ${REMOTE_IP} isdn0
632
        /sbin/route add default gw ${REMOTE_IP}
633
        # switch to leased mode
634
        # B-CHANNEL 1
635
        /sbin/hisaxctrl HiSax 5 1
636
        if [ ${I4L_LEASED_128K} = "yes" ]; then
637
                # B-CHANNEL 2
638
                sleep 10; /* Wait for master */
639
                /sbin/hisaxctrl HiSax 5 2
640
        fi
641
        ;;
642
    stop)
643
        /sbin/ifconfig isdn0 down
644
        /sbin/isdnctrl delif isdn0
645
        if [ ${I4L_DEBUG} = "yes" ]; then
646
                killall cat
647
        fi
648
        if [ ${I4L_AS_MODULE} = "yes" ]; then
649
                /sbin/rmmod hisax
650
                /sbin/rmmod isdn
651
                /sbin/rmmod ppp
652
                /sbin/rmmod slhc
653
        fi
654
        ;;
655
    *)
656
        echo "Usage: $0 {start|stop}"
657
        exit 1
658
esac
659
exit 0

powered by: WebSVN 2.1.0

© copyright 1999-2025 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.