[Intel-wired-lan] [PATCH iwl-next v2] ixgbe: add support for thermal sensor event reception
Mateusz Polchlopek
mateusz.polchlopek at intel.com
Tue Feb 4 08:30:08 UTC 2025
On 2/4/2025 8:17 AM, Jedrzej Jagielski wrote:
> E610 NICs unlike the previous devices utilising ixgbe driver
> are notified in the case of overheatning by the FW ACI event.
>
> In event of overheat when treshold is exceeded, FW suspends all
> traffic and sends overtemp event to the driver. Then driver
> logs appropriate message and closes the adapter instance.
> The card remains in that state until the platform is rebooted.
>
> Reviewed-by: Przemek Kitszel <przemyslaw.kitszel at intel.com>
> Signed-off-by: Jedrzej Jagielski <jedrzej.jagielski at intel.com>
> ---
> v2: commit msg tweaks
> ---
> drivers/net/ethernet/intel/ixgbe/ixgbe_main.c | 5 +++++
> drivers/net/ethernet/intel/ixgbe/ixgbe_type_e610.h | 3 +++
> 2 files changed, 8 insertions(+)
>
> diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
> index 7236f20c9a30..5c804948dd1f 100644
> --- a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
> +++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
> @@ -3165,6 +3165,7 @@ static void ixgbe_aci_event_cleanup(struct ixgbe_aci_event *event)
> static void ixgbe_handle_fw_event(struct ixgbe_adapter *adapter)
> {
> struct ixgbe_aci_event event __cleanup(ixgbe_aci_event_cleanup);
> + struct net_device *netdev = adapter->netdev;
> struct ixgbe_hw *hw = &adapter->hw;
> bool pending = false;
> int err;
> @@ -3185,6 +3186,10 @@ static void ixgbe_handle_fw_event(struct ixgbe_adapter *adapter)
> case ixgbe_aci_opc_get_link_status:
> ixgbe_handle_link_status_event(adapter, &event);
> break;
> + case ixgbe_aci_opc_temp_tca_event:
> + e_crit(drv, "%s\n", ixgbe_overheat_msg);
> + ixgbe_close(netdev);
> + break;
> default:
> e_warn(hw, "unknown FW async event captured\n");
> break;
> diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_type_e610.h b/drivers/net/ethernet/intel/ixgbe/ixgbe_type_e610.h
> index 8d06ade3c7cd..617e07878e4f 100644
> --- a/drivers/net/ethernet/intel/ixgbe/ixgbe_type_e610.h
> +++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_type_e610.h
> @@ -171,6 +171,9 @@ enum ixgbe_aci_opc {
> ixgbe_aci_opc_done_alt_write = 0x0904,
> ixgbe_aci_opc_clear_port_alt_write = 0x0906,
>
> + /* TCA Events */
> + ixgbe_aci_opc_temp_tca_event = 0x0C94,
> +
> /* debug commands */
> ixgbe_aci_opc_debug_dump_internals = 0xFF08,
>
Thanks for this change Jedrzej
Reviewed-by: Mateusz Polchlopek <mateusz.polchlopek at intel.com>
More information about the Intel-wired-lan
mailing list