|  |  | 
|  | SliceCOM adapter felhasznaloi dokumentacioja - 0.51 verziohoz | 
|  |  | 
|  | Bartók István <bartoki@itc.hu> | 
|  | Utolso modositas: Wed Aug 29 17:26:58 CEST 2001 | 
|  |  | 
|  | ----------------------------------------------------------------- | 
|  |  | 
|  | Hasznalata: | 
|  |  | 
|  | Forditas: | 
|  |  | 
|  | Code maturity level options | 
|  | [*] Prompt for development and/or incomplete code/drivers | 
|  |  | 
|  | Network device support | 
|  | Wan interfaces | 
|  | <M> MultiGate (COMX) synchronous | 
|  | <M> Support for MUNICH based boards: SliceCOM, PCICOM (NEW) | 
|  | <M> Support for HDLC and syncPPP... | 
|  |  | 
|  |  | 
|  | A modulok betoltese: | 
|  |  | 
|  | modprobe comx | 
|  |  | 
|  | modprobe comx-proto-ppp		# a Cisco-HDLC es a SyncPPP protokollt is | 
|  | # ez a modul adja | 
|  |  | 
|  | modprobe comx-hw-munich		# a modul betoltodeskor azonnal jelent a | 
|  | # syslogba a detektalt kartyakrol | 
|  |  | 
|  |  | 
|  | Konfiguralas: | 
|  |  | 
|  | # Ezen az interfeszen Cisco-HDLC vonali protokoll fog futni | 
|  | # Az interfeszhez rendelt idoszeletek: 1,2 (128 kbit/sec-es vonal) | 
|  | # (a G.703 keretben az elso adatot vivo idoszelet az 1-es) | 
|  | # | 
|  | mkdir /proc/comx/comx0.1/ | 
|  | echo slicecom	>/proc/comx/comx0.1/boardtype | 
|  | echo hdlc	>/proc/comx/comx0.1/protocol | 
|  | echo 1 2	>/proc/comx/comx0.1/timeslots | 
|  |  | 
|  |  | 
|  | # Ezen az interfeszen SyncPPP vonali protokoll fog futni | 
|  | # Az interfeszhez rendelt idoszelet: 3 (64 kbit/sec-es vonal) | 
|  | # | 
|  | mkdir /proc/comx/comx0.2/ | 
|  | echo slicecom	>/proc/comx/comx0.2/boardtype | 
|  | echo ppp	>/proc/comx/comx0.2/protocol | 
|  | echo 3		>/proc/comx/comx0.2/timeslots | 
|  |  | 
|  | ... | 
|  |  | 
|  | ifconfig comx0.1 up | 
|  | ifconfig comx0.2 up | 
|  |  | 
|  | ----------------------------------------------------------------- | 
|  |  | 
|  | A COMX driverek default 20 csomagnyi transmit queue-t rendelnek a halozati | 
|  | interfeszekhez. WAN halozatokban ennel hosszabbat is szokas hasznalni | 
|  | (20 es 100 kozott), hogy a vonal kihasznaltsaga nagy terheles eseten jobb | 
|  | legyen (bar ezzel megno a varhato kesleltetes a csomagok sorban allasa miatt): | 
|  |  | 
|  | # ifconfig comx0 txqueuelen 50 | 
|  |  | 
|  | Ezt a beallitasi lehetoseget csak az ujabb disztribuciok ifconfig parancsa | 
|  | tamogatja (amik mar a 2.2 kernelekhez keszultek, mint a RedHat 6.1 vagy a | 
|  | Debian 2.2). | 
|  |  | 
|  | A 2.1-es Debian disztribuciohoz a http://www.debian.org/~rcw/2.2/netbase/ | 
|  | cimrol toltheto le ujabb netbase csomag, ami mar ilyet tamogato ifconfig | 
|  | parancsot tartalmaz. Bovebben a 2.2 kernel hasznalatarol Debian 2.1 alatt: | 
|  | http://www.debian.org/releases/stable/running-kernel-2.2 | 
|  |  | 
|  | ----------------------------------------------------------------- | 
|  |  | 
|  | A kartya LED-jeinek jelentese: | 
|  |  | 
|  | piros	- eg, ha Remote Alarm-ot kuld a tuloldal | 
|  | zold	- eg, ha a vett jelben megtalalja a keretszinkront | 
|  |  | 
|  | Reszletesebben: | 
|  |  | 
|  | piros:	zold:	jelentes: | 
|  |  | 
|  | -	-	nincs keretszinkron (nincs jel, vagy rossz a jel) | 
|  | -	eg	"minden rendben" | 
|  | eg	eg	a vetel OK, de a tuloldal Remote Alarm-ot kuld | 
|  | eg	-	ez nincs ertelmezve, egyelore funkcio nelkul | 
|  |  | 
|  | ----------------------------------------------------------------- | 
|  |  | 
|  | Reszletesebb leiras a hardver beallitasi lehetosegeirol: | 
|  |  | 
|  | Az altalanos,- es a protokoll-retegek beallitasi lehetosegeirol a 'comx.txt' | 
|  | fajlban leirtak SliceCOM kartyanal is ervenyesek, itt csak a hardver-specifikus | 
|  | beallitasi lehetosegek vannak osszefoglalva: | 
|  |  | 
|  | Konfiguralasi interfesz a /proc/comx/ alatt: | 
|  |  | 
|  | Minden timeslot-csoportnak kulon comx* interfeszt kell letrehozni mkdir-rel: | 
|  | comx0, comx1, .. stb. Itt beallithato, hogy az adott interfesz hanyadik kartya | 
|  | melyik timeslotja(i)bol alljon ossze. A Cisco-fele serial3:1 elnevezesek | 
|  | (serial3:1 = a 3. kartyaban az 1-es idoszelet-csoport) Linuxon aliasing-ot | 
|  | jelentenenek, ezert mi nem tudunk ilyen elnevezest hasznalni. | 
|  |  | 
|  | Tobb kartya eseten a comx0.1, comx0.2, ... vagy slice0.1, slice0.2 nevek | 
|  | hasznalhatoak. | 
|  |  | 
|  | Tobb SliceCOM kartya is lehet egy gepben, de sajat interrupt kell mindegyiknek, | 
|  | nem tud meg megosztott interruptot kezelni. | 
|  |  | 
|  | Az egesz kartyat erinto beallitasok: | 
|  |  | 
|  | Az ioport es irq beallitas nincs: amit a PCI BIOS kioszt a rendszernek, | 
|  | azt hasznalja a driver. | 
|  |  | 
|  |  | 
|  | comx0/boardnum	- hanyadik SliceCOM kartya a gepben (a 'termeszetes' PCI | 
|  | sorrendben ertve: ahogyan a /proc/pci-ban vagy az 'lspci' | 
|  | kimeneteben megjelenik, altalaban az alaplapi PCI meghajto | 
|  | aramkorokhoz kozelebb eso kartyak a kisebb sorszamuak) | 
|  |  | 
|  | Default: 0 (0-tol kezdodik a szamolas) | 
|  |  | 
|  |  | 
|  | Bar a kovetkezoket csak egy-egy interfeszen allitjuk at, megis az egesz kartya | 
|  | mukodeset egyszerre allitjak. A megkotes hogy csak UP-ban levo interfeszen | 
|  | hasznalhatoak, azert van, mert kulonben nem vart eredmenyekre vezetne egy ilyen | 
|  | paranccsorozat: | 
|  |  | 
|  | echo 0        >boardnum | 
|  | echo internal >clock_source | 
|  | echo 1        >boardnum | 
|  |  | 
|  | - Ez a 0-s board clock_source-at allitana at. | 
|  |  | 
|  | Ezek a beallitasok megmaradnak az osszes interfesz torlesekor, de torlodnek | 
|  | a driver modul ki/betoltesekor. | 
|  |  | 
|  |  | 
|  | comx0/clock_source - A Tx orajelforrasa, a Cisco-val hasonlatosra keszult. | 
|  | Hasznalata: | 
|  |  | 
|  | papaya:# echo line     >/proc/comx/comx0/clock_source | 
|  | papaya:# echo internal >/proc/comx/comx0/clock_source | 
|  |  | 
|  | line     - A Tx orajelet a vett adatfolyambol dekodolja, igyekszik | 
|  | igazodni hozza. Ha nem lat orajelet az inputon, akkor | 
|  | atall a sajat orajelgeneratorara. | 
|  | internal - A Tx orajelet a sajat orajelgeneratora szolgaltatja. | 
|  |  | 
|  | Default: line | 
|  |  | 
|  | Normal osszeallitas eseten a tavkozlesi szolgaltato eszkoze | 
|  | (pl. HDSL modem) adja az orajelet, ezert ez a default. | 
|  |  | 
|  |  | 
|  | comx0/framing	- A CRC4 ki/be kapcsolasa | 
|  |  | 
|  | A CRC4: 16 PCM keretet (A PCM keret az, amibe a 32 darab 64 | 
|  | kilobites csatorna van bemultiplexalva. Nem osszetevesztendo a HDLC | 
|  | kerettel.) 2x8 -as csoportokra osztanak, es azokhoz 4-4 bites CRC-t | 
|  | szamolnak. Elsosorban a vonal minosegenek a monitorozasara szolgal. | 
|  |  | 
|  | papaya:~# echo crc4	>/proc/comx/comx0/framing | 
|  | papaya:~# echo no-crc4	>/proc/comx/comx0/framing | 
|  |  | 
|  | Default a 'crc4', a MATAV vonalak altalaban igy futnak. De ha nem | 
|  | egyforma is a beallitas a vonal ket vegen, attol a forgalom altalaban | 
|  | at tud menni. | 
|  |  | 
|  |  | 
|  | comx0/linecode	- A vonali kodolas beallitasa | 
|  |  | 
|  | papaya:~# echo hdb3	>/proc/comx/comx0/linecode | 
|  | papaya:~# echo ami	>/proc/comx/comx0/linecode | 
|  |  | 
|  | Default a 'hdb3', a MATAV vonalak igy futnak. | 
|  |  | 
|  | (az AMI kodolas igen ritka E1-es vonalaknal). Ha ez a beallitas nem | 
|  | egyezik a vonal ket vegen, akkor elofordulhat hogy a keretszinkron | 
|  | osszejon, de CRC4-hibak es a vonalakon atvitt adatokban is hibak | 
|  | keletkeznek (amit a HDLC/SyncPPP szinten CRC-hibaval jelez) | 
|  |  | 
|  |  | 
|  | comx0/reg	- a kartya aramkoreinek, a MUNICH (reg) es a FALC (lbireg) | 
|  | comx0/lbireg	regisztereinek kozvetlen elerese. Hasznalata: | 
|  |  | 
|  | echo >reg 0x04 0x0	- a 4-es regiszterbe 0-t ir | 
|  | echo >reg 0x104		- printk()-val kiirja a 4-es regiszter | 
|  | tartalmat a syslogba. | 
|  |  | 
|  | WARNING: ezek csak a fejleszteshez keszultek, sok galibat | 
|  | lehet veluk okozni! | 
|  |  | 
|  |  | 
|  | comx0/loopback - A kartya G.703 jelenek a visszahurkolasara is van lehetoseg: | 
|  |  | 
|  | papaya:# echo none   >/proc/comx/comx0/loopback | 
|  | papaya:# echo local  >/proc/comx/comx0/loopback | 
|  | papaya:# echo remote >/proc/comx/comx0/loopback | 
|  |  | 
|  | none   - nincs visszahurkolas, normal mukodes | 
|  | local  - a kartya a sajat maga altal adott jelet kapja vissza | 
|  | remote - a kartya a kivulrol vett jelet adja kifele | 
|  |  | 
|  | Default: none | 
|  |  | 
|  | ----------------------------------------------------------------- | 
|  |  | 
|  | Az interfeszhez (Cisco terminologiaban 'channel-group') kapcsolodo beallitasok: | 
|  |  | 
|  | comx0/timeslots	- mely timeslotok (idoszeletek) tartoznak az adott interfeszhez. | 
|  |  | 
|  | papaya:~# cat /proc/comx/comx0/timeslots | 
|  | 1 3 4 5 6 | 
|  | papaya:~# | 
|  |  | 
|  | Egy timeslot megkeresese (hanyas interfeszbe tartozik nalunk): | 
|  |  | 
|  | papaya:~# grep ' 4' /proc/comx/comx*/timeslots | 
|  | /proc/comx/comx0/timeslots:1 3 4 5 6 | 
|  | papaya:~# | 
|  |  | 
|  | Beallitasa: | 
|  | papaya:~# echo '1 5 2 6 7 8' >/proc/comx/comx0/timeslots | 
|  |  | 
|  | A timeslotok sorrendje nem szamit, '1 3 2' ugyanaz mint az '1 2 3'. | 
|  |  | 
|  | Beallitashoz az adott interfesznek DOWN-ban kell lennie | 
|  | (ifconfig comx0 down), de ugyanannak a kartyanak a tobbi interfesze | 
|  | uzemelhet kozben. | 
|  |  | 
|  | Beallitaskor leellenorzi, hogy az uj timeslotok nem utkoznek-e egy | 
|  | masik interfesz timeslotjaival. Ha utkoznek, akkor nem allitja at. | 
|  |  | 
|  | Mindig 10-es szamrendszerben tortenik a timeslotok ertelmezese, nehogy | 
|  | a 08, 09 alaku felirast rosszul ertelmezze. | 
|  |  | 
|  | ----------------------------------------------------------------- | 
|  |  | 
|  | Az interfeszek es a kartya allapotanak lekerdezese: | 
|  |  | 
|  | - A ' '-szel kezdodo sorok az eredeti kimenetet, a //-rel kezdodo sorok a | 
|  | magyarazatot jelzik. | 
|  |  | 
|  | papaya:~$ cat /proc/comx/comx1/status | 
|  | Interface administrative status is UP, modem status is UP, protocol is UP | 
|  | Modem status changes: 0, Transmitter status is IDLE, tbusy: 0 | 
|  | Interface load (input): 978376 / 947808 / 951024 bits/s (5s/5m/15m) | 
|  | (output): 978376 / 947848 / 951024 bits/s (5s/5m/15m) | 
|  | Debug flags: none | 
|  | RX errors: len: 22, overrun: 1, crc: 0, aborts: 0 | 
|  | buffer overrun: 0, pbuffer overrun: 0 | 
|  | TX errors: underrun: 0 | 
|  | Line keepalive (value: 10) status UP [0] | 
|  |  | 
|  | // Itt kezdodik a hardver-specifikus resz: | 
|  | Controller status: | 
|  | No alarms | 
|  |  | 
|  | // Alarm: hibajelzes: | 
|  | // | 
|  | // No alarms - minden rendben | 
|  | // | 
|  | // LOS  - Loss Of Signal - nem erzekel jelet a bemeneten. | 
|  | // AIS  - Alarm Indication Signal - csak egymas utani 1-esek jonnek | 
|  | //	a bemeneten, a tuloldal igy is jelezheti hogy meghibasodott vagy | 
|  | //	nincs inicializalva. | 
|  | // AUXP - Auxiliary Pattern Indication - 01010101.. sorozat jon a bemeneten. | 
|  | // LFA  - Loss of Frame Alignment - nincs keretszinkron | 
|  | // RRA  - Receive Remote Alarm - a tuloldal el, de hibat jelez. | 
|  | // LMFA - Loss of CRC4 Multiframe Alignment - nincs CRC4-multikeret-szinkron | 
|  | // NMF  - No Multiframe alignment Found after 400 msec - ilyen alarm a no-crc4 | 
|  | //	es crc4 keretezesek eseten nincs, lasd lentebb | 
|  | // | 
|  | // Egyeb lehetseges hibajelzesek: | 
|  | // | 
|  | // Transmit Line Short - a kartya ugy erzi hogy az adasi kimenete rovidre | 
|  | //	van zarva, ezert kikapcsolta az adast. (nem feltetlenul veszi eszre | 
|  | //	a kulso rovidzarat) | 
|  |  | 
|  | // A veteli oldal csomagjainak lancolt listai, debug celokra: | 
|  |  | 
|  | Rx ring: | 
|  | rafutott: 0 | 
|  | lastcheck: 50845731, jiffies: 51314281 | 
|  | base: 017b1858 | 
|  | rx_desc_ptr: 0 | 
|  | rx_desc_ptr: 017b1858 | 
|  | hw_curr_ptr: 017b1858 | 
|  | 06040000 017b1868 017b1898 c016ff00 | 
|  | 06040000 017b1878 017b1e9c c016ff00 | 
|  | 46040000 017b1888 017b24a0 c016ff00 | 
|  | 06040000 017b1858 017b2aa4 c016ff00 | 
|  |  | 
|  | // A kartyat hasznalo tobbi interfesz: a 0-s channel-group a comx1 interfesz, | 
|  | // es az 1,2,...,16 timeslotok tartoznak hozza: | 
|  |  | 
|  | Interfaces using this board: (channel-group, interface, timeslots) | 
|  | 0 comx1: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | 
|  | 1 comx2: 17 | 
|  | 2 comx3: 18 | 
|  | 3 comx4: 19 | 
|  | 4 comx5: 20 | 
|  | 5 comx6: 21 | 
|  | 6 comx7: 22 | 
|  | 7 comx8: 23 | 
|  | 8 comx9: 24 | 
|  | 9 comx10: 25 | 
|  | 10 comx11: 26 | 
|  | 11 comx12: 27 | 
|  | 12 comx13: 28 | 
|  | 13 comx14: 29 | 
|  | 14 comx15: 30 | 
|  | 15 comx16: 31 | 
|  |  | 
|  | // Hany esemenyt kezelt le a driver egy-egy hardver-interrupt kiszolgalasanal: | 
|  |  | 
|  | Interrupt work histogram: | 
|  | hist[ 0]:        0 hist[ 1]:        2 hist[ 2]:    18574 hist[ 3]:       79 | 
|  | hist[ 4]:       14 hist[ 5]:        1 hist[ 6]:        0 hist[ 7]:        1 | 
|  | hist[ 8]:        0 hist[ 9]:        7 | 
|  |  | 
|  | // Hany kikuldendo csomag volt mar a Tx-ringben amikor ujabb lett irva bele: | 
|  |  | 
|  | Tx ring histogram: | 
|  | hist[ 0]:     2329 hist[ 1]:        0 hist[ 2]:        0 hist[ 3]:        0 | 
|  |  | 
|  | // Az E1-interfesz hiba-szamlaloi, az rfc2495-nek megfeleloen: | 
|  | // (kb. a Cisco routerek "show controllers e1" formatumaban: http://www.cisco.com/univercd/cc/td/doc/product/software/ios11/rbook/rinterfc.htm#xtocid25669126) | 
|  |  | 
|  | Data in current interval (91 seconds elapsed): | 
|  | 9516 Line Code Violations, 65 Path Code Violations, 2 E-Bit Errors | 
|  | 0 Slip Secs, 2 Fr Loss Secs, 2 Line Err Secs, 0 Degraded Mins | 
|  | 0 Errored Secs, 0 Bursty Err Secs, 0 Severely Err Secs, 11 Unavail Secs | 
|  | Data in Interval 1 (15 minutes): | 
|  | 0 Line Code Violations, 0 Path Code Violations, 0 E-Bit Errors | 
|  | 0 Slip Secs, 0 Fr Loss Secs, 0 Line Err Secs, 0 Degraded Mins | 
|  | 0 Errored Secs, 0 Bursty Err Secs, 0 Severely Err Secs, 0 Unavail Secs | 
|  | Data in last 4 intervals (1 hour): | 
|  | 0 Line Code Violations, 0 Path Code Violations, 0 E-Bit Errors | 
|  | 0 Slip Secs, 0 Fr Loss Secs, 0 Line Err Secs, 0 Degraded Mins | 
|  | 0 Errored Secs, 0 Bursty Err Secs, 0 Severely Err Secs, 0 Unavail Secs | 
|  | Data in last 96 intervals (24 hours): | 
|  | 0 Line Code Violations, 0 Path Code Violations, 0 E-Bit Errors | 
|  | 0 Slip Secs, 0 Fr Loss Secs, 0 Line Err Secs, 0 Degraded Mins | 
|  | 0 Errored Secs, 0 Bursty Err Secs, 0 Severely Err Secs, 0 Unavail Secs | 
|  |  | 
|  | ----------------------------------------------------------------- | 
|  |  | 
|  | Nehany kulonlegesebb beallitasi lehetoseg (idovel beepulhetnek majd a driverbe): | 
|  | Ezekkel sok galibat lehet okozni, nagyon ovatosan kell oket hasznalni! | 
|  |  | 
|  | modified CRC-4, for improved interworking of CRC-4 and non-CRC-4 | 
|  | devices: (lasd page 107 es g706 Annex B) | 
|  | lbireg[ 0x1b ] |= 0x08 | 
|  | lbireg[ 0x1c ] |= 0xc0 | 
|  | - ilyenkor ertelmezett az NMF - 'No Multiframe alignment Found after | 
|  | 400 msec' alarm. | 
|  |  | 
|  | FALC - a vonali meghajto IC | 
|  | local loop - a sajat adasomat halljam vissza | 
|  | remote loop - a kivulrol jovo adast adom vissza | 
|  |  | 
|  | Egy hibakeresesre hasznalhato dolog: | 
|  | - 1-es timeslot local loop a FALC-ban:	echo >lbireg 0x1d 0x21 | 
|  | - local loop kikapcsolasa:		echo >lbireg 0x1d 0x00 |