]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
octeon_ep_vf: Add support to retrieve hardware channel information
authorSathesh B Edara <sedara@marvell.com>
Thu, 25 Sep 2025 12:51:34 +0000 (05:51 -0700)
committerJakub Kicinski <kuba@kernel.org>
Sat, 27 Sep 2025 00:43:24 +0000 (17:43 -0700)
This patch introduces support for retrieving hardware channel
configuration through the ethtool interface.

Signed-off-by: Sathesh B Edara <sedara@marvell.com>
Reviewed-by: Simon Horman <horms@kernel.org>
Link: https://patch.msgid.link/20250925125134.22421-3-sedara@marvell.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/marvell/octeon_ep_vf/octep_vf_ethtool.c

index d60441928ba96cc1484a12abaa05b2d57b7f603f..241a7e7c7ad2c0f56fcc48472d5246f95b5e138d 100644 (file)
@@ -244,6 +244,15 @@ static int octep_vf_get_link_ksettings(struct net_device *netdev,
        return 0;
 }
 
+static void octep_vf_get_channels(struct net_device *dev,
+                                 struct ethtool_channels *channel)
+{
+       struct octep_vf_device *oct = netdev_priv(dev);
+
+       channel->max_combined = CFG_GET_PORTS_MAX_IO_RINGS(oct->conf);
+       channel->combined_count = CFG_GET_PORTS_ACTIVE_IO_RINGS(oct->conf);
+}
+
 static const struct ethtool_ops octep_vf_ethtool_ops = {
        .get_drvinfo = octep_vf_get_drvinfo,
        .get_link = ethtool_op_get_link,
@@ -251,6 +260,7 @@ static const struct ethtool_ops octep_vf_ethtool_ops = {
        .get_sset_count = octep_vf_get_sset_count,
        .get_ethtool_stats = octep_vf_get_ethtool_stats,
        .get_link_ksettings = octep_vf_get_link_ksettings,
+       .get_channels = octep_vf_get_channels,
 };
 
 void octep_vf_set_ethtool_ops(struct net_device *netdev)