Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1 | |
| 2 | SliceCOM adapter felhasznaloi dokumentacioja - 0.51 verziohoz |
| 3 | |
| 4 | Bartók István <bartoki@itc.hu> |
| 5 | Utolso modositas: Wed Aug 29 17:26:58 CEST 2001 |
| 6 | |
| 7 | ----------------------------------------------------------------- |
| 8 | |
| 9 | Hasznalata: |
| 10 | |
| 11 | Forditas: |
| 12 | |
| 13 | Code maturity level options |
| 14 | [*] Prompt for development and/or incomplete code/drivers |
| 15 | |
| 16 | Network device support |
| 17 | Wan interfaces |
| 18 | <M> MultiGate (COMX) synchronous |
| 19 | <M> Support for MUNICH based boards: SliceCOM, PCICOM (NEW) |
| 20 | <M> Support for HDLC and syncPPP... |
| 21 | |
| 22 | |
| 23 | A modulok betoltese: |
| 24 | |
| 25 | modprobe comx |
| 26 | |
| 27 | modprobe comx-proto-ppp # a Cisco-HDLC es a SyncPPP protokollt is |
| 28 | # ez a modul adja |
| 29 | |
| 30 | modprobe comx-hw-munich # a modul betoltodeskor azonnal jelent a |
| 31 | # syslogba a detektalt kartyakrol |
| 32 | |
| 33 | |
| 34 | Konfiguralas: |
| 35 | |
| 36 | # Ezen az interfeszen Cisco-HDLC vonali protokoll fog futni |
| 37 | # Az interfeszhez rendelt idoszeletek: 1,2 (128 kbit/sec-es vonal) |
| 38 | # (a G.703 keretben az elso adatot vivo idoszelet az 1-es) |
| 39 | # |
| 40 | mkdir /proc/comx/comx0.1/ |
| 41 | echo slicecom >/proc/comx/comx0.1/boardtype |
| 42 | echo hdlc >/proc/comx/comx0.1/protocol |
| 43 | echo 1 2 >/proc/comx/comx0.1/timeslots |
| 44 | |
| 45 | |
| 46 | # Ezen az interfeszen SyncPPP vonali protokoll fog futni |
| 47 | # Az interfeszhez rendelt idoszelet: 3 (64 kbit/sec-es vonal) |
| 48 | # |
| 49 | mkdir /proc/comx/comx0.2/ |
| 50 | echo slicecom >/proc/comx/comx0.2/boardtype |
| 51 | echo ppp >/proc/comx/comx0.2/protocol |
| 52 | echo 3 >/proc/comx/comx0.2/timeslots |
| 53 | |
| 54 | ... |
| 55 | |
| 56 | ifconfig comx0.1 up |
| 57 | ifconfig comx0.2 up |
| 58 | |
| 59 | ----------------------------------------------------------------- |
| 60 | |
| 61 | A COMX driverek default 20 csomagnyi transmit queue-t rendelnek a halozati |
| 62 | interfeszekhez. WAN halozatokban ennel hosszabbat is szokas hasznalni |
| 63 | (20 es 100 kozott), hogy a vonal kihasznaltsaga nagy terheles eseten jobb |
| 64 | legyen (bar ezzel megno a varhato kesleltetes a csomagok sorban allasa miatt): |
| 65 | |
| 66 | # ifconfig comx0 txqueuelen 50 |
| 67 | |
| 68 | Ezt a beallitasi lehetoseget csak az ujabb disztribuciok ifconfig parancsa |
| 69 | tamogatja (amik mar a 2.2 kernelekhez keszultek, mint a RedHat 6.1 vagy a |
| 70 | Debian 2.2). |
| 71 | |
| 72 | A 2.1-es Debian disztribuciohoz a http://www.debian.org/~rcw/2.2/netbase/ |
| 73 | cimrol toltheto le ujabb netbase csomag, ami mar ilyet tamogato ifconfig |
| 74 | parancsot tartalmaz. Bovebben a 2.2 kernel hasznalatarol Debian 2.1 alatt: |
| 75 | http://www.debian.org/releases/stable/running-kernel-2.2 |
| 76 | |
| 77 | ----------------------------------------------------------------- |
| 78 | |
| 79 | A kartya LED-jeinek jelentese: |
| 80 | |
| 81 | piros - eg, ha Remote Alarm-ot kuld a tuloldal |
| 82 | zold - eg, ha a vett jelben megtalalja a keretszinkront |
| 83 | |
| 84 | Reszletesebben: |
| 85 | |
| 86 | piros: zold: jelentes: |
| 87 | |
| 88 | - - nincs keretszinkron (nincs jel, vagy rossz a jel) |
| 89 | - eg "minden rendben" |
| 90 | eg eg a vetel OK, de a tuloldal Remote Alarm-ot kuld |
| 91 | eg - ez nincs ertelmezve, egyelore funkcio nelkul |
| 92 | |
| 93 | ----------------------------------------------------------------- |
| 94 | |
| 95 | Reszletesebb leiras a hardver beallitasi lehetosegeirol: |
| 96 | |
| 97 | Az altalanos,- es a protokoll-retegek beallitasi lehetosegeirol a 'comx.txt' |
| 98 | fajlban leirtak SliceCOM kartyanal is ervenyesek, itt csak a hardver-specifikus |
| 99 | beallitasi lehetosegek vannak osszefoglalva: |
| 100 | |
| 101 | Konfiguralasi interfesz a /proc/comx/ alatt: |
| 102 | |
| 103 | Minden timeslot-csoportnak kulon comx* interfeszt kell letrehozni mkdir-rel: |
| 104 | comx0, comx1, .. stb. Itt beallithato, hogy az adott interfesz hanyadik kartya |
| 105 | melyik timeslotja(i)bol alljon ossze. A Cisco-fele serial3:1 elnevezesek |
| 106 | (serial3:1 = a 3. kartyaban az 1-es idoszelet-csoport) Linuxon aliasing-ot |
| 107 | jelentenenek, ezert mi nem tudunk ilyen elnevezest hasznalni. |
| 108 | |
| 109 | Tobb kartya eseten a comx0.1, comx0.2, ... vagy slice0.1, slice0.2 nevek |
| 110 | hasznalhatoak. |
| 111 | |
| 112 | Tobb SliceCOM kartya is lehet egy gepben, de sajat interrupt kell mindegyiknek, |
| 113 | nem tud meg megosztott interruptot kezelni. |
| 114 | |
| 115 | Az egesz kartyat erinto beallitasok: |
| 116 | |
| 117 | Az ioport es irq beallitas nincs: amit a PCI BIOS kioszt a rendszernek, |
| 118 | azt hasznalja a driver. |
| 119 | |
| 120 | |
| 121 | comx0/boardnum - hanyadik SliceCOM kartya a gepben (a 'termeszetes' PCI |
| 122 | sorrendben ertve: ahogyan a /proc/pci-ban vagy az 'lspci' |
| 123 | kimeneteben megjelenik, altalaban az alaplapi PCI meghajto |
| 124 | aramkorokhoz kozelebb eso kartyak a kisebb sorszamuak) |
| 125 | |
| 126 | Default: 0 (0-tol kezdodik a szamolas) |
| 127 | |
| 128 | |
| 129 | Bar a kovetkezoket csak egy-egy interfeszen allitjuk at, megis az egesz kartya |
| 130 | mukodeset egyszerre allitjak. A megkotes hogy csak UP-ban levo interfeszen |
| 131 | hasznalhatoak, azert van, mert kulonben nem vart eredmenyekre vezetne egy ilyen |
| 132 | paranccsorozat: |
| 133 | |
| 134 | echo 0 >boardnum |
| 135 | echo internal >clock_source |
| 136 | echo 1 >boardnum |
| 137 | |
| 138 | - Ez a 0-s board clock_source-at allitana at. |
| 139 | |
| 140 | Ezek a beallitasok megmaradnak az osszes interfesz torlesekor, de torlodnek |
| 141 | a driver modul ki/betoltesekor. |
| 142 | |
| 143 | |
| 144 | comx0/clock_source - A Tx orajelforrasa, a Cisco-val hasonlatosra keszult. |
| 145 | Hasznalata: |
| 146 | |
| 147 | papaya:# echo line >/proc/comx/comx0/clock_source |
| 148 | papaya:# echo internal >/proc/comx/comx0/clock_source |
| 149 | |
| 150 | line - A Tx orajelet a vett adatfolyambol dekodolja, igyekszik |
| 151 | igazodni hozza. Ha nem lat orajelet az inputon, akkor |
| 152 | atall a sajat orajelgeneratorara. |
| 153 | internal - A Tx orajelet a sajat orajelgeneratora szolgaltatja. |
| 154 | |
| 155 | Default: line |
| 156 | |
| 157 | Normal osszeallitas eseten a tavkozlesi szolgaltato eszkoze |
| 158 | (pl. HDSL modem) adja az orajelet, ezert ez a default. |
| 159 | |
| 160 | |
| 161 | comx0/framing - A CRC4 ki/be kapcsolasa |
| 162 | |
| 163 | A CRC4: 16 PCM keretet (A PCM keret az, amibe a 32 darab 64 |
| 164 | kilobites csatorna van bemultiplexalva. Nem osszetevesztendo a HDLC |
| 165 | kerettel.) 2x8 -as csoportokra osztanak, es azokhoz 4-4 bites CRC-t |
| 166 | szamolnak. Elsosorban a vonal minosegenek a monitorozasara szolgal. |
| 167 | |
| 168 | papaya:~# echo crc4 >/proc/comx/comx0/framing |
| 169 | papaya:~# echo no-crc4 >/proc/comx/comx0/framing |
| 170 | |
| 171 | Default a 'crc4', a MATAV vonalak altalaban igy futnak. De ha nem |
| 172 | egyforma is a beallitas a vonal ket vegen, attol a forgalom altalaban |
| 173 | at tud menni. |
| 174 | |
| 175 | |
| 176 | comx0/linecode - A vonali kodolas beallitasa |
| 177 | |
| 178 | papaya:~# echo hdb3 >/proc/comx/comx0/linecode |
| 179 | papaya:~# echo ami >/proc/comx/comx0/linecode |
| 180 | |
| 181 | Default a 'hdb3', a MATAV vonalak igy futnak. |
| 182 | |
| 183 | (az AMI kodolas igen ritka E1-es vonalaknal). Ha ez a beallitas nem |
| 184 | egyezik a vonal ket vegen, akkor elofordulhat hogy a keretszinkron |
| 185 | osszejon, de CRC4-hibak es a vonalakon atvitt adatokban is hibak |
| 186 | keletkeznek (amit a HDLC/SyncPPP szinten CRC-hibaval jelez) |
| 187 | |
| 188 | |
| 189 | comx0/reg - a kartya aramkoreinek, a MUNICH (reg) es a FALC (lbireg) |
| 190 | comx0/lbireg regisztereinek kozvetlen elerese. Hasznalata: |
| 191 | |
| 192 | echo >reg 0x04 0x0 - a 4-es regiszterbe 0-t ir |
| 193 | echo >reg 0x104 - printk()-val kiirja a 4-es regiszter |
| 194 | tartalmat a syslogba. |
| 195 | |
| 196 | WARNING: ezek csak a fejleszteshez keszultek, sok galibat |
| 197 | lehet veluk okozni! |
| 198 | |
| 199 | |
| 200 | comx0/loopback - A kartya G.703 jelenek a visszahurkolasara is van lehetoseg: |
| 201 | |
| 202 | papaya:# echo none >/proc/comx/comx0/loopback |
| 203 | papaya:# echo local >/proc/comx/comx0/loopback |
| 204 | papaya:# echo remote >/proc/comx/comx0/loopback |
| 205 | |
| 206 | none - nincs visszahurkolas, normal mukodes |
| 207 | local - a kartya a sajat maga altal adott jelet kapja vissza |
| 208 | remote - a kartya a kivulrol vett jelet adja kifele |
| 209 | |
| 210 | Default: none |
| 211 | |
| 212 | ----------------------------------------------------------------- |
| 213 | |
| 214 | Az interfeszhez (Cisco terminologiaban 'channel-group') kapcsolodo beallitasok: |
| 215 | |
| 216 | comx0/timeslots - mely timeslotok (idoszeletek) tartoznak az adott interfeszhez. |
| 217 | |
| 218 | papaya:~# cat /proc/comx/comx0/timeslots |
| 219 | 1 3 4 5 6 |
| 220 | papaya:~# |
| 221 | |
| 222 | Egy timeslot megkeresese (hanyas interfeszbe tartozik nalunk): |
| 223 | |
| 224 | papaya:~# grep ' 4' /proc/comx/comx*/timeslots |
| 225 | /proc/comx/comx0/timeslots:1 3 4 5 6 |
| 226 | papaya:~# |
| 227 | |
| 228 | Beallitasa: |
| 229 | papaya:~# echo '1 5 2 6 7 8' >/proc/comx/comx0/timeslots |
| 230 | |
| 231 | A timeslotok sorrendje nem szamit, '1 3 2' ugyanaz mint az '1 2 3'. |
| 232 | |
| 233 | Beallitashoz az adott interfesznek DOWN-ban kell lennie |
| 234 | (ifconfig comx0 down), de ugyanannak a kartyanak a tobbi interfesze |
| 235 | uzemelhet kozben. |
| 236 | |
| 237 | Beallitaskor leellenorzi, hogy az uj timeslotok nem utkoznek-e egy |
| 238 | masik interfesz timeslotjaival. Ha utkoznek, akkor nem allitja at. |
| 239 | |
| 240 | Mindig 10-es szamrendszerben tortenik a timeslotok ertelmezese, nehogy |
| 241 | a 08, 09 alaku felirast rosszul ertelmezze. |
| 242 | |
| 243 | ----------------------------------------------------------------- |
| 244 | |
| 245 | Az interfeszek es a kartya allapotanak lekerdezese: |
| 246 | |
| 247 | - A ' '-szel kezdodo sorok az eredeti kimenetet, a //-rel kezdodo sorok a |
| 248 | magyarazatot jelzik. |
| 249 | |
| 250 | papaya:~$ cat /proc/comx/comx1/status |
| 251 | Interface administrative status is UP, modem status is UP, protocol is UP |
| 252 | Modem status changes: 0, Transmitter status is IDLE, tbusy: 0 |
| 253 | Interface load (input): 978376 / 947808 / 951024 bits/s (5s/5m/15m) |
| 254 | (output): 978376 / 947848 / 951024 bits/s (5s/5m/15m) |
| 255 | Debug flags: none |
| 256 | RX errors: len: 22, overrun: 1, crc: 0, aborts: 0 |
| 257 | buffer overrun: 0, pbuffer overrun: 0 |
| 258 | TX errors: underrun: 0 |
| 259 | Line keepalive (value: 10) status UP [0] |
| 260 | |
| 261 | // Itt kezdodik a hardver-specifikus resz: |
| 262 | Controller status: |
| 263 | No alarms |
| 264 | |
| 265 | // Alarm: hibajelzes: |
| 266 | // |
| 267 | // No alarms - minden rendben |
| 268 | // |
| 269 | // LOS - Loss Of Signal - nem erzekel jelet a bemeneten. |
| 270 | // AIS - Alarm Indication Signal - csak egymas utani 1-esek jonnek |
| 271 | // a bemeneten, a tuloldal igy is jelezheti hogy meghibasodott vagy |
| 272 | // nincs inicializalva. |
| 273 | // AUXP - Auxiliary Pattern Indication - 01010101.. sorozat jon a bemeneten. |
| 274 | // LFA - Loss of Frame Alignment - nincs keretszinkron |
| 275 | // RRA - Receive Remote Alarm - a tuloldal el, de hibat jelez. |
| 276 | // LMFA - Loss of CRC4 Multiframe Alignment - nincs CRC4-multikeret-szinkron |
| 277 | // NMF - No Multiframe alignment Found after 400 msec - ilyen alarm a no-crc4 |
| 278 | // es crc4 keretezesek eseten nincs, lasd lentebb |
| 279 | // |
| 280 | // Egyeb lehetseges hibajelzesek: |
| 281 | // |
| 282 | // Transmit Line Short - a kartya ugy erzi hogy az adasi kimenete rovidre |
| 283 | // van zarva, ezert kikapcsolta az adast. (nem feltetlenul veszi eszre |
| 284 | // a kulso rovidzarat) |
| 285 | |
| 286 | // A veteli oldal csomagjainak lancolt listai, debug celokra: |
| 287 | |
| 288 | Rx ring: |
| 289 | rafutott: 0 |
| 290 | lastcheck: 50845731, jiffies: 51314281 |
| 291 | base: 017b1858 |
| 292 | rx_desc_ptr: 0 |
| 293 | rx_desc_ptr: 017b1858 |
| 294 | hw_curr_ptr: 017b1858 |
| 295 | 06040000 017b1868 017b1898 c016ff00 |
| 296 | 06040000 017b1878 017b1e9c c016ff00 |
| 297 | 46040000 017b1888 017b24a0 c016ff00 |
| 298 | 06040000 017b1858 017b2aa4 c016ff00 |
| 299 | |
| 300 | // A kartyat hasznalo tobbi interfesz: a 0-s channel-group a comx1 interfesz, |
| 301 | // es az 1,2,...,16 timeslotok tartoznak hozza: |
| 302 | |
| 303 | Interfaces using this board: (channel-group, interface, timeslots) |
| 304 | 0 comx1: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
| 305 | 1 comx2: 17 |
| 306 | 2 comx3: 18 |
| 307 | 3 comx4: 19 |
| 308 | 4 comx5: 20 |
| 309 | 5 comx6: 21 |
| 310 | 6 comx7: 22 |
| 311 | 7 comx8: 23 |
| 312 | 8 comx9: 24 |
| 313 | 9 comx10: 25 |
| 314 | 10 comx11: 26 |
| 315 | 11 comx12: 27 |
| 316 | 12 comx13: 28 |
| 317 | 13 comx14: 29 |
| 318 | 14 comx15: 30 |
| 319 | 15 comx16: 31 |
| 320 | |
| 321 | // Hany esemenyt kezelt le a driver egy-egy hardver-interrupt kiszolgalasanal: |
| 322 | |
| 323 | Interrupt work histogram: |
| 324 | hist[ 0]: 0 hist[ 1]: 2 hist[ 2]: 18574 hist[ 3]: 79 |
| 325 | hist[ 4]: 14 hist[ 5]: 1 hist[ 6]: 0 hist[ 7]: 1 |
| 326 | hist[ 8]: 0 hist[ 9]: 7 |
| 327 | |
| 328 | // Hany kikuldendo csomag volt mar a Tx-ringben amikor ujabb lett irva bele: |
| 329 | |
| 330 | Tx ring histogram: |
| 331 | hist[ 0]: 2329 hist[ 1]: 0 hist[ 2]: 0 hist[ 3]: 0 |
| 332 | |
| 333 | // Az E1-interfesz hiba-szamlaloi, az rfc2495-nek megfeleloen: |
| 334 | // (kb. a Cisco routerek "show controllers e1" formatumaban: http://www.cisco.com/univercd/cc/td/doc/product/software/ios11/rbook/rinterfc.htm#xtocid25669126) |
| 335 | |
| 336 | Data in current interval (91 seconds elapsed): |
| 337 | 9516 Line Code Violations, 65 Path Code Violations, 2 E-Bit Errors |
| 338 | 0 Slip Secs, 2 Fr Loss Secs, 2 Line Err Secs, 0 Degraded Mins |
| 339 | 0 Errored Secs, 0 Bursty Err Secs, 0 Severely Err Secs, 11 Unavail Secs |
| 340 | Data in Interval 1 (15 minutes): |
| 341 | 0 Line Code Violations, 0 Path Code Violations, 0 E-Bit Errors |
| 342 | 0 Slip Secs, 0 Fr Loss Secs, 0 Line Err Secs, 0 Degraded Mins |
| 343 | 0 Errored Secs, 0 Bursty Err Secs, 0 Severely Err Secs, 0 Unavail Secs |
| 344 | Data in last 4 intervals (1 hour): |
| 345 | 0 Line Code Violations, 0 Path Code Violations, 0 E-Bit Errors |
| 346 | 0 Slip Secs, 0 Fr Loss Secs, 0 Line Err Secs, 0 Degraded Mins |
| 347 | 0 Errored Secs, 0 Bursty Err Secs, 0 Severely Err Secs, 0 Unavail Secs |
| 348 | Data in last 96 intervals (24 hours): |
| 349 | 0 Line Code Violations, 0 Path Code Violations, 0 E-Bit Errors |
| 350 | 0 Slip Secs, 0 Fr Loss Secs, 0 Line Err Secs, 0 Degraded Mins |
| 351 | 0 Errored Secs, 0 Bursty Err Secs, 0 Severely Err Secs, 0 Unavail Secs |
| 352 | |
| 353 | ----------------------------------------------------------------- |
| 354 | |
| 355 | Nehany kulonlegesebb beallitasi lehetoseg (idovel beepulhetnek majd a driverbe): |
| 356 | Ezekkel sok galibat lehet okozni, nagyon ovatosan kell oket hasznalni! |
| 357 | |
| 358 | modified CRC-4, for improved interworking of CRC-4 and non-CRC-4 |
| 359 | devices: (lasd page 107 es g706 Annex B) |
| 360 | lbireg[ 0x1b ] |= 0x08 |
| 361 | lbireg[ 0x1c ] |= 0xc0 |
| 362 | - ilyenkor ertelmezett az NMF - 'No Multiframe alignment Found after |
| 363 | 400 msec' alarm. |
| 364 | |
| 365 | FALC - a vonali meghajto IC |
| 366 | local loop - a sajat adasomat halljam vissza |
| 367 | remote loop - a kivulrol jovo adast adom vissza |
| 368 | |
| 369 | Egy hibakeresesre hasznalhato dolog: |
| 370 | - 1-es timeslot local loop a FALC-ban: echo >lbireg 0x1d 0x21 |
| 371 | - local loop kikapcsolasa: echo >lbireg 0x1d 0x00 |