home *** CD-ROM | disk | FTP | other *** search
/ Chip 1998 September / CHIP Eylül 1998.iso / Slackwar / docs / linux-2.0.34 / isdn / README.HiSax < prev    next >
Encoding:
Text File  |  1997-08-04  |  11.6 KB  |  324 lines

  1. 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 S0/PCMCIA
  27. Creatix PnP S0 
  28. AVM A1 (Fritz)
  29. ELSA Microlink PCC-16, PCF, PCF-Pro, PCC-8
  30. ELSA Quickstep 1000
  31. ELSA PCMCIA
  32. ITK ix1-micro Rev.2
  33.  
  34. Note: PCF, PCF-Pro: up to now, only the ISDN part is supported
  35.       PCC-8: not tested yet
  36.       Teles PCMCIA is EXPERIMENTAL
  37.  
  38. If you know other passive cards with the Siemens chipset, please let me know.
  39. To use the PNP cards you need the isapnptools.
  40. You can combine any card, if there is no conflict between the ressources
  41. (io, mem, irq), with one exception: The ELSA PCMCIA cannot work with an other
  42. non PCMCIA ELSA card at the same time. You cannot select ELSA ISA and ELSA
  43. PCMCIA support at the same time during kernel config.
  44.  
  45.  
  46. Configuring the driver
  47. ----------------------
  48.  
  49. The HiSax driver can either be built directly into the kernel or as a module.
  50. It can be configured using the command line feature while loading the kernel
  51. with LILO or LOADLIN or, if built as a module, using insmod/modprobe with
  52. parameters.
  53. There is also some config needed before you compile the kernel and/or
  54. modules. It is enclose in the normal "make [menu]config" target at the
  55. kernel. Don't forget it, especially to select the right D-channel protocol.
  56.  
  57. Please note: All PnP cards need to be configured with isapnp and will work
  58. only with the HiSax driver used as a module.
  59.  
  60. a) when built as a module
  61. -------------------------
  62.  
  63. insmod/modprobe  hisax.o \
  64.   io=iobase irq=IRQ mem=membase type=card_type \
  65.   protocol=D_channel_protocol id=idstring
  66.  
  67. or, if several cards are installed:
  68.  
  69. insmod/modprobe hisax.o \
  70.   io=iobase1,iobase2,... irq=IRQ1,IRQ2,... mem=membase1,membase2,... \
  71.   type=card_type1,card_type2,... \
  72.   protocol=D_channel_protocol1,D_channel_protocol2,... \
  73.   id=idstring1%idstring2 ...
  74.  
  75. where "iobaseN" represents the I/O base address of the Nth card, "membaseN"
  76. the memory base address of the Nth card, etc.
  77.  
  78. The reason for the delimiter "%" being used in the idstrings is that ","
  79. won't work with the current modules package.
  80.  
  81. The parameters may be specified in any order. For example, the "io"
  82. parameter may precede the "irq" parameter, or vice versa. If several
  83. cards are installed, the ordering within the comma separated parameter
  84. lists must of course be consistent.
  85.  
  86. Only parameters applicable to the card type need to be specified. For
  87. example, the Teles 16.3 card is not memory-mapped, so the "mem"
  88. parameter may be omitted for this card. Sometimes it may be necessary
  89. to specify a dummy parameter, however. This is the case when there is
  90. a card of a different type later in the list that needs a parameter
  91. which the preceding card does not. For instance, if a Teles 16.0 card
  92. is listed after a Teles 16.3 card, a dummy memory base parameter of 0
  93. must be specified for the 16.3. Instead of a dummy value, the parameter
  94. can also be skipped by simply omitting the value. For example:
  95. mem=,0xd0000. See example 6 below.
  96.  
  97. The parameter for the D-Channel protocol may be omitted if you selected the
  98. correct one during kernel config. Valid values are "1" for German 1TR6,
  99. "2" for EDSS1 (Euro ISDN) and "3" for leased lines (no D-Channel).
  100.  
  101. The Creatix/Teles PnP cards use io1= and io2= instead of io= for specifying 
  102. the I/O addresses of the ISAC and HSCX chips, respectively.
  103.  
  104. Card types:
  105.  
  106.     Type                Required parameters (in addition to type and protocol)
  107.  
  108.     1   Teles 16.0               irq, mem, io
  109.     2   Teles  8.0               irq, mem
  110.     3   Teles 16.3 (non PnP)     irq, io
  111.     4   Creatix/Teles PnP        irq, io0 (ISAC), io1 (HSCX)
  112.     5   AVM A1 (Fritz)           irq, io
  113.     6   ELSA PCC/PCF cards       io or nothing for autodetect (the iobase is
  114.                                  required only if you have more than one ELSA
  115.                                  card in your PC)
  116.     7   ELSA Quickstep 1000     irq, io  (from isapnp setup)
  117.     7   ELSA PCMCIA         irq, io  (set with card manager)
  118.     8   Teles 16.3 PCMCIA          irq, io
  119.     9   ITK ix1-micro Rev.2      irq, io
  120.         
  121. At the moment IRQ sharing is not possible. Please make sure that your IRQ
  122. is free and enabled for ISA use.
  123. Note: For using the ELSA PCMCIA you need the cardmanager under MSDOS for
  124. enabling in the moment, then boot linux with loadlin.
  125.  
  126.  
  127. Examples for module loading
  128.  
  129. 1. Teles 16.3, Euro ISDN, I/O base 280 hex, IRQ 10
  130.    modprobe hisax type=3 protocol=2 io=0x280 irq=10
  131.  
  132. 2. Teles 16.0, 1TR6 ISDN, I/O base d80 hex, IRQ 5, Memory d0000 hex
  133.    modprobe hisax protocol=1 type=1 io=0xd80 mem=0xd0000 irq=5
  134.  
  135. 3. Fritzcard, Euro ISDN, I/O base 340 hex, IRQ 10 and ELSA PCF, Euro ISDN
  136.    modprobe hisax type=5,6 protocol=2,2 io=0x340 irq=10 id=Fritz%Elsa
  137.  
  138. 4. Any ELSA PCC/PCF card, Euro ISDN
  139.    modprobe hisax type=6 protocol=2
  140.  
  141. 5. Teles 16.3 PnP, Euro ISDN, with isapnp configured 
  142.    isapnp config:  (INT 0 (IRQ 10 (MODE +E)))
  143.             (IO 0 (BASE 0x0580))
  144.                    (IO 1 (BASE 0x0180))
  145.    modprobe hisax type=4 protocol=2 irq=10 io0=0x580 io1=0x180
  146.  
  147. 6. Teles 16.3, Euro ISDN, I/O base 280 hex, IRQ 12 and
  148.    Teles 16.0, 1TR6, IRQ 5, Memory d0000 hex
  149.    modprobe hisax type=3,1 protocol=2,1 io=0x280 mem=0,0xd0000
  150.  
  151.    Please note the dummy 0 memory address for the Teles 16.3, used as a
  152.    placeholder as described above, in the last example.
  153.  
  154. 7. Teles PCMCIA, Euro ISDN, I/O base 180 hex, IRQ 15 (default values)
  155.    modprobe hisax type=8 protocol=2 io=0x180 irq=15
  156.  
  157.  
  158. b) using LILO/LOADLIN, with the driver compiled directly into the kernel
  159. ------------------------------------------------------------------------
  160.  
  161. hisax=typ1,dp1,pa_1,pb_1,pc_1[,typ2,dp2,pa_2 ... \
  162.       typn,dpn,pa_n,pb_n,pc_n][,idstring1[,idstring2,...,idstringn]]
  163.  
  164. where
  165.      typ1 = type of 1st card (default depends on kernel settings)
  166.      dp1  = D-Channel protocol of 1st card. 1=1TR6, 2=EDSS1, 3=leased
  167.      pa_1 = 1st parameter (depending on the type of the card)
  168.      pb_1 = 2nd parameter (    "     "   "   "   "   "   "  )
  169.      pc_1 = 3rd parameter (    "     "   "   "   "   "   "  )
  170.  
  171.      typ2,dp2,pa_2,pb_2,pc_2 = Parameters of the second card (defaults: none)
  172.      typn,dpn,pa_n,pb_n,pc_n = Parameters of the n'th card (up to 16 cards are
  173.                                                                      supported)
  174.  
  175.      idstring = Driver ID for accessing the particular card with utility
  176.                 programs and for identification when using a line monitor
  177.                 (default: "HiSax")
  178.  
  179.                 Note: the ID string must start with an alphabetical character!
  180.  
  181. Card types:
  182.        
  183.   type  
  184.     1     Teles 16.0             pa=irq    pb=membase    pc=iobase
  185.     2     Teles  8.0          pa=irq    pb=membase
  186.     3     Teles 16.3          pa=irq    pb=iobase
  187.     4     Creatix/Teles PNP         ONLY WORKS AS A MODULE !
  188.     5     AVM A1 (Fritz)      pa=irq    pb=iobase
  189.     6     ELSA PCC/PCF cards      pa=iobase or nothing for autodetect
  190.     7   ELSA Quickstep 1000    ONLY WORKS AS A MODULE !
  191.     7   ELSA PCMCIA        irq, io  (set with card manager)
  192.     8   Teles S0 PCMCIA        pa=irq  pb=iobase
  193.     9   ITK ix1-micro Rev.2     pa=irq  pb=iobase
  194.  
  195.  
  196. Running the driver
  197. ------------------
  198.  
  199. When you insmod isdn.o and hisax.o (or with the in-kernel version, during 
  200. boot time), a few lines should appear in your syslog. Look for something like:
  201.  
  202. Apr 13 21:01:59 kke01 kernel: HiSax: Driver for Siemens chip set ISDN cards
  203. Apr 13 21:01:59 kke01 kernel: HiSax: Version 2.1
  204. Apr 13 21:01:59 kke01 kernel: HiSax: Revisions 1.14/1.9/1.10/1.25/1.8
  205. Apr 13 21:01:59 kke01 kernel: HiSax: Total 1 card defined
  206. Apr 13 21:01:59 kke01 kernel: HiSax: Card 1 Protocol EDSS1 Id=HiSax1 (0)
  207. Apr 13 21:01:59 kke01 kernel: HiSax: Elsa driver Rev. 1.13
  208. ...
  209. Apr 13 21:01:59 kke01 kernel: Elsa: PCF-Pro found at 0x360 Rev.:C IRQ 10
  210. Apr 13 21:01:59 kke01 kernel: Elsa: timer OK; resetting card
  211. Apr 13 21:01:59 kke01 kernel: Elsa: HSCX version A: V2.1  B: V2.1
  212. Apr 13 21:01:59 kke01 kernel: Elsa: ISAC 2086/2186 V1.1
  213. ...
  214. Apr 13 21:01:59 kke01 kernel: HiSax: DSS1 Rev. 1.14
  215. Apr 13 21:01:59 kke01 kernel: HiSax: 2 channels added
  216.  
  217. This means that the card is ready for use.
  218. Cabling problems or line-downs are not detected, and only ELSA cards can detect
  219. the S0 power.
  220.  
  221. Remember that, according to the new strategy for accessing low-level drivers
  222. from within isdn4linux, you should also define a driver ID while doing
  223. insmod: Simply append hisax_id=<SomeString> to the insmod command line. This
  224. string MUST NOT start with a digit or a small 'x'!
  225.  
  226. At this point you can run a 'cat /dev/isdnctrl0' and view debugging 
  227. messages. 
  228.  
  229. At the moment, debugging messages are enabled with the telesctrl tool:
  230.  
  231.     telesctrl <DriverId> DebugCmd <debugging_flags>
  232.  
  233. <DriverId> default is HiSax, if you didn't specified one.
  234.  
  235. DebugCmd is  1  for generic debugging
  236.             11  for layer 1 development debugging
  237.             13  for layer 3 development debugging
  238.  
  239. where <debugging_flags> is the integer sum of the following debugging
  240. options you wish enabled:
  241.  
  242. With DebugCmd set to 1:
  243.  
  244.          1  Link-level <--> hardware-level communication
  245.          2  Top state machine
  246.          4  D-Channel Q.931 (call control messages)
  247.          8  D-Channel Q.921
  248.         16  B-Channel X.75
  249.         32  D-Channel l2
  250.         64  B-Channel l2
  251.        128  D-Channel link state debugging
  252.        256  B-Channel link state debugging
  253.        512  TEI debug
  254.       1024  LOCK debug in callc.c
  255.       2048  More paranoid debug in callc.c (not for normal use)
  256.  
  257. With DebugCmd set to 11:
  258.  
  259.          1  Warnings (default: on)
  260.          2  IRQ status
  261.          4  ISAC
  262.          8  ISAC FIFO
  263.         16  HSCX
  264.         32  HSCX FIFO (attention: full B-Channel output!)
  265.         64  D-Channel LAPD frame types
  266.  
  267. With DebugCmd set to 13:
  268.  
  269.          1  Warnings (default: on)
  270.          2  l3 protocol discriptor errors
  271.          4  l3 state machine
  272.          8  charge info debugging (1TR6)
  273.  
  274. For example, 'telesctrl HiSax 1 0x3ff' enables full generic debugging.
  275.  
  276.  
  277. Warning
  278. -------
  279. HiSax is a work in progress and may crash your machine. It has not been
  280. certified and therefore operation on your PTT's ISDN network is probably
  281. illegal.
  282.  
  283.  
  284. Limitations
  285. -----------
  286. At this time, HiSax only works on Euro ISDN lines and German 1TR6 lines.
  287.  
  288.  
  289. Bugs 
  290. ----
  291. If you find any, please let me know. 
  292.  
  293.  
  294. Thanks
  295. ------
  296. Special thanks to:
  297.  
  298.         Emil Stephan for the name HiSax which is a mix of HSCX and ISAC.
  299.  
  300.         Fritz Elfert, Jan den Ouden, Michael Hipp, Michael Wein,
  301.         Andreas Kool, Pekka Sarnila, Sim Yskes, Johan Myrre'en,
  302.     Klaus-Peter Nischke (ITK AG), Christof Petig, Werner Fehn (ELSA GmbH),
  303.     Volker Schmidt
  304.         and more people who are hunting bugs. (If I forgot somebody, please
  305.     send me a mail). 
  306.  
  307.         Firma ELSA GmbH
  308.         
  309.         My girl friend and partner in life Ute for her patience with me.
  310.  
  311.  
  312. Enjoy,
  313.  
  314. Karsten Keil   
  315. keil@temic-ech.spacenet.de
  316.  
  317.  
  318. Appendix: Teles PCMCIA driver
  319. -----------------------------
  320.  
  321. See 
  322.    http://www.stud.uni-wuppertal.de/~ea0141/pcmcia.html
  323. for instructions.
  324.