ixl/iavf: Update ixl(4) and iavf(4) [previously ixlv] man pages
Since there have been major updates to both drivers in r339338, refresh the man pages with new and updated information. Reviewed by: sbruno@, 0mp@, jeffrey.e.pieper@intel.com, manpages Approved by: re (gjb@, kib@) Sponsored by: Intel Corporation Differential Revision: https://reviews.freebsd.org/D15927
This commit is contained in:
parent
4ba16a92c7
commit
9343a1cd71
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=339340
@ -196,6 +196,7 @@ MAN= aac.4 \
|
||||
${_hv_vmbus.4} \
|
||||
${_hv_vss.4} \
|
||||
hwpmc.4 \
|
||||
iavf.4 \
|
||||
ichsmb.4 \
|
||||
${_ichwd.4} \
|
||||
icmp.4 \
|
||||
@ -240,7 +241,6 @@ MAN= aac.4 \
|
||||
iwnfw.4 \
|
||||
ixgbe.4 \
|
||||
ixl.4 \
|
||||
ixlv.4 \
|
||||
jedec_dimm.4 \
|
||||
jme.4 \
|
||||
joy.4 \
|
||||
@ -669,7 +669,7 @@ MLINKS+=ixgbe.4 ix.4
|
||||
MLINKS+=ixgbe.4 if_ix.4
|
||||
MLINKS+=ixgbe.4 if_ixgbe.4
|
||||
MLINKS+=ixl.4 if_ixl.4
|
||||
MLINKS+=ixlv.4 if_ixlv.4
|
||||
MLINKS+=iavf.4 if_iavf.4
|
||||
MLINKS+=jme.4 if_jme.4
|
||||
MLINKS+=kue.4 if_kue.4
|
||||
MLINKS+=lagg.4 trunk.4
|
||||
|
@ -1,4 +1,4 @@
|
||||
.\" Copyright (c) 2013-2015, Intel Corporation
|
||||
.\" Copyright (c) 2013-2018, Intel Corporation
|
||||
.\" All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
@ -31,31 +31,29 @@
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd March 25, 2015
|
||||
.Dt IXLV 4
|
||||
.Dd October 5, 2018
|
||||
.Dt IAVF 4
|
||||
.Os
|
||||
.Sh NAME
|
||||
.Nm ixlv
|
||||
.Nd "Intel XL710 Ethernet 40Gb VF driver"
|
||||
.Nm iavf
|
||||
.Nd "Intel Adaptive Virtual Function driver"
|
||||
.Sh SYNOPSIS
|
||||
To compile this driver into the kernel,
|
||||
place the following lines in your
|
||||
To compile this driver into the kernel, place the following lines in your
|
||||
kernel configuration file:
|
||||
.Bd -ragged -offset indent
|
||||
.Cd "device ixlv"
|
||||
.Cd "device iavf"
|
||||
.Ed
|
||||
.Pp
|
||||
To load the driver as a
|
||||
module at boot time, place the following lines in
|
||||
To load the driver as a module at boot time, place the following lines in
|
||||
.Xr loader.conf 5 :
|
||||
.Bd -literal -offset indent
|
||||
if_ixlv_load="YES"
|
||||
if_iavf_load="YES"
|
||||
.Ed
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Nm
|
||||
driver provides virtualization support for PCI Express adapters
|
||||
or LOMs in the XL710 Family of ethernet devices.
|
||||
driver provides support for the PCI Virtual Functions from the 700 Series of
|
||||
ethernet devices and newer product families.
|
||||
The driver supports Jumbo Frames, TX/RX checksum offload,
|
||||
TCP segmentation offload (TSO), Large Receive Offload (LRO), VLAN
|
||||
tag insertion/extraction, VLAN checksum offload, VLAN TSO, and
|
||||
@ -78,10 +76,10 @@ For more information on configuring this device, see
|
||||
.Xr ifconfig 8 .
|
||||
.Pp
|
||||
.Em NOTE :
|
||||
The
|
||||
This
|
||||
.Nm
|
||||
driver is only used by means of SRIOV, normally in a VM on a
|
||||
hosting server with the
|
||||
driver is only for Virtual Functions.
|
||||
For 700 series Physical Functions, use the
|
||||
.Xr ixl 4
|
||||
driver.
|
||||
.Sh LOADER TUNABLES
|
||||
@ -90,24 +88,17 @@ Tunables can be set at the
|
||||
prompt before booting the kernel or stored in
|
||||
.Xr loader.conf 5 .
|
||||
.Bl -tag -width indent
|
||||
.It Va hw.ixlv.ringsz
|
||||
Set the number of descriptors in the rings, note that this
|
||||
changes BOTH the TX and RX rings, they cannot be set independently.
|
||||
.It Va hw.ixlv.max_queues
|
||||
Set the number of queues (each a TX/RX pair) for the port, this
|
||||
allows one to override the autocalculation if it is set to 0.
|
||||
.It Va hw.ixlv.txbrsz
|
||||
Set the size of the buff ring used by the transmit side of the
|
||||
stack, we have found that it is necessary to have it quite large
|
||||
in order to get UDP to perform well.
|
||||
.It Va hw.ixlv.dynamic_rx_itr
|
||||
The dynamic RX interrupt control, set to 1 to enable, off by default.
|
||||
.It Va hw.ixlv.dynamic_tx_itr
|
||||
The dynamic TX interrupt control, set to 1 to enable, off by default.
|
||||
.It Va hw.ixlv.rx_itr
|
||||
The RX interrupt rate value, set to 8K by default.
|
||||
.It Va hw.ixlv.tx_itr
|
||||
The TX interrupt rate value, set to 4K by default.
|
||||
.It Va hw.iavf.rx_itr
|
||||
The RX interrupt rate value, set to 62 (124 usec) by default.
|
||||
.It Va hw.iavf.tx_itr
|
||||
The TX interrupt rate value, set to 122 (244 usec) by default.
|
||||
.It Va hw.iavf.enable_head_writeback
|
||||
When the driver is finding the last TX descriptor processed by the hardware,
|
||||
use a value written to memory by the hardware instead of scanning the
|
||||
descriptor ring for completed descriptors.
|
||||
Disabled by default; this mimics the "legacy" TX behavior found in
|
||||
.Xr ixgbe 4 .
|
||||
to ensure compatibility with future, non-700 series VF devices.
|
||||
.El
|
||||
.Sh SUPPORT
|
||||
For general information and support,
|
||||
@ -116,24 +107,32 @@ go to the Intel support website at:
|
||||
.Pp
|
||||
If an issue is identified with this driver with a supported adapter,
|
||||
email all the specific information related to the issue to
|
||||
.Aq freebsd@intel.com .
|
||||
.Mt freebsd@intel.com .
|
||||
.Sh SEE ALSO
|
||||
.Xr arp 4 ,
|
||||
.Xr ixl 4 ,
|
||||
.Xr netintro 4 ,
|
||||
.Xr ng_ether 4 ,
|
||||
.Xr vlan 4 ,
|
||||
.Xr ifconfig 8
|
||||
.Xr ifconfig 8 ,
|
||||
.Xr iflib 9
|
||||
.Sh HISTORY
|
||||
The
|
||||
.Nm
|
||||
device driver first appeared in
|
||||
.Fx 10.1 .
|
||||
under the name "ixlv"
|
||||
It was converted to use
|
||||
.Xr iflib 9
|
||||
and changed to its current name in
|
||||
.Fx 12 .
|
||||
.Sh AUTHORS
|
||||
.An -nosplit
|
||||
The
|
||||
.Nm
|
||||
driver was written by
|
||||
.An Jack Vogel Aq Mt jfv@FreeBSD.org
|
||||
.An Jack Vogel Aq Mt jfv@freebsd.org
|
||||
and
|
||||
.An Eric Joyner Aq Mt ricera10@gmail.com .
|
||||
.An Eric Joyner Aq Mt erj@freebsd.org .
|
||||
.Sh CAVEATS
|
||||
This driver is supposed to function on VFs spawned from future network devices by Intel,
|
||||
but at the time of this writing, has only been tested on the 700 series VFs.
|
@ -1,4 +1,4 @@
|
||||
.\" Copyright (c) 2013-2015, Intel Corporation
|
||||
.\" Copyright (c) 2013-2018, Intel Corporation
|
||||
.\" All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
@ -31,31 +31,44 @@
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd March 25, 2015
|
||||
.Dd October 5, 2018
|
||||
.Dt IXL 4
|
||||
.Os
|
||||
.Sh NAME
|
||||
.Nm ixl
|
||||
.Nd "Intel XL710 Ethernet 40Gb Base driver"
|
||||
.Nd "Intel Ethernet 700 Series Driver"
|
||||
.Sh SYNOPSIS
|
||||
To compile this driver into the kernel,
|
||||
place the following lines in your
|
||||
To compile this driver into the kernel, place the following lines in your
|
||||
kernel configuration file:
|
||||
.Bd -ragged -offset indent
|
||||
.Cd "device ixl"
|
||||
.Ed
|
||||
.Pp
|
||||
To load the driver as a
|
||||
module at boot time, place the following lines in
|
||||
To load the driver as a module at boot time, place the following lines in
|
||||
.Xr loader.conf 5 :
|
||||
.Bd -literal -offset indent
|
||||
if_ixl_load="YES"
|
||||
.Ed
|
||||
.Sh DESCRIPTION
|
||||
.Ss Features
|
||||
The
|
||||
.Nm
|
||||
driver provides support for PCI Express adapters or LOMs
|
||||
in the XL710 Family of ethernet devices.
|
||||
driver provides support for any PCI Express adapter or LOM
|
||||
(LAN On Motherboard)
|
||||
in the Intel Ethernet 700 Series.
|
||||
As of this writing, the series includes devices with these model numbers:
|
||||
.Pp
|
||||
.Bl -bullet -compact
|
||||
.It
|
||||
XL710 (40G)
|
||||
.It
|
||||
X710 (10G)
|
||||
.It
|
||||
XXV710 (25G)
|
||||
.It
|
||||
X722 (10G)
|
||||
.El
|
||||
.Pp
|
||||
The driver supports Jumbo Frames, TX/RX checksum offload,
|
||||
TCP segmentation offload (TSO), Large Receive Offload (LRO), VLAN
|
||||
tag insertion/extraction, VLAN checksum offload, VLAN TSO, and
|
||||
@ -76,91 +89,176 @@ and/or TSO6, and finally LRO can be set and unset.
|
||||
.Pp
|
||||
For more information on configuring this device, see
|
||||
.Xr ifconfig 8 .
|
||||
.Ss Additional Utilities
|
||||
There are additional tools available from Intel to help configure and update
|
||||
the adapters covered by this driver.
|
||||
These tools can be downloaded directly from Intel at
|
||||
.Pa downloadcenter.intel.com ,
|
||||
by searching for their names, or by installing certain packages:
|
||||
.Bl -item
|
||||
.It
|
||||
To change the behavior of the QSFP+ ports on XL710 adapters, use the
|
||||
Intel QCU (QSFP+ configuration utility); installed by the
|
||||
.Em sysutils/intel-qcu
|
||||
package.
|
||||
.It
|
||||
To update the firmware on an adapter, use the Intel Non-Volatile Memory (NVM)
|
||||
Update Utility; installed by the
|
||||
.Em sysutils/intel-nvmupdate
|
||||
package.
|
||||
.It
|
||||
Drivers are provided by Intel outside of the
|
||||
.Fx
|
||||
kernel; install the
|
||||
.Em net/intel-ixl-kmod
|
||||
package for the latest driver.
|
||||
.El
|
||||
.Sh HARDWARE
|
||||
Most adapters in the Intel Ethernet 700 Series with SFP+/SFP28/QSFP+ cages
|
||||
have firmware that requires that Intel qualified modules are used; these
|
||||
qualified modules are listed below.
|
||||
This qualification check cannot be disabled by the driver.
|
||||
.Pp
|
||||
The
|
||||
.Nm
|
||||
driver supports these SFP+ Pluggable Optics:
|
||||
driver supports 40Gb Ethernet adapters with these QSFP+ modules:
|
||||
.Pp
|
||||
.Bl -bullet -compact
|
||||
.It
|
||||
Intel TRIPLE RATE 1G/10G/40G QSFP+ SR (bailed) E40GQSFPSR
|
||||
Intel 4x10G/40G QSFP+ 40GBASE-SR4 E40GQSFPSR
|
||||
.It
|
||||
Intel TRIPLE RATE 1G/10G/40G QSFP+ SR (bailed) E40GQSFPLR
|
||||
Intel 4x10G/40G QSFP+ 40GBASE-LR4 E40GQSFPLR
|
||||
.El
|
||||
.Pp
|
||||
The
|
||||
.Nm
|
||||
driver supports 10Gb and 1Gb Ethernet adapters with SR Modules:
|
||||
driver supports 25Gb Ethernet adapters with these SFP28 modules:
|
||||
.Pp
|
||||
.Bl -bullet -compact
|
||||
.It
|
||||
Intel DUAL RATE 1G/10G SFP+ SR (bailed) FTLX8571D3BCV-IT
|
||||
Intel 10G/25G SFP28 25GBASE-SR E25GSFP28SR
|
||||
.It
|
||||
Intel DUAL RATE 1G/10G SFP+ SR (bailed) AFBR-703SDZ-IN2
|
||||
Intel 10G/25G SFP28 25GBASE-SR E25GSFP28SRX (Extended Temp)
|
||||
.El
|
||||
.Pp
|
||||
The
|
||||
.Nm
|
||||
driver supports 10Gb and 1Gb Ethernet adapters with LR Modules:
|
||||
driver supports 25Gb and 10Gb Ethernet adapters with these SFP+ modules:
|
||||
.Pp
|
||||
.Bl -bullet -compact
|
||||
.It
|
||||
Intel DUAL RATE 1G/10G SFP+ LR (bailed) FTLX1471D3BCV-IT
|
||||
Intel 1G/10G SFP+ SR FTLX8571D3BCV-IT
|
||||
.It
|
||||
Intel DUAL RATE 1G/10G SFP+ LR (bailed) AFCT-701SDZ-IN2
|
||||
Intel 1G/10G SFP+ SR AFBR-703SDZ-IN2
|
||||
.It
|
||||
Intel 1G/10G SFP+ LR FTLX1471D3BCV-IT
|
||||
.It
|
||||
Intel 1G/10G SFP+ LR AFCT-701SDZ-IN2
|
||||
.It
|
||||
Intel 1G/10G SFP+ 10GBASE-SR E10GSFPSR
|
||||
.It
|
||||
Intel 10G SFP+ 10GBASE-SR E10GSFPSRX (Extended Temp)
|
||||
.It
|
||||
Intel 1G/10G SFP+ 10GBASE-LR E10GSFPLR
|
||||
.El
|
||||
.Pp
|
||||
Note that X710/XL710 Based SFP+ adapters also support all passive and active
|
||||
Note that adapters also support all passive and active
|
||||
limiting direct attach cables that comply with SFF-8431 v4.1 and
|
||||
SFF-8472 v10.4 specifications.
|
||||
.Pp
|
||||
This is not an exhaustive list; please consult product documentation for an
|
||||
up-to-date list of supported media.
|
||||
.Sh LOADER TUNABLES
|
||||
Tunables can be set at the
|
||||
.Xr loader 8
|
||||
prompt before booting the kernel or stored in
|
||||
.Xr loader.conf 5 .
|
||||
.Bl -tag -width indent
|
||||
.It Va hw.ixl.enable_msix
|
||||
Allows one to enable/disable MSIX, thus forcing MSI instead.
|
||||
.It Va hw.ixl.ringsz
|
||||
Set the number of descriptors in the rings, note that this
|
||||
changes BOTH the TX and RX rings, they cannot be set independently.
|
||||
.It Va hw.ixl.max_queues
|
||||
Set the number of queues (each a TX/RX pair) for the port, this
|
||||
allows one to override the autocalculation if it is set to 0.
|
||||
.It Va hw.ixl.dynamic_rx_itr
|
||||
The dynamic RX interrupt control, set to 1 to enable.
|
||||
.It Va hw.ixl.dynamic_tx_itr
|
||||
The dynamic TX interrupt control, set to 1 to enable.
|
||||
.It Va hw.ixl.rx_itr
|
||||
The RX interrupt rate value, set to 8K by default.
|
||||
The RX interrupt rate value, set to 62 (124 usec) by default.
|
||||
.It Va hw.ixl.tx_itr
|
||||
The TX interrupt rate value, set to 4K by default.
|
||||
The TX interrupt rate value, set to 122 (244 usec) by default.
|
||||
.It Va hw.ixl.i2c_access_method
|
||||
Access method that driver will use for I2C read and writes via
|
||||
.Xr sysctl 8
|
||||
or verbose
|
||||
.Xr ifconfig 8
|
||||
information display:
|
||||
.Bd -literal -offset indent
|
||||
0 - best available method
|
||||
1 - bit bang via I2CPARAMS register
|
||||
2 - register read/write via I2CCMD register
|
||||
3 - Use Admin Queue command (default best)
|
||||
.Ed
|
||||
.Pp
|
||||
Using the Admin Queue is only supported on 710 devices with FW version 1.7 or
|
||||
newer.
|
||||
Set to 0 by default.
|
||||
.It Va hw.ixl.enable_tx_fc_filter
|
||||
Filter out packets with Ethertype 0x8808 from being sent out by non-adapter
|
||||
sources.
|
||||
This prevents (potentially untrusted) software or
|
||||
.Xr iavf 4
|
||||
devices from sending out flow control packets and creating a DoS (Denial of
|
||||
Service) event.
|
||||
Enabled by default.
|
||||
.It Va hw.ixl.enable_head_writeback
|
||||
When the driver is finding the last TX descriptor processed by the hardware,
|
||||
use a value written to memory by the hardware instead of scanning the
|
||||
descriptor ring for completed descriptors.
|
||||
Enabled by default; disable to mimic the TX behavior found in
|
||||
.Xr ixgbe 4 .
|
||||
.El
|
||||
.Sh SYSCTL PROCEDURES
|
||||
.Bl -tag -width indent
|
||||
.It Va hw.ixl.fc
|
||||
Allows one to set the flow control value.
|
||||
A value of 0 disables
|
||||
flow control, 3 enables full, 1 is RX, and 2 is TX pause.
|
||||
.It Va hw.ixl.advertise_speed
|
||||
Allows one to set advertised link speeds, this will then
|
||||
cause a link renegotiation.
|
||||
With the appropriate adapter
|
||||
this can cause a link at 10GB, 1GB, or 100MB.
|
||||
.It Va hw.ixl.current_speed
|
||||
This is a display of the current setting.
|
||||
.It Va hw.ixl.fw_version
|
||||
This is a display of the Firmware version.
|
||||
.It Va dev.ixl.#.fc
|
||||
Sets the 802.3x flow control mode that the adapter will advertise on the link.
|
||||
A value of 0 disables flow control, 3 enables full, 1 is RX, and 2 is TX pause.
|
||||
.Pp
|
||||
The negotiated flow control setting can be viewed in
|
||||
.Xr ifconfig 8 ,
|
||||
in the interface's media field.
|
||||
.It Va dev.ixl.#.advertise_speed
|
||||
Set the speeds that the interface will advertise on the link.
|
||||
.Va dev.ixl.#.supported_speeds
|
||||
contains the speeds that are allowed to be set.
|
||||
.It Va dev.ixl.#.current_speed
|
||||
Displays the current speed.
|
||||
.It Va dev.ixl.#.fw_version
|
||||
Displays the current firmware and NVM versions of the adapter.
|
||||
.El
|
||||
.Sh Interrupt Storms
|
||||
.Sh INTERRUPT STORMS
|
||||
It is important to note that 40G operation can generate high
|
||||
numbers of interrupts, often incorrectly being interpreted as
|
||||
a storm condition in the kernel.
|
||||
It is suggested that this
|
||||
be resolved by setting:
|
||||
It is suggested that this be resolved by setting:
|
||||
.Bl -tag -width indent
|
||||
.It Va hw.intr_storm_threshold: 0
|
||||
.El
|
||||
.Sh IOVCTL OPTIONS
|
||||
The driver supports additional optional parameters for created VFs
|
||||
(Virtual Functions) when using
|
||||
.Xr iovctl 8 :
|
||||
.Bl -tag -width indent
|
||||
.It mac-addr Pq unicast-mac
|
||||
Set the Ethernet MAC address that the VF will use.
|
||||
If unspecified, the VF will use a randomly generated MAC address.
|
||||
.It mac-anti-spoof Pq bool
|
||||
Prevent the VF from sending Ethernet frames with a source address
|
||||
that does not match its own.
|
||||
.It allow-set-mac Pq bool
|
||||
Allow the VF to set its own Ethernet MAC address
|
||||
.It allow-promisc Pq bool
|
||||
Allow the VF to inspect all of the traffic sent to the port.
|
||||
.It num-queues Pq uint16_t
|
||||
Specify the number of queues the VF will have.
|
||||
By default, this is set to the number of MSI-X vectors supported by the VF
|
||||
minus one.
|
||||
.El
|
||||
.Pp
|
||||
An up to date list of parameters and their defaults can be found by using
|
||||
.Xr iovctl 8
|
||||
with the -S option.
|
||||
.Sh SUPPORT
|
||||
For general information and support,
|
||||
go to the Intel support website at:
|
||||
@ -168,24 +266,29 @@ go to the Intel support website at:
|
||||
.Pp
|
||||
If an issue is identified with this driver with a supported adapter,
|
||||
email all the specific information related to the issue to
|
||||
.Aq freebsd@intel.com .
|
||||
.Mt freebsd@intel.com .
|
||||
.Sh SEE ALSO
|
||||
.Xr arp 4 ,
|
||||
.Xr ixlv 4 ,
|
||||
.Xr iavf 4 ,
|
||||
.Xr netintro 4 ,
|
||||
.Xr ng_ether 4 ,
|
||||
.Xr vlan 4 ,
|
||||
.Xr ifconfig 8
|
||||
.Xr ifconfig 8 ,
|
||||
.Xr iovctl 8 ,
|
||||
.Xr iflib 9
|
||||
.Sh HISTORY
|
||||
The
|
||||
.Nm
|
||||
device driver first appeared in
|
||||
.Fx 10.1 .
|
||||
It was converted to use
|
||||
.Xr iflib 9
|
||||
in
|
||||
.Fx 12 .
|
||||
.Sh AUTHORS
|
||||
.An -nosplit
|
||||
The
|
||||
.Nm
|
||||
driver was written by
|
||||
.An Jack Vogel Aq Mt jfv@FreeBSD.org
|
||||
.An Jack Vogel Aq Mt jfv@freebsd.org
|
||||
and
|
||||
.An Eric Joyner Aq Mt ricera10@gmail.com .
|
||||
.An Eric Joyner Aq Mt erj@freebsd.org .
|
||||
|
Loading…
Reference in New Issue
Block a user