History log of /src/sys/dev/ice/ice_lib.c (Results 1 – 25 of 75)
Revision Date Author Comments
# ca10598b 18-Dec-2025 Krzysztof Galazka <kgalazka@FreeBSD.org>

ice(4): Remove unused function

rss_getkey function is now available even if kernel RSS option
is disabled. This makes ice_get_default_rss_key no longer needed.

Signed-off-by: Krzysztof Galazka <krz

ice(4): Remove unused function

rss_getkey function is now available even if kernel RSS option
is disabled. This makes ice_get_default_rss_key no longer needed.

Signed-off-by: Krzysztof Galazka <krzysztof.galazka@intel.com>

Reviewed by: gallatin
Approved by: kbowling (mentor)
Fixes: 012ecdde3a810 ("ice: use newly exposed RSS hash key API rather than ad-hoc hashing")
Sponsored by: Intel Corporation
Differential Revision: https://reviews.freebsd.org/D54281

show more ...


# c6212b7d 05-Dec-2025 Krzysztof Galazka <kgalazka@FreeBSD.org>

ice(4): Add support for 40G maximal PMD speed

E823 backplane devices may support 40G as maximal PMD speed.
Extend port topology reading logic to handle this case.
While at that fix indentation accor

ice(4): Add support for 40G maximal PMD speed

E823 backplane devices may support 40G as maximal PMD speed.
Extend port topology reading logic to handle this case.
While at that fix indentation according to FreeBSD style(9).

Signed-off-by: Krzysztof Galazka <krzysztof.galazka@intel.com>

Tested by: gowtham.kumar.ks_intel.com
Approved by: kbowling (mentor), erj (mentor)
Sponsored by: Intel Corporation
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D53587

show more ...


# 6577e32e 10-Sep-2025 Andrew Gallatin <gallatin@FreeBSD.org>

iflib: report output drops and handle ENOBUFS properly

- Fix an mbuf leak with iflib.simple_tx=1 when we run out of tx descs
in iflib_encap(). It seems odd to free the mbuf in iflib_encap(),
but th

iflib: report output drops and handle ENOBUFS properly

- Fix an mbuf leak with iflib.simple_tx=1 when we run out of tx descs
in iflib_encap(). It seems odd to free the mbuf in iflib_encap(),
but that routine consumes mbufs for other reasons, and it seemed
safest to free there rather than have the simple tx routine parse
return values to determine what needed to be freed.

- Increment counters for output drops when ENOBUFS is encountered
and output errors when other transmit errors are encountered for both
the simple and normal tx routines.

- Performed driver changes so that iflib drivers now add the generic
output drop and output error counters to their private counters in their
ifdi_get_counter routines.

Reviewed by: kbowling, markj
Differential Revision: https://reviews.freebsd.org/D52369
Sponsored by: Netflix

show more ...


# d6958f3f 06-Mar-2025 Krzysztof Galazka <krzysztof.galazka@intel.com>

ice(4): Fix re-enabling VF queues

On receiving a virtual channel request from VF driver tried
to configure and enable Tx and Rx queues without making
sure that they were disabled. It caused issue wi

ice(4): Fix re-enabling VF queues

On receiving a virtual channel request from VF driver tried
to configure and enable Tx and Rx queues without making
sure that they were disabled. It caused issue with reloading
a VF driver without a reset e.g. in case it crashed.
Fix that by always disabling all Rx and Tx queues.

While at that make sure that only queues requested by VF
driver are enabled. VF driver may use less queues than
assigned to the function when it was created.

Signed-off-by: Krzysztof Galazka <krzysztof.galazka@intel.com>
Reviewed by: imp
Pull Request: https://github.com/freebsd/freebsd-src/pull/1573

show more ...


# bc761988 15-Jan-2025 Krzysztof Galazka <krzysztof.galazka@intel.com>

ice: Add host SR-IOV support

Enable basic SR-IOV support for E800 adapters.

Authored-by: Eric Joyner <erj@FreeBSD.org>
Signed-off-by: Krzysztof Galazka <krzysztof.galazka@intel.com>
Reviewed by: im

ice: Add host SR-IOV support

Enable basic SR-IOV support for E800 adapters.

Authored-by: Eric Joyner <erj@FreeBSD.org>
Signed-off-by: Krzysztof Galazka <krzysztof.galazka@intel.com>
Reviewed by: imp
Pull Request: https://github.com/freebsd/freebsd-src/pull/1573

show more ...


# f377a0c7 19-Sep-2024 Eric Joyner <erj@FreeBSD.org>

ice: Update to 1.43.2-k

- Add extra time while waiting for an EMPR to finish on E830 and E825C
devices
- Fix debug mask sysctl help message
- Handle EAGAIN error messages from the Get Link Status

ice: Update to 1.43.2-k

- Add extra time while waiting for an EMPR to finish on E830 and E825C
devices
- Fix debug mask sysctl help message
- Handle EAGAIN error messages from the Get Link Status AQ command by
retrying them several times
- Handle the condition where E830 extended temperature SKUs can have the
chip initialize without the PHY subsystem being ready due to very low
temperatures; the driver will print out a message when this happens
- Fix inability to set link speed using the advertise_speed sysctl when
link is down and the link_active_on_if_down sysctl is set to 0
- Fix issue where VLANs would not properly be set back up after a
hardware reset (e.g. PF reset) (Thanks jacob.e.keller@intel.com)

Signed-off-by: Eric Joyner <erj@FreeBSD.org>

Tested by: Jeffrey Pieper <jeffrey.e.pieper@intel.com>
MFC after: 2 days
Relnotes: yes
Sponsored by: Intel Corporation
Differential Revision: https://reviews.freebsd.org/D46951

show more ...


# 440addc6 30-Aug-2024 Eric Joyner <erj@FreeBSD.org>

ice: Update to 1.42.5-k

- Removes duplicate E825C printout
- Fixes a package download issue with E830
- Updates mentions of E830-XXV to E830-L
- Fix FW logging on load issue by limiting the setting

ice: Update to 1.42.5-k

- Removes duplicate E825C printout
- Fixes a package download issue with E830
- Updates mentions of E830-XXV to E830-L
- Fix FW logging on load issue by limiting the setting of FW log masks
and other global configuration to just the first PF of the controller
- Update ice_hw_autogen.h with timesync registers (unused in this
driver)
- Fix possible overflow condition in NVM access function
- Blocks RDMA load on E830 devices

Signed-off-by: Eric Joyner <erj@FreeBSD.org>

Tested by: Jeffrey Pieper <jeffrey.e.pieper@intel.com>
MFC after: 2 days
Relnotes: yes
Sponsored by: Intel Corporation
Differential Revision: https://reviews.freebsd.org/D46950

show more ...


# f2635e84 29-Aug-2024 Eric Joyner <erj@FreeBSD.org>

ice: Update to 1.42.1-k

Summary:
- Adds E830 device support
- Adds pre-release E825C support (for the Ethernet device included in
an upcoming Xeon D platform)
- Add sysctl for E810 devices to prin

ice: Update to 1.42.1-k

Summary:
- Adds E830 device support
- Adds pre-release E825C support (for the Ethernet device included in
an upcoming Xeon D platform)
- Add sysctl for E810 devices to print out PHY debug statistics (mostly
for FEC debugging)
- Adds per-TX-queue tso counter sysctl to count how many times a TSO offload
was requested for a packet, matching other Intel drivers
- Various bug fixes

Signed-off-by: Eric Joyner <erj@FreeBSD.org>

Tested by: Jeffrey Pieper <jeffrey.e.pieper@intel.com>
MFC after: 2 days
Relnotes: yes
Sponsored by: Intel Corporation
Differential Revisison: https://reviews.freebsd.org/D46949

show more ...


# 5f97656f 03-Sep-2024 Zhenlei Huang <zlei@FreeBSD.org>

ice(4): Stop checking for failures from malloc(M_WAITOK)

As a consequence now ice_alloc_vsi_qmap() does not fail. Remove unneeded
error checks.

MFC after: 1 week
Differential Revision: https://revi

ice(4): Stop checking for failures from malloc(M_WAITOK)

As a consequence now ice_alloc_vsi_qmap() does not fail. Remove unneeded
error checks.

MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D45852

show more ...


# 9e54973f 13-Feb-2024 Eric Joyner <erj@FreeBSD.org>

ice(4): Update to 1.39.13-k

- Adds mirror interface functionality
- Remove unused virtchnl headers

Signed-off-by: Eric Joyner <erj@FreeBSD.org>

MFC-with: 768329961dc0c041f7647f1c4549944a2ca168aa
M

ice(4): Update to 1.39.13-k

- Adds mirror interface functionality
- Remove unused virtchnl headers

Signed-off-by: Eric Joyner <erj@FreeBSD.org>

MFC-with: 768329961dc0c041f7647f1c4549944a2ca168aa
MFC after: 3 days
Sponsored by: Intel Corporation
Tested by: jeffrey.e.pieper@intel.com
Differential Revision: https://reviews.freebsd.org/D44004

show more ...


# 015f8cc5 13-Feb-2024 Eric Joyner <erj@FreeBSD.org>

ice(4): Update copyright year to 2024

Signed-off-by: Eric Joyner <erj@FreeBSD.org>

MFC after: 3 days
Sponsored by: Intel Corporation
Differential Revision: https://reviews.freebsd.org/D44003


# 9c30461d 24-Aug-2023 Eric Joyner <erj@FreeBSD.org>

ice(4): Update to 1.38.16-k

New features
- Add sysctl "link_active_on_if_down" (defaults to 1 to match previous
behavior): set this to 0 to have the driver bring the physical link down when
the inte

ice(4): Update to 1.38.16-k

New features
- Add sysctl "link_active_on_if_down" (defaults to 1 to match previous
behavior): set this to 0 to have the driver bring the physical link down when
the interface is brought administratively down
- Add sysctl "temp" to read chip temperature on E810 devices; this requires a
4.30 or newer NVM (see package sysutils/intel-nvmupdate-100g)

Bug fixes and general changes
- (linked to irdma) properly propagate PF reset request from irdma driver
- (linked to irdma) properly notify irdma of an impending PF reset
- (linked to irdma) move Protocol Engine error handling to irdma
- Print log message when using a DDP that doesn't support the "TX balancing"
mode
- Block LLDP agent configuration when DSCP QoS mode is enabled
- Fix kernel panic when updating NVM when adapter is in the "TX balancing" mode
- Remove ice_sbq_cmd.h since it's unused
- Fix LLDP RX filter to still allow LLDP frames to be received by SW after a PF
reset in SW LLDP mode
- Add ice_if_needs_restart handler in order to fix a bad VLAN and link down
interaction
- Issue PF reset during unload
- nvmupdate process fixes
- Use pci_msix_table_bar() to get MSI-X bar index at runtime instead of hardcoding it

Signed-off-by: Eric Joyner <erj@FreeBSD.org>

Reviewed by: anzhu@netapp.com
MFC after: 3 days
Sponsored by: Intel Corporation, NetApp
Differential Revision: https://reviews.freebsd.org/D41655

show more ...


# 71625ec9 16-Aug-2023 Warner Losh <imp@FreeBSD.org>

sys: Remove $FreeBSD$: one-line .c comment pattern

Remove /^/[*/]\s*\$FreeBSD\$.*\n/


# 9dc2f6e2 24-May-2023 Eric Joyner <erj@FreeBSD.org>

ice(4): Update to 1.37.11-k

This driver update has no corresponding ice_ddp update, and doesn't
contain very many functional changes:
- Some refactoring for future SR-IOV PF support
- Various minor

ice(4): Update to 1.37.11-k

This driver update has no corresponding ice_ddp update, and doesn't
contain very many functional changes:
- Some refactoring for future SR-IOV PF support
- Various minor fixes

Signed-off-by: Eric Joyner <erj@FreeBSD.org>

Tested by: jeffrey.e.pieper@intel.com
MFC after: 1 week
Sponsored by: Intel Corporation
Differential Revision: https://reviews.freebsd.org/D39821

show more ...


# 5ff80181 12-Apr-2023 Zhenlei Huang <zlei@FreeBSD.org>

ice(4): Use the existing CTLFLAG_RWTUN flag definition

Use it when possible, instead of separated flags.

No functional change intended.

Reviewed by: hselasky, erj
MFC after: 3 days
Differential Re

ice(4): Use the existing CTLFLAG_RWTUN flag definition

Use it when possible, instead of separated flags.

No functional change intended.

Reviewed by: hselasky, erj
MFC after: 3 days
Differential Revision: https://reviews.freebsd.org/D39466

show more ...


# 8d5feede 23-Jan-2023 Justin Hibbits <jhibbits@FreeBSD.org>

IfAPI: Finish changes of ice(4).

Reviewed by: erj
Sponsored by: Juniper Networks, Inc.
Differential Revision: https://reviews.freebsd.org/D38423


# 8923de59 14-Feb-2023 Piotr Kubaj <pkubaj@FreeBSD.org>

ice(4): Update to 1.37.7-k

Notable changes include:

- DSCP QoS Support (leveraging support added in
rG9c950139051298831ce19d01ea5fb33ec6ea7f89)
- Improved PFC handling and TC queue assignments (n

ice(4): Update to 1.37.7-k

Notable changes include:

- DSCP QoS Support (leveraging support added in
rG9c950139051298831ce19d01ea5fb33ec6ea7f89)
- Improved PFC handling and TC queue assignments (now all remaining
queues are assigned to TC 0 when more than one TC is enabled and the
number of available queues does not evenly divide between them)
- Support for dumping the internal FW state for additional debugging by
Intel support
- Support for allowing "No FEC" to be a valid state for the LESM to
negotiate when using non-standard compliant modules

Also includes various bug fixes and smaller enhancements, too.

Signed-off-by: Eric Joyner <erj@FreeBSD.org>

Reviewed by: erj@
Tested by: Jeff Pieper <jeffrey.pieper@intel.com>
MFC after: 3 days
Relnotes: yes
Sponsored by: Intel Corporation
Differential Revision: https://reviews.freebsd.org/D38109

show more ...


# 402810d3 20-Oct-2021 Justin Hibbits <jhibbits@FreeBSD.org>

Convert iflib(4) and iflib-based drivers to the DrvAPI

Summary:
Convert iflib(4) and the following drivers:
* axgbe
* em
* ice
* ixl
* vmxnet

Sponsored by: Juniper Networks, Inc.
Reviewed by: kbowl

Convert iflib(4) and iflib-based drivers to the DrvAPI

Summary:
Convert iflib(4) and the following drivers:
* axgbe
* em
* ice
* ixl
* vmxnet

Sponsored by: Juniper Networks, Inc.
Reviewed by: kbowling, #iflib
Differential Revision: https://reviews.freebsd.org/D37768

show more ...


# 8a13362d 02-Dec-2021 Eric Joyner <erj@FreeBSD.org>

ice(4): Add RDMA Client Interface

This allows the "irdma" driver to communicate with the ice(4)
driver to allow it access to the underlying device's hardware
resources as well as synchronize access

ice(4): Add RDMA Client Interface

This allows the "irdma" driver to communicate with the ice(4)
driver to allow it access to the underlying device's hardware
resources as well as synchronize access to shared resources.

This interface already existed in the standalone out-of-tree
1.34.2 driver; this commit adds and enables it in the in-kernel
driver.

Note:

Adds hack to module Makefile to compile interface/.m files

These are required for the RDMA client interface, but they don't
build as-is like the normal .c files. The source directory doesn't
seem to be included by default, so add lines that specifically
add them as libraries so that ice_rdma.h can be found and the
interface files will compile.

Signed-off-by: Eric Joyner <erj@FreeBSD.org>

MFC after: 1 week
Sponsored by: Intel Corporation
Differential Revision: https://reviews.freebsd.org/D30889

show more ...


# 8ece7189 08-Apr-2022 Gordon Bergling <gbe@FreeBSD.org>

ice: Remove a double word in a source code comment

- s/is is/is/

MFC after: 3 days


# 56429dae 04-Mar-2022 Eric Joyner <erj@FreeBSD.org>

ice(4): Update to 1.34.2-k

- Adds FW logging support
- Once enabled, this lets the firmware print event and error messages
to the log, increasing the visibility into what the hardware is
d

ice(4): Update to 1.34.2-k

- Adds FW logging support
- Once enabled, this lets the firmware print event and error messages
to the log, increasing the visibility into what the hardware is
doing; this is useful for debugging
- General bug fixes
- Adds inital DCB support to the driver
- Notably, this adds support for DCBX to the driver; now with the
fw_lldp sysctl set to 1, the driver and adapter will adopt a DCBX
configuration sent from a link partner
- Adds statistcs sysctls for priority flow control frames
- Adds new configuration sysctls for DCB-related features: (VLAN) user
priority to TC mapping; ETS bandwidth allocation; priority flow
control
- Remove unused SR-IOV files (until support gets added)

Signed-off-by: Eric Joyner <erj@FreeBSD.org>

Tested by: jeffrey.e.pieper@intel.com
MFC after: 3 days
MFC with: 213e91399b, e438f0a975
Relnotes: yes
Sponsored by: Intel Corporation
Differential Revision: https://reviews.freebsd.org/D34024

show more ...


# 9cf1841c 23-Jun-2021 Eric Joyner <erj@FreeBSD.org>

ice(4): Update to version 0.29.4-k

Includes various feature improvements and bug fixes.

Notable changes include:
- Firmware logging support
- Link management flow changes
- New sysctl to report agg

ice(4): Update to version 0.29.4-k

Includes various feature improvements and bug fixes.

Notable changes include:
- Firmware logging support
- Link management flow changes
- New sysctl to report aggregated error counts
- Health Status Event reporting from firmware (Use the new read-only
tunables hw.ice.enable_health_events / dev.ice.#.enable_health_events
to turn this off)

Signed-off-by: Eric Joyner <erj@FreeBSD.org>

Sponsored by: Intel Corporation

show more ...


# d08b8680 23-Feb-2021 Eric Joyner <erj@FreeBSD.org>

ice(4): Update to version 0.28.1-k

This updates the driver to align with the version included in
the "Intel Ethernet Adapter Complete Driver Pack", version 25.6.

There are no major functional chang

ice(4): Update to version 0.28.1-k

This updates the driver to align with the version included in
the "Intel Ethernet Adapter Complete Driver Pack", version 25.6.

There are no major functional changes; this mostly contains
bug fixes and changes to prepare for new features. This version
of the driver uses the previously committed ice_ddp package
1.3.19.0.

Signed-off-by: Eric Joyner <erj@FreeBSD.org>

Tested by: jeffrey.e.pieper@intel.com
Sponsored by: Intel Corporation
Differential Revision: https://reviews.freebsd.org/D28640

show more ...


# 7d7af7f8 10-Sep-2020 Eric Joyner <erj@FreeBSD.org>

ice(4): Update to 0.26.16

Summary of changes:

- Assorted bug fixes
- Support for newer versions of the device firmware
- Suspend/resume support
- Support for Lenient Link Mode for E82X devices (e.g

ice(4): Update to 0.26.16

Summary of changes:

- Assorted bug fixes
- Support for newer versions of the device firmware
- Suspend/resume support
- Support for Lenient Link Mode for E82X devices (e.g. can try to link with
SFP/QSFP modules with bad EEPROMs)
- Adds port-level rx_discards sysctl, similar to ixl(4)'s

This version of the driver is intended to be used with DDP package 1.3.16.0,
which has already been updated in a previous commit.

Tested by: Jeffrey Pieper <jeffrey.e.pieper@intel.com>
MFC after: 3 days
MFC with: r365332, r365550
Sponsored by: Intel Corporation
Differential Revision: https://reviews.freebsd.org/D26322

show more ...


# 71d10453 26-May-2020 Eric Joyner <erj@FreeBSD.org>

ice(4): Introduce new driver for Intel E800 Ethernet controllers

The ice(4) driver is the driver for the Intel E8xx series Ethernet
controllers; currently with codenames Columbiaville and
Columbia P

ice(4): Introduce new driver for Intel E800 Ethernet controllers

The ice(4) driver is the driver for the Intel E8xx series Ethernet
controllers; currently with codenames Columbiaville and
Columbia Park.

These new controllers support 100G speeds, as well as introducing
more queues, better virtualization support, and more offload
capabilities. Future work will enable virtual functions (like
in ixl(4)) and the other functionality outlined above.

For full functionality, the kernel should be compiled with
"device ice_ddp" like in the amd64 NOTES file, and/or
ice_ddp_load="YES" should be added to /boot/loader.conf so that
the DDP package file included in this commit can be downloaded
to the adapter. Otherwise, the adapter will fall back to a single
queue mode with limited functionality.

A man page for this driver will be forthcoming.

MFC after: 1 month
Relnotes: yes
Sponsored by: Intel Corporation
Differential Revision: https://reviews.freebsd.org/D21959

show more ...


123