[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20231214025456.1387175-9-jiawenwu@trustnetic.com>
Date: Thu, 14 Dec 2023 10:54:56 +0800
From: Jiawen Wu <jiawenwu@...stnetic.com>
To: davem@...emloft.net,
edumazet@...gle.com,
kuba@...nel.org,
pabeni@...hat.com,
linux@...linux.org.uk,
andrew@...n.ch,
netdev@...r.kernel.org
Cc: mengyuanlou@...-swift.com,
Jiawen Wu <jiawenwu@...stnetic.com>
Subject: [PATCH net-next v5 8/8] net: wangxun: add ethtool_ops for msglevel
Add support to get and set msglevel for driver txgbe and ngbe.
Signed-off-by: Jiawen Wu <jiawenwu@...stnetic.com>
Reviewed-by: Andrew Lunn <andrew@...n.ch>
---
.../net/ethernet/wangxun/libwx/wx_ethtool.c | 24 ++++++++++++-------
.../net/ethernet/wangxun/libwx/wx_ethtool.h | 2 ++
.../net/ethernet/wangxun/ngbe/ngbe_ethtool.c | 2 ++
.../ethernet/wangxun/txgbe/txgbe_ethtool.c | 2 ++
4 files changed, 22 insertions(+), 8 deletions(-)
diff --git a/drivers/net/ethernet/wangxun/libwx/wx_ethtool.c b/drivers/net/ethernet/wangxun/libwx/wx_ethtool.c
index 31d189e8536b..518278ae41ac 100644
--- a/drivers/net/ethernet/wangxun/libwx/wx_ethtool.c
+++ b/drivers/net/ethernet/wangxun/libwx/wx_ethtool.c
@@ -383,10 +383,6 @@ void wx_get_channels(struct net_device *dev,
/* record RSS queues */
ch->combined_count = wx->ring_feature[RING_F_RSS].indices;
-
- /* nothing else to report if RSS is disabled */
- if (ch->combined_count == 1)
- return;
}
EXPORT_SYMBOL(wx_get_channels);
@@ -396,10 +392,6 @@ int wx_set_channels(struct net_device *dev,
unsigned int count = ch->combined_count;
struct wx *wx = netdev_priv(dev);
- /* verify they are not requesting separate vectors */
- if (!count || ch->rx_count || ch->tx_count)
- return -EOPNOTSUPP;
-
/* verify other_count has not changed */
if (ch->other_count != 1)
return -EINVAL;
@@ -413,3 +405,19 @@ int wx_set_channels(struct net_device *dev,
return 0;
}
EXPORT_SYMBOL(wx_set_channels);
+
+u32 wx_get_msglevel(struct net_device *netdev)
+{
+ struct wx *wx = netdev_priv(netdev);
+
+ return wx->msg_enable;
+}
+EXPORT_SYMBOL(wx_get_msglevel);
+
+void wx_set_msglevel(struct net_device *netdev, u32 data)
+{
+ struct wx *wx = netdev_priv(netdev);
+
+ wx->msg_enable = data;
+}
+EXPORT_SYMBOL(wx_set_msglevel);
diff --git a/drivers/net/ethernet/wangxun/libwx/wx_ethtool.h b/drivers/net/ethernet/wangxun/libwx/wx_ethtool.h
index ec4ad84c03b9..600c3b597d1a 100644
--- a/drivers/net/ethernet/wangxun/libwx/wx_ethtool.h
+++ b/drivers/net/ethernet/wangxun/libwx/wx_ethtool.h
@@ -38,4 +38,6 @@ void wx_get_channels(struct net_device *dev,
struct ethtool_channels *ch);
int wx_set_channels(struct net_device *dev,
struct ethtool_channels *ch);
+u32 wx_get_msglevel(struct net_device *netdev);
+void wx_set_msglevel(struct net_device *netdev, u32 data);
#endif /* _WX_ETHTOOL_H_ */
diff --git a/drivers/net/ethernet/wangxun/ngbe/ngbe_ethtool.c b/drivers/net/ethernet/wangxun/ngbe/ngbe_ethtool.c
index 6d16150f0bbd..ee49bd3ce51a 100644
--- a/drivers/net/ethernet/wangxun/ngbe/ngbe_ethtool.c
+++ b/drivers/net/ethernet/wangxun/ngbe/ngbe_ethtool.c
@@ -131,6 +131,8 @@ static const struct ethtool_ops ngbe_ethtool_ops = {
.set_coalesce = wx_set_coalesce,
.get_channels = wx_get_channels,
.set_channels = ngbe_set_channels,
+ .get_msglevel = wx_get_msglevel,
+ .set_msglevel = wx_set_msglevel,
};
void ngbe_set_ethtool_ops(struct net_device *netdev)
diff --git a/drivers/net/ethernet/wangxun/txgbe/txgbe_ethtool.c b/drivers/net/ethernet/wangxun/txgbe/txgbe_ethtool.c
index 7148ff8333db..5d16e5712d77 100644
--- a/drivers/net/ethernet/wangxun/txgbe/txgbe_ethtool.c
+++ b/drivers/net/ethernet/wangxun/txgbe/txgbe_ethtool.c
@@ -95,6 +95,8 @@ static const struct ethtool_ops txgbe_ethtool_ops = {
.set_coalesce = wx_set_coalesce,
.get_channels = wx_get_channels,
.set_channels = txgbe_set_channels,
+ .get_msglevel = wx_get_msglevel,
+ .set_msglevel = wx_set_msglevel,
};
void txgbe_set_ethtool_ops(struct net_device *netdev)
--
2.27.0
Powered by blists - more mailing lists