Blame view

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