]> www.infradead.org Git - users/willy/linux.git/commitdiff
net/mlx5e: Show/set Rx flow indir table and RSS hash key on ul rep
authorVlad Buslov <vladbu@mellanox.com>
Fri, 10 May 2019 12:19:35 +0000 (15:19 +0300)
committerSaeed Mahameed <saeedm@mellanox.com>
Mon, 9 Mar 2020 23:58:46 +0000 (16:58 -0700)
Reuse infrastructure that already exists for pf in legacy mode to show/set
Rx flow hash indirection table and RSS hash key for uplink representors.

Signed-off-by: Vlad Buslov <vladbu@mellanox.com>
Reviewed-by: Roi Dayan <roid@mellanox.com>
drivers/net/ethernet/mellanox/mlx5/core/en.h
drivers/net/ethernet/mellanox/mlx5/core/en_ethtool.c
drivers/net/ethernet/mellanox/mlx5/core/en_rep.c

index 02b91aa896b0236bb45b9dc6b0c48047d5f62788..0410cdaab475cdb14e3a82b2a66d895dc8ff3d8b 100644 (file)
@@ -1169,6 +1169,9 @@ int mlx5e_ethtool_get_link_ksettings(struct mlx5e_priv *priv,
                                     struct ethtool_link_ksettings *link_ksettings);
 int mlx5e_ethtool_set_link_ksettings(struct mlx5e_priv *priv,
                                     const struct ethtool_link_ksettings *link_ksettings);
+int mlx5e_get_rxfh(struct net_device *netdev, u32 *indir, u8 *key, u8 *hfunc);
+int mlx5e_set_rxfh(struct net_device *dev, const u32 *indir, const u8 *key,
+                  const u8 hfunc);
 u32 mlx5e_ethtool_get_rxfh_key_size(struct mlx5e_priv *priv);
 u32 mlx5e_ethtool_get_rxfh_indir_size(struct mlx5e_priv *priv);
 int mlx5e_ethtool_get_ts_info(struct mlx5e_priv *priv,
index 4e667608bffdb1ca9b97204472bc8367ec782c78..f28472471315d40cf82c90e96a20f74b627f69f2 100644 (file)
@@ -1132,8 +1132,8 @@ static u32 mlx5e_get_rxfh_indir_size(struct net_device *netdev)
        return mlx5e_ethtool_get_rxfh_indir_size(priv);
 }
 
-static int mlx5e_get_rxfh(struct net_device *netdev, u32 *indir, u8 *key,
-                         u8 *hfunc)
+int mlx5e_get_rxfh(struct net_device *netdev, u32 *indir, u8 *key,
+                  u8 *hfunc)
 {
        struct mlx5e_priv *priv = netdev_priv(netdev);
        struct mlx5e_rss_params *rss = &priv->rss_params;
@@ -1152,8 +1152,8 @@ static int mlx5e_get_rxfh(struct net_device *netdev, u32 *indir, u8 *key,
        return 0;
 }
 
-static int mlx5e_set_rxfh(struct net_device *dev, const u32 *indir,
-                         const u8 *key, const u8 hfunc)
+int mlx5e_set_rxfh(struct net_device *dev, const u32 *indir,
+                  const u8 *key, const u8 hfunc)
 {
        struct mlx5e_priv *priv = netdev_priv(dev);
        struct mlx5e_rss_params *rss = &priv->rss_params;
index cffb5f62c30480f6f3350ba8064614cea98a7fbe..9ff0a8e6858e7b186eaa65dbfdbfca8017f453c8 100644 (file)
@@ -369,6 +369,8 @@ static const struct ethtool_ops mlx5e_uplink_rep_ethtool_ops = {
        .set_link_ksettings = mlx5e_uplink_rep_set_link_ksettings,
        .get_rxfh_key_size   = mlx5e_rep_get_rxfh_key_size,
        .get_rxfh_indir_size = mlx5e_rep_get_rxfh_indir_size,
+       .get_rxfh          = mlx5e_get_rxfh,
+       .set_rxfh          = mlx5e_set_rxfh,
        .get_pauseparam    = mlx5e_uplink_rep_get_pauseparam,
        .set_pauseparam    = mlx5e_uplink_rep_set_pauseparam,
 };