]> www.infradead.org Git - users/hch/misc.git/commit
net: ethtool: plumb PHY stats to PHY drivers
authorJakub Kicinski <kuba@kernel.org>
Fri, 10 Jan 2025 06:05:12 +0000 (07:05 +0100)
committerPaolo Abeni <pabeni@redhat.com>
Tue, 14 Jan 2025 10:44:19 +0000 (11:44 +0100)
commitb7a2c1fe6b55364e61b4b54b991eb43a47bb1104
tree0bc7b4d98e0df288a45772db25bbc7f405bd3bd8
parentfe55b1d401c697c2ef126fe3ebbcaa6885fced5a
net: ethtool: plumb PHY stats to PHY drivers

Introduce support for standardized PHY statistics reporting in ethtool
by extending the PHYLIB framework. Add the functions
phy_ethtool_get_phy_stats() and phy_ethtool_get_link_ext_stats() to
provide a consistent interface for retrieving PHY-level and
link-specific statistics. These functions are used within the ethtool
implementation to avoid direct access to the phy_device structure
outside of the PHYLIB framework.

A new structure, ethtool_phy_stats, is introduced to standardize PHY
statistics such as packet counts, byte counts, and error counters.
Drivers are updated to include callbacks for retrieving PHY and
link-specific statistics, ensuring values are explicitly set only for
supported fields, initialized with ETHTOOL_STAT_NOT_SET to avoid
ambiguity.

Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
drivers/net/phy/phy.c
drivers/net/phy/phy_device.c
include/linux/ethtool.h
include/linux/phy.h
include/linux/phylib_stubs.h
net/ethtool/linkstate.c
net/ethtool/stats.c