xref: /illumos-gate/usr/src/uts/common/io/igb/igb.conf (revision b6c3f786)
1#
2# CDDL HEADER START
3#
4# Copyright(c) 2007-2008 Intel Corporation. All rights reserved.
5# The contents of this file are subject to the terms of the
6# Common Development and Distribution License (the "License").
7# You may not use this file except in compliance with the License.
8#
9# You can obtain a copy of the license at:
10#	http://www.opensolaris.org/os/licensing.
11# See the License for the specific language governing permissions
12# and limitations under the License.
13#
14# When using or redistributing this file, you may do so under the
15# License only. No other modification of this header is permitted.
16#
17# If applicable, add the following below this CDDL HEADER, with the
18# fields enclosed by brackets "[]" replaced with your own identifying
19# information: Portions Copyright [yyyy] [name of copyright owner]
20#
21# CDDL HEADER END
22#
23#
24# Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
25# Use is subject to license terms of the CDDL.
26#
27#
28# ident	"%Z%%M%	%I%	%E% SMI"
29#
30#
31# Driver.conf file for Intel 1Gb ethernet driver (igb)
32#
33# -------------------- Link Configuration --------------------
34# The parameters of link configuration:
35#
36# adv_cap_autoneg
37#	Advertise capability of auto-negotiation.
38#	Allowed values:	0, 1
39#	Default value:	1
40#
41# adv_cap_1000fdx
42#	Advertise capability of 1000Mbps full duplex
43#	Allowed values:	0, 1
44#	Default value:	1
45#
46# adv_cap_100fdx
47#	Advertise capability of 100Mbps full duplex
48#	Allowed values:	0, 1
49#	Default value:	1
50#
51# adv_cap_100hdx
52#	Advertise capability of 100Mbps half duplex
53#	Allowed values:	0, 1
54#	Default value:	1
55#
56# adv_cap_10fdx
57#	Advertise capability of 10Mbps full duplex
58#	Allowed values:	0, 1
59#	Default value:	1
60#
61# adv_cap_10hdx
62#	Advertise capability of 10Mbps half duplex
63#	Allowed values:	0, 1
64#	Default value:	1
65#
66# There are two methods to configure the link:
67#	autonegotiation or forced link
68#
69# The parameter "adv_cap_autoneg" is used to enable autonegotiation or disable
70# it (forced link mode).
71#
72# If autonegotiation is enabled (the default mode), all the "adv_cap_*"
73# parameters control which capabilities are advertised to the partner. The
74# default is to advertise all the capabilities that the hardware supports.
75# The advertised capabilities can also be restricted to a subset. It is not
76# possible to advertise a capability that the hardware does not support.
77#
78# The autonegotiation process will then automatically select the fastest speed/
79# duplex mode supported by both partners.
80#
81# If autonegotiation is disabled (forced link mode), the link speed/duplex is
82# determined by the first link capability that is enabled, in highest-to-lowest
83# speed/duplex order.
84#
85# For example, if adv_cap_1000fdx is enabled, all other values will be ignored;
86# to force 10hdx mode, all the faster modes must be explicitly disabled.
87#
88# Note:
89# 1. 1000M half duplex is not supported with igb.
90# 2. 1000M speed is not supported with the forced link mode (the value of
91#    adv_cap_1000fdx will be ignored).
92# 3. The forced link mode may result in a non-working link or a half duplex
93#    link. If forced link mode is used, both the partners should be forced to
94#    the same link/speed mode.
95#
96# adv_cap_autoneg	= 1;
97# adv_cap_1000fdx	= 1;
98# adv_cap_100fdx	= 1;
99# adv_cap_100hdx	= 1;
100# adv_cap_10fdx		= 1;
101# adv_cap_10hdx		= 1;
102#
103# -------------------- Jumbo Frame --------------------
104# default_mtu
105#	The size of the default MTU (payload without the ethernet header)
106#	Allowed values:	1500 - 9000
107#	Default value:	1500
108#
109# default_mtu		= 1500;
110#
111# -------------------- Flow Control --------------------
112# flow_control
113#	Ethernet flow control
114#	Allowed values:	0 - Disable
115#			1 - Receive only
116#			2 - Transmit only
117#			3 - Receive and transmit
118#			4 - Use NVROM-programmed factory default setting
119#	default value:	3
120#
121# flow_control		= 3;
122#
123# -------------------- Transmit/Receive Queues --------------------
124# tx_queue_number
125#	The number of the transmit queues
126#	Allowed values:	1 - 4
127#	Default value:	1
128#
129# tx_ring_size
130#	The number of the transmit descriptors per transmit queue
131#	Allowed values:	64 - 4096
132#	Default value:	512
133#
134# rx_queue_number
135#	The number of the receive queues
136#	Allowed values:	1 - 4
137#	Default value:	1
138#
139# rx_ring_size
140#	The number of the receive descriptors per receive queue
141#	Allowed values:	64 - 4096
142#	Default value:	512
143#
144# Note: The final values of tx_queue_number and rx_queue_number are decided
145# by the number of interrupt vectors obtained by the driver. They could be
146# less than the specified values because of limited interrupt vector number.
147#
148# -------- How to set parameters for a particular interface ---------
149# The example below shows how to locate the device path and set a parameter
150# for a particular igb interface. (Using flow_control as an example)
151#
152# Use the following command to find out the device paths for igb,
153#       more /etc/path_to_inst | grep igb
154#
155# For example, if you see,
156#	"/pci@0,0/pci10de,5d@d/pci8086,0@0" 0 "igb"
157#	"/pci@0,0/pci10de,5d@d/pci8086,0@0,1" 1 "igb"
158#
159# name = "pciex8086,10a7" parent = "/pci@0,0/pci10de,5d@d" unit-address = "0"
160# flow_control = 1;
161# name = "pciex8086,10a7" parent = "/pci@0,0/pci10de,5d@d" unit-address = "0,1"
162# flow_control = 3;
163