xref: /freebsd-src/share/man/man4/ice.4 (revision f4bd011a382269965a4f75aa01b6e6b1ce2a3eba)
18e5e42d5SMathieu Simon.\"-
28e5e42d5SMathieu Simon.\" SPDX-License-Identifier: BSD-3-Clause
38e5e42d5SMathieu Simon.\"
48e5e42d5SMathieu Simon.\" Copyright (c) 2019-2020, Intel Corporation
58e5e42d5SMathieu Simon.\" All rights reserved.
68e5e42d5SMathieu Simon.\"
78e5e42d5SMathieu Simon.\" Redistribution and use in source and binary forms of the Software, with or
88e5e42d5SMathieu Simon.\" without modification, are permitted provided that the following conditions
98e5e42d5SMathieu Simon.\" are met:
108e5e42d5SMathieu Simon.\" 1. Redistributions of source code must retain the above copyright notice,
118e5e42d5SMathieu Simon.\"    this list of conditions and the following disclaimer.
128e5e42d5SMathieu Simon.\"
138e5e42d5SMathieu Simon.\" 2. Redistributions in binary form must reproduce the above copyright notice,
148e5e42d5SMathieu Simon.\"    this list of conditions and the following disclaimer in the documentation
158e5e42d5SMathieu Simon.\"    and/or other materials provided with the distribution.
168e5e42d5SMathieu Simon.\"
178e5e42d5SMathieu Simon.\" 3. Neither the name of the Intel Corporation nor the names of its
188e5e42d5SMathieu Simon.\"    contributors may be used to endorse or promote products derived from
198e5e42d5SMathieu Simon.\"    this Software without specific prior written permission.
208e5e42d5SMathieu Simon.\"
218e5e42d5SMathieu Simon.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
228e5e42d5SMathieu Simon.\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
238e5e42d5SMathieu Simon.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
248e5e42d5SMathieu Simon.\" ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
258e5e42d5SMathieu Simon.\" LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
268e5e42d5SMathieu Simon.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
278e5e42d5SMathieu Simon.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
288e5e42d5SMathieu Simon.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
298e5e42d5SMathieu Simon.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
308e5e42d5SMathieu Simon.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
318e5e42d5SMathieu Simon.\" POSSIBILITY OF SUCH DAMAGE.
328e5e42d5SMathieu Simon.\"
338e5e42d5SMathieu Simon.\" * Other names and brands may be claimed as the property of others.
348e5e42d5SMathieu Simon.\"
358e5e42d5SMathieu Simon.Dd May 20, 2024
368e5e42d5SMathieu Simon.Dt ICE 4
378e5e42d5SMathieu Simon.Os
388e5e42d5SMathieu Simon.Sh NAME
398e5e42d5SMathieu Simon.Nm ice
408e5e42d5SMathieu Simon.Nd "Intel Ethernet 800 Series Driver"
418e5e42d5SMathieu Simon.Sh SYNOPSIS
428e5e42d5SMathieu SimonTo compile this driver into the kernel, place the following lines in your
438e5e42d5SMathieu Simonkernel configuration file:
448e5e42d5SMathieu Simon.Bd -ragged -offset indent
458e5e42d5SMathieu Simon.Cd "device iflib"
468e5e42d5SMathieu Simon.Cd "device ice"
478e5e42d5SMathieu Simon.Ed
488e5e42d5SMathieu Simon.Pp
498e5e42d5SMathieu SimonTo load the driver as a module at boot time, place the following lines in
508e5e42d5SMathieu Simon.Xr loader.conf 5 :
518e5e42d5SMathieu Simon.Bd -literal -offset indent
528e5e42d5SMathieu Simonif_ice_load="YES"
538e5e42d5SMathieu Simon.Ed
548e5e42d5SMathieu Simon.Sh DESCRIPTION
558e5e42d5SMathieu Simon.Ss Features
568e5e42d5SMathieu SimonThe
578e5e42d5SMathieu Simon.Nm
588e5e42d5SMathieu Simondriver provides support for any PCI Express adapter or LOM
598e5e42d5SMathieu Simon(LAN On Motherboard)
608e5e42d5SMathieu Simonin the Intel Ethernet 800 Series.
618e5e42d5SMathieu SimonAs of this writing, the series includes devices with these model numbers:
628e5e42d5SMathieu Simon.Pp
638e5e42d5SMathieu Simon.Bl -bullet -compact
648e5e42d5SMathieu Simon.It
658e5e42d5SMathieu SimonIntel\(rg Ethernet Controller E810\-C
668e5e42d5SMathieu Simon.It
678e5e42d5SMathieu SimonIntel\(rg Ethernet Controller E810\-XXV
688e5e42d5SMathieu Simon.It
698e5e42d5SMathieu SimonIntel\(rg Ethernet Connection E822\-C
708e5e42d5SMathieu Simon.It
718e5e42d5SMathieu SimonIntel\(rg Ethernet Connection E822\-L
728e5e42d5SMathieu Simon.It
738e5e42d5SMathieu SimonIntel\(rg Ethernet Connection E823\-C
748e5e42d5SMathieu Simon.It
758e5e42d5SMathieu SimonIntel\(rg Ethernet Connection E823\-L
768e5e42d5SMathieu Simon.El
778e5e42d5SMathieu Simon.Pp
788e5e42d5SMathieu SimonFor questions related to hardware requirements, refer to the documentation
798e5e42d5SMathieu Simonsupplied with your adapter.
808e5e42d5SMathieu Simon.Pp
818e5e42d5SMathieu SimonSupport for Jumbo Frames is provided via the interface MTU setting.
828e5e42d5SMathieu SimonSelecting an MTU larger than 1500 bytes with the
838e5e42d5SMathieu Simon.Xr ifconfig 8
848e5e42d5SMathieu Simonutility configures the adapter to receive and transmit Jumbo Frames.
858e5e42d5SMathieu SimonThe maximum MTU size for Jumbo Frames is 9706.
868e5e42d5SMathieu SimonThis value coincides with the maximum Jumbo Frame size of 9728.
878e5e42d5SMathieu Simon.Pp
888e5e42d5SMathieu SimonThis driver version supports VLANs.
898e5e42d5SMathieu SimonFor information on enabling VLANs, see the
908e5e42d5SMathieu Simon.Pa README .
918e5e42d5SMathieu Simon.Pp
928e5e42d5SMathieu SimonOffloads are also controlled via the interface, for instance, checksumming for
938e5e42d5SMathieu Simonboth IPv4 and IPv6 can be set and unset, TSO4 and/or TSO6, and finally LRO can
948e5e42d5SMathieu Simonbe set and unset.
958e5e42d5SMathieu Simon.Pp
968e5e42d5SMathieu SimonFor more information on configuring this device, see
978e5e42d5SMathieu Simon.Xr ifconfig 8 .
988e5e42d5SMathieu Simon.Ss Additional Utilities
998e5e42d5SMathieu SimonThere are additional tools available from Intel to help configure and update
1008e5e42d5SMathieu Simonthe adapters covered by this driver.
1018e5e42d5SMathieu SimonThese tools can be downloaded directly from Intel at
1028e5e42d5SMathieu Simon.Lk https://downloadcenter.intel.com ,
1038e5e42d5SMathieu Simonby searching for their names, or by installing certain packages:
1048e5e42d5SMathieu Simon.Bl -bullet
1058e5e42d5SMathieu Simon.It
1068e5e42d5SMathieu SimonTo change the behavior of the QSFP28 ports on E810-C adapters, use the
1078e5e42d5SMathieu SimonIntel EPCT (Ethernet Port configuration tool); installed by the
1088e5e42d5SMathieu Simon.Em sysutils/intel-epct
1098e5e42d5SMathieu Simonpackage.
1108e5e42d5SMathieu Simon.It
1118e5e42d5SMathieu SimonTo update the firmware on an adapter, use the Intel Non-Volatile Memory (NVM)
1128e5e42d5SMathieu SimonUpdate Utility for Intel Network Adapter 800 series; installed by the
1138e5e42d5SMathieu Simon.Em sysutils/intel-nvmupdate-100g
1148e5e42d5SMathieu Simonpackage.
1158e5e42d5SMathieu Simon.El
1168e5e42d5SMathieu Simon.Sh HARDWARE
117*f4bd011aSAlexander ZiaeeThe
118*f4bd011aSAlexander Ziaee.Nm
119*f4bd011aSAlexander Ziaeedriver supports the Intel Ethernet 800 series.
120*f4bd011aSAlexander ZiaeeMost adapters in this series with SFP28/QSFP28 cages
1218e5e42d5SMathieu Simonhave firmware that requires that Intel qualified modules are used; these
1228e5e42d5SMathieu Simonqualified modules are listed below.
1238e5e42d5SMathieu SimonThis qualification check cannot be disabled by the driver.
1248e5e42d5SMathieu Simon.Pp
1258e5e42d5SMathieu SimonThe
1268e5e42d5SMathieu Simon.Nm
1278e5e42d5SMathieu Simondriver supports 100Gb Ethernet adapters with these QSFP28 modules:
1288e5e42d5SMathieu Simon.Pp
1298e5e42d5SMathieu Simon.Bl -bullet -compact
1308e5e42d5SMathieu Simon.It
1318e5e42d5SMathieu SimonIntel\(rg 100G QSFP28 100GBASE-SR4   E100GQSFPSR28SRX
1328e5e42d5SMathieu Simon.It
1338e5e42d5SMathieu SimonIntel\(rg 100G QSFP28 100GBASE-SR4   SPTMBP1PMCDF
1348e5e42d5SMathieu Simon.It
1358e5e42d5SMathieu SimonIntel\(rg 100G QSFP28 100GBASE-CWDM4 SPTSBP3CLCCO
1368e5e42d5SMathieu Simon.It
1378e5e42d5SMathieu SimonIntel\(rg 100G QSFP28 100GBASE-DR    SPTSLP2SLCDF
1388e5e42d5SMathieu Simon.El
1398e5e42d5SMathieu Simon.Pp
1408e5e42d5SMathieu SimonThe
1418e5e42d5SMathieu Simon.Nm
1428e5e42d5SMathieu Simondriver supports 25Gb and 10Gb Ethernet adapters with these SFP28 modules:
1438e5e42d5SMathieu Simon.Pp
1448e5e42d5SMathieu Simon.Bl -bullet -compact
1458e5e42d5SMathieu Simon.It
1468e5e42d5SMathieu SimonIntel\(rg 10G/25G SFP28 25GBASE-SR E25GSFP28SR
1478e5e42d5SMathieu Simon.It
1488e5e42d5SMathieu SimonIntel\(rg     25G SFP28 25GBASE-SR E25GSFP28SRX (Extended Temp)
1498e5e42d5SMathieu Simon.It
1508e5e42d5SMathieu SimonIntel\(rg     25G SFP28 25GBASE-LR E25GSFP28LRX (Extended Temp)
1518e5e42d5SMathieu Simon.El
1528e5e42d5SMathieu Simon.Pp
1538e5e42d5SMathieu SimonThe
1548e5e42d5SMathieu Simon.Nm
1558e5e42d5SMathieu Simondriver supports 10Gb and 1Gb Ethernet adapters with these SFP+ modules:
1568e5e42d5SMathieu Simon.Pp
1578e5e42d5SMathieu Simon.Bl -bullet -compact
1588e5e42d5SMathieu Simon.It
1598e5e42d5SMathieu SimonIntel\(rg 1G/10G SFP+ 10GBASE-SR E10GSFPSR
1608e5e42d5SMathieu Simon.It
1618e5e42d5SMathieu SimonIntel\(rg 1G/10G SFP+ 10GBASE-SR E10GSFPSRG1P5
1628e5e42d5SMathieu Simon.It
1638e5e42d5SMathieu SimonIntel\(rg 1G/10G SFP+ 10GBASE-SR E10GSFPSRG2P5
1648e5e42d5SMathieu Simon.It
1658e5e42d5SMathieu SimonIntel\(rg    10G SFP+ 10GBASE-SR E10GSFPSRX (Extended Temp)
1668e5e42d5SMathieu Simon.It
1678e5e42d5SMathieu SimonIntel\(rg 1G/10G SFP+ 10GBASE-LR E10GSFPLR
1688e5e42d5SMathieu Simon.El
1698e5e42d5SMathieu Simon.Pp
1708e5e42d5SMathieu SimonNote that adapters also support all passive and active
1718e5e42d5SMathieu Simonlimiting direct attach cables that comply with SFF-8431 v4.1 and
1728e5e42d5SMathieu SimonSFF-8472 v10.4 specifications.
1738e5e42d5SMathieu Simon.Pp
1748e5e42d5SMathieu SimonThis is not an exhaustive list; please consult product documentation for an
1758e5e42d5SMathieu Simonup-to-date list of supported media.
1768e5e42d5SMathieu Simon.Sh LOADER TUNABLES
1778e5e42d5SMathieu SimonTunables can be set at the
1788e5e42d5SMathieu Simon.Xr loader 8
1798e5e42d5SMathieu Simonprompt before booting the kernel or stored in
1808e5e42d5SMathieu Simon.Xr loader.conf 5 .
1818e5e42d5SMathieu SimonSee the
1828e5e42d5SMathieu Simon.Xr iflib 4
1838e5e42d5SMathieu Simonman page for more information on using iflib sysctl variables as tunables.
1848e5e42d5SMathieu Simon.Bl -tag -width indent
1858e5e42d5SMathieu Simon.It Va hw.ice.#.enable_health_events
1868e5e42d5SMathieu SimonTBW
1878e5e42d5SMathieu Simon.It Va hw.ice.#.debug.enable_tx_fc_filter
1888e5e42d5SMathieu SimonTBW
1898e5e42d5SMathieu Simon.It Va hw.ice.#.debug.enable_tx_lldp_filter
1908e5e42d5SMathieu SimonTBW
1918e5e42d5SMathieu Simon.It Va hw.ice.#.debug.enable_health_events
1928e5e42d5SMathieu SimonTBW
1938e5e42d5SMathieu Simon.El
1948e5e42d5SMathieu Simon.Sh SYSCTL PROCEDURES
1958e5e42d5SMathieu Simon.Bl -tag -width indent
1968e5e42d5SMathieu Simon.It Va dev.ice.#.fc
1978e5e42d5SMathieu SimonAllows one to set the flow control value.
1988e5e42d5SMathieu SimonA value of 0 disables flow control, 3 enables full, 1 is RX, and 2 is
1998e5e42d5SMathieu SimonTX pause.
2008e5e42d5SMathieu Simon.It Va dev.ice.#.advertise_speed
2018e5e42d5SMathieu SimonAllows one to set advertised link speeds, this will then cause a link
2028e5e42d5SMathieu Simonrenegotiation.
2038e5e42d5SMathieu Simon.It Va dev.ice.#.current_speed
2048e5e42d5SMathieu SimonThis is a display of the current setting.
2058e5e42d5SMathieu Simon.It Va dev.ice.#.fw_version
2068e5e42d5SMathieu SimonDisplays the current firmware and NVM versions of the adapter.
2078e5e42d5SMathieu Simon.It Va dev.ice.#.ddp_version
2088e5e42d5SMathieu SimonTBW
2098e5e42d5SMathieu Simon.It Va dev.ice.#.requested_fec
2108e5e42d5SMathieu SimonTBW
2118e5e42d5SMathieu Simon.It Va dev.ice.#.negotiated_fec
2128e5e42d5SMathieu SimonTBW
2138e5e42d5SMathieu Simon.It Va dev.ice.#.fw_lldp_agent
2148e5e42d5SMathieu SimonTBW
2158e5e42d5SMathieu Simon.It Va dev.ice.#.ets_min_rate
2168e5e42d5SMathieu SimonTBW
2178e5e42d5SMathieu Simon.It Va dev.ice.#.up2tc_map
2188e5e42d5SMathieu SimonTBW
2198e5e42d5SMathieu Simon.It Va dev.ice.#.pfc
2208e5e42d5SMathieu SimonTBW
2218e5e42d5SMathieu Simon.El
2228e5e42d5SMathieu Simon.Sh INTERRUPT STORMS
2238e5e42d5SMathieu SimonIt is important to note that 100G operation can generate high
2248e5e42d5SMathieu Simonnumbers of interrupts, often incorrectly being interpreted as
2258e5e42d5SMathieu Simona storm condition in the kernel.
2268e5e42d5SMathieu SimonIt is suggested that this be resolved by setting
2278e5e42d5SMathieu Simon.Va hw.intr_storm_threshold
2288e5e42d5SMathieu Simonto 0.
2298e5e42d5SMathieu Simon.Sh SUPPORT
2308e5e42d5SMathieu SimonFor general information and support,
2318e5e42d5SMathieu Simongo to the Intel support website at:
2328e5e42d5SMathieu Simon.Lk http://www.intel.com/support/ .
2338e5e42d5SMathieu Simon.Pp
2348e5e42d5SMathieu SimonIf an issue is identified with this driver with a supported adapter,
2358e5e42d5SMathieu Simonemail all the specific information related to the issue to
2368e5e42d5SMathieu Simon.Aq Mt freebsd@intel.com .
2378e5e42d5SMathieu Simon.Sh SEE ALSO
2388e5e42d5SMathieu Simon.Xr arp 4 ,
2398e5e42d5SMathieu Simon.Xr iflib 4 ,
2408e5e42d5SMathieu Simon.Xr netintro 4 ,
2418e5e42d5SMathieu Simon.Xr ng_ether 4 ,
2428e5e42d5SMathieu Simon.Xr vlan 4 ,
2438e5e42d5SMathieu Simon.Xr ifconfig 8
2448e5e42d5SMathieu Simon.Sh HISTORY
2458e5e42d5SMathieu SimonThe
2468e5e42d5SMathieu Simon.Nm
2478e5e42d5SMathieu Simondevice driver first appeared in
2488e5e42d5SMathieu Simon.Fx 12.2 .
2498e5e42d5SMathieu Simon.Sh AUTHORS
2508e5e42d5SMathieu SimonThe
2518e5e42d5SMathieu Simon.Nm
2528e5e42d5SMathieu Simondriver was written by
2538e5e42d5SMathieu Simon.An Intel Corporation Aq Mt freebsd@intel.com .
254