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