[patch 02/20] sky2: phy power problem on 88e805x

Greg KH
2006-08-21T18:47:33Z

[-- Attachment #1: sky2-phy-power-problem-on-88e805x.patch --]
[-- Type: text/plain, Size: 1118 bytes --]

-stable review patch. If anyone has any objections, please let us know.

------------------
From: Stephen Hemminger <shemminger@osdl.org>

On the 88E805X chipsets (used in laptops), the PHY was not getting powered
out of shutdown properly. The variable reg1 was getting reused incorrectly.
This is probably the cause of the bug.
http://bugzilla.kernel.org/show_bug.cgi?id=6471

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

---
drivers/net/sky2.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

--- linux-2.6.17.8.orig/drivers/net/sky2.c
+++ linux-2.6.17.8/drivers/net/sky2.c
@@ -233,6 +233,8 @@ static void sky2_set_power_state(struct
if (hw->ports > 1)
reg1 |= PCI_Y2_PHY2_COMA;
}
+ sky2_pci_write32(hw, PCI_DEV_REG1, reg1);
+ udelay(100);

if (hw->chip_id == CHIP_ID_YUKON_EC_U) {
sky2_write16(hw, B0_CTST, Y2_HW_WOL_ON);
@@ -243,8 +245,6 @@ static void sky2_set_power_state(struct
sky2_pci_write32(hw, PCI_DEV_REG5, 0);
}

- sky2_pci_write32(hw, PCI_DEV_REG1, reg1);
-
break;

case PCI_D3hot:

--