Initial import from FreeBSD RELENG_4:
[dragonfly.git] / share / man / man4 / man4.i386 / sr.4
1 .\"
2 .\" Copyright (c) 1996 John Hay.  All rights reserved.
3 .\"
4 .\" Redistribution and use in source and binary forms, with or without
5 .\" modification, are permitted provided that the following conditions
6 .\" are met:
7 .\" 1. Redistributions of source code must retain the above copyright
8 .\"    notice, this list of conditions and the following disclaimer.
9 .\" 2. Redistributions in binary form must reproduce the above copyright
10 .\"    notice, this list of conditions and the following disclaimer in the
11 .\"    documentation and/or other materials provided with the distribution.
12 .\" 3. All advertising materials mentioning features or use of this software
13 .\"    must display the following acknowledgement:
14 .\"        This product includes software developed by John Hay.
15 .\" 4. Neither the name of the author nor the names of any co-contributors
16 .\"    may be used to endorse or promote products derived from this software
17 .\"    without specific prior written permission.
18 .\"
19 .\" THIS SOFTWARE IS PROVIDED BY John Hay ``AS IS'' AND
20 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
21 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
22 .\" ARE DISCLAIMED.  IN NO EVENT SHALL John Hay BE LIABLE
23 .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
24 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
25 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
26 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
27 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
28 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
29 .\" SUCH DAMAGE.
30 .\"
31 .\" $FreeBSD: src/share/man/man4/man4.i386/sr.4,v 1.15.2.4 2001/08/17 13:08:46 ru Exp $
32 .\"
33 .Dd July 4, 1996
34 .Dt SR 4 i386
35 .Os
36 .Sh NAME
37 .Nm sr
38 .Nd synchronous RISCom/N2 / WANic 400/405 device driver
39 .Sh SYNOPSIS
40 .Cd "device sr0 at isa? port 0x300 irq 10 iomem 0xd0000"
41 .Cd "device sr1 at isa? port 0x310 irq 11 flags 0x1 iomem 0xd0000"
42 .Pp
43 .Cd "pseudo-device sppp"
44 .Sh DESCRIPTION
45 The
46 .Nm
47 driver supports the RISCom/N2 ISA cards and the WANic 400/405 PCI cards
48 that is based on the HD64570 chip.
49 .Pp
50 The standard
51 .Fx
52 sppp code is used for the link level layer.
53 The
54 default protocol used is PPP.
55 The Cisco HDLC protocol can be used by
56 adding
57 .Em link2
58 to
59 .Xr ifconfig 8 .
60 .Pp
61 Alternately, the driver can be compiled to support
62 .Xr netgraph 4
63 (see below).
64 .Pp
65 The
66 .Em flags
67 field is optional.
68 If it isn't specified, the driver will
69 assume the following:
70 .Pp
71 .Bl -hang -offset indent
72 .It "The card has 2 ports."
73 .It "The clock for the serial ports is external and the transmitter uses"
74 the same clock as the receiver.
75 .El
76 .Pp
77 The
78 .Em flags
79 are a bit field and can be used to force a different
80 behaviour than the default.
81 .Pp
82 .Bl -hang -offset indent
83 .It Em 0x01
84 The card has only one port.
85 .It Em 0x10
86 Use separate external clocks for transmit and receive on port 0.
87 .It Em 0x40
88 Use separate external clocks for transmit and receive on port 1.
89 .El
90 .Sh NUMBERING
91 Only one line for each card is needed in the kernel configuration file.
92 The first card's ports will be installed from sr0. The numbering of the
93 next card will continue where the first stopped, eg. if the first card
94 is a two port card it will use sr0 and sr1. The next card will then
95 start at sr2.
96 .Pp
97 The card only supports IRQ 3, 4, 5, 7, 10, 11, 12 and 15.
98 .Pp
99 The iomem area is a 16Kb block and must start at a 16Kb boundary.
100 .Sh NETGRAPH SUPPORT
101 If the kernel is compiled with
102 .Dv "options NETGRAPH"
103 then the sppp and Cisco HDLC modes are disabled (and the sppp driver
104 is unneeded), and this driver functions as a
105 .Xr netgraph 4
106 node with a single hook named
107 .Dv rawdata .
108 Connecting to this hook enables the transmission of raw HDLC frames.
109 The node will have the same name as the device with ``sync_''
110 prepended, e.g.,
111 .Dv sync_sr0 .
112 .Sh DIAGNOSTICS
113 .Bl -diag
114 .It "sr%d: Warning illegal interrupt %d."
115 The card cannot use the specified interrupt.
116 Choose a different one.
117 .El
118 .Sh FILES
119 .Bl -tag -width /sys/i386/isa/ic/hd64570.h -compact
120 .It Pa /sys/i386/isa/ic/hd64570.h
121 .It Pa /sys/i386/isa/if_srregs.h
122 .It Pa /sys/i386/isa/if_sr.c
123 .It Pa /sys/i386/isa/if_sr.h
124 .It Pa /sys/pci/if_sr_p.c
125 .El
126 .Sh BUGS
127 At the moment only the X.21 interface is tested.
128 The others
129 may need tweaks to the clock selection code.
130 .Pp
131 The code can probably stand some optimizing.
132 .Sh SEE ALSO
133 .Xr ar 4 ,
134 .Xr cx 4 ,
135 .Xr netgraph 4 ,
136 .Xr netintro 4 ,
137 .Xr ifconfig 8
138 .Sh AUTHORS
139 .An -nosplit
140 The
141 .Nm
142 device driver was written by
143 .An John Hay Aq jhay@FreeBSD.org .
144 .Pp
145 Netgraph support was added by
146 .An Julian Elischer Aq julian@FreeBSD.org .