[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <200901071740.38060.florian@openwrt.org>
Date: Wed, 7 Jan 2009 17:40:37 +0100
From: Florian Fainelli <florian@...nwrt.org>
To: David Miller <davem@...emloft.net>, Jeff Garzik <jeff@...zik.org>,
netdev@...r.kernel.org
Subject: [PATCH 2/4] r6040: check PHY status when bringing interface up
From: Florian Fainelli <florian@...nwrt.org>
Subject: [PATCH 2/4] 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: Florian Fainelli <florian@...nwrt.org>
---
diff --git a/drivers/net/r6040.c b/drivers/net/r6040.c
index 3e685d7..a59efbd 100644
--- a/drivers/net/r6040.c
+++ b/drivers/net/r6040.c
@@ -1107,6 +1107,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;
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists