nxge.conf revision 6f45ec7b0b964c3be967c4880e8867ac1e7763a5
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# CDDL HEADER START
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# The contents of this file are subject to the terms of the
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# Common Development and Distribution License (the "License").
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# You may not use this file except in compliance with the License.
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# or http://www.opensolaris.org/os/licensing.
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# See the License for the specific language governing permissions
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# and limitations under the License.
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# When distributing Covered Code, include this CDDL HEADER in each
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# If applicable, add the following below this CDDL HEADER, with the
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# fields enclosed by brackets "[]" replaced with your own identifying
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# information: Portions Copyright [yyyy] [name of copyright owner]
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# CDDL HEADER END
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#########################################################################
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# Copyright 2007 Sun Microsystems, Inc. All rights reserved.
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# Use is subject to license terms.
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#ident "%Z%%M% %I% %E% SMI"
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# driver.conf file for Sun NIU 10Gb/1Gb Ethernet Driver (nxge)
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#---------------Link Configuration ----------------------
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# The link parameters depend on the type of the card
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# and the port.
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# 10 gigabit related parameters ( i.e adv_10gfdx_cap)
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# apply only to 10gigabit ports.
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# Half duplex is not supported on any NIU card.
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# adv-autoneg-cap
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# Advertise auto-negotiation capability.
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# default is 1
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# adv-autoneg-cap = 1;
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# adv_10gfdx_cap
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# Advertise 10gbps Full duplex capability.
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# default is 1
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# adv_10gfdx_cap = 1;
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# adv_1000fdx_cap
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# Advertise 1gbps Full duplex capability.
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# default is 1
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# adv_1000fdx_cap = 1;
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# adv_100fdx_cap
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# Advertise 100mbps Full duplex capability.
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# default is 1
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# adv_100fdx_cap = 1;
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# adv_10fdx_cap
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# Advertise 10mbps Full duplex capability.
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# default is 1
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# adv_10fdx_cap = 1;
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# adv_asmpause_cap
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# Advertise Asymmetric pause capability.
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# default is 0
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# adv_asmpause_cap = 0;
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# adv_pause_cap
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# Advertise pause capability.
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# default is 1
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# adv_pause_cap = 1;
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#------- Jumbo frame support ---------------------------------
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# To enable jumbo support for all nxge interfaces,
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# accept_jumbo = 1;
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# To disable jumbo support for all nxge interfaces,
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# accept_jumbo = 0;
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# Default is 0. See the example at the end of this file for
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# enabling or disabling jumbo for a particular nxge interface.
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#------- Receive DMA Configuration ----------------------------
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# rxdma-intr-time
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# Interrupts after this number of NIU hardware ticks have
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# elapsed since the last packet was received.
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# A value of zero means no time blanking (Default = 8).
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# rxdma-intr-pkts
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# Interrupt after this number of packets have arrived since
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# the last packet was serviced. A value of zero indicates
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# no packet blanking (Default = 20).
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# Default Interrupt Blanking parameters.
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# rxdma-intr-time = 8;
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# rxdma-intr-pkts = 20;
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#------- Classification and Load Distribution Configuration ------
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# class-opt-****-***
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# These variables define how each IP class is configured.
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# Configuration options range from whether TCAM lookup ie
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# is enabled to flow hash generation.
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# This parameters also control how the flow template is
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# constructed and how packet is distributed within RDC
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# groups.
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# supported classes:
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# class-opt-ipv4-tcp class-opt-ipv4-udp class-opt-ipv4-sctp
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# class-opt-ipv4-ah class-opt-ipv6-tcp class-opt-ipv6-udp
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# class-opt-ipv6-sctp class-opt-ipv6-ah
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# Configuration bits (Thes following bits will be decoded
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# by the driver as hex format).
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# 0010: use MAC Port (for flow key)
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# 0020: use L2DA (for flow key)
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# 0040: use VLAN (for flow key)
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# 0080: use proto (for flow key)
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# 0100: use IP src addr (for flow key)
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# 0200: use IP dest addr (for flow key)
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# 0400: use Src Port (for flow key)
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# 0800: use Dest Port (for flow key)
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# class-opt-ipv4-tcp = fe0;
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# ------- How to set parameters for a particular interface --------
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# The example below shows how to locate the device path and set a
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# parameter for a particular nxge interface. (Using jumbo support as
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# an example)
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# Use the following command to find out the device paths for nxge,
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# more /etc/path_to_inst | grep nxge
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# For example, if you see,
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# "/pci@7c0/pci@0/pci@8/network@0" 0 "nxge"
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# "/pci@7c0/pci@0/pci@8/network@0,1" 1 "nxge"
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# "/pci@7c0/pci@0/pci@8/network@0,2" 2 "nxge"
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# "/pci@7c0/pci@0/pci@8/network@0,3" 3 "nxge"
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# then you can enable jumbo for ports 0 and 1 and disable jumbo for ports 2
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# and 3 as follows,
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml#
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# name = "pciex108e,abcd" parent = "/pci@7c0/pci@0/pci@8" unit-address = "0"
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# accept_jumbo = 1;
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# name = "pciex108e,abcd" parent = "/pci@7c0/pci@0/pci@8" unit-address = "0,1"
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# accept_jumbo = 1;
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# name = "pciex108e,abcd" parent = "/pci@7c0/pci@0/pci@8" unit-address = "0,2"
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# accept_jumbo = 0;
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# name = "pciex108e,abcd" parent = "/pci@7c0/pci@0/pci@8" unit-address = "0,3"
6f45ec7b0b964c3be967c4880e8867ac1e7763a5ml# accept_jumbo = 0;