Patch "net: axienet: Set mac_managed_pm" has been added to the 6.1-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    net: axienet: Set mac_managed_pm

to the 6.1-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     net-axienet-set-mac_managed_pm.patch
and it can be found in the queue-6.1 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit ab7bca98d22ad033dcefd43b813f67ec29248eca
Author: Nick Hu <nick.hu@xxxxxxxxxx>
Date:   Mon Feb 17 13:58:42 2025 +0800

    net: axienet: Set mac_managed_pm
    
    [ Upstream commit a370295367b55662a32a4be92565fe72a5aa79bb ]
    
    The external PHY will undergo a soft reset twice during the resume process
    when it wake up from suspend. The first reset occurs when the axienet
    driver calls phylink_of_phy_connect(), and the second occurs when
    mdio_bus_phy_resume() invokes phy_init_hw(). The second soft reset of the
    external PHY does not reinitialize the internal PHY, which causes issues
    with the internal PHY, resulting in the PHY link being down. To prevent
    this, setting the mac_managed_pm flag skips the mdio_bus_phy_resume()
    function.
    
    Fixes: a129b41fe0a8 ("Revert "net: phy: dp83867: perform soft reset and retain established link"")
    Signed-off-by: Nick Hu <nick.hu@xxxxxxxxxx>
    Reviewed-by: Jacob Keller <jacob.e.keller@xxxxxxxxx>
    Link: https://patch.msgid.link/20250217055843.19799-1-nick.hu@xxxxxxxxxx
    Signed-off-by: Paolo Abeni <pabeni@xxxxxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/drivers/net/ethernet/xilinx/xilinx_axienet_main.c b/drivers/net/ethernet/xilinx/xilinx_axienet_main.c
index a957721581761..f227ed8e99345 100644
--- a/drivers/net/ethernet/xilinx/xilinx_axienet_main.c
+++ b/drivers/net/ethernet/xilinx/xilinx_axienet_main.c
@@ -2159,6 +2159,7 @@ static int axienet_probe(struct platform_device *pdev)
 
 	lp->phylink_config.dev = &ndev->dev;
 	lp->phylink_config.type = PHYLINK_NETDEV;
+	lp->phylink_config.mac_managed_pm = true;
 	lp->phylink_config.mac_capabilities = MAC_SYM_PAUSE | MAC_ASYM_PAUSE |
 		MAC_10FD | MAC_100FD | MAC_1000FD;
 




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux