1HiSax is a Linux hardware-level driver for passive ISDN cards with Siemens 2chipset (ISAC_S 2085/2086/2186, HSCX SAB 82525). It is based on the Teles 3driver from Jan den Ouden. 4It is meant to be used with isdn4linux, an ISDN link-level module for Linux 5written 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 22Supported cards 23--------------- 24 25Teles 8.0/16.0/16.3 and compatible ones 26Teles 16.3c 27Teles S0/PCMCIA 28Teles PCI 29Teles S0Box 30Creatix S0Box 31Creatix PnP S0 32Compaq ISDN S0 ISA card 33AVM A1 (Fritz, Teledat 150) 34AVM Fritz PCMCIA 35AVM Fritz PnP 36AVM Fritz PCI 37ELSA Microlink PCC-16, PCF, PCF-Pro, PCC-8 38ELSA Quickstep 1000 39ELSA Quickstep 1000PCI 40ELSA Quickstep 3000 (same settings as QS1000) 41ELSA Quickstep 3000PCI 42ELSA PCMCIA 43ITK ix1-micro Rev.2 44Eicon Diva 2.0 ISA and PCI (S0 and U interface, no PRO version) 45Eicon Diva 2.01 ISA and PCI 46Eicon Diva 2.02 PCI 47Eicon Diva Piccola 48ASUSCOM NETWORK INC. ISDNLink 128K PC adapter (order code I-IN100-ST-D) 49Dynalink IS64PH (OEM version of ASUSCOM NETWORK INC. ISDNLink 128K adapter) 50PCBIT-DP (OEM version of ASUSCOM NETWORK INC. ISDNLink) 51HFC-2BS0 based cards (TeleInt SA1) 52Sedlbauer Speed Card (Speed Win, Teledat 100, PCI, Fax+) 53Sedlbauer Speed Star/Speed Star2 (PCMCIA) 54Sedlbauer ISDN-Controller PC/104 55USR Sportster internal TA (compatible Stollmann tina-pp V3) 56USR internal TA PCI 57ith Kommunikationstechnik GmbH MIC 16 ISA card 58Traverse Technologie NETjet PCI S0 card and NETspider U card 59Ovislink ISDN sc100-p card (NETjet driver) 60Dr. Neuhaus Niccy PnP/PCI 61Siemens I-Surf 1.0 62Siemens I-Surf 2.0 (with IPAC, try type 12 asuscom) 63ACER P10 64HST Saphir 65Berkom Telekom A4T 66Scitel Quadro 67Gazel ISDN cards 68HFC-PCI based cards 69Winbond W6692 based cards 70HFC-S+, HFC-SP/PCMCIA cards 71formula-n enternow 72Gerdes Power ISDN 73 74Note: 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 78If you know other passive cards with the Siemens chipset, please let me know. 79You can combine any card, if there is no conflict between the resources 80(io, mem, irq). 81 82 83Configuring the driver 84---------------------- 85 86The HiSax driver can either be built directly into the kernel or as a module. 87It can be configured using the command line feature while loading the kernel 88with LILO or LOADLIN or, if built as a module, using insmod/modprobe with 89parameters. 90There is also some config needed before you compile the kernel and/or 91modules. It is included in the normal "make [menu]config" target at the 92kernel. Don't forget it, especially to select the right D-channel protocol. 93 94Please note: In older versions of the HiSax driver, all PnP cards 95needed to be configured with isapnp and worked only with the HiSax 96driver used as a module. 97 98In the current version, HiSax will automatically use the in-kernel 99ISAPnP support, provided you selected it during kernel configuration 100(CONFIG_ISAPNP), if you don't give the io=, irq= command line parameters. 101 102The affected card types are: 4,7,12,14,19,27-30 103 104a) when built as a module 105------------------------- 106 107insmod/modprobe hisax.o \ 108 io=iobase irq=IRQ mem=membase type=card_type \ 109 protocol=D_channel_protocol id=idstring 110 111or, if several cards are installed: 112 113insmod/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 119where "iobaseN" represents the I/O base address of the Nth card, "membaseN" 120the memory base address of the Nth card, etc. 121 122The reason for the delimiter "%" being used in the idstrings is that "," 123won't work with the current modules package. 124 125The parameters may be specified in any order. For example, the "io" 126parameter may precede the "irq" parameter, or vice versa. If several 127cards are installed, the ordering within the comma separated parameter 128lists must of course be consistent. 129 130Only parameters applicable to the card type need to be specified. For 131example, the Teles 16.3 card is not memory-mapped, so the "mem" 132parameter may be omitted for this card. Sometimes it may be necessary 133to specify a dummy parameter, however. This is the case when there is 134a card of a different type later in the list that needs a parameter 135which the preceding card does not. For instance, if a Teles 16.0 card 136is listed after a Teles 16.3 card, a dummy memory base parameter of 0 137must be specified for the 16.3. Instead of a dummy value, the parameter 138can also be skipped by simply omitting the value. For example: 139mem=,0xd0000. See example 6 below. 140 141The parameter for the D-Channel protocol may be omitted if you selected the 142correct 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" 144for US NI1. 145With US NI1 you have to include your SPID into the MSN setting in the form 146<MSN>:<SPID> for example (your phonenumber is 1234 your SPID 5678): 147AT&E1234:5678 on ttyI interfaces 148isdnctrl eaz ippp0 1234:5678 on network devices 149 150The Creatix/Teles PnP cards use io1= and io2= instead of io= for specifying 151the I/O addresses of the ISAC and HSCX chips, respectively. 152 153Card 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 206At the moment IRQ sharing is only possible with PCI cards. Please make sure 207that your IRQ is free and enabled for ISA use. 208 209 210Examples for module loading 211 2121. Teles 16.3, Euro ISDN, I/O base 280 hex, IRQ 10 213 modprobe hisax type=3 protocol=2 io=0x280 irq=10 214 2152. 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 2183. 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 2214. Any ELSA PCC/PCF card, Euro ISDN 222 modprobe hisax type=6 protocol=2 223 2245. 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 2376. 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 2447. 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 248b) using LILO/LOADLIN, with the driver compiled directly into the kernel 249------------------------------------------------------------------------ 250 251hisax=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 254where 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 271Card types: 272 273type 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 321Running the driver 322------------------ 323 324When you insmod isdn.o and hisax.o (or with the in-kernel version, during 325boot time), a few lines should appear in your syslog. Look for something like: 326 327Apr 13 21:01:59 kke01 kernel: HiSax: Driver for Siemens chip set ISDN cards 328Apr 13 21:01:59 kke01 kernel: HiSax: Version 2.9 329Apr 13 21:01:59 kke01 kernel: HiSax: Revisions 1.14/1.9/1.10/1.25/1.8 330Apr 13 21:01:59 kke01 kernel: HiSax: Total 1 card defined 331Apr 13 21:01:59 kke01 kernel: HiSax: Card 1 Protocol EDSS1 Id=HiSax1 (0) 332Apr 13 21:01:59 kke01 kernel: HiSax: Elsa driver Rev. 1.13 333... 334Apr 13 21:01:59 kke01 kernel: Elsa: PCF-Pro found at 0x360 Rev.:C IRQ 10 335Apr 13 21:01:59 kke01 kernel: Elsa: timer OK; resetting card 336Apr 13 21:01:59 kke01 kernel: Elsa: HSCX version A: V2.1 B: V2.1 337Apr 13 21:01:59 kke01 kernel: Elsa: ISAC 2086/2186 V1.1 338... 339Apr 13 21:01:59 kke01 kernel: HiSax: DSS1 Rev. 1.14 340Apr 13 21:01:59 kke01 kernel: HiSax: 2 channels added 341 342This means that the card is ready for use. 343Cabling problems or line-downs are not detected, and only some ELSA cards can 344detect the S0 power. 345 346Remember that, according to the new strategy for accessing low-level drivers 347from within isdn4linux, you should also define a driver ID while doing 348insmod: Simply append hisax_id=<SomeString> to the insmod command line. This 349string MUST NOT start with a digit or a small 'x'! 350 351At this point you can run a 'cat /dev/isdnctrl0' and view debugging messages. 352 353At the moment, debugging messages are enabled with the hisaxctrl tool: 354 355 hisaxctrl <DriverId> DebugCmd <debugging_flags> 356 357<DriverId> default is HiSax, if you didn't specify one. 358 359DebugCmd is 1 for generic debugging 360 11 for layer 1 development debugging 361 13 for layer 3 development debugging 362 363where <debugging_flags> is the integer sum of the following debugging 364options you wish enabled: 365 366With 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 383With 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 398With 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 405For example, 'hisaxctrl HiSax 1 0x3ff' enables full generic debugging. 406 407Because of some obscure problems with some switch equipment, the delay 408between the CONNECT message and sending the first data on the B-channel is now 409configurable with 410 411hisaxctrl <DriverId> 2 <delay> 412<delay> in ms Value between 50 and 800 ms is recommended. 413 414Downloading Firmware 415-------------------- 416At the moment, the Sedlbauer speed fax+ is the only card, which 417needs to download firmware. 418The firmware is downloaded with the hisaxctrl tool: 419 420 hisaxctrl <DriverId> 9 <firmware_filename> 421 422<DriverId> default is HiSax, if you didn't specify one, 423 424where <firmware_filename> is the filename of the firmware file. 425 426For example, 'hisaxctrl HiSax 9 ISAR.BIN' downloads the firmware for 427ISAR based cards (like the Sedlbauer speed fax+). 428 429Warning 430------- 431HiSax is a work in progress and may crash your machine. 432For certification look at HiSax.cert file. 433 434Limitations 435----------- 436At this time, HiSax only works on Euro ISDN lines and German 1TR6 lines. 437For leased lines see appendix. 438 439Bugs 440---- 441If you find any, please let me know. 442 443 444Thanks 445------ 446Special 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 <petr.novak@i.cz> for Winbond W6692 support 461 Werner Cornelius <werner@isdn4linux.de> 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 479Enjoy, 480 481Karsten Keil 482keil@isdn4linux.de 483 484 485Appendix: Teles PCMCIA driver 486----------------------------- 487 488See 489 http://www.stud.uni-wuppertal.de/~ea0141/pcmcia.html 490for instructions. 491 492Appendix: Linux and ISDN-leased lines 493------------------------------------- 494 495Original from Juergen Quade, new version KKe. 496 497Attention NEW VERSION, the old leased line syntax won't work !!! 498 499You can use HiSax to connect your Linux-Box via an ISDN leased line 500to e.g. the Internet: 501 5021. 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 <ISDN subsystem - ISDN support -- HiSax> 507 make clean; make dep; make zImage; make modules; make modules_install 5082. Install the new kernel 509 cp /usr/src/linux/arch/i386/boot/zImage /etc/kernel/linux.isdn 510 vi /etc/lilo.conf 511 <add new kernel in the bootable image section> 512 lilo 5133. in case the hisax driver is a "fixed" part of the kernel, configure 514 the driver with lilo: 515 vi /etc/lilo.conf 516 <add HiSax driver parameter in the global section (see below)> 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 5453. boot the new linux.isdn kernel 5464. 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 575Remarks: 576a) Use state of the art isdn4k-utils 577 578Here an example script: 579#!/bin/sh 580# Start/Stop ISDN leased line connection 581 582I4L_AS_MODULE=yes 583I4L_REMOTE_IS_CISCO=no 584I4L_MODULE_PARAMS="type=16 io=0x268 irq=7 " 585I4L_DEBUG=no 586I4L_LEASED_128K=yes 587LOCAL_IP=192.168.1.1 588REMOTE_IP=192.168.2.1 589 590case "$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 658esac 659exit 0 660