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