| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1 | Driver for active AVM Controller. | 
 | 2 |  | 
 | 3 | The driver provides a kernel capi2.0 Interface (kernelcapi) and | 
 | 4 | on top of this a User-Level-CAPI2.0-interface (capi) | 
 | 5 | and a driver to connect isdn4linux with CAPI2.0 (capidrv). | 
 | 6 | The lowlevel interface can be used to implement a CAPI2.0 | 
 | 7 | also for passive cards since July 1999. | 
 | 8 |  | 
 | 9 | The author can be reached at calle@calle.in-berlin.de. | 
 | 10 | The command avmcapictrl is part of the isdn4k-utils. | 
 | 11 | t4-files can be found at ftp://ftp.avm.de/cardware/b1/linux/firmware | 
 | 12 |  | 
 | 13 | Currently supported cards: | 
 | 14 | 	B1 ISA (all versions) | 
 | 15 | 	B1 PCI | 
 | 16 | 	T1/T1B (HEMA card) | 
 | 17 | 	M1 | 
 | 18 | 	M2 | 
 | 19 | 	B1 PCMCIA | 
 | 20 |  | 
 | 21 | Installing | 
 | 22 | ---------- | 
 | 23 |  | 
 | 24 | You need at least /dev/capi20 to load the firmware. | 
 | 25 |  | 
 | 26 | mknod /dev/capi20 c 68 0 | 
 | 27 | mknod /dev/capi20.00 c 68 1 | 
 | 28 | mknod /dev/capi20.01 c 68 2 | 
 | 29 | . | 
 | 30 | . | 
 | 31 | . | 
 | 32 | mknod /dev/capi20.19 c 68 20 | 
 | 33 |  | 
 | 34 | Running | 
 | 35 | ------- | 
 | 36 |  | 
 | 37 | To use the card you need the t4-files to download the firmware. | 
 | 38 | AVM GmbH provides several t4-files for the different D-channel | 
 | 39 | protocols (b1.t4 for Euro-ISDN). Install these file in /lib/isdn. | 
 | 40 |  | 
 | 41 | if you configure as modules load the modules this way: | 
 | 42 |  | 
 | 43 | insmod /lib/modules/current/misc/capiutil.o | 
 | 44 | insmod /lib/modules/current/misc/b1.o | 
 | 45 | insmod /lib/modules/current/misc/kernelcapi.o | 
 | 46 | insmod /lib/modules/current/misc/capidrv.o | 
 | 47 | insmod /lib/modules/current/misc/capi.o | 
 | 48 |  | 
 | 49 | if you have an B1-PCI card load the module b1pci.o | 
 | 50 | insmod /lib/modules/current/misc/b1pci.o | 
 | 51 | and load the firmware with | 
 | 52 | avmcapictrl load /lib/isdn/b1.t4 1 | 
 | 53 |  | 
 | 54 | if you have an B1-ISA card load the module b1isa.o | 
 | 55 | and add the card by calling | 
 | 56 | avmcapictrl add 0x150 15 | 
 | 57 | and load the firmware by calling | 
 | 58 | avmcapictrl load /lib/isdn/b1.t4 1 | 
 | 59 |  | 
 | 60 | if you have an T1-ISA card load the module t1isa.o | 
 | 61 | and add the card by calling | 
 | 62 | avmcapictrl add 0x450 15 T1 0 | 
 | 63 | and load the firmware by calling | 
 | 64 | avmcapictrl load /lib/isdn/t1.t4 1 | 
 | 65 |  | 
 | 66 | if you have an PCMCIA card (B1/M1/M2) load the module b1pcmcia.o | 
 | 67 | before you insert the card. | 
 | 68 |  | 
 | 69 | Leased Lines with B1 | 
 | 70 | -------------------- | 
 | 71 | Init card and load firmware. | 
 | 72 | For an D64S use "FV: 1" as phone number | 
 | 73 | For an D64S2 use "FV: 1" and "FV: 2" for multilink | 
 | 74 | or "FV: 1,2" to use CAPI channel bundling. | 
 | 75 |  | 
 | 76 | /proc-Interface | 
 | 77 | ----------------- | 
 | 78 |  | 
 | 79 | /proc/capi: | 
 | 80 |   dr-xr-xr-x   2 root     root            0 Jul  1 14:03 . | 
 | 81 |   dr-xr-xr-x  82 root     root            0 Jun 30 19:08 .. | 
 | 82 |   -r--r--r--   1 root     root            0 Jul  1 14:03 applications | 
 | 83 |   -r--r--r--   1 root     root            0 Jul  1 14:03 applstats | 
 | 84 |   -r--r--r--   1 root     root            0 Jul  1 14:03 capi20 | 
 | 85 |   -r--r--r--   1 root     root            0 Jul  1 14:03 capidrv | 
 | 86 |   -r--r--r--   1 root     root            0 Jul  1 14:03 controller | 
 | 87 |   -r--r--r--   1 root     root            0 Jul  1 14:03 contrstats | 
 | 88 |   -r--r--r--   1 root     root            0 Jul  1 14:03 driver | 
 | 89 |   -r--r--r--   1 root     root            0 Jul  1 14:03 ncci | 
 | 90 |   -r--r--r--   1 root     root            0 Jul  1 14:03 users | 
 | 91 |  | 
 | 92 | /proc/capi/applications: | 
 | 93 |    applid level3cnt datablkcnt datablklen ncci-cnt recvqueuelen | 
 | 94 | 	level3cnt: capi_register parameter | 
 | 95 | 	datablkcnt: capi_register parameter | 
 | 96 | 	ncci-cnt: current number of nccis (connections) | 
 | 97 | 	recvqueuelen: number of messages on receive queue | 
 | 98 |    for example: | 
 | 99 | 1 -2 16 2048 1 0 | 
 | 100 | 2 2 7 2048 1 0 | 
 | 101 |  | 
 | 102 | /proc/capi/applstats: | 
 | 103 |    applid recvctlmsg nrecvdatamsg nsentctlmsg nsentdatamsg | 
 | 104 | 	recvctlmsg: capi messages received without DATA_B3_IND | 
 | 105 | 	recvdatamsg: capi DATA_B3_IND received | 
 | 106 | 	sentctlmsg: capi messages sent without DATA_B3_REQ | 
 | 107 | 	sentdatamsg: capi DATA_B3_REQ sent | 
 | 108 |    for example: | 
 | 109 | 1 2057 1699 1721 1699 | 
 | 110 |  | 
 | 111 | /proc/capi/capi20: statistics of capi.o (/dev/capi20) | 
 | 112 |     minor nopen nrecvdropmsg nrecvctlmsg nrecvdatamsg sentctlmsg sentdatamsg | 
 | 113 | 	minor: minor device number of capi device | 
 | 114 | 	nopen: number of calls to devices open | 
 | 115 | 	nrecvdropmsg: capi messages dropped (messages in recvqueue in close) | 
 | 116 | 	nrecvctlmsg: capi messages received without DATA_B3_IND | 
 | 117 | 	nrecvdatamsg: capi DATA_B3_IND received | 
 | 118 | 	nsentctlmsg: capi messages sent without DATA_B3_REQ | 
 | 119 | 	nsentdatamsg: capi DATA_B3_REQ sent | 
 | 120 |  | 
 | 121 |    for example: | 
 | 122 | 1 2 18 0 16 2 | 
 | 123 |  | 
 | 124 | /proc/capi/capidrv: statistics of capidrv.o (capi messages) | 
 | 125 |     nrecvctlmsg nrecvdatamsg sentctlmsg sentdatamsg | 
 | 126 | 	nrecvctlmsg: capi messages received without DATA_B3_IND | 
 | 127 | 	nrecvdatamsg: capi DATA_B3_IND received | 
 | 128 | 	nsentctlmsg: capi messages sent without DATA_B3_REQ | 
 | 129 | 	nsentdatamsg: capi DATA_B3_REQ sent | 
 | 130 |    for example: | 
 | 131 | 2780 2226 2256 2226 | 
 | 132 |  | 
 | 133 | /proc/capi/controller: | 
 | 134 |    controller drivername state cardname   controllerinfo | 
 | 135 |    for example: | 
 | 136 | 1 b1pci      running  b1pci-e000       B1 3.07-01 0xe000 19 | 
 | 137 | 2 t1isa      running  t1isa-450        B1 3.07-01 0x450 11 0 | 
 | 138 | 3 b1pcmcia   running  m2-150           B1 3.07-01 0x150 5 | 
 | 139 |  | 
 | 140 | /proc/capi/contrstats: | 
 | 141 |     controller nrecvctlmsg nrecvdatamsg sentctlmsg sentdatamsg | 
 | 142 | 	nrecvctlmsg: capi messages received without DATA_B3_IND | 
 | 143 | 	nrecvdatamsg: capi DATA_B3_IND received | 
 | 144 | 	nsentctlmsg: capi messages sent without DATA_B3_REQ | 
 | 145 | 	nsentdatamsg: capi DATA_B3_REQ sent | 
 | 146 |    for example: | 
 | 147 | 1 2845 2272 2310 2274 | 
 | 148 | 2 2 0 2 0 | 
 | 149 | 3 2 0 2 0 | 
 | 150 |  | 
 | 151 | /proc/capi/driver: | 
 | 152 |    drivername ncontroller | 
 | 153 |    for example: | 
 | 154 | b1pci                            1 | 
 | 155 | t1isa                            1 | 
 | 156 | b1pcmcia                         1 | 
 | 157 | b1isa                            0 | 
 | 158 |  | 
 | 159 | /proc/capi/ncci: | 
 | 160 |    apllid ncci winsize sendwindow | 
 | 161 |    for example: | 
 | 162 | 1 0x10101 8 0 | 
 | 163 |  | 
 | 164 | /proc/capi/users: kernelmodules that use the kernelcapi. | 
 | 165 |    name | 
 | 166 |    for example: | 
 | 167 | capidrv | 
 | 168 | capi20 | 
 | 169 |  | 
 | 170 | Questions | 
 | 171 | --------- | 
 | 172 | Check out the FAQ (ftp.isdn4linux.de) or subscribe to the | 
 | 173 | linux-avmb1@calle.in-berlin.de mailing list by sending | 
 | 174 | a mail to majordomo@calle.in-berlin.de with | 
 | 175 | subscribe linux-avmb1 | 
 | 176 | in the body. | 
 | 177 |  | 
 | 178 | German documentation and several scripts can be found at | 
 | 179 | ftp://ftp.avm.de/cardware/b1/linux/ | 
 | 180 |  | 
 | 181 | Bugs  | 
 | 182 | ---- | 
 | 183 | If you find any please let me know.  | 
 | 184 |  | 
 | 185 | Enjoy, | 
 | 186 |  | 
 | 187 | Carsten Paeth (calle@calle.in-berlin.de) |