Merge from vendor branch TNFTP:
[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 .\" $DragonFly: src/share/man/man4/man4.i386/sr.4,v 1.8 2008/05/02 02:05:06 swildner Exp $
33 .\"
34 .Dd July 4, 1996
35 .Dt SR 4 i386
36 .Os
37 .Sh NAME
38 .Nm sr
39 .Nd synchronous RISCom/N2 / WANic 400/405 device driver
40 .Sh SYNOPSIS
41 .Cd "device sr0 at isa? port 0x300 irq 10 iomem 0xd0000"
42 .Cd "device sr1 at isa? port 0x310 irq 11 flags 0x1 iomem 0xd0000"
43 .Pp
44 .Cd "pseudo-device sppp"
45 .Sh DESCRIPTION
46 The
47 .Nm
48 driver supports the RISCom/N2 ISA cards and the WANic 400/405 PCI cards
49 that is based on the HD64570 chip.
50 .Pp
51 The standard
52 .Fx
53 sppp code is used for the link level layer.
54 The
55 default protocol used is PPP.
56 The Cisco HDLC protocol can be used by
57 adding
58 .Em link2
59 to
60 .Xr ifconfig 8 .
61 .Pp
62 Alternately, the driver can be compiled to support
63 .Xr netgraph 4
64 (see below).
65 .Pp
66 The
67 .Em flags
68 field is optional.
69 If it isn't specified, the driver will
70 assume the following:
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 .Bl -hang -offset indent
82 .It Em 0x01
83 The card has only one port.
84 .It Em 0x10
85 Use separate external clocks for transmit and receive on port 0.
86 .It Em 0x40
87 Use separate external clocks for transmit and receive on port 1.
88 .El
89 .Sh NUMBERING
90 Only one line for each card is needed in the kernel configuration file.
91 The first card's ports will be installed from sr0. The numbering of the
92 next card will continue where the first stopped, eg. if the first card
93 is a two port card it will use sr0 and sr1. The next card will then
94 start at sr2.
95 .Pp
96 The card only supports IRQ 3, 4, 5, 7, 10, 11, 12 and 15.
97 .Pp
98 The iomem area is a 16Kb block and must start at a 16Kb boundary.
99 .Sh NETGRAPH SUPPORT
100 If the kernel is compiled with
101 .Cd "options NETGRAPH"
102 then the sppp and Cisco HDLC modes are disabled (and the sppp driver
103 is unneeded), and this driver functions as a
104 .Xr netgraph 4
105 node with a single hook named
106 .Dv rawdata .
107 Connecting to this hook enables the transmission of raw HDLC frames.
108 The node will have the same name as the device with ``sync_''
109 prepended, e.g.,
110 .Dv sync_sr0 .
111 .Sh FILES
112 .Bl -tag -width /sys/machine/pc32/isa/ic/hd64570.h -compact
113 .It Pa /sys/dev/netif/sr/if_sr.c
114 .It Pa /sys/dev/netif/sr/if_sr.h
115 .It Pa /sys/dev/netif/sr/if_sr_pci.c
116 .It Pa /sys/dev/netif/sr/if_srregs.h
117 .It Pa /sys/machine/pc32/isa/ic/hd64570.h
118 .El
119 .Sh DIAGNOSTICS
120 .Bl -diag
121 .It "sr%d: Warning illegal interrupt %d."
122 The card cannot use the specified interrupt.
123 Choose a different one.
124 .El
125 .Sh SEE ALSO
126 .Xr ar 4 ,
127 .Xr cx 4 ,
128 .Xr netgraph 4 ,
129 .Xr netintro 4 ,
130 .Xr ifconfig 8
131 .Sh AUTHORS
132 .An -nosplit
133 The
134 .Nm
135 device driver was written by
136 .An John Hay Aq jhay@FreeBSD.org .
137 .Pp
138 Netgraph support was added by
139 .An Julian Elischer Aq julian@FreeBSD.org .
140 .Sh BUGS
141 At the moment only the X.21 interface is tested.
142 The others
143 may need tweaks to the clock selection code.
144 .Pp
145 The code can probably stand some optimizing.