Move everything from /var/adm to /var/log
[unleashed.git] / share / man / man7d / bge.7d
blob66720663c349bb39e54e4b12d32807bc37803b85
1 '\" te
2 .\"  Copyright (c) 2008, Sun Microsystems, Inc.  All Rights Reserved
3 .\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License").  You may not use this file except in compliance with the License.
4 .\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.  See the License for the specific language governing permissions and limitations under the License.
5 .\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE.  If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
6 .TH BGE 7D "Apr 9, 2008"
7 .SH NAME
8 bge \- SUNW,bge Gigabit Ethernet driver for Broadcom BCM57xx
9 .SH SYNOPSIS
10 .LP
11 .nf
12 \fB/dev/bge*\fR
13 .fi
15 .SH DESCRIPTION
16 .sp
17 .LP
18 The \fBbge\fR Gigabit Ethernet driver is a multi-threaded, loadable, clonable,
19 GLD-based STREAMS driver supporting the Data Link Provider Interface,
20 \fBdlpi\fR(7P), on Broadcom BCM57xx
21 (BCM5700/5701/5703/5704/5705/5705M/5714/5721/5751/5751M/5782/5788 on x86)
22 Gigabit Ethernet controllers fitted to the system motherboard. With the
23 exception of BCM5700/BCM5701/BCM5704S, these devices incorporate both MAC and
24 PHY functions and provide three-speed (copper) Ethernet operation on the RJ-45
25 connectors. (BCM5700/BCM5701/BCM5704S do not have a PHY integrated into the MAC
26 chipset.)
27 .sp
28 .LP
29 The \fBbge\fR driver functions include controller initialization, frame
30 transmit and receive, promiscuous and multicast support, and error recovery and
31 reporting.
32 .sp
33 .LP
34 The \fBbge\fR driver and hardware support auto-negotiation, a protocol
35 specified by the 1000 Base-T standard. Auto-negotiation allows each device to
36 advertise its capabilities and discover those of its peer (link partner). The
37 highest common denominator supported by both link partners is automatically
38 selected, yielding the greatest available throughput, while requiring no manual
39 configuration. The \fBbge\fR driver also allows you to configure the advertised
40 capabilities to less than the maximum (where the full speed of the interface is
41 not required), or to force a specific mode of operation, irrespective of the
42 link partner's advertised capabilities.
43 .SH APPLICATION PROGRAMMING INTERFACE
44 .sp
45 .LP
46 The cloning character-special device, \fB/dev/bge\fR, is used to access all
47 BCM57xx devices ( (BCM5700/5701/5703/5704, 5705/5714/5721/5751/5751M/5782 on
48 x86) fitted to the system motherboard.
49 .sp
50 .LP
51 The \fBbge\fR driver is managed by the \fBdladm\fR(8) command line utility,
52 which allows VLANs to be defined on top of bge  instances and for \fBbge\fR
53 instances to be aggregated. See \fBdladm\fR(8) for more details.
54 .sp
55 .LP
56 You must send an explicit DL_ATTACH_REQ message to associate the opened stream
57 with a particular device (PPA). The PPA ID is interpreted as an unsigned
58 integer data type and indicates the corresponding device instance (unit)
59 number. The driver returns an error (DL_ERROR_ACK) if the PPA field value does
60 not correspond to a valid device instance number for the system. The device is
61 initialized on first attach and de-initialized (stopped) at last detach.
62 .sp
63 .LP
64 The values returned by the driver in the DL_INFO_ACK primitive in response to a
65 DL_INFO_REQ are:
66 .RS +4
67 .TP
68 .ie t \(bu
69 .el o
70 Maximum SDU (default 1500).
71 .RE
72 .RS +4
73 .TP
74 .ie t \(bu
75 .el o
76 Minimum SDU (default 0).
77 .RE
78 .RS +4
79 .TP
80 .ie t \(bu
81 .el o
82 DLSAP address length is 8.
83 .RE
84 .RS +4
85 .TP
86 .ie t \(bu
87 .el o
88 MAC type is \fBDL_ETHER\fR.
89 .RE
90 .RS +4
91 .TP
92 .ie t \(bu
93 .el o
94 \fBSAP\fR length value is \fI-2\fR, meaning the physical address component is
95 followed immediately by a 2-byte \fBSAP\fR component within the \fBDLSAP\fR
96 address.
97 .RE
98 .RS +4
99 .TP
100 .ie t \(bu
101 .el o
102 Broadcast address value is the Ethernet/IEEE broadcast address
103 (FF:FF:FF:FF:FF:FF).
107 Once in the DL_ATTACHED state, you must send a DL_BIND_REQ to associate a
108 particular Service Access Point (SAP) with the stream.
109 .SH CONFIGURATION
112 By default, the \fBbge\fR driver performs auto-negotiation to select the link
113 speed and mode. Link speed and mode can be any one of the following, (as
114 described in the \fI IEEE803.2\fR standard):
115 .RS +4
117 .ie t \(bu
118 .el o
119 1000 Mbps, full-duplex
121 .RS +4
123 .ie t \(bu
124 .el o
125 1000 Mbps, half-duplex
127 .RS +4
129 .ie t \(bu
130 .el o
131 100 Mbps, full-duplex
133 .RS +4
135 .ie t \(bu
136 .el o
137 100 Mbps, half-duplex
139 .RS +4
141 .ie t \(bu
142 .el o
143 10 Mbps, full-duplex
145 .RS +4
147 .ie t \(bu
148 .el o
149 10 Mbps, half-duplex
153 The auto-negotiation protocol automatically selects:
154 .RS +4
156 .ie t \(bu
157 .el o
158 Speed (1000 Mbps, 100 Mbps, or 10 Mbps)
160 .RS +4
162 .ie t \(bu
163 .el o
164 Operation mode (full-duplex or half-duplex)
168 as the highest common denominator supported by both link partners. Because the
169 \fBbge\fR device supports all modes, the effect is to select the highest
170 throughput mode supported by the other device.
173 Alternatively, you can set the capabilities advertised by the \fBbge\fR device
174 using \fBdladm\fR(8). The driver supports a number of parameters whose names
175 begin with \fBen_\fR (see below). Each of these parameters contains a boolean
176 value that determines whether the device advertises that mode of operation. If
177 \fBen_autoneg_cap\fR is set to 0, the driver forces the mode of operation
178 selected by the first non-zero parameter in priority order as  listed below:
180 .in +2
182     (highest priority/greatest throughput)
183           en_1000fdx_cap        1000Mbps full duplex
184           en_1000hdx_cap        1000Mbps half duplex
185           en_100fdx_cap         100Mbps full duplex
186           en_100hdx_cap         100Mbps half duplex
187           en_10fdx_cap          10Mbps full duplex
188           en_10hdx_cap          10Mbps half duplex
189                            (lowest priority/least throughput)
191 .in -2
195 For example, to prevent the device 'bge2' from advertising gigabit
196 capabilities, enter (as super-user):
198 .in +2
200 # dladm set-linkprop -p enable_1000hdx_cap=0  bge2
201 # dladm set-linkprop -p enable_1000fdx_cap=0 bge2
203 .in -2
207 All capabilities default to enabled. Note that changing any capability
208 parameter causes the link to go down while the link partners renegotiate the
209 link speed/duplex using the newly changed capabilities.
212 The current settings of the parameters may be found using dladm show-ether. In
213 addition, the driver exports the current state, speed, duplex setting, and
214 working mode of the link via kstat parameters (these are read only and may not
215 be changed). For example, to check link state of device \fBbge0\fR:
217 .in +2
219 # dladm show-ether -x bge0
220 LINK       PTYPE    STATE    AUTO  SPEED-DUPLEX            PAUSE
221 bge0       current  up       yes   1G-f                    bi
222 --         capable  --       yes   1G-fh,100M-fh,10M-fh    bi
223 --         adv      --       yes   1G-fh                   bi
224 --         peeradv  --       yes   1G-f                    bi
226 .in -2
230 The output above indicates that the link is up and running at 1Gbps full-duplex
231 with its rx/tx direction pause capability.
234 To extract link state information for the same link using kstat:
236 .in +2
238 # kstat bge:0:mac:link_state
239 module: bge                 instance: 0
240 name:   mac                 class:    net
241 link_state
243 .in -2
247 The default MTU is 1500. To enable Jumbo Frames support, you can configure the
248 \fBbge\fR driver by defining the default_mtu property via \fBdladm\fR(8) or in
249 \fBdriver.conf\fR(4) to greater than 1500 bytes (for example:
250 default_mtu=9000). Note that the largest jumbo size supported by bge is 9000
251 bytes. Additionally, not all bge-derived devices currently support Jumbo
252 Frames. The following devices  support Jumbo Frames up to 9KB:  BCM5700, 5701,
253 5702, 5703C, 5703S, 5704C, 5704S, 5714C, 5714S, 5715C and 5715S. Other devices
254 currently do not support Jumbo Frames.
255 .SH FILES
257 .ne 2
259 \fB\fB/kernel/drv/bge*\fR\fR
261 .RS 27n
262 32-bit ELF kernel module. (x86)
266 .ne 2
268 \fB\fB/kernel/drv/amd64/bge\fR\fR
270 .RS 27n
271 64-bit ELF kernel module (x86).
275 .ne 2
277 \fB\fB/kernel/drv/sparcv9/bge\fR\fR
279 .RS 27n
280 64-bit ELF kernel module (SPARC).
283 .SH ATTRIBUTES
286 See \fBattributes\fR(5) for a description of the following attributes:
291 box;
292 c | c
293 l | l .
294 ATTRIBUTE TYPE  ATTRIBUTE VALUE
296 Architecture    SPARC, x86
299 .SH SEE ALSO
302 \fBdladm\fR(8), \fBdriver.conf\fR(4), \fBattributes\fR(5), \fBstreamio\fR(7I),
303 \fBdlpi\fR(7P)
306 \fIWriting Device Drivers\fR
309 \fISTREAMS Programming Guide\fR
312 \fINetwork Interfaces Programmer's Guide\fR