mirror of
https://github.com/freebsd/freebsd-src.git
synced 2024-12-04 10:19:26 +00:00
New cx driver part 2: Commit the new userland pieces.
This is the new cronyx serial control program. # A future commit will remove the old driver/userland pieces and connect things # to the build. Submitted by: Roamn Kurakin <rik@cronyx.ru>
This commit is contained in:
parent
84616172f2
commit
cdf2381638
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=123123
13
sbin/sconfig/Makefile
Normal file
13
sbin/sconfig/Makefile
Normal file
@ -0,0 +1,13 @@
|
||||
# Cronyx Id: sbin.sconfig.Makefile,v 1.1.4.1 2003/02/17 12:51:24 rik Exp $
|
||||
# $FreeBSD$
|
||||
|
||||
PROG= sconfig
|
||||
MAN= sconfig.8
|
||||
|
||||
.include <bsd.prog.mk>
|
||||
# $Id: sbin.sconfig.Makefile,v 1.1.4.1 2003/02/17 12:51:24 rik Exp $
|
||||
|
||||
PROG= sconfig
|
||||
MAN= sconfig.8
|
||||
|
||||
.include <bsd.prog.mk>
|
909
sbin/sconfig/sconfig.8
Normal file
909
sbin/sconfig/sconfig.8
Normal file
@ -0,0 +1,909 @@
|
||||
.\" $FreeBSD$
|
||||
.Dd November 21, 2003
|
||||
.Dt SCONFIG 8
|
||||
.Os FreeBSD
|
||||
.Sh NAME
|
||||
.Nm sconfig
|
||||
.Nd channel configuration utility for Cronyx adapters
|
||||
.Sh SYNOPSIS
|
||||
.Nm
|
||||
.Op Fl aimsxeftuc
|
||||
.Op Ar device name
|
||||
.Op Ar data rate options
|
||||
.Op Ar protocol options ...
|
||||
.Op Ar interface options ...
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Nm
|
||||
utility is used for configuring the channel options of the Cronyx
|
||||
adapters. In asynchronous mode all the parameters should be set by standard
|
||||
.Xr stty 1
|
||||
utility, with
|
||||
.Nm
|
||||
you could set only few of them (see below).
|
||||
.Pp
|
||||
Some of the options could be set only on free channels, that is the
|
||||
corresponding network interface in
|
||||
.Ar down
|
||||
state in the synchronous mode, and in the asynchronous mode the asynchronous
|
||||
terminal device
|
||||
.Pa /dev/tty*
|
||||
closed.
|
||||
.Pp
|
||||
Other channel options could be changed
|
||||
.Do on the fly
|
||||
.Dc .
|
||||
Generally, the channel options are set up during the operating system startup,
|
||||
for example from the
|
||||
.Pa /etc/rc
|
||||
file.
|
||||
.Pp
|
||||
Note, that not all options have a sense for every particular
|
||||
case, and an attempt to set some of them can hang up the channel or
|
||||
the whole adapter.
|
||||
.\"--------------------------------------------------------------
|
||||
.Ss "Information options"
|
||||
You can specify only one of these options. If information option is specified,
|
||||
sconfig will show corresponding information and will ignore all other options,
|
||||
except
|
||||
.Ar device name.
|
||||
See also description of the
|
||||
.Ar device name.
|
||||
.Bl -tag -width 10n
|
||||
.It <none>
|
||||
This will show settings of the channel.
|
||||
.It Fl a
|
||||
Print all settings of the channel.
|
||||
.It Fl i
|
||||
Print interface settings, equal to the output of
|
||||
.Xr ifconfig 1
|
||||
command.
|
||||
.It Fl m
|
||||
Print modem signal status. The description of all signals can be found in
|
||||
any document related to the modems. Only LE signal should be described. If
|
||||
this signal is On, than some what use channel. If it is Off, than channel is
|
||||
free.
|
||||
.It Fl s
|
||||
Print brief channel statistics. This is general statistics. See also
|
||||
.Fl x
|
||||
,
|
||||
.Fl e
|
||||
,
|
||||
.Fl f
|
||||
,
|
||||
.Fl t
|
||||
and
|
||||
.Fl u
|
||||
options. For the description of output, see below.
|
||||
.Pp
|
||||
This statistics is very useful if something goes wrong. For example, if you
|
||||
have no any interrupts, than you use interrupt that is not registered in BIOS
|
||||
for use with ISA bus.
|
||||
.It Fl x
|
||||
Print full channel statistics. This options allows to see some more counters,
|
||||
but with less precision than with
|
||||
.Pa -s
|
||||
option.
|
||||
.It Fl e
|
||||
Print brief E1/G703 statistics. If you select this option, you will get
|
||||
statistics accumulated for period of time equal to 15 minutes. For the
|
||||
description of output, see below.
|
||||
.It Fl f
|
||||
Print full E1/G703 statistics. This option shows all E1/G703 statistics that
|
||||
shows previous option(
|
||||
.Fl e
|
||||
), but also total statistics for whole period of time and statistics for 24
|
||||
hours (if available). For the description of output, see below.
|
||||
.It Fl t
|
||||
Print brief E3/T3/STS-1 statistics. If you select this option, you will
|
||||
get statistics accumulated for period of time equal to 15 minutes. For
|
||||
the description of output, see below.
|
||||
.It Fl u
|
||||
Print full E3/T3/STS-1 statistics. This option shows all E3/T3/STS-1
|
||||
statistics that shows previous option(
|
||||
.Fl t
|
||||
), but also total statistics for whole period of time and statistics for 24
|
||||
hours (if available). For the description of output, see below.
|
||||
.It Fl c
|
||||
Cleans all kind of statistics.
|
||||
.El
|
||||
.\"--------------------------------------------------------------
|
||||
.Ss "Device selection"
|
||||
Device is equal to the name of the interface that is used for a name of
|
||||
the interface that is sees
|
||||
.Nm ifconfig.
|
||||
The channel number depends on the order of loading drivers by the system.
|
||||
Some times people confuse channel number and adapter number because of the
|
||||
same spelling. Adapter number appears in kernel context, channel number
|
||||
in configuration context.
|
||||
.Bl -tag -width 10n
|
||||
.It <none>
|
||||
You can omit device name only if you want to get information. This will cause
|
||||
printing information about all available channels of Cronyx adapters. In the
|
||||
case you want to make some settings you MUST specify device name.
|
||||
.It cx##
|
||||
This is the channel name for the Sigma family of Cronyx adapters. (ISA bus)
|
||||
.It ct##
|
||||
This is the channel name for the Tau family of Cronyx adapters. (ISA bus)
|
||||
.It cp##
|
||||
This is the channel name for the Tau-PCI family of Cronyx adapters. (PCI bus)
|
||||
.It ce##
|
||||
This is the channel name for the Tau32-PCI family of Cronyx adapters. (PCI bus)
|
||||
.El
|
||||
.\"--------------------------------------------------------------
|
||||
.Ss "Data rate options"
|
||||
.Bl -tag -width 10n
|
||||
.It value
|
||||
If case of nonzero value it will cause setting data rate to given value and
|
||||
setting the internal clock source of the synchronization (in synchronous mode).
|
||||
Zero value is equal to the
|
||||
.Ar extclock.
|
||||
The transmitted data (TXD) are synchronized using the internal on-board timing
|
||||
generator, the internally generated timing signal is driven on the TXCOUT pin,
|
||||
and the signal on the TXCIN pin is ignored. This mode is used for direct
|
||||
terminal-to-terminal communication, e.g. for connecting two computers together
|
||||
in a synchronous mode via relatively short cable. This method should also be
|
||||
used for testing channels with an external loopback connector.
|
||||
.It extclock
|
||||
Set the external timing clock source of synchronous channels. External clock
|
||||
mode is the most common method for connecting external modem hardware. In this
|
||||
mode the external timing signal is received on TXCIN pin of the connector,
|
||||
and it is used as a synchronization clock for transmitting data (TXD).
|
||||
.El
|
||||
.\"--------------------------------------------------------------
|
||||
.Ss "Protocol options"
|
||||
Note. These option could be set only if channel is free and they requires
|
||||
specifying of the device name.
|
||||
.Bl -tag -width 10n
|
||||
.It async
|
||||
Set asynchronous protocol (or mode). In this mode Cronyx adapters behave as a
|
||||
usual serial devices and you may work with them using usual serial utilities.
|
||||
All asynchronous settings are performed via serial configuration utilities. With
|
||||
.Nm sconfig
|
||||
you may set only a few of them. See also
|
||||
.Xr stty 1 .
|
||||
(Only for Sigma family)
|
||||
.It cisco
|
||||
Set the Cisco HDLC synchronous protocol.
|
||||
.It fr
|
||||
Set the Frame Relay synchronous protocol (ANSI T1.617 Annex D).
|
||||
.It ppp
|
||||
Set the PPP synchronous protocol. Parameters to the PPP could be set by the
|
||||
command
|
||||
.Xr spppcontrol 1 .
|
||||
.It keepalive=on, keepalive=off
|
||||
Turns on/off sending keepalive messages. This option is used only for
|
||||
synchronous PPP. If this option is on, than PPP will periodically send
|
||||
echo-request messages. If it would not receive any echo-reply messages for
|
||||
some (definite) period of time it will break connection. It is used for
|
||||
tracking line state.
|
||||
.It idle
|
||||
You are using NETGRAPH. Protocol depends on connected module.
|
||||
.El
|
||||
.\"--------------------------------------------------------------
|
||||
.Ss "Interface options"
|
||||
Not all of these options could be set on running channel and not all of them
|
||||
are suits to all kind of adapters/channels. In all dual state options off is
|
||||
default value. All this options is not applicable in asynchronous mode, except
|
||||
debug option.
|
||||
.Bl -tag -width 10n
|
||||
.It port=rs232, port=v35, port=rs449
|
||||
Set port type for old Sigma models.
|
||||
.It cfg=A, cfg=B, cfg=C
|
||||
Set configuration for the adapter. This option could be set only for Tau/E1
|
||||
and Tau/G703 and only if all channels are not running.
|
||||
.Ar cfg=A
|
||||
- Two independent E1/G703 channels. This is default setting.
|
||||
.Ar cfg=B (Only for ISA models)
|
||||
- For Tau/G703 this mean one G703 channel and one digital channel.
|
||||
For Tau/E1 first physical channel divides on to subchannels. One of them
|
||||
goes to the first logical channel and another one goes to the second physical
|
||||
channel. Second (logical) channel is digital channel.
|
||||
.Ar cfg=C
|
||||
- This configuration is used only for E1 models. In this case first
|
||||
physical channel consists of three data flows. Two of them go to two
|
||||
(logical) channels. The last one goes to the second physical channel. On new
|
||||
models (Tau32-PCI, Tau-PCI/2E1 and Tau-PCI/4E1) this configuration means single source
|
||||
of synchronization and passing all unused (in both channels) timeslots from
|
||||
one channel to other. For the detailed description of the configuration see
|
||||
your documentation to the adapter. This option could not be set on running
|
||||
channel.
|
||||
.It loop=on, loop=off
|
||||
Turn on/off internal loopback. This mode is useful for testing. Switch on this
|
||||
option and try to send something. If you have no any interrupt, than, probably,
|
||||
you forgot to switch using IRQ for PCI to ISA bus. Check your BIOS settings.
|
||||
.It rloop=on, rloop=off (Only for Tau32-PCI and Tau-PCI/E3)
|
||||
Turn on/off remote loopback. This mode is also useful for testing.
|
||||
.It dpll=on, dpll=off
|
||||
Turn on/off digital phase locked loop mode (DPLL). When enabled, the receiver
|
||||
timing clock signal is derived from the received data. Must be used with NRZI
|
||||
encoding, to avoid the synchronization loss.
|
||||
.It nrzi=on, nrzi=off
|
||||
Turn on/off nrzi encoding. In off state nrz encoding is used. NRZ - the zero
|
||||
bit is transmitted by the zero signal level, the one bit - by the positive
|
||||
signal level. NRZI - the bit number zero is transmitted by the change of the
|
||||
signal level, the one bit - by the constant signal level. Commonly is used with
|
||||
dpll=on option.
|
||||
.It invclk=on, invclk=off
|
||||
Invert the both transmit and receive clock signals (Tau and Tau-PCI only).
|
||||
.It invrclk=on, invrclk=off
|
||||
Invert the receive clock signals (Tau-PCI only).
|
||||
.It invtclk=on, invtclk=off
|
||||
Invert the transmit clock signals (Tau-PCI only).
|
||||
.It higain=on, higain=off
|
||||
Turn on/off increasing the E1 receiver non linear sensitivity to -30 dB (E1
|
||||
only). In of state the sensitivity is -12 dB. This allows increasing line
|
||||
distance.
|
||||
.It cablen=on, cablen=off (Only for Tau-PCI/T3 and Tau-PCI/STS-1)
|
||||
Turn on/off adjusting transmit signal for long cable T3/STS-1.
|
||||
.It monitor=on, monitor=off
|
||||
Turn on/off increasing the E1 receiver lines sensitivity to -30 dB
|
||||
(Tau32-PCI, Tau-PCI/2E1 and Tau-PCI/4E1 only). This could be used for interception
|
||||
purposes.
|
||||
.It phony=on, phony=off
|
||||
Turn on/off the so-called phony mode (Tau32-PCI and Tau-PCI E1 family only). This mode allows
|
||||
receiving raw CEPT frames from E1 line. Raw frames could be accessed, for
|
||||
example, via raw protocol. Packets would come at rate of 500 frames per second
|
||||
with length 16xN (for Tau-PCI/E1 model), where N is the number of timeslots. For
|
||||
Tau-PCI/2E1 and Tau-PCI/4E1 N should be equal to 32 independently from number of
|
||||
used timeslots.
|
||||
.It unfram=on, unfram=off
|
||||
Turn on/off unframed mode (Tau32-PCI, Tau-PCI/2E1 and Tau-PCI/4E1 only).
|
||||
.Ar unfram=on
|
||||
switches channel to unframed G.703 mode.
|
||||
.Ar unfram=off
|
||||
switches channel to framed E1 (G.704 mode).
|
||||
.It scrambler=on, scrambler=off
|
||||
Turn on/off the scrambling of G.703 data (Tau32-PCI, Tau-PCI/G.703 and Tau-PCI/2E1,
|
||||
Tau-PCI/4E1 in unframed mode only).
|
||||
.It use16=on, use16=off
|
||||
Turn on/off the usage of 16-th timeslot for data transmission (Tau32-PCI and Tau-PCI E1 family only).
|
||||
Normally 16-th timeslot is used for signaling information (multiframing CAS).
|
||||
.It crc4=on, crc4=off
|
||||
Turn on/off CRC4 superframe mode (E1 only).
|
||||
.It syn=int, syn=rcv, syn=rcv0, syn=rcv1, syn=rcv2, sync=rcv3
|
||||
.Ar int
|
||||
- use an internal clock generator for G703 transmitter
|
||||
(clock master).
|
||||
.Ar rcv
|
||||
- use the G703 receiver data clock as the transmit clock
|
||||
(clock slave).
|
||||
.Ar rcv0, rcv1, rcv2, rcv3
|
||||
- use the G703 receiver clock of the other channel
|
||||
(E1 models only).
|
||||
.It dir=<number>
|
||||
Binds logical channel to the physical channel (Tau32-PCI, Tau-PCI/2E1 and Tau-PCI/4E1
|
||||
only). Using this parameter you could, for example, split E1 physical channel
|
||||
into several channels.
|
||||
.It ts=interval
|
||||
Set up the list of timeslots to use by the channel (E1 only). The
|
||||
timeslots are numbered from 1 to 31, and are separated by comma or minus sign,
|
||||
giving an interval. For example: "ts=1-3,5,17".
|
||||
.It pass=interval
|
||||
Set up the list of timeslots, translated to the E1 subchannel in cfg=B and
|
||||
cfg=C configurations (Tau/E1 only).
|
||||
.It debug=0, debug=1, debug=2
|
||||
Turn on/off debug messages.
|
||||
.Ar 0
|
||||
- turn off debug messages.
|
||||
.Ar 1
|
||||
- turn on debug
|
||||
messages, equal to the
|
||||
.Ar debug
|
||||
option to the
|
||||
.Xr ifconfig 8
|
||||
utility.
|
||||
.Ar 2
|
||||
- high intensive debug message, developers only.
|
||||
.El
|
||||
.\"--------------------------------------------------------------
|
||||
.Sh EXAMPLES
|
||||
Set up the channel 1 for use with the HDSL modem or any other
|
||||
synchronous leased-line modem, and PPP/HDLC protocol (for Sigma):
|
||||
.Bd -literal -offset indent
|
||||
sconfig cx1 ppp extclock
|
||||
ifconfig cx1 158.250.244.2 158.250.244.1 up
|
||||
.Ed
|
||||
.Pp
|
||||
Set up the channel 0 of Tau/E1 for use with the Cisco protocol
|
||||
over E1 link, with the single virtual connection.
|
||||
The DLCI number is detected automatically.
|
||||
Use timeslots 1-10:
|
||||
.Bd -literal -offset indent
|
||||
sconfig ct0 cisco ts=1-10
|
||||
ifconfig ct0 158.250.244.2 158.250.244.1 up
|
||||
.Ed
|
||||
.Pp
|
||||
Set up the channel 0 for the synchronous null-modem link to the nearby computer,
|
||||
internal clock source, 256000 bits/sec, protocol Cisco/HDLC (for Tau):
|
||||
.Bd -literal -offset indent
|
||||
sconfig ct0 cisco 256000
|
||||
ifconfig ct0 200.1.1.1 200.1.1.2 up
|
||||
.Ed
|
||||
.Pp
|
||||
Set up the channel 1 for the leased line link using data-only
|
||||
null-modem cable (or modems like Zelax+ M115). Synchronous DPLL mode, 128000
|
||||
bits/sec, protocol PPP/HDLC, NRZI encoding (for Sigma):
|
||||
.Bd -literal -offset indent
|
||||
sconfig cx1 ppp 128000 nrzi=on dpll=on
|
||||
ifconfig cx1 158.250.244.2 158.250.244.1 up
|
||||
.Ed
|
||||
.\"--------------------------------------------------------------
|
||||
.Sh DIAGNOSTICS
|
||||
This section contains description of abbreviations used by
|
||||
.Nm sconfig
|
||||
while displaying various statistics. For description of options connected with
|
||||
statistics see above.
|
||||
.\"--------------------------------------------------------------
|
||||
.Ss Statistics
|
||||
When running, the driver gathers the statistics about the channels, which
|
||||
could be accessed via sconfig utility or by
|
||||
.Xr ioctl 2
|
||||
call
|
||||
.Ar SERIAL_GETSTAT.
|
||||
.Bl -tag -width 10n
|
||||
.It Rintr
|
||||
The total number of receive interrupts.
|
||||
.It Tintr
|
||||
The total number of transmit interrupts.
|
||||
.It Mintr
|
||||
The total number of modem interrupts.
|
||||
.It Ibytes
|
||||
The total bytes received.
|
||||
.It Ipkts
|
||||
The total packets received (for HDLC mode).
|
||||
.It Ierrs
|
||||
The number of receive errors.
|
||||
.It Obytes
|
||||
The total bytes transmitted.
|
||||
.It Opkts
|
||||
The total packets transmitted (for HDLC mode).
|
||||
.It Oerrs The number of transmit errors.
|
||||
.El
|
||||
.\"--------------------------------------------------------------
|
||||
.Ss E1/G.703 Statistics
|
||||
For E1 and G.703 channels the SNMP-compatible statistics data are gathered
|
||||
(see RFC 1406). It could be accessed via sconfig utility or by ioctl(2) call
|
||||
.Ar SERIAL_GETESTAT .
|
||||
.Bl -tag -width 10n
|
||||
.It Unav (uas)
|
||||
Unavailable seconds - receiving all ones, or loss of carrier, or loss of
|
||||
signal.
|
||||
.It Degr (dm)
|
||||
Degraded minutes - having error rate more than 10e-6, not counting unavailable
|
||||
and severely errored seconds.
|
||||
.It Bpv (bpv)
|
||||
HDB3 bipolar violation errors.
|
||||
.It Fsyn (fse)
|
||||
Frame synchronization errors (E1 only).
|
||||
.It CRC (crce)
|
||||
CRC4 errors (E1).
|
||||
.It RCRC (rcrce)
|
||||
Remote CRC4 errors: E-bit counter (E1).
|
||||
.It Err (es)
|
||||
Errored seconds - any framing errors, or out of frame sync, or any slip events.
|
||||
.It Lerr (les)
|
||||
Line errored seconds - any BPV.
|
||||
.It Sev (ses)
|
||||
Severely errored seconds - 832 or more framing errors, or 2048 or more bipolar
|
||||
violations.
|
||||
.It Bur (bes)
|
||||
Bursty errored seconds - more than 1 framing error, but not severely errored.
|
||||
.It Oof (oofs)
|
||||
Severely errored framing seconds - out of frame sync.
|
||||
.It Slp (css)
|
||||
Controlled slip second -- any slip buffer overflow or underflow.
|
||||
.El
|
||||
.\"--------------------------------------------------------------
|
||||
.Ss E1/G.703 Status
|
||||
.Nm sconfig
|
||||
utility also prints the E1/G.703 channel status. The status could have the
|
||||
following values (nonexclusive):
|
||||
.Bl -tag -width 10n
|
||||
.It Ok
|
||||
The channel is in valid state, synchronized.
|
||||
.It LOS
|
||||
Loss of sync.
|
||||
.It AIS
|
||||
Receiving unframed all ones (E1 only).
|
||||
.It LOF
|
||||
Loss of framing (E1 only).
|
||||
.It LOMF
|
||||
Loss of multiframing (E1 only).
|
||||
.It FARLOF
|
||||
Receiving remote alarm (E1 only).
|
||||
.It AIS16
|
||||
Receiving all ones in timeslot 16 (E1 only).
|
||||
.It FARLOMF
|
||||
Receiving distant multiframe alarm (E1 only).
|
||||
.It TSTREQ
|
||||
Receiving test request code (G.703 only).
|
||||
.It TSTERR
|
||||
Test error (G.703 only).
|
||||
.El
|
||||
.\"--------------------------------------------------------------
|
||||
.Sh SEE ALSO
|
||||
.Xr stty 1
|
||||
.Xr ioctl 2
|
||||
.Xr sppp 4
|
||||
.Xr spppconrol 8
|
||||
.Xr ifconfig 8
|
||||
.Xr route 8
|
||||
.\"--------------------------------------------------------------
|
||||
.Sh HISTORY
|
||||
This utility is a replacement of utilities
|
||||
.Nm cxconfig
|
||||
and
|
||||
.Nm ctconfig
|
||||
that was used in past with FreeBSD drivers. Those two utilities and the present
|
||||
utility are not compatible. And therefore all scripts should be rewritten. More
|
||||
over, Linux and FreeBSD version of present utility not fully compatible.
|
||||
.\"--------------------------------------------------------------
|
||||
.Sh BUGS
|
||||
All software produced by Cronyx Engineering is thoroughly tested. But
|
||||
as created by the man it can contain some
|
||||
.So
|
||||
BUGS
|
||||
.Sc .
|
||||
If you have caught one, try to localize it and send a letter with description
|
||||
of this bug and all operation that you have done. We will try to reproduce
|
||||
an error and fix it.
|
||||
.\"--------------------------------------------------------------
|
||||
.Sh CONTACT
|
||||
E-mail: info@cronyx.ru
|
||||
.Pp
|
||||
http://www.cronyx.ru
|
||||
.Dd November 21, 2003
|
||||
.Dt SCONFIG 8
|
||||
.Os FreeBSD
|
||||
.Sh NAME
|
||||
.Nm sconfig
|
||||
.Nd channel configuration utility for Cronyx adapters
|
||||
.Sh SYNOPSIS
|
||||
.Nm
|
||||
.Op Fl aimsxeftuc
|
||||
.Op Ar device name
|
||||
.Op Ar data rate options
|
||||
.Op Ar protocol options ...
|
||||
.Op Ar interface options ...
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Nm
|
||||
utility is used for configuring the channel options of the Cronyx
|
||||
adapters. In asynchronous mode all the parameters should be set by standard
|
||||
.Xr stty 1
|
||||
utility, with
|
||||
.Nm
|
||||
you could set only few of them (see below).
|
||||
.Pp
|
||||
Some of the options could be set only on free channels, that is the
|
||||
corresponding network interface in
|
||||
.Ar down
|
||||
state in the synchronous mode, and in the asynchronous mode the asynchronous
|
||||
terminal device
|
||||
.Pa /dev/tty*
|
||||
closed.
|
||||
.Pp
|
||||
Other channel options could be changed
|
||||
.Do on the fly
|
||||
.Dc .
|
||||
Generally, the channel options are set up during the operating system startup,
|
||||
for example from the
|
||||
.Pa /etc/rc
|
||||
file.
|
||||
.Pp
|
||||
Note, that not all options have a sense for every particular
|
||||
case, and an attempt to set some of them can hang up the channel or
|
||||
the whole adapter.
|
||||
.\"--------------------------------------------------------------
|
||||
.Ss "Information options"
|
||||
You can specify only one of these options. If information option is specified,
|
||||
sconfig will show corresponding information and will ignore all other options,
|
||||
except
|
||||
.Ar device name.
|
||||
See also description of the
|
||||
.Ar device name.
|
||||
.Bl -tag -width 10n
|
||||
.It <none>
|
||||
This will show settings of the channel.
|
||||
.It Fl a
|
||||
Print all settings of the channel.
|
||||
.It Fl i
|
||||
Print interface settings, equal to the output of
|
||||
.Xr ifconfig 1
|
||||
command.
|
||||
.It Fl m
|
||||
Print modem signal status. The description of all signals can be found in
|
||||
any document related to the modems. Only LE signal should be described. If
|
||||
this signal is On, than some what use channel. If it is Off, than channel is
|
||||
free.
|
||||
.It Fl s
|
||||
Print brief channel statistics. This is general statistics. See also
|
||||
.Fl x
|
||||
,
|
||||
.Fl e
|
||||
,
|
||||
.Fl f
|
||||
,
|
||||
.Fl t
|
||||
and
|
||||
.Fl u
|
||||
options. For the description of output, see below.
|
||||
.Pp
|
||||
This statistics is very useful if something goes wrong. For example, if you
|
||||
have no any interrupts, than you use interrupt that is not registered in BIOS
|
||||
for use with ISA bus.
|
||||
.It Fl x
|
||||
Print full channel statistics. This options allows to see some more counters,
|
||||
but with less precision than with
|
||||
.Pa -s
|
||||
option.
|
||||
.It Fl e
|
||||
Print brief E1/G703 statistics. If you select this option, you will get
|
||||
statistics accumulated for period of time equal to 15 minutes. For the
|
||||
description of output, see below.
|
||||
.It Fl f
|
||||
Print full E1/G703 statistics. This option shows all E1/G703 statistics that
|
||||
shows previous option(
|
||||
.Fl e
|
||||
), but also total statistics for whole period of time and statistics for 24
|
||||
hours (if available). For the description of output, see below.
|
||||
.It Fl t
|
||||
Print brief E3/T3/STS-1 statistics. If you select this option, you will
|
||||
get statistics accumulated for period of time equal to 15 minutes. For
|
||||
the description of output, see below.
|
||||
.It Fl u
|
||||
Print full E3/T3/STS-1 statistics. This option shows all E3/T3/STS-1
|
||||
statistics that shows previous option(
|
||||
.Fl t
|
||||
), but also total statistics for whole period of time and statistics for 24
|
||||
hours (if available). For the description of output, see below.
|
||||
.It Fl c
|
||||
Cleans all kind of statistics.
|
||||
.El
|
||||
.\"--------------------------------------------------------------
|
||||
.Ss "Device selection"
|
||||
Device is equal to the name of the interface that is used for a name of
|
||||
the interface that is sees
|
||||
.Nm ifconfig.
|
||||
The channel number depends on the order of loading drivers by the system.
|
||||
Some times people confuse channel number and adapter number because of the
|
||||
same spelling. Adapter number appears in kernel context, channel number
|
||||
in configuration context.
|
||||
.Bl -tag -width 10n
|
||||
.It <none>
|
||||
You can omit device name only if you want to get information. This will cause
|
||||
printing information about all available channels of Cronyx adapters. In the
|
||||
case you want to make some settings you MUST specify device name.
|
||||
.It cx##
|
||||
This is the channel name for the Sigma family of Cronyx adapters. (ISA bus)
|
||||
.It ct##
|
||||
This is the channel name for the Tau family of Cronyx adapters. (ISA bus)
|
||||
.It cp##
|
||||
This is the channel name for the Tau-PCI family of Cronyx adapters. (PCI bus)
|
||||
.It ce##
|
||||
This is the channel name for the Tau32-PCI family of Cronyx adapters. (PCI bus)
|
||||
.El
|
||||
.\"--------------------------------------------------------------
|
||||
.Ss "Data rate options"
|
||||
.Bl -tag -width 10n
|
||||
.It value
|
||||
If case of nonzero value it will cause setting data rate to given value and
|
||||
setting the internal clock source of the synchronization (in synchronous mode).
|
||||
Zero value is equal to the
|
||||
.Ar extclock.
|
||||
The transmitted data (TXD) are synchronized using the internal on-board timing
|
||||
generator, the internally generated timing signal is driven on the TXCOUT pin,
|
||||
and the signal on the TXCIN pin is ignored. This mode is used for direct
|
||||
terminal-to-terminal communication, e.g. for connecting two computers together
|
||||
in a synchronous mode via relatively short cable. This method should also be
|
||||
used for testing channels with an external loopback connector.
|
||||
.It extclock
|
||||
Set the external timing clock source of synchronous channels. External clock
|
||||
mode is the most common method for connecting external modem hardware. In this
|
||||
mode the external timing signal is received on TXCIN pin of the connector,
|
||||
and it is used as a synchronization clock for transmitting data (TXD).
|
||||
.El
|
||||
.\"--------------------------------------------------------------
|
||||
.Ss "Protocol options"
|
||||
Note. These option could be set only if channel is free and they requires
|
||||
specifying of the device name.
|
||||
.Bl -tag -width 10n
|
||||
.It async
|
||||
Set asynchronous protocol (or mode). In this mode Cronyx adapters behave as a
|
||||
usual serial devices and you may work with them using usual serial utilities.
|
||||
All asynchronous settings are performed via serial configuration utilities. With
|
||||
.Nm sconfig
|
||||
you may set only a few of them. See also
|
||||
.Xr stty 1 .
|
||||
(Only for Sigma family)
|
||||
.It cisco
|
||||
Set the Cisco HDLC synchronous protocol.
|
||||
.It fr
|
||||
Set the Frame Relay synchronous protocol (ANSI T1.617 Annex D).
|
||||
.It ppp
|
||||
Set the PPP synchronous protocol. Parameters to the PPP could be set by the
|
||||
command
|
||||
.Xr spppcontrol 1 .
|
||||
.It keepalive=on, keepalive=off
|
||||
Turns on/off sending keepalive messages. This option is used only for
|
||||
synchronous PPP. If this option is on, than PPP will periodically send
|
||||
echo-request messages. If it would not receive any echo-reply messages for
|
||||
some (definite) period of time it will break connection. It is used for
|
||||
tracking line state.
|
||||
.It idle
|
||||
You are using NETGRAPH. Protocol depends on connected module.
|
||||
.El
|
||||
.\"--------------------------------------------------------------
|
||||
.Ss "Interface options"
|
||||
Not all of these options could be set on running channel and not all of them
|
||||
are suits to all kind of adapters/channels. In all dual state options off is
|
||||
default value. All this options is not applicable in asynchronous mode, except
|
||||
debug option.
|
||||
.Bl -tag -width 10n
|
||||
.It port=rs232, port=v35, port=rs449
|
||||
Set port type for old Sigma models.
|
||||
.It cfg=A, cfg=B, cfg=C
|
||||
Set configuration for the adapter. This option could be set only for Tau/E1
|
||||
and Tau/G703 and only if all channels are not running.
|
||||
.Ar cfg=A
|
||||
- Two independent E1/G703 channels. This is default setting.
|
||||
.Ar cfg=B (Only for ISA models)
|
||||
- For Tau/G703 this mean one G703 channel and one digital channel.
|
||||
For Tau/E1 first physical channel divides on to subchannels. One of them
|
||||
goes to the first logical channel and another one goes to the second physical
|
||||
channel. Second (logical) channel is digital channel.
|
||||
.Ar cfg=C
|
||||
- This configuration is used only for E1 models. In this case first
|
||||
physical channel consists of three data flows. Two of them go to two
|
||||
(logical) channels. The last one goes to the second physical channel. On new
|
||||
models (Tau32-PCI, Tau-PCI/2E1 and Tau-PCI/4E1) this configuration means single source
|
||||
of synchronization and passing all unused (in both channels) timeslots from
|
||||
one channel to other. For the detailed description of the configuration see
|
||||
your documentation to the adapter. This option could not be set on running
|
||||
channel.
|
||||
.It loop=on, loop=off
|
||||
Turn on/off internal loopback. This mode is useful for testing. Switch on this
|
||||
option and try to send something. If you have no any interrupt, than, probably,
|
||||
you forgot to switch using IRQ for PCI to ISA bus. Check your BIOS settings.
|
||||
.It rloop=on, rloop=off (Only for Tau32-PCI and Tau-PCI/E3)
|
||||
Turn on/off remote loopback. This mode is also useful for testing.
|
||||
.It dpll=on, dpll=off
|
||||
Turn on/off digital phase locked loop mode (DPLL). When enabled, the receiver
|
||||
timing clock signal is derived from the received data. Must be used with NRZI
|
||||
encoding, to avoid the synchronization loss.
|
||||
.It nrzi=on, nrzi=off
|
||||
Turn on/off nrzi encoding. In off state nrz encoding is used. NRZ - the zero
|
||||
bit is transmitted by the zero signal level, the one bit - by the positive
|
||||
signal level. NRZI - the bit number zero is transmitted by the change of the
|
||||
signal level, the one bit - by the constant signal level. Commonly is used with
|
||||
dpll=on option.
|
||||
.It invclk=on, invclk=off
|
||||
Invert the both transmit and receive clock signals (Tau and Tau-PCI only).
|
||||
.It invrclk=on, invrclk=off
|
||||
Invert the receive clock signals (Tau-PCI only).
|
||||
.It invtclk=on, invtclk=off
|
||||
Invert the transmit clock signals (Tau-PCI only).
|
||||
.It higain=on, higain=off
|
||||
Turn on/off increasing the E1 receiver non linear sensitivity to -30 dB (E1
|
||||
only). In of state the sensitivity is -12 dB. This allows increasing line
|
||||
distance.
|
||||
.It cablen=on, cablen=off (Only for Tau-PCI/T3 and Tau-PCI/STS-1)
|
||||
Turn on/off adjusting transmit signal for long cable T3/STS-1.
|
||||
.It monitor=on, monitor=off
|
||||
Turn on/off increasing the E1 receiver lines sensitivity to -30 dB
|
||||
(Tau32-PCI, Tau-PCI/2E1 and Tau-PCI/4E1 only). This could be used for interception
|
||||
purposes.
|
||||
.It phony=on, phony=off
|
||||
Turn on/off the so-called phony mode (Tau32-PCI and Tau-PCI E1 family only). This mode allows
|
||||
receiving raw CEPT frames from E1 line. Raw frames could be accessed, for
|
||||
example, via raw protocol. Packets would come at rate of 500 frames per second
|
||||
with length 16xN (for Tau-PCI/E1 model), where N is the number of timeslots. For
|
||||
Tau-PCI/2E1 and Tau-PCI/4E1 N should be equal to 32 independently from number of
|
||||
used timeslots.
|
||||
.It unfram=on, unfram=off
|
||||
Turn on/off unframed mode (Tau32-PCI, Tau-PCI/2E1 and Tau-PCI/4E1 only).
|
||||
.Ar unfram=on
|
||||
switches channel to unframed G.703 mode.
|
||||
.Ar unfram=off
|
||||
switches channel to framed E1 (G.704 mode).
|
||||
.It scrambler=on, scrambler=off
|
||||
Turn on/off the scrambling of G.703 data (Tau32-PCI, Tau-PCI/G.703 and Tau-PCI/2E1,
|
||||
Tau-PCI/4E1 in unframed mode only).
|
||||
.It use16=on, use16=off
|
||||
Turn on/off the usage of 16-th timeslot for data transmission (Tau32-PCI and Tau-PCI E1 family only).
|
||||
Normally 16-th timeslot is used for signaling information (multiframing CAS).
|
||||
.It crc4=on, crc4=off
|
||||
Turn on/off CRC4 superframe mode (E1 only).
|
||||
.It syn=int, syn=rcv, syn=rcv0, syn=rcv1, syn=rcv2, sync=rcv3
|
||||
.Ar int
|
||||
- use an internal clock generator for G703 transmitter
|
||||
(clock master).
|
||||
.Ar rcv
|
||||
- use the G703 receiver data clock as the transmit clock
|
||||
(clock slave).
|
||||
.Ar rcv0, rcv1, rcv2, rcv3
|
||||
- use the G703 receiver clock of the other channel
|
||||
(E1 models only).
|
||||
.It dir=<number>
|
||||
Binds logical channel to the physical channel (Tau32-PCI, Tau-PCI/2E1 and Tau-PCI/4E1
|
||||
only). Using this parameter you could, for example, split E1 physical channel
|
||||
into several channels.
|
||||
.It ts=interval
|
||||
Set up the list of timeslots to use by the channel (E1 only). The
|
||||
timeslots are numbered from 1 to 31, and are separated by comma or minus sign,
|
||||
giving an interval. For example: "ts=1-3,5,17".
|
||||
.It pass=interval
|
||||
Set up the list of timeslots, translated to the E1 subchannel in cfg=B and
|
||||
cfg=C configurations (Tau/E1 only).
|
||||
.It debug=0, debug=1, debug=2
|
||||
Turn on/off debug messages.
|
||||
.Ar 0
|
||||
- turn off debug messages.
|
||||
.Ar 1
|
||||
- turn on debug
|
||||
messages, equal to the
|
||||
.Ar debug
|
||||
option to the
|
||||
.Xr ifconfig 8
|
||||
utility.
|
||||
.Ar 2
|
||||
- high intensive debug message, developers only.
|
||||
.El
|
||||
.\"--------------------------------------------------------------
|
||||
.Sh EXAMPLES
|
||||
Set up the channel 1 for use with the HDSL modem or any other
|
||||
synchronous leased-line modem, and PPP/HDLC protocol (for Sigma):
|
||||
.Bd -literal -offset indent
|
||||
sconfig cx1 ppp extclock
|
||||
ifconfig cx1 158.250.244.2 158.250.244.1 up
|
||||
.Ed
|
||||
.Pp
|
||||
Set up the channel 0 of Tau/E1 for use with the Cisco protocol
|
||||
over E1 link, with the single virtual connection.
|
||||
The DLCI number is detected automatically.
|
||||
Use timeslots 1-10:
|
||||
.Bd -literal -offset indent
|
||||
sconfig ct0 cisco ts=1-10
|
||||
ifconfig ct0 158.250.244.2 158.250.244.1 up
|
||||
.Ed
|
||||
.Pp
|
||||
Set up the channel 0 for the synchronous null-modem link to the nearby computer,
|
||||
internal clock source, 256000 bits/sec, protocol Cisco/HDLC (for Tau):
|
||||
.Bd -literal -offset indent
|
||||
sconfig ct0 cisco 256000
|
||||
ifconfig ct0 200.1.1.1 200.1.1.2 up
|
||||
.Ed
|
||||
.Pp
|
||||
Set up the channel 1 for the leased line link using data-only
|
||||
null-modem cable (or modems like Zelax+ M115). Synchronous DPLL mode, 128000
|
||||
bits/sec, protocol PPP/HDLC, NRZI encoding (for Sigma):
|
||||
.Bd -literal -offset indent
|
||||
sconfig cx1 ppp 128000 nrzi=on dpll=on
|
||||
ifconfig cx1 158.250.244.2 158.250.244.1 up
|
||||
.Ed
|
||||
.\"--------------------------------------------------------------
|
||||
.Sh DIAGNOSTICS
|
||||
This section contains description of abbreviations used by
|
||||
.Nm sconfig
|
||||
while displaying various statistics. For description of options connected with
|
||||
statistics see above.
|
||||
.\"--------------------------------------------------------------
|
||||
.Ss Statistics
|
||||
When running, the driver gathers the statistics about the channels, which
|
||||
could be accessed via sconfig utility or by
|
||||
.Xr ioctl 2
|
||||
call
|
||||
.Ar SERIAL_GETSTAT.
|
||||
.Bl -tag -width 10n
|
||||
.It Rintr
|
||||
The total number of receive interrupts.
|
||||
.It Tintr
|
||||
The total number of transmit interrupts.
|
||||
.It Mintr
|
||||
The total number of modem interrupts.
|
||||
.It Ibytes
|
||||
The total bytes received.
|
||||
.It Ipkts
|
||||
The total packets received (for HDLC mode).
|
||||
.It Ierrs
|
||||
The number of receive errors.
|
||||
.It Obytes
|
||||
The total bytes transmitted.
|
||||
.It Opkts
|
||||
The total packets transmitted (for HDLC mode).
|
||||
.It Oerrs The number of transmit errors.
|
||||
.El
|
||||
.\"--------------------------------------------------------------
|
||||
.Ss E1/G.703 Statistics
|
||||
For E1 and G.703 channels the SNMP-compatible statistics data are gathered
|
||||
(see RFC 1406). It could be accessed via sconfig utility or by ioctl(2) call
|
||||
.Ar SERIAL_GETESTAT .
|
||||
.Bl -tag -width 10n
|
||||
.It Unav (uas)
|
||||
Unavailable seconds - receiving all ones, or loss of carrier, or loss of
|
||||
signal.
|
||||
.It Degr (dm)
|
||||
Degraded minutes - having error rate more than 10e-6, not counting unavailable
|
||||
and severely errored seconds.
|
||||
.It Bpv (bpv)
|
||||
HDB3 bipolar violation errors.
|
||||
.It Fsyn (fse)
|
||||
Frame synchronization errors (E1 only).
|
||||
.It CRC (crce)
|
||||
CRC4 errors (E1).
|
||||
.It RCRC (rcrce)
|
||||
Remote CRC4 errors: E-bit counter (E1).
|
||||
.It Err (es)
|
||||
Errored seconds - any framing errors, or out of frame sync, or any slip events.
|
||||
.It Lerr (les)
|
||||
Line errored seconds - any BPV.
|
||||
.It Sev (ses)
|
||||
Severely errored seconds - 832 or more framing errors, or 2048 or more bipolar
|
||||
violations.
|
||||
.It Bur (bes)
|
||||
Bursty errored seconds - more than 1 framing error, but not severely errored.
|
||||
.It Oof (oofs)
|
||||
Severely errored framing seconds - out of frame sync.
|
||||
.It Slp (css)
|
||||
Controlled slip second -- any slip buffer overflow or underflow.
|
||||
.El
|
||||
.\"--------------------------------------------------------------
|
||||
.Ss E1/G.703 Status
|
||||
.Nm sconfig
|
||||
utility also prints the E1/G.703 channel status. The status could have the
|
||||
following values (nonexclusive):
|
||||
.Bl -tag -width 10n
|
||||
.It Ok
|
||||
The channel is in valid state, synchronized.
|
||||
.It LOS
|
||||
Loss of sync.
|
||||
.It AIS
|
||||
Receiving unframed all ones (E1 only).
|
||||
.It LOF
|
||||
Loss of framing (E1 only).
|
||||
.It LOMF
|
||||
Loss of multiframing (E1 only).
|
||||
.It FARLOF
|
||||
Receiving remote alarm (E1 only).
|
||||
.It AIS16
|
||||
Receiving all ones in timeslot 16 (E1 only).
|
||||
.It FARLOMF
|
||||
Receiving distant multiframe alarm (E1 only).
|
||||
.It TSTREQ
|
||||
Receiving test request code (G.703 only).
|
||||
.It TSTERR
|
||||
Test error (G.703 only).
|
||||
.El
|
||||
.\"--------------------------------------------------------------
|
||||
.Sh SEE ALSO
|
||||
.Xr stty 1
|
||||
.Xr ioctl 2
|
||||
.Xr sppp 4
|
||||
.Xr spppconrol 8
|
||||
.Xr ifconfig 8
|
||||
.Xr route 8
|
||||
.\"--------------------------------------------------------------
|
||||
.Sh HISTORY
|
||||
This utility is a replacement of utilities
|
||||
.Nm cxconfig
|
||||
and
|
||||
.Nm ctconfig
|
||||
that was used in past with FreeBSD drivers. Those two utilities and the present
|
||||
utility are not compatible. And therefore all scripts should be rewritten. More
|
||||
over, Linux and FreeBSD version of present utility not fully compatible.
|
||||
.\"--------------------------------------------------------------
|
||||
.Sh BUGS
|
||||
All software produced by Cronyx Engineering is thoroughly tested. But
|
||||
as created by the man it can contain some
|
||||
.So
|
||||
BUGS
|
||||
.Sc .
|
||||
If you have caught one, try to localize it and send a letter with description
|
||||
of this bug and all operation that you have done. We will try to reproduce
|
||||
an error and fix it.
|
||||
.\"--------------------------------------------------------------
|
||||
.Sh CONTACT
|
||||
E-mail: info@cronyx.ru
|
||||
.Pp
|
||||
http://www.cronyx.ru
|
2275
sbin/sconfig/sconfig.c
Normal file
2275
sbin/sconfig/sconfig.c
Normal file
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user