Deleted Added
full compact
cx.4 (79538) cx.4 (84877)
1.\"
1.\"
2.\" $FreeBSD: head/share/man/man4/man4.i386/cx.4 79538 2001-07-10 15:31:11Z ru $
2.\" $FreeBSD: head/share/man/man4/man4.i386/cx.4 84877 2001-10-13 09:08:37Z yokota $
3.\"
4.Dd December 12, 1994
5.Dt CX 4 i386
6.Os
7.Sh NAME
8.Nm cx
9.Nd asynchronous/synchronous Cronyx-Sigma adapter driver
10.Sh SYNOPSIS
3.\"
4.Dd December 12, 1994
5.Dt CX 4 i386
6.Os
7.Sh NAME
8.Nm cx
9.Nd asynchronous/synchronous Cronyx-Sigma adapter driver
10.Sh SYNOPSIS
11.Cd "device cx0 at isa? port 0x240 irq 15 drq 7"
12.Cd "device cx1 at isa? port 0x260 irq 12 drq 6"
11.Cd "device cx 1"
13.Cd device sppp
14.Pp
12.Cd device sppp
13.Pp
15The base i/o port address should be set by jumpers on the board.
14In
15.Pa /boot/device.hints :
16.Cd hint.cx.0.at="isa"
17.Cd hint.cx.0.port="0x240"
18.Cd hint.cx.0.irq="15"
19.Cd hint.cx.0.drq="7"
20.Pp
21The base i/o port address specified in
22.Pa /boot/device.hints
23must match the port address set by jumpers on the board.
16The DMA i/o channel and interrupt request numbers are configured
17by software at adapter initialization. Legal values are:
18.Pp
19.Bl -tag -compact -width Port
20.It Port
210x240, 0x260, 0x280, 0x300, 0x320, 0x380
22.It IRQ
233, 5, 7, 10, 11, 12, 15
24.It DMA
255, 6, 7
26.El
27.Sh DESCRIPTION
28The Cronyx-Sigma driver supports the adapters of models 100,
29400, 500, 401, 404, 410, 440, 703, 801, 810, 840. Different models have
30different set of channels:
31.Pp
32.Bl -tag -compact -width Cronyx-Sigma-999
33.It Model
34Channels
35.It Cronyx-Sigma-100
360
37.It Cronyx-Sigma-400
384, 5, 6, 7
39.It Cronyx-Sigma-500
400, 4, 5, 6, 7
41.It Cronyx-Sigma-401
420, 1, 2, 3
43.It Cronyx-Sigma-404
440, 1, 2, 3
45.It Cronyx-Sigma-410
460, 1, 2, 3
47.It Cronyx-Sigma-440
480, 1, 2, 3
49.It Cronyx-Sigma-703
500, 1, 2, 4, 5, 6, 7
51.It Cronyx-Sigma-801
520, 1, 2, 3, 4, 5, 6, 7
53.It Cronyx-Sigma-810
540, 1, 2, 3, 4, 5, 6, 7
55.It Cronyx-Sigma-840
560, 1, 2, 3, 4, 5, 6, 7
57.El
58.Pp
59A pair of two adapters can be united together by the special
60short inter-board cable. Two united adapters use the same
61IRQ and DMA channels and from the point of driver works
62as the single 16-channel multiplexer. One of the united
63boards is ``master'' and the other is ``slave''.
64.Pp
65The channels of the slave united board are numbered by the driver
66beginning with 8, for example, the united adapter of the model 100/500
67has channels 0, 8, 12, 13, 14, 15.
68.Pp
69The channels which have the RS-232 interface can be used
70both in synchronous and asynchronous modes (software selectable
71by cxconfig utility) and hence are called ``universal'' channels.
72.Pp
73The special device files,
74.Pa /dev/* ,
75for the adapter Cronyx-Sigma
76are created by th
77.Xr MAKEDEV 8
78An example:
79.Bd -literal
80cd /dev
81sh MAKEDEV cronyx ttyx0 ttyx1 ttyy0
82.Ed
83.Sh "Asynchronous driver"
84The asynchronous channel device files have the names:
85.Pa /dev/ttyx#
86- for adapter cx0,
87.Pa /dev/ttyy#
88- for adapter cx1,
89.Pa /dev/ttyz#
90- for cx2.
91Here # is the channel number in hexadecimal form, 0-9-a-f.
92.Pp
93The driver fulfills the following standard ioctl requests (see
94.Xr ioctl 2 ) :
95.Pp
96.Bl -tag -width TIOCXXXXX -compact
97.It Dv TIOCSBRK
98Start sending BREAK.
99.It Dv TIOCCBRK
100Stop sending BREAK.
101.It Dv TIOCSDTR
102Set DTR signal (DTR := 1). The DTR signal is always set
103on the first
104.Xr open 2
105and could be changed by
106.Dv TIOCCDTR ,
107.Dv TIOCSDTR ,
108.Dv TIOCMSET ,
109.Dv TIOCMBIS ,
110.Dv TIOCMBIC
111ioctl calls.
112.It TIOCCDTR
113Clear DTR signal (DTR := 0).
114.It TIOCMSET
115Set the given values of DTR and RTS signals (<DTR:RTS> := data).
116The signals DTR and RTS are controlled by
117.Dv TIOCM_DTR
118and
119.Dv TIOCM_RTS
120bits of the data argument of the ioctl system call.
121.It TIOCMBIS
122Set DTR and RTS signals (<DTR:RTS> |= data).
123The signals DTR and RTS are controlled by
124.Dv TIOCM_DTR
125and
126.Dv TIOCM_RTS
127bits of the data argument of the ioctl system call.
128.It TIOCMBIC
129Clear DTR and RTS signals (<DTR:RTS> &= ~data).
130The signals DTR and RTS are controlled by
131.Dv TIOCM_DTR
132and
133.Dv TIOCM_RTS
134bits of the data argument of the ioctl system call.
135.It TIOCMGET
136Determine the state of the modem signals of the line.
137After the call the data argument contains the following bits:
138.Pp
139.Bl -tag -width TIOCM_XXX -compact
140.It TIOCM_LE
141always set (Line Enabled)
142.It TIOCM_DSR
143Data Set Ready signal received
144.It TIOCM_CTS
145Clear To Send signal received
146.It TIOCM_CD
147Data Carrier Detect signal received
148.It TIOCM_DTR
149Data Terminal Ready signal transmitted
150.It TIOCM_RTS
151Request To Send signal transmitted
152.El
153.El
154.Sh "Synchronous driver"
155The synchronous channels and universal channels, turned to the synchronous
156mode by the
157.Xr cxconfig 8
158utility, are accessible as network
159interfaces named ``cx#'' where # is the channel number, 0..47.
160All standard network interface parameters could be set by
161.Xr ifconfig 8
162utility.
163The
164.Xr cxconfig 8
165command is used to change some extended channel
166options, and also for setting the high-level software protocol
167(e.g. PpP or Cisco HDLC).
168.Pp
169The universal channels could be used both in asynchronous and synchronous modes.
170By default the asynchronous mode is set.
171The mode could be changed by
172.Xr cxconfig 8
173utility.
174The mode is blocked while the channel is busy (an asynchronous channel
175in open state or the network interface is up).
176.Sh "Synchronous Point-to-Point protocol"
177The Cronyx-Sigma driver uses the built-in implementation of the synchronous
178Point-to-Point protocol (sppp). It includes the support for such
179protocols as PpP/HDLC and Cisco/HDLC, and also the automatic
180connection loss test (via keepalive packets).
181The sppp protocol set is implemented as an independent module
182and could be used by other drivers of synchronous serial channels.
183The version of the driver for BSD/386 (BSDI) operating system
184also supports the usage of the general set of synchronous
185protocols, implemented inside the OS.
186The external protocol set could be selected by ``cxconfig ext'' command
187(see
188.Xr cxconfig 8 ) .
189.Sh "Channel Options Management"
190The
191.Xr cxconfig 8
192utility is used for setting the channels options.
193The channel options are generally set at the start of the operating
194system (for example, from the file
195.Pa /etc/rc ) .
196Note, that not all options have a sense for every particular
197case, and an attempt to set some of them can hang up the channel or
198the whole adapter.
199.Pp
200The actual channel options control functions are implemented via
201the ioctl-s on the special device file /dev/cronyx.
202There are the following ioctl-s available:
203.Pp
204.Bl -tag -width CXIOCXXXXXXX -compact
205.It CXIOCGETMODE
206Get the channel option values.
207.It CXIOCSETMODE
208Set the channel option values.
209.El
210.Pp
211The data argument of the ioctl call has an address of the options structure:
212.Bd -literal
213typedef struct {
214 unsigned char board; /* adapter number, 0..2 */
215 unsigned char channel; /* channel number, 0..15 */
216 unsigned char type; /* channel type (read only) */
217 unsigned char iftype; /* chan0 interface */
218 unsigned long rxbaud; /* receiver speed */
219 unsigned long txbaud; /* transmitter speed */
220 cx_chan_mode_t mode; /* channel mode */
221 cx_chan_opt_t opt; /* common channel options */
222 cx_opt_async_t aopt; /* async mode options */
223 cx_opt_hdlc_t hopt; /* hdlc mode options */
224 cx_opt_bisync_t bopt; /* bisync mode options */
225 cx_opt_x21_t xopt; /* x.21 mode options */
226 cx_soft_opt_t sopt; /* software options and state flags */
227} cx_options_t; /* user settable options */
228.Ed
229.Pp
230.Bl -tag -width rxbaudxxx
231.It Fa board
232The adapter number, 0..2.
233.It Fa channel
234The channel number, 0..15.
235.It Fa type
236The type of the channel (read-only argument).
237.It Fa iftype
238The interface type of the zero (and also the eight) channel: 0 - RS-232,
2391 - RS-449/V.35.
240.It Fa rxbaud
241The receiver data baud rate.
242.It Fa txbaud
243The transmitter data baud rate.
244.It Fa mode
245The channel mode: asynchronous/HDLC/Bisync/X.21.
246.It Fa opt
247The general channel options.
248.It Fa aopt
249The asynchronous mode options.
250.It Fa hopt
251The HDLC mode options.
252.It Fa bopt
253The Bisync mode options.
254.It Fa xopt
255The X.21 mode options.
256.It Fa sopt
257The software protocol options.
258.El
259.Sh FILES
260.Bl -tag -width /dev/cxXXXX -compact
261.It Pa /dev/cx??
262Asynchronous channels.
263.It Pa /dev/cronyx
264The special device file for the channel options management.
265.El
266.Pp
267The sources for the driver reside in:
268.Pp
269.Bl -tag -width /dev/cxXXXX -compact
270.It Pa /sys/i386/isa/cronyx.c
271.It Pa /sys/i386/isa/cx.c
272.It Pa /sys/i386/isa/if_cx.c
273.It Pa /sys/i386/isa/cronyx.h
274.It Pa /sys/i386/isa/cxreg.h
275.It Pa /sys/net/if_spppsubr.c
276.It Pa /sys/net/if_sppp.h
277.El
278.Sh SEE ALSO
279.Xr cxconfig 8 ,
280.Xr ifconfig 8
24The DMA i/o channel and interrupt request numbers are configured
25by software at adapter initialization. Legal values are:
26.Pp
27.Bl -tag -compact -width Port
28.It Port
290x240, 0x260, 0x280, 0x300, 0x320, 0x380
30.It IRQ
313, 5, 7, 10, 11, 12, 15
32.It DMA
335, 6, 7
34.El
35.Sh DESCRIPTION
36The Cronyx-Sigma driver supports the adapters of models 100,
37400, 500, 401, 404, 410, 440, 703, 801, 810, 840. Different models have
38different set of channels:
39.Pp
40.Bl -tag -compact -width Cronyx-Sigma-999
41.It Model
42Channels
43.It Cronyx-Sigma-100
440
45.It Cronyx-Sigma-400
464, 5, 6, 7
47.It Cronyx-Sigma-500
480, 4, 5, 6, 7
49.It Cronyx-Sigma-401
500, 1, 2, 3
51.It Cronyx-Sigma-404
520, 1, 2, 3
53.It Cronyx-Sigma-410
540, 1, 2, 3
55.It Cronyx-Sigma-440
560, 1, 2, 3
57.It Cronyx-Sigma-703
580, 1, 2, 4, 5, 6, 7
59.It Cronyx-Sigma-801
600, 1, 2, 3, 4, 5, 6, 7
61.It Cronyx-Sigma-810
620, 1, 2, 3, 4, 5, 6, 7
63.It Cronyx-Sigma-840
640, 1, 2, 3, 4, 5, 6, 7
65.El
66.Pp
67A pair of two adapters can be united together by the special
68short inter-board cable. Two united adapters use the same
69IRQ and DMA channels and from the point of driver works
70as the single 16-channel multiplexer. One of the united
71boards is ``master'' and the other is ``slave''.
72.Pp
73The channels of the slave united board are numbered by the driver
74beginning with 8, for example, the united adapter of the model 100/500
75has channels 0, 8, 12, 13, 14, 15.
76.Pp
77The channels which have the RS-232 interface can be used
78both in synchronous and asynchronous modes (software selectable
79by cxconfig utility) and hence are called ``universal'' channels.
80.Pp
81The special device files,
82.Pa /dev/* ,
83for the adapter Cronyx-Sigma
84are created by th
85.Xr MAKEDEV 8
86An example:
87.Bd -literal
88cd /dev
89sh MAKEDEV cronyx ttyx0 ttyx1 ttyy0
90.Ed
91.Sh "Asynchronous driver"
92The asynchronous channel device files have the names:
93.Pa /dev/ttyx#
94- for adapter cx0,
95.Pa /dev/ttyy#
96- for adapter cx1,
97.Pa /dev/ttyz#
98- for cx2.
99Here # is the channel number in hexadecimal form, 0-9-a-f.
100.Pp
101The driver fulfills the following standard ioctl requests (see
102.Xr ioctl 2 ) :
103.Pp
104.Bl -tag -width TIOCXXXXX -compact
105.It Dv TIOCSBRK
106Start sending BREAK.
107.It Dv TIOCCBRK
108Stop sending BREAK.
109.It Dv TIOCSDTR
110Set DTR signal (DTR := 1). The DTR signal is always set
111on the first
112.Xr open 2
113and could be changed by
114.Dv TIOCCDTR ,
115.Dv TIOCSDTR ,
116.Dv TIOCMSET ,
117.Dv TIOCMBIS ,
118.Dv TIOCMBIC
119ioctl calls.
120.It TIOCCDTR
121Clear DTR signal (DTR := 0).
122.It TIOCMSET
123Set the given values of DTR and RTS signals (<DTR:RTS> := data).
124The signals DTR and RTS are controlled by
125.Dv TIOCM_DTR
126and
127.Dv TIOCM_RTS
128bits of the data argument of the ioctl system call.
129.It TIOCMBIS
130Set DTR and RTS signals (<DTR:RTS> |= data).
131The signals DTR and RTS are controlled by
132.Dv TIOCM_DTR
133and
134.Dv TIOCM_RTS
135bits of the data argument of the ioctl system call.
136.It TIOCMBIC
137Clear DTR and RTS signals (<DTR:RTS> &= ~data).
138The signals DTR and RTS are controlled by
139.Dv TIOCM_DTR
140and
141.Dv TIOCM_RTS
142bits of the data argument of the ioctl system call.
143.It TIOCMGET
144Determine the state of the modem signals of the line.
145After the call the data argument contains the following bits:
146.Pp
147.Bl -tag -width TIOCM_XXX -compact
148.It TIOCM_LE
149always set (Line Enabled)
150.It TIOCM_DSR
151Data Set Ready signal received
152.It TIOCM_CTS
153Clear To Send signal received
154.It TIOCM_CD
155Data Carrier Detect signal received
156.It TIOCM_DTR
157Data Terminal Ready signal transmitted
158.It TIOCM_RTS
159Request To Send signal transmitted
160.El
161.El
162.Sh "Synchronous driver"
163The synchronous channels and universal channels, turned to the synchronous
164mode by the
165.Xr cxconfig 8
166utility, are accessible as network
167interfaces named ``cx#'' where # is the channel number, 0..47.
168All standard network interface parameters could be set by
169.Xr ifconfig 8
170utility.
171The
172.Xr cxconfig 8
173command is used to change some extended channel
174options, and also for setting the high-level software protocol
175(e.g. PpP or Cisco HDLC).
176.Pp
177The universal channels could be used both in asynchronous and synchronous modes.
178By default the asynchronous mode is set.
179The mode could be changed by
180.Xr cxconfig 8
181utility.
182The mode is blocked while the channel is busy (an asynchronous channel
183in open state or the network interface is up).
184.Sh "Synchronous Point-to-Point protocol"
185The Cronyx-Sigma driver uses the built-in implementation of the synchronous
186Point-to-Point protocol (sppp). It includes the support for such
187protocols as PpP/HDLC and Cisco/HDLC, and also the automatic
188connection loss test (via keepalive packets).
189The sppp protocol set is implemented as an independent module
190and could be used by other drivers of synchronous serial channels.
191The version of the driver for BSD/386 (BSDI) operating system
192also supports the usage of the general set of synchronous
193protocols, implemented inside the OS.
194The external protocol set could be selected by ``cxconfig ext'' command
195(see
196.Xr cxconfig 8 ) .
197.Sh "Channel Options Management"
198The
199.Xr cxconfig 8
200utility is used for setting the channels options.
201The channel options are generally set at the start of the operating
202system (for example, from the file
203.Pa /etc/rc ) .
204Note, that not all options have a sense for every particular
205case, and an attempt to set some of them can hang up the channel or
206the whole adapter.
207.Pp
208The actual channel options control functions are implemented via
209the ioctl-s on the special device file /dev/cronyx.
210There are the following ioctl-s available:
211.Pp
212.Bl -tag -width CXIOCXXXXXXX -compact
213.It CXIOCGETMODE
214Get the channel option values.
215.It CXIOCSETMODE
216Set the channel option values.
217.El
218.Pp
219The data argument of the ioctl call has an address of the options structure:
220.Bd -literal
221typedef struct {
222 unsigned char board; /* adapter number, 0..2 */
223 unsigned char channel; /* channel number, 0..15 */
224 unsigned char type; /* channel type (read only) */
225 unsigned char iftype; /* chan0 interface */
226 unsigned long rxbaud; /* receiver speed */
227 unsigned long txbaud; /* transmitter speed */
228 cx_chan_mode_t mode; /* channel mode */
229 cx_chan_opt_t opt; /* common channel options */
230 cx_opt_async_t aopt; /* async mode options */
231 cx_opt_hdlc_t hopt; /* hdlc mode options */
232 cx_opt_bisync_t bopt; /* bisync mode options */
233 cx_opt_x21_t xopt; /* x.21 mode options */
234 cx_soft_opt_t sopt; /* software options and state flags */
235} cx_options_t; /* user settable options */
236.Ed
237.Pp
238.Bl -tag -width rxbaudxxx
239.It Fa board
240The adapter number, 0..2.
241.It Fa channel
242The channel number, 0..15.
243.It Fa type
244The type of the channel (read-only argument).
245.It Fa iftype
246The interface type of the zero (and also the eight) channel: 0 - RS-232,
2471 - RS-449/V.35.
248.It Fa rxbaud
249The receiver data baud rate.
250.It Fa txbaud
251The transmitter data baud rate.
252.It Fa mode
253The channel mode: asynchronous/HDLC/Bisync/X.21.
254.It Fa opt
255The general channel options.
256.It Fa aopt
257The asynchronous mode options.
258.It Fa hopt
259The HDLC mode options.
260.It Fa bopt
261The Bisync mode options.
262.It Fa xopt
263The X.21 mode options.
264.It Fa sopt
265The software protocol options.
266.El
267.Sh FILES
268.Bl -tag -width /dev/cxXXXX -compact
269.It Pa /dev/cx??
270Asynchronous channels.
271.It Pa /dev/cronyx
272The special device file for the channel options management.
273.El
274.Pp
275The sources for the driver reside in:
276.Pp
277.Bl -tag -width /dev/cxXXXX -compact
278.It Pa /sys/i386/isa/cronyx.c
279.It Pa /sys/i386/isa/cx.c
280.It Pa /sys/i386/isa/if_cx.c
281.It Pa /sys/i386/isa/cronyx.h
282.It Pa /sys/i386/isa/cxreg.h
283.It Pa /sys/net/if_spppsubr.c
284.It Pa /sys/net/if_sppp.h
285.El
286.Sh SEE ALSO
287.Xr cxconfig 8 ,
288.Xr ifconfig 8