]> git.hungrycats.org Git - linux/commit
ionic: Get "link_down_count" ext link stat from firmware
authorEric Joyner <eric.joyner@amd.com>
Sun, 14 Jun 2026 20:53:02 +0000 (13:53 -0700)
committerJakub Kicinski <kuba@kernel.org>
Tue, 16 Jun 2026 01:15:08 +0000 (18:15 -0700)
commit3277e605ac01fd11d0a7c6c68c617547ba66c87f
tree309d4805775f46c3767037ff07118c5aad8c5900
parentcb683ff6ee07ab92701cc45ae21373c2b0c8d481
ionic: Get "link_down_count" ext link stat from firmware

The number of times that link has gone down at the port level is tracked
by the firmware and sent to the driver via regular DMA writes to an
instance of struct ionic_port_status in the driver's memory.

This statistic was never reported in favor of a driver-derived stat, but
doing it in the driver was never necessary since firmware had been
reporting it the whole time. Since it would be more accurate and true to
the description of the statistic to get this count at the PHY level,
replace the driver-calculated statistic with one derived from the
firmware one and remove the driver-calculated one entirely.

The stat reported by the ethtool .get_link_ext_stats() handler is
normalized to 0 on driver load and any device resets that require the
driver to rebuild state while also handling overflows.

Signed-off-by: Eric Joyner <eric.joyner@amd.com>
Link: https://patch.msgid.link/20260614205303.48088-5-eric.joyner@amd.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/pensando/ionic/ionic_dev.c
drivers/net/ethernet/pensando/ionic/ionic_dev.h
drivers/net/ethernet/pensando/ionic/ionic_ethtool.c
drivers/net/ethernet/pensando/ionic/ionic_lif.c
drivers/net/ethernet/pensando/ionic/ionic_lif.h
drivers/net/ethernet/pensando/ionic/ionic_main.c