![Linus Torvalds](/assets/img/avatar_default.png)
Initial git repository build. I'm not bothering with the full history, even though we have it. We can create a separate "historical" git archive of that later if we want to, and in the meantime it's about 3.2GB when imported into git - space that would just make the early git days unnecessarily complicated, when we don't have a lot of good infrastructure for it. Let it rip!
372 lines
13 KiB
Text
372 lines
13 KiB
Text
|
|
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
|