diff options
author | 2025-05-21 14:44:02 +0800 | |
---|---|---|
committer | 2025-05-26 17:25:42 +0200 | |
commit | cdae5bccab29a8e7810b682e886dfd8cd5a52ff3 (patch) | |
tree | a3fd3d6d207e4f48056016ae1bf2344a4a22f307 /drivers | |
parent | net: txgbe: Implement PTP for AML devices (diff) | |
download | wireguard-linux-cdae5bccab29a8e7810b682e886dfd8cd5a52ff3.tar.xz wireguard-linux-cdae5bccab29a8e7810b682e886dfd8cd5a52ff3.zip |
net: txgbe: Implement SRIOV for AML devices
Since .mac_link_up and .mac_link_down are changed for AML 25G/10G NICs,
the SR-IOV related function should be invoked in these new functions, to
bring VFs link up.
Signed-off-by: Jiawen Wu <jiawenwu@trustnetic.com>
Link: https://patch.msgid.link/BA8B302B7AAB6EA6+20250521064402.22348-10-jiawenwu@trustnetic.com
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/net/ethernet/wangxun/txgbe/txgbe_aml.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/net/ethernet/wangxun/txgbe/txgbe_aml.c b/drivers/net/ethernet/wangxun/txgbe/txgbe_aml.c index 6bcf67bef576..7dbcf41750c1 100644 --- a/drivers/net/ethernet/wangxun/txgbe/txgbe_aml.c +++ b/drivers/net/ethernet/wangxun/txgbe/txgbe_aml.c @@ -10,6 +10,7 @@ #include "../libwx/wx_lib.h" #include "../libwx/wx_ptp.h" #include "../libwx/wx_hw.h" +#include "../libwx/wx_sriov.h" #include "txgbe_type.h" #include "txgbe_aml.h" #include "txgbe_hw.h" @@ -315,6 +316,8 @@ static void txgbe_mac_link_up_aml(struct phylink_config *config, wx->last_rx_ptp_check = jiffies; if (test_bit(WX_STATE_PTP_RUNNING, wx->state)) wx_ptp_reset_cyclecounter(wx); + /* ping all the active vfs to let them know we are going up */ + wx_ping_all_vfs_with_link_status(wx, true); } static void txgbe_mac_link_down_aml(struct phylink_config *config, @@ -329,6 +332,8 @@ static void txgbe_mac_link_down_aml(struct phylink_config *config, wx->speed = SPEED_UNKNOWN; if (test_bit(WX_STATE_PTP_RUNNING, wx->state)) wx_ptp_reset_cyclecounter(wx); + /* ping all the active vfs to let them know we are going down */ + wx_ping_all_vfs_with_link_status(wx, false); } static void txgbe_mac_config_aml(struct phylink_config *config, unsigned int mode, |