[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <6E913AD9617D9BC9+20230724092544.73531-2-mengyuanlou@net-swift.com>
Date: Mon, 24 Jul 2023 17:24:58 +0800
From: Mengyuan Lou <mengyuanlou@...-swift.com>
To: netdev@...r.kernel.org
Cc: Mengyuan Lou <mengyuanlou@...-swift.com>
Subject: [PATCH net-next 1/2] net: ngbe: add ncsi_enable flag for wangxun nics
Add ncsi_enabled flag to struct netdev to indicate wangxun
nics which support NCSI.
Signed-off-by: Mengyuan Lou <mengyuanlou@...-swift.com>
---
drivers/net/ethernet/wangxun/libwx/wx_type.h | 2 +-
drivers/net/ethernet/wangxun/ngbe/ngbe_main.c | 5 +++--
include/linux/netdevice.h | 3 +++
3 files changed, 7 insertions(+), 3 deletions(-)
diff --git a/drivers/net/ethernet/wangxun/libwx/wx_type.h b/drivers/net/ethernet/wangxun/libwx/wx_type.h
index 1de88a33a698..1b932e66044e 100644
--- a/drivers/net/ethernet/wangxun/libwx/wx_type.h
+++ b/drivers/net/ethernet/wangxun/libwx/wx_type.h
@@ -851,7 +851,7 @@ struct wx {
struct phy_device *phydev;
bool wol_hw_supported;
- bool ncsi_enabled;
+ bool ncsi_hw_supported;
bool gpio_ctrl;
raw_spinlock_t gpio_lock;
diff --git a/drivers/net/ethernet/wangxun/ngbe/ngbe_main.c b/drivers/net/ethernet/wangxun/ngbe/ngbe_main.c
index 2b431db6085a..e42e4dd26700 100644
--- a/drivers/net/ethernet/wangxun/ngbe/ngbe_main.c
+++ b/drivers/net/ethernet/wangxun/ngbe/ngbe_main.c
@@ -63,8 +63,8 @@ static void ngbe_init_type_code(struct wx *wx)
em_mac_type_mdi;
wx->wol_hw_supported = (wol_mask == NGBE_WOL_SUP) ? 1 : 0;
- wx->ncsi_enabled = (ncsi_mask == NGBE_NCSI_MASK ||
- type_mask == NGBE_SUBID_OCP_CARD) ? 1 : 0;
+ wx->ncsi_hw_supported = (ncsi_mask == NGBE_NCSI_MASK ||
+ type_mask == NGBE_SUBID_OCP_CARD) ? 1 : 0;
switch (type_mask) {
case NGBE_SUBID_LY_YT8521S_SFP:
@@ -639,6 +639,7 @@ static int ngbe_probe(struct pci_dev *pdev,
netdev->wol_enabled = !!(wx->wol);
wr32(wx, NGBE_PSR_WKUP_CTL, wx->wol);
device_set_wakeup_enable(&pdev->dev, wx->wol);
+ netdev->ncsi_enabled = wx->ncsi_hw_supported;
/* Save off EEPROM version number and Option Rom version which
* together make a unique identify for the eeprom
diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h
index b828c7a75be2..dfa14e4c8e95 100644
--- a/include/linux/netdevice.h
+++ b/include/linux/netdevice.h
@@ -2024,6 +2024,8 @@ enum netdev_ml_priv_type {
*
* @wol_enabled: Wake-on-LAN is enabled
*
+ * @ncsi_enabled: NCSI is enabled.
+ *
* @threaded: napi threaded mode is enabled
*
* @net_notifier_list: List of per-net netdev notifier block
@@ -2393,6 +2395,7 @@ struct net_device {
struct lock_class_key *qdisc_tx_busylock;
bool proto_down;
unsigned wol_enabled:1;
+ unsigned ncsi_enabled:1;
unsigned threaded:1;
struct list_head net_notifier_list;
--
2.41.0
Powered by blists - more mailing lists