Add the lmcconfig tool for controlling the lmc driver. Add man pages and
glue. Submitted by: David Boggs
This commit is contained in:
parent
2bc6081c9f
commit
6fa40729c8
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=150850
@ -48,6 +48,8 @@
|
||||
..
|
||||
iicbus
|
||||
..
|
||||
lmc
|
||||
..
|
||||
ofw
|
||||
..
|
||||
pbio
|
||||
|
@ -37,7 +37,7 @@ LDIRS= bsm cam geom net net80211 netatalk netatm netgraph netinet netinet6 \
|
||||
|
||||
LSUBDIRS= cam/scsi \
|
||||
dev/acpica dev/an dev/bktr dev/firewire dev/hwpmc \
|
||||
dev/ic dev/iicbus ${_dev_ieee488} dev/ofw \
|
||||
dev/ic dev/iicbus ${_dev_ieee488} dev/lmc dev/ofw \
|
||||
dev/pbio dev/ppbus dev/smbus dev/usb dev/wi dev/utopia \
|
||||
fs/devfs fs/fdescfs fs/fifofs fs/msdosfs fs/ntfs fs/nullfs \
|
||||
fs/nwfs fs/portalfs fs/procfs fs/smbfs fs/udf fs/umapfs \
|
||||
|
@ -128,6 +128,7 @@ MAN= aac.4 \
|
||||
kue.4 \
|
||||
led.4 \
|
||||
lge.4 \
|
||||
lmc.4 \
|
||||
lo.4 \
|
||||
lp.4 \
|
||||
lpbb.4 \
|
||||
|
1485
share/man/man4/lmc.4
Normal file
1485
share/man/man4/lmc.4
Normal file
File diff suppressed because it is too large
Load Diff
@ -72,6 +72,7 @@ SUBDIR= ac \
|
||||
lastlogin \
|
||||
${_lpr} \
|
||||
${_lptcontrol} \
|
||||
lmcconfig \
|
||||
${_mailstats} \
|
||||
mailwrapper \
|
||||
${_makemap} \
|
||||
|
9
usr.sbin/lmcconfig/Makefile
Normal file
9
usr.sbin/lmcconfig/Makefile
Normal file
@ -0,0 +1,9 @@
|
||||
# $FreeBSD$
|
||||
|
||||
MAN8= lmcconfig.8
|
||||
PROG= lmcconfig
|
||||
|
||||
LDADD= -lnetgraph
|
||||
DPADD= ${LIBNETGRAPH}
|
||||
|
||||
.include <bsd.prog.mk>
|
716
usr.sbin/lmcconfig/lmcconfig.8
Normal file
716
usr.sbin/lmcconfig/lmcconfig.8
Normal file
@ -0,0 +1,716 @@
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.\" Copyright (c) 2003 David Boggs. (boggs@boggs.palo-alto.ca.us)
|
||||
.\" All rights reserved.
|
||||
.\"
|
||||
.\" BSD License:
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
.\" are met:
|
||||
.\" 1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer in the
|
||||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\"
|
||||
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
|
||||
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
|
||||
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||||
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" GNU General Public License:
|
||||
.\"
|
||||
.\" This program is free software; you can redistribute it and/or modify it
|
||||
.\" under the terms of the GNU General Public License as published by the Free
|
||||
.\" Software Foundation; either version 2 of the License, or (at your option)
|
||||
.\" any later version.
|
||||
.\"
|
||||
.\" This program is distributed in the hope that it will be useful, but WITHOUT
|
||||
.\" ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
.\" FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
||||
.\" more details.
|
||||
.\"
|
||||
.\" You should have received a copy of the GNU General Public License along with
|
||||
.\" this program; if not, write to the Free Software Foundation, Inc., 59
|
||||
.\" Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
.\"
|
||||
.\" I forget these things:
|
||||
.\" groff -Tascii -mdoc lmcconfig.8 > lmcconfig.txt
|
||||
.\" groff -Tps -mdoc lmcconfig.8 > lmcconfig.ps
|
||||
.\" groff -Thtml -mdoc lmcconfig.8 > lmcconfig.html (buggy)
|
||||
.\"
|
||||
.Dd June 2005
|
||||
.Dt LMCCONFIG 8
|
||||
.Os
|
||||
.Sp
|
||||
.Sh NAME
|
||||
.Sp
|
||||
.Nm lmcconfig
|
||||
.Nd configuration program for
|
||||
.Tn SBE
|
||||
(formerly
|
||||
.Tn LMC )
|
||||
wide-area network interface cards.
|
||||
.Sp
|
||||
.Sh SYNOPSIS
|
||||
.Sp
|
||||
.Nm
|
||||
.Ar interface
|
||||
.Op Fl abBcCdDeEfhLmMpPrsStTuwxXyYzZ?
|
||||
.br
|
||||
.Nm
|
||||
.Ar interface
|
||||
.Fl 1
|
||||
.Op Fl aABceEfFgiIlLpPstTuUxX
|
||||
.br
|
||||
.Nm
|
||||
.Ar interface
|
||||
.Fl 3
|
||||
.Op Fl aABcefFlLsSv
|
||||
.Sp
|
||||
.Sh DESCRIPTION
|
||||
.Sp
|
||||
.Nm
|
||||
is the configuration program for the
|
||||
.Xr lmc 4
|
||||
wide-area network device driver.
|
||||
It sets control values, such as T3 framing format,
|
||||
and it displays status, such as that of integrated modems,
|
||||
that are beyond the scope of
|
||||
.Xr ifconfig 8 .
|
||||
.Pp
|
||||
.Nm
|
||||
displays the interface status when no parameters are specified;
|
||||
see example below.
|
||||
For this case only, if no
|
||||
.Ar interface
|
||||
is specified, it defaults to
|
||||
.Ic lmc0 .
|
||||
.Pp
|
||||
Only the super-user may modify the configuration of a network interface.
|
||||
.Pp
|
||||
The following options are available:
|
||||
.Bl -tag -width indent
|
||||
.It Ar interface
|
||||
This is the name of the interface; the default is
|
||||
.Cm lmc0 .
|
||||
If
|
||||
.Xr netgraph 4
|
||||
is present and the interface name ends with a colon
|
||||
then netgraph control messages are used,
|
||||
otherwise the
|
||||
.Xr ifnet 9
|
||||
kernel interface and socket
|
||||
.Xr ioctl 2
|
||||
system calls are used.
|
||||
.It Fl 1
|
||||
All parameters after this apply to the T1E1 card.
|
||||
.It Fl 3
|
||||
All parameters after this apply to the T3 card.
|
||||
.El
|
||||
.Sp
|
||||
.Ss Commands for all cards
|
||||
.Sp
|
||||
The following parameters apply to more then one card type.
|
||||
.Bl -tag -width indent
|
||||
.It Fl a Ar number
|
||||
Set Transmitter clock source to
|
||||
.Ar number .
|
||||
.Bl -column "1" "External connector" "T1E1, HSSIc" -offset 2m -compact
|
||||
.It "1" Ta "TxClk from modem" Ta "T1E1, HSSI" Ta "default"
|
||||
.It "2" Ta "Internal source" Ta "T1E1, HSSI"
|
||||
.It "3" Ta "RxClk from modem" Ta "T1E1, HSSIc" Ta "loop timed"
|
||||
.It "4" Ta "External connector" Ta "T1E1, HSSIc"
|
||||
.El
|
||||
.Pp
|
||||
An HSSI card normally takes its Tx clock from the modem connector
|
||||
(it is a DTE) but can use the PCI bus clock (typically 33 MHz)
|
||||
for loopback and null modem testing; values 3 and 4 are only
|
||||
applicable to a few rare CompactPCI/HSSI cards.
|
||||
.Pp
|
||||
A T1E1 card uses an on-board synthesized oscillator
|
||||
if the value is 1 or 2; it
|
||||
.Em loop times
|
||||
(uses the clock recovered by the receiver as the transmitter clock)
|
||||
if the value is 3; and it uses a clock from a header connector on
|
||||
the card if the value is 4.
|
||||
.Pp
|
||||
TxClk source is not applicable to other card types.
|
||||
.It Fl b
|
||||
Read BIOS rom.
|
||||
Print the first 256 locations.
|
||||
The BIOS rom is not used and not present on some cards.
|
||||
.It Fl B
|
||||
Write BIOS rom.
|
||||
Write the first 256 locations with an address pattern.
|
||||
.It Fl c
|
||||
Use HDLC's 16-bit CRC polynomial: X^16+X^12+X^5+1 (default)
|
||||
.Bd -ragged -compact
|
||||
.It Fl C
|
||||
Use HDLC's 32-bit CRC polynomial:
|
||||
X^32+X^26+X^23+X^22+X^16+X^12+X^11+X^10+X^8+X^7+X^5+X^4+X^2+X+1
|
||||
.Ed
|
||||
.It Fl d
|
||||
Clear the driver-level debug flag. Non-critical log messages are suppressed.
|
||||
.It Fl D
|
||||
Set the driver-level debug flag. The driver generates more log messages.
|
||||
The driver also generates more log messages if the interface-level debug
|
||||
flag is set by
|
||||
.Xr ifconfig 8 .
|
||||
.It Fl e
|
||||
Set DTE (Data Terminal Equipment) mode (default).
|
||||
An SSI card transmitter uses the Tx clock signal from the modem connector
|
||||
and receives the Data Carrier Detect pin (DCD).
|
||||
DTE/DCE is not applicable to other card types except
|
||||
a few rare CompactPCI/HSSI cards.
|
||||
.It Fl E
|
||||
Set DCE (Data Communication Equipment) mode.
|
||||
An SSI card transmitter uses an on-board synthesized oscillator
|
||||
and drives the Data Carrier Detect pin (DCD).
|
||||
.It Fl f Ar number
|
||||
Set the frequency of the built-in synthesized oscillator to
|
||||
.Ar number
|
||||
bits/second.
|
||||
The nearest frequency that the synthesizer can generate will be used.
|
||||
Only SSI cards and a few rare CompactPCI/HSSI cards have synthesizers.
|
||||
.It Fl F
|
||||
Set SPPP line protocol to Frame-Relay.
|
||||
Only works for FreeBSD-5.4 and later.
|
||||
Not applicable to Linux, NetBSD, OpenBSD. or BSD/OS.
|
||||
.It Fl h
|
||||
Print help (usage message).
|
||||
.It Fl i
|
||||
Set interface name (eg. 'lmc0').
|
||||
.It Fl L Ar number
|
||||
Set loopback mode to
|
||||
.Ar number .
|
||||
.Bl -column "99" "payload" "inward thru drvrs/rcvrsxxx" "HSSI, SSI" -offset 1m -compact
|
||||
.It "1" Ta "none" Ta "default"
|
||||
.It "2" Ta "payload" Ta "outward thru framer" Ta "T1E1. T3"
|
||||
.It "3" Ta "line" Ta "outward thru line if" Ta "T1E1, T3, HSSIc"
|
||||
.It "4" Ta "other" Ta "inward thru line if" Ta "T1E1, T3"
|
||||
.It "5" Ta "inward" Ta "inward thru framer" Ta "T1E1, T3"
|
||||
.It "6" Ta "dual" Ta "inward and outward" Ta "T1E1, T3"
|
||||
.It "16" Ta "tulip" Ta "inward thru Tulip chip" Ta "all cards"
|
||||
.It "17" Ta "pins" Ta "inward thru drvrs/rcvrs" Ta "SSI"
|
||||
.It "18" Ta "LA/LL" Ta "assert LA/LL modem pin" Ta "HSSI, SSI"
|
||||
.It "19" Ta "LB/RL" Ta "assert LB/RL modem pin" Ta "HSSI, SSI"
|
||||
.El
|
||||
.It Fl m
|
||||
Read Tulip MII registers.
|
||||
Print the 32 16-bit registers in the Media Independent Interface.
|
||||
.It Fl M Ar addr Ar data
|
||||
Write Tulip MII register.
|
||||
Write
|
||||
.Ar data
|
||||
into register
|
||||
.Ar addr .
|
||||
.It Fl p
|
||||
Read Tulip PCI configuration registers.
|
||||
Print the first 16 32-bit registers in the PCI configuration space.
|
||||
.It Fl P Ar addr Ar data
|
||||
Write Tulip PCI configuration register.
|
||||
Write
|
||||
.Ar data
|
||||
into register
|
||||
.Ar addr .
|
||||
.It Fl s
|
||||
Read Tulip SROM.
|
||||
Print the 64 16-bit locations.
|
||||
The PCI subsystem vendor and device IDs are kept here.
|
||||
.It Fl S Ar number
|
||||
Write Tulip SROM.
|
||||
Initializes the Tulip SROM to card type
|
||||
.Ar number .
|
||||
.Bl -tag -width 1m -offset 1m -compact
|
||||
.It 3 Ta HSSI
|
||||
.It 4 Ta T3
|
||||
.It 5 Ta SSI
|
||||
.It 6 Ta T1E1
|
||||
.It 7 Ta HSSIc
|
||||
.It 8 Ta SDSL
|
||||
.It 0 Ta auto-set from MII PHYID
|
||||
.El
|
||||
If
|
||||
.Ar number
|
||||
is zero, then the card type is computed from the gate array
|
||||
microcode version field in the MII PHYID register.
|
||||
.Em CAUTION :
|
||||
if the SROM is incorrect, the card will be unusable!
|
||||
This command is
|
||||
.Em so
|
||||
dangerous that lmcconfig must be edited and recompiled to enable it.
|
||||
.It Fl t
|
||||
Read Tulip CSRs.
|
||||
Print the 16 32-bit control and status registers.
|
||||
.It Fl T Ar addr Ar data
|
||||
Write Tulip CSR.
|
||||
Write
|
||||
.Ar data
|
||||
into csr number
|
||||
.Ar addr .
|
||||
Note that addr is a CSR number (0-15) not a byte offset into CSR space.
|
||||
.It Fl u
|
||||
Reset event counters to zero.
|
||||
The driver counts events like packets in and out, errors, discards, etc.
|
||||
The time when the counters are reset is remembered.
|
||||
.It Fl U
|
||||
Reset gate array.
|
||||
Not needed during normal operation; just for testing.
|
||||
.It Fl v
|
||||
Set verbose mode: print more stuff.
|
||||
.It Fl V
|
||||
Print the card configuration -- see the EXAMPLES section.
|
||||
.It Fl w
|
||||
Load gate array from on-board rom.
|
||||
Not needed during normal operation; just for testing.
|
||||
.It Fl W Ar filename
|
||||
Load gate array microcode from
|
||||
.Ar filename .
|
||||
.It Fl x
|
||||
Select RAWIP mode -- bypass line protocol code.
|
||||
.It Fl X
|
||||
Select line protocol code rather than RAWIP mode.
|
||||
.It Fl y
|
||||
Disable SPPP keep-alive packets,
|
||||
Only works for FreeBSD, NetBSD and OpenBSD.
|
||||
Not applicable to Linux or BSD/OS.
|
||||
.It Fl Y
|
||||
Enable SPPP keep-alive packets.
|
||||
Only works for FreeBSD, NetBSD and OpenBSD.
|
||||
Not applicable to Linux or BSD/OS.
|
||||
.It Fl z
|
||||
Set SPPP line protocol to Cisco-HDLC.
|
||||
Only works for FreeBSD, NetBSD and OpenBSD.
|
||||
Not applicable to Linux or BSD/OS.
|
||||
.It Fl Z
|
||||
Set SPPP line protocol to PPP.
|
||||
Only works for FreeBSD, NetBSD and OpenBSD.
|
||||
Not applicable to Linux or BSD/OS.
|
||||
.It Fl ?
|
||||
Print help (usage message).
|
||||
.El
|
||||
.Sp
|
||||
.Ss Commands for T1E1 cards
|
||||
.Sp
|
||||
The following parameters apply to the T1E1 card type:
|
||||
.Bl -tag -width indent
|
||||
.It Fl a Ar y|a|b
|
||||
Stop sending alarm signal.
|
||||
.Bl -column "y" "Yellow Alarm" "unframed all ones; aka AIS" -offset 1m -compact
|
||||
.It "y" Ta "Yellow Alarm" Ta "varies with framing"
|
||||
.It "a" Ta "Red Alarm" Ta "unframed all ones; aka AIS"
|
||||
.It "b" Ta "Blue Alarm" Ta "unframed all ones"
|
||||
.El
|
||||
Red alarm, also known as AIS (Alarm Indication Signal),
|
||||
and Blue alarm are identical in T1.
|
||||
.It Fl A Ar y|a|b
|
||||
Start sending alarm signal (see table above).
|
||||
.It Fl B Ar number
|
||||
Send a Bit Oriented Protocol (BOP) message with code
|
||||
.Ar number.
|
||||
BOP codes are six bits.
|
||||
.It Fl c Ar number
|
||||
Set cable length to
|
||||
.Ar number
|
||||
meters (default: 10 meters).
|
||||
This is used to set receiver sensitivity
|
||||
and transmitter line build-out.
|
||||
.It Fl d
|
||||
Print the status of the on-board DSU/CSU -- see the EXAMPLES section.
|
||||
.It Fl e Ar number
|
||||
Set the framing format to
|
||||
.Ar number :
|
||||
.Bl -tag -width 1m -offset 1m -compact
|
||||
.It 9 Ta T1-SF/AMI
|
||||
.It 27 Ta T1-ESF/B8ZS (default)
|
||||
.It 0 Ta E1-FAS
|
||||
.It 8 Ta E1-FAS+CRC
|
||||
.It 16 Ta E1-FAS+CAS
|
||||
.It 24 Ta E1-FAS+CRC+CAS
|
||||
.It 32 Ta E1-NO-framing
|
||||
.El
|
||||
.It Fl E Ar number
|
||||
Enable 64Kb time slots (TSs) for the T1E1 card.
|
||||
.Ar number
|
||||
is a 32-bit hex number (default 0xFFFFFFFF).
|
||||
The LSB is TS0 and the MSB is TS31.
|
||||
TS0 and TS25-31 are ignored in T1 mode.
|
||||
TS0 and TS16 are determined by the framing format in E1 mode.
|
||||
.It Fl f
|
||||
Read framer registers.
|
||||
Print the 512 8-bit registers in the framer chip.
|
||||
.It Fl F Ar addr Ar data
|
||||
Write framer register.
|
||||
Write
|
||||
.Ar data
|
||||
into register
|
||||
.Ar addr .
|
||||
.It Fl g Ar number
|
||||
Set receiver gain range to
|
||||
.Ar number :
|
||||
.Bl -column "0x00" "Medium" "auto-set based on cable length (default)" -offset 1m -compact
|
||||
.It "0x24" Ta "Short" Ta "0 to 20 dB of equalized gain"
|
||||
.It "0x2C" Ta "Medium" Ta "0 to 30 dB of equalized gain"
|
||||
.It "0x34" Ta "Long" Ta "0 to 40 dB of equalized gain"
|
||||
.It "0x3F" Ta "Extend" Ta "0 to 64 dB of equalized gain (wide open)"
|
||||
.It "0xFF" Ta "Auto" Ta "auto-set based on cable length (default)"
|
||||
.El
|
||||
This sets the level at which
|
||||
.Em Loss-Of-Signal
|
||||
is declared.
|
||||
.It Fl i
|
||||
Send a
|
||||
.Em CSU loopback deactivate
|
||||
inband command (T1-SF only).
|
||||
.It Fl I
|
||||
Send a
|
||||
.Em CSU loopback activate
|
||||
inband command (T1-SF only).
|
||||
.It Fl l
|
||||
Send a
|
||||
.Em line loopback deactivate
|
||||
BOP message (T1-ESF only).
|
||||
.It Fl L
|
||||
Send a
|
||||
.Em line loopback activate
|
||||
BOP message (T1-ESF only).
|
||||
.It Fl p
|
||||
Send a
|
||||
.Em payload loopback deactivate
|
||||
BOP message (T1-ESF only).
|
||||
.It Fl P
|
||||
Send a
|
||||
.Em payload loopback activate
|
||||
BOP message (T1-ESF only).
|
||||
.It Fl s
|
||||
Print the status of the on-board DSU/CSU -- see the EXAMPLES section.
|
||||
.It Fl t
|
||||
Stop sending test pattern.
|
||||
.It Fl T Ar number
|
||||
Start sending test pattern
|
||||
.Ar number :
|
||||
.Bl -tag -width 1m -offset 1m -compact
|
||||
.It 0 Ta unframed X^11+X^9+1
|
||||
.It 1 Ta unframed X^15+X^14+1
|
||||
.It 2 Ta unframed X^20+X^17+1
|
||||
.It 3 Ta unframed X^23+X^18+1
|
||||
.It 4 Ta unframed X^11+X^9+1 with 7ZS
|
||||
.It 5 Ta unframed X^15+X^14+1 with 7ZS
|
||||
.It 6 Ta unframed X^20+X^17+1 with 14ZS (QRSS)
|
||||
.It 7 Ta unframed X^23+X^18+1 with 14ZS
|
||||
.It 8 Ta framed X^11+X^9+1
|
||||
.It 9 Ta framed X^15+X^14+1
|
||||
.It 10 Ta framed X^20+X^17+1
|
||||
.It 11 Ta framed X^23+X^18+1
|
||||
.It 12 Ta framed X^11+X^9+1 with 7ZS
|
||||
.It 13 Ta framed X^15+X^14+1 with 7ZS
|
||||
.It 14 Ta framed X^20+X^17+1 with 14ZS (QRSS)
|
||||
.It 15 Ta framed X^23+X^18+1 with 14ZS
|
||||
.El
|
||||
.It Fl u Ar number
|
||||
Set transmit pulse shape to
|
||||
.Ar number :
|
||||
.Bl -tag -width 1m -offset 1m -compact
|
||||
.It 0 Ta T1 DSX 0 to 40 meters
|
||||
.It 2 Ta T1 DSX 40 to 80 meters
|
||||
.It 4 Ta T1 DSX 80 to 120 meters
|
||||
.It 6 Ta T1 DSX 120 to 160 meters
|
||||
.It 8 Ta T1 DSX 160 to 200 meters
|
||||
.It 10 Ta E1 75-ohm coax pair
|
||||
.It 12 Ta E1 120-ohm twisted pairs
|
||||
.It 14 Ta T1 CSU 200 to 2000 meters; set LBO
|
||||
.It 255 Ta auto-set based on cable length and framing format (default)
|
||||
.El
|
||||
.It Fl U Ar number
|
||||
Set transmit line build-out to
|
||||
.Ar number :
|
||||
.Bl -column "255" "22.5 dB" "FCC option A" -offset 1m -compact
|
||||
.It " 0" Ta "0 dB" Ta "FCC option A"
|
||||
.It " 16" Ta "7.5 dB" Ta "FCC option B"
|
||||
.It " 32" Ta "15 dB" Ta "FCC option C"
|
||||
.It " 48" Ta "22.5 dB" Ta "final span"
|
||||
.It "255" Ta "auto-set based on cable length (default)"
|
||||
.El
|
||||
This is only applicable if the pulse shape is T1-CSU.
|
||||
.It Fl v
|
||||
Set verbose mode: print more stuff.
|
||||
.It Fl x
|
||||
Disable transmitter outputs.
|
||||
.It Fl X
|
||||
Enable transmitter outputs.
|
||||
.El
|
||||
.Sp
|
||||
.Ss Commands for T3 cards
|
||||
.Sp
|
||||
The following parameters apply to the T3 card type:
|
||||
.Bl -tag -width indent
|
||||
.It Fl a Ar y|a|b|i
|
||||
Stop sending alarm signal.
|
||||
.Bl -column "y" "Yellow Alarm" "framed 1010... aka AIS" -offset 1m -compact
|
||||
.It "y" Ta "Yellow Alarm" Ta "X-bits set to 0"
|
||||
.It "a" Ta "Red Alarm" Ta "framed 1010... aka AIS"
|
||||
.It "b" Ta "Blue Alarm" Ta "unframed all-ones"
|
||||
.It "i" Ta "Idle signal" Ta "framed 11001100..."
|
||||
.El
|
||||
.It Fl A Ar y|a|b|i
|
||||
Start sending alarm signal (see table above).
|
||||
.It Fl B Ar number
|
||||
Send a BOP (Bit Oriented Protocol) message with code
|
||||
.Ar number .
|
||||
BOP codes are six bits.
|
||||
.It Fl c Ar number
|
||||
Set cable length to
|
||||
.Ar number
|
||||
meters (default: 10 meters).
|
||||
This is used to set receiver sensitivity
|
||||
and transmitter line build-out.
|
||||
.It Fl d
|
||||
Print the status of the on-board T3 DSU -- see the EXAMPLES section.
|
||||
.It Fl e Ar number
|
||||
Set the framing format to
|
||||
.Ar number :
|
||||
.Bl -tag -width 1m -offset 1m -compact
|
||||
.It 100 Ta T3-C-bit parity
|
||||
.It 101 Ta T3-M13 format
|
||||
.El
|
||||
.It Fl f
|
||||
Read framer registers.
|
||||
Print the 22 8-bit registers in the framer chip.
|
||||
.It Fl F Ar addr Ar data
|
||||
Write framer register.
|
||||
Write
|
||||
.Ar data
|
||||
into register
|
||||
.Ar addr .
|
||||
.It Fl l
|
||||
Send a
|
||||
.Em line loopback deactivate
|
||||
BOP message.
|
||||
.It Fl L
|
||||
Send a
|
||||
.Em line loopback activate
|
||||
BOP message.
|
||||
.It Fl s
|
||||
Print the status of the on-board T3 DSU -- see the EXAMPLES section.
|
||||
.It Fl S Ar number
|
||||
Set payload scrambler polynominal to
|
||||
.Ar number :
|
||||
.Bl -tag -width 1m -offset 1m -compact
|
||||
.It 1 Ta payload scrambler disabled
|
||||
.It 2 Ta X^43+1: DigitalLink and Kentrox
|
||||
.It 3 Ta X^20+X^17+1 w/28ZS: Larscom
|
||||
.El
|
||||
Payload scrambler polynomials are not standardized.
|
||||
.It Fl v
|
||||
Set verbose mode: print more stuff.
|
||||
.It Fl V Ar number
|
||||
Set transmit frequency offset to
|
||||
.Ar number .
|
||||
Some T3 cards can offset the transmitter frequency from 44.736 MHz.
|
||||
.Ar Number
|
||||
is in the range (0..4095); 2048 is zero offset; step size is about 3 Hz.
|
||||
.Ar Number
|
||||
is written to a Digital-Analog Converter (DAC) which connects
|
||||
to a Voltage Controlled Crystal Oscillator (VCXO).
|
||||
.El
|
||||
.Sp
|
||||
.Ss Event Counters
|
||||
.Sp
|
||||
The device driver counts many interesting events such as
|
||||
packets in and out, errors and discards.
|
||||
The table below lists the event counters and describes what they count.
|
||||
.Bl -tag -width "underruns"
|
||||
.It ibytes
|
||||
Bytes received in packets with good ending status.
|
||||
.It obytes
|
||||
Bytes transmitted.
|
||||
.It ipackets
|
||||
Packets received with good ending status.
|
||||
.It opackets
|
||||
Packets transmitted.
|
||||
.It ierrors
|
||||
Packets received with bad ending status.
|
||||
.It oerrors
|
||||
Packets transmitted with bad ending status.
|
||||
.It idiscards
|
||||
Packets received but discarded because
|
||||
the input queue was full or the interface was down.
|
||||
.It odiscards
|
||||
Packets presented for transmission but discarded because
|
||||
the output queue was full or the interface was down.
|
||||
.It txdma
|
||||
Packets presented for transmission but queued and retried later
|
||||
because no DMA descriptors were available.
|
||||
This can happen during normal operation and is not an indication of trouble.
|
||||
.It fifo-overrun
|
||||
Packets that started to arrive, but were aborted because
|
||||
the card was unable to DMA data to memory fast enough
|
||||
to prevent the receiver fifo from overflowing.
|
||||
.It fifo-underrun
|
||||
Packets that started to transmit but were aborted because
|
||||
the card was unable to DMA data from the memory fast enough
|
||||
to prevent the transmitter fifo from underflowing.
|
||||
When this happens, the transmitter threshold is increased,
|
||||
so that more bytes are required to be in the fifo
|
||||
before the transmitter is started.
|
||||
.It missed
|
||||
Packets that are missed because the receiver is stopped.
|
||||
.It overruns
|
||||
Packets that are missed because the receiver
|
||||
had no DMA descriptors available.
|
||||
.It fdl_pkts
|
||||
Packets received on the T1 Facility Data Link.
|
||||
.It crc-errs
|
||||
Cyclic Redundancy Checksum errors detected by the CRC-6 in
|
||||
T1 Extended SuperFrames (ESF) or the CRC-4 in E1 frames.
|
||||
.It lcv-errs
|
||||
Line Coding Violation errors:
|
||||
Alternate Mark Inversion (AMI) errors for T1-SF,
|
||||
Bipolar 8-Zero Substitution (B8ZS) errors for T1-ESF, or
|
||||
High Density Bipolar with 3-Zero Substitution (HDB3) errors for E1 or
|
||||
Bipolar 3-Zero Substitution (B3ZS) errors for T3.
|
||||
.It frm-errs
|
||||
T1 or T3 bit errors in the frame alignment signal.
|
||||
.It febe-errs
|
||||
Far End Block Errors:
|
||||
T1 or T3 bit errors detected by the device at the far end of the link.
|
||||
.It par-errs
|
||||
T3 bit errors detected by the hop-by-hop parity mechanism.
|
||||
.It cpar-errs
|
||||
T3 bit errors detected by the end-to-end parity mechanism.
|
||||
.It mfrm-errs
|
||||
T3 bit errors in the multi-frame alignment signal.
|
||||
.El
|
||||
.Sp
|
||||
.Ss Transmit Speed
|
||||
.Sp
|
||||
The hardware counts transmit clocks divided by 2048.
|
||||
The software computes "Tx speed" from this (see examples below).
|
||||
The transmit clock is the bit rate of the circuit divided by two if the
|
||||
circuit is idle and divided by four if the circuit is carrying a packet.
|
||||
So an idle circuit reports a Tx speed equal to its bit rate,
|
||||
and a busy circuit reports a Tx speed equal to half its bit rate.
|
||||
.Pp
|
||||
This "bit rate" does not include circuit-level overhead bits
|
||||
(such as T1 or T3 frame bits) but does include HDLC stuff bits.
|
||||
An idle T1 circuit with a raw bit rate of 1544000 and a
|
||||
bit-rate-minus-overhead of 1536000 will report a "Tx speed"
|
||||
of ((1536000 bitand 4095) plus or minus 4096).
|
||||
Sometimes it will even get the correct answer of 1536000, and
|
||||
if the link is fully loaded it will report about 768000 bits/sec.
|
||||
.Pp
|
||||
It's not a perfect bit rate meter (the circuit must be idle),
|
||||
but it is a useful circuit utilization meter if you know the
|
||||
circuit bit rate and do some arithmetic. Software recalculates
|
||||
Tx speed once a second; the measurement period has some jitter.
|
||||
.Sp
|
||||
.Sh EXAMPLES
|
||||
.Sp
|
||||
.Bd -unfilled -compact
|
||||
When lmc0 is a T1E1 card,
|
||||
.br
|
||||
.Ic lmcconfig lmc0
|
||||
generates the following output:
|
||||
.Ed
|
||||
.Bd -literal -offset 2m -compact
|
||||
Card name: lmc0
|
||||
Card type: SBE/LMC T1E1 card
|
||||
Link status: Up
|
||||
Tx Speed: 1548288
|
||||
Line Prot/Pkg: Frame-Relay/SPPP
|
||||
SPPP Keep-alives: OFF
|
||||
CRC length: 16 bits
|
||||
Loopback: None
|
||||
Tx Clk src: Internal source
|
||||
Format-Frame/Code: T1-ESF/B8ZS
|
||||
TimeSlot [31-0]: 0x01FFFFFE
|
||||
Cable length: 10 meters
|
||||
Tx pulse shape: auto-set to T1-DSX: 0 to 40 meters
|
||||
Rx gain max: auto-set to 20.0 dB
|
||||
Current time: Thu Sep 29 21:48:51 2005
|
||||
Cntrs reset: Thu Sep 29 16:21:05 2005
|
||||
RX bytes: 15053836
|
||||
RX packets: 23271
|
||||
TX bytes: 1732169
|
||||
TX packets: 20526
|
||||
Rx fdl pkts: 5443
|
||||
.Ed
|
||||
.Bd -unfilled
|
||||
When lmc0 is a T1E1 card,
|
||||
.br
|
||||
.Ic lmcconfig lmc0 -1 -d
|
||||
generates the following output:
|
||||
.Ed
|
||||
.Bd -literal -offset 2m -compact
|
||||
Format-Frame/Code: T1-ESF/B8ZS
|
||||
TimeSlot [31-0]: 0x01FFFFFE
|
||||
Tx Clk src: Internal source
|
||||
Tx Speed: 1548288
|
||||
Tx pulse shape: T1-DSX: 0 to 40 meters
|
||||
Tx outputs: Enabled
|
||||
Line impedance: 100 ohms
|
||||
Max line loss: 20.0 dB
|
||||
Cur line loss: 3.1 dB
|
||||
Invert data: No
|
||||
Line loop: No
|
||||
Payload loop: No
|
||||
Framer loop: No
|
||||
Analog loop: No
|
||||
Tx AIS: No
|
||||
Rx AIS: No
|
||||
Tx BOP RAI: No
|
||||
Rx BOP RAI: No
|
||||
Rx LOS analog: No
|
||||
Rx LOS digital: No
|
||||
Rx LOF: No
|
||||
Tx QRS: No
|
||||
Rx QRS: No
|
||||
LCV errors: 0
|
||||
CRC errors: 0
|
||||
Frame errors: 0
|
||||
Sev Err Frms: 0
|
||||
Change of Frm align: 0
|
||||
Loss of Frame events: 0
|
||||
Last Tx BOP msg: 0x00 (Yellow Alarm (far end LOF))
|
||||
Last Rx BOP msg: 0x00 (Yellow Alarm (far end LOF))
|
||||
SNMP Near-end performance data:
|
||||
LCV=0 LOS=0 FE=0 CRC=0 AIS=0 SEF=0 OOF=0 RAI=0
|
||||
ANSI Far-end performance reports:
|
||||
SEQ=1 CRC=0 SE=0 FE=0 LV=0 SL=0 LB=0
|
||||
SEQ=0 CRC=0 SE=0 FE=0 LV=0 SL=0 LB=0
|
||||
SEQ=3 CRC=0 SE=0 FE=0 LV=0 SL=0 LB=0
|
||||
SEQ=2 CRC=0 SE=0 FE=0 LV=0 SL=0 LB=0
|
||||
.Ed
|
||||
.Sp
|
||||
.Sh DIAGNOSTICS
|
||||
.Sp
|
||||
Messages indicating the specified interface does not exist, or
|
||||
the user is not privileged and tried to alter an interface's configuration.
|
||||
.Sp
|
||||
.Sh SEE ALSO
|
||||
.Sp
|
||||
.Xr ioctl 2 ,
|
||||
.Xr netgraph 4 ,
|
||||
.Xr lmc 4 ,
|
||||
.Xr ifconfig 8 ,
|
||||
.Xr ifnet 9 .
|
||||
.Pp
|
||||
.Pa http://www.sbei.com .
|
||||
.Sp
|
||||
.Sh HISTORY
|
||||
.Sp
|
||||
This is a total rewrite of the program lmcctl by Andrew Stanley-Jones.
|
||||
.Sp
|
||||
.Sh AUTHOR
|
||||
.Sp
|
||||
.An "David Boggs" Aq boggs@boggs.palo-alto.ca.us .
|
2483
usr.sbin/lmcconfig/lmcconfig.c
Normal file
2483
usr.sbin/lmcconfig/lmcconfig.c
Normal file
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user