Commit 82d1096c authored by Thangaraj Samynathan's avatar Thangaraj Samynathan Committed by Jakub Kicinski
Browse files

net: lan743x: Fix PHY reset handling during initialization and WOL



Remove lan743x_phy_init from lan743x_hardware_init as it resets the PHY
registers, causing WOL to fail on subsequent attempts. Add a call to
lan743x_hw_reset_phy in the probe function to ensure the PHY is reset
during device initialization.

Fixes: 23f0703c ("lan743x: Add main source files for new lan743x driver")
Signed-off-by: default avatarThangaraj Samynathan <thangaraj.s@microchip.com>
Reviewed-by: default avatarAndrew Lunn <andrew@lunn.ch>
Link: https://patch.msgid.link/20250526053048.287095-3-thangaraj.s@microchip.com


Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
parent 68927eb5
Loading
Loading
Loading
Loading
+4 −9
Original line number Diff line number Diff line
@@ -1346,11 +1346,6 @@ static int lan743x_hw_reset_phy(struct lan743x_adapter *adapter)
				  50000, 1000000);
}

static int lan743x_phy_init(struct lan743x_adapter *adapter)
{
	return lan743x_hw_reset_phy(adapter);
}

static void lan743x_phy_interface_select(struct lan743x_adapter *adapter)
{
	u32 id_rev;
@@ -3534,10 +3529,6 @@ static int lan743x_hardware_init(struct lan743x_adapter *adapter,
	if (ret)
		return ret;

	ret = lan743x_phy_init(adapter);
	if (ret)
		return ret;

	ret = lan743x_ptp_init(adapter);
	if (ret)
		return ret;
@@ -3674,6 +3665,10 @@ static int lan743x_pcidev_probe(struct pci_dev *pdev,
	if (ret)
		goto cleanup_pci;

	ret = lan743x_hw_reset_phy(adapter);
	if (ret)
		goto cleanup_pci;

	ret = lan743x_hardware_init(adapter, pdev);
	if (ret)
		goto cleanup_pci;