Commit 84314bf9 authored by Florian Fainelli's avatar Florian Fainelli Committed by David S. Miller
Browse files

r6040: check PHY status when bringing interface up



This patch makes the driver properly initialize the PHY
status if not correctly set by the bootloader/BIOS.
It prevents some boards to bring up the link on boot.

Signed-off-by: default avatarFlorian Fainelli <florian@openwrt.org>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 9a48ce84
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -1121,6 +1121,10 @@ static int __devinit r6040_init_one(struct pci_dev *pdev,
		err = -EIO;
		goto err_out_free_res;
	}
	/* If PHY status change register is still set to zero it means the
	 * bootloader didn't initialize it */
	if (ioread16(ioaddr + PHY_CC) == 0)
		iowrite16(0x9f07, ioaddr + PHY_CC);

	/* Init system & device */
	lp->base = ioaddr;