mirror of
https://github.com/torvalds/linux.git
synced 2026-05-29 09:33:31 +02:00
eth: mvpp2: migrate to new RXFH callbacks
Migrate to new callbacks added by commit 9bb00786fc ("net: ethtool:
add dedicated callbacks for getting and setting rxfh fields").
Reviewed-by: Joe Damato <joe@dama.to>
Link: https://patch.msgid.link/20250617014848.436741-3-kuba@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
parent
b82d92dd71
commit
b6f7e4fafe
|
|
@ -1618,7 +1618,8 @@ int mvpp22_port_rss_ctx_indir_get(struct mvpp2_port *port, u32 port_ctx,
|
|||
return 0;
|
||||
}
|
||||
|
||||
int mvpp2_ethtool_rxfh_set(struct mvpp2_port *port, struct ethtool_rxnfc *info)
|
||||
int mvpp2_ethtool_rxfh_set(struct mvpp2_port *port,
|
||||
const struct ethtool_rxfh_fields *info)
|
||||
{
|
||||
u16 hash_opts = 0;
|
||||
u32 flow_type;
|
||||
|
|
@ -1656,7 +1657,8 @@ int mvpp2_ethtool_rxfh_set(struct mvpp2_port *port, struct ethtool_rxnfc *info)
|
|||
return mvpp2_port_rss_hash_opts_set(port, flow_type, hash_opts);
|
||||
}
|
||||
|
||||
int mvpp2_ethtool_rxfh_get(struct mvpp2_port *port, struct ethtool_rxnfc *info)
|
||||
int mvpp2_ethtool_rxfh_get(struct mvpp2_port *port,
|
||||
struct ethtool_rxfh_fields *info)
|
||||
{
|
||||
unsigned long hash_opts;
|
||||
u32 flow_type;
|
||||
|
|
|
|||
|
|
@ -272,8 +272,10 @@ int mvpp22_port_rss_ctx_indir_set(struct mvpp2_port *port, u32 rss_ctx,
|
|||
int mvpp22_port_rss_ctx_indir_get(struct mvpp2_port *port, u32 rss_ctx,
|
||||
u32 *indir);
|
||||
|
||||
int mvpp2_ethtool_rxfh_get(struct mvpp2_port *port, struct ethtool_rxnfc *info);
|
||||
int mvpp2_ethtool_rxfh_set(struct mvpp2_port *port, struct ethtool_rxnfc *info);
|
||||
int mvpp2_ethtool_rxfh_get(struct mvpp2_port *port,
|
||||
struct ethtool_rxfh_fields *info);
|
||||
int mvpp2_ethtool_rxfh_set(struct mvpp2_port *port,
|
||||
const struct ethtool_rxfh_fields *info);
|
||||
|
||||
void mvpp2_cls_init(struct mvpp2 *priv);
|
||||
|
||||
|
|
|
|||
|
|
@ -5588,9 +5588,6 @@ static int mvpp2_ethtool_get_rxnfc(struct net_device *dev,
|
|||
return -EOPNOTSUPP;
|
||||
|
||||
switch (info->cmd) {
|
||||
case ETHTOOL_GRXFH:
|
||||
ret = mvpp2_ethtool_rxfh_get(port, info);
|
||||
break;
|
||||
case ETHTOOL_GRXRINGS:
|
||||
info->data = port->nrxqs;
|
||||
break;
|
||||
|
|
@ -5628,9 +5625,6 @@ static int mvpp2_ethtool_set_rxnfc(struct net_device *dev,
|
|||
return -EOPNOTSUPP;
|
||||
|
||||
switch (info->cmd) {
|
||||
case ETHTOOL_SRXFH:
|
||||
ret = mvpp2_ethtool_rxfh_set(port, info);
|
||||
break;
|
||||
case ETHTOOL_SRXCLSRLINS:
|
||||
ret = mvpp2_ethtool_cls_rule_ins(port, info);
|
||||
break;
|
||||
|
|
@ -5747,6 +5741,29 @@ static int mvpp2_ethtool_set_rxfh(struct net_device *dev,
|
|||
return mvpp2_modify_rxfh_context(dev, NULL, rxfh, extack);
|
||||
}
|
||||
|
||||
static int mvpp2_ethtool_get_rxfh_fields(struct net_device *dev,
|
||||
struct ethtool_rxfh_fields *info)
|
||||
{
|
||||
struct mvpp2_port *port = netdev_priv(dev);
|
||||
|
||||
if (!mvpp22_rss_is_supported(port))
|
||||
return -EOPNOTSUPP;
|
||||
|
||||
return mvpp2_ethtool_rxfh_get(port, info);
|
||||
}
|
||||
|
||||
static int mvpp2_ethtool_set_rxfh_fields(struct net_device *dev,
|
||||
const struct ethtool_rxfh_fields *info,
|
||||
struct netlink_ext_ack *extack)
|
||||
{
|
||||
struct mvpp2_port *port = netdev_priv(dev);
|
||||
|
||||
if (!mvpp22_rss_is_supported(port))
|
||||
return -EOPNOTSUPP;
|
||||
|
||||
return mvpp2_ethtool_rxfh_set(port, info);
|
||||
}
|
||||
|
||||
static int mvpp2_ethtool_get_eee(struct net_device *dev,
|
||||
struct ethtool_keee *eee)
|
||||
{
|
||||
|
|
@ -5813,6 +5830,8 @@ static const struct ethtool_ops mvpp2_eth_tool_ops = {
|
|||
.get_rxfh_indir_size = mvpp2_ethtool_get_rxfh_indir_size,
|
||||
.get_rxfh = mvpp2_ethtool_get_rxfh,
|
||||
.set_rxfh = mvpp2_ethtool_set_rxfh,
|
||||
.get_rxfh_fields = mvpp2_ethtool_get_rxfh_fields,
|
||||
.set_rxfh_fields = mvpp2_ethtool_set_rxfh_fields,
|
||||
.create_rxfh_context = mvpp2_create_rxfh_context,
|
||||
.modify_rxfh_context = mvpp2_modify_rxfh_context,
|
||||
.remove_rxfh_context = mvpp2_remove_rxfh_context,
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user