* [PATCH 3/4] sky2: turn on clocks when doing resume
2007-04-07 23:02 [PATCH 0/4] skge/sky2 patches for 2.6.21 Stephen Hemminger
@ 2007-04-07 23:02 ` Stephen Hemminger
0 siblings, 0 replies; 6+ messages in thread
From: Stephen Hemminger @ 2007-04-07 23:02 UTC (permalink / raw)
To: Jeff Garzik; +Cc: netdev
[-- Attachment #1: sky2-ec-clocks-resume.patch --]
[-- Type: text/plain, Size: 636 bytes --]
Some of these chips are disabled until clock is enabled.
This fixes:
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=404107
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
--- netdev-2.6.orig/drivers/net/sky2.c 2007-04-07 15:11:48.000000000 -0700
+++ netdev-2.6/drivers/net/sky2.c 2007-04-07 15:12:31.000000000 -0700
@@ -3770,6 +3770,11 @@
goto out;
pci_enable_wake(pdev, PCI_D0, 0);
+
+ /* Re-enable all clocks */
+ if (hw->chip_id == CHIP_ID_YUKON_EX || hw->chip_id == CHIP_ID_YUKON_EC_U)
+ sky2_pci_write32(hw, PCI_DEV_REG3, 0);
+
sky2_reset(hw);
sky2_write32(hw, B0_IMSK, Y2_IS_BASE);
--
^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH 0/4] skge and sky2 patches
@ 2007-04-07 23:42 Stephen Hemminger
2007-04-07 23:42 ` [PATCH 1/4] skge: turn carrier off when down Stephen Hemminger
` (3 more replies)
0 siblings, 4 replies; 6+ messages in thread
From: Stephen Hemminger @ 2007-04-07 23:42 UTC (permalink / raw)
Cc: stable, netdev
These match the recent patches submitted for 2.6.21
--
^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH 1/4] skge: turn carrier off when down
2007-04-07 23:42 [PATCH 0/4] skge and sky2 patches Stephen Hemminger
@ 2007-04-07 23:42 ` Stephen Hemminger
2007-04-07 23:42 ` [PATCH 2/4] sky2: " Stephen Hemminger
` (2 subsequent siblings)
3 siblings, 0 replies; 6+ messages in thread
From: Stephen Hemminger @ 2007-04-07 23:42 UTC (permalink / raw)
Cc: stable, netdev
[-- Attachment #1: skge-carrier.patch --]
[-- Type: text/plain, Size: 650 bytes --]
Driver needs to turn off carrier when down, otherwise it can
confuse bonding and bridging and looks like carrier is on immediately
when it is brought back up.
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
--- linux-2.6.20.y.orig/drivers/net/skge.c 2007-04-07 15:36:05.000000000 -0700
+++ linux-2.6.20.y/drivers/net/skge.c 2007-04-07 15:54:36.000000000 -0700
@@ -2462,6 +2462,7 @@
printk(KERN_INFO PFX "%s: disabling interface\n", dev->name);
netif_stop_queue(dev);
+ netif_carrier_off(dev);
if (hw->chip_id == CHIP_ID_GENESIS && hw->phy_type == SK_PHY_XMAC)
cancel_rearming_delayed_work(&skge->link_thread);
--
^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH 2/4] sky2: turn carrier off when down
2007-04-07 23:42 [PATCH 0/4] skge and sky2 patches Stephen Hemminger
2007-04-07 23:42 ` [PATCH 1/4] skge: turn carrier off when down Stephen Hemminger
@ 2007-04-07 23:42 ` Stephen Hemminger
2007-04-07 23:42 ` [PATCH 3/4] sky2: turn on clocks when doing resume Stephen Hemminger
2007-04-07 23:42 ` [PATCH 4/4] sky2: phy workarounds for Yukon EC-U A1 Stephen Hemminger
3 siblings, 0 replies; 6+ messages in thread
From: Stephen Hemminger @ 2007-04-07 23:42 UTC (permalink / raw)
Cc: stable, netdev
[-- Attachment #1: sky2-carrier.patch --]
[-- Type: text/plain, Size: 453 bytes --]
Driver needs to turn off carrier when down.
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
--- linux-2.6.20.y.orig/drivers/net/sky2.c 2007-04-07 15:36:05.000000000 -0700
+++ linux-2.6.20.y/drivers/net/sky2.c 2007-04-07 15:54:42.000000000 -0700
@@ -1506,6 +1506,7 @@
/* Stop more packets from being queued */
netif_stop_queue(dev);
+ netif_carrier_off(dev);
/* Disable port IRQ */
imask = sky2_read32(hw, B0_IMSK);
--
^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH 3/4] sky2: turn on clocks when doing resume
2007-04-07 23:42 [PATCH 0/4] skge and sky2 patches Stephen Hemminger
2007-04-07 23:42 ` [PATCH 1/4] skge: turn carrier off when down Stephen Hemminger
2007-04-07 23:42 ` [PATCH 2/4] sky2: " Stephen Hemminger
@ 2007-04-07 23:42 ` Stephen Hemminger
2007-04-07 23:42 ` [PATCH 4/4] sky2: phy workarounds for Yukon EC-U A1 Stephen Hemminger
3 siblings, 0 replies; 6+ messages in thread
From: Stephen Hemminger @ 2007-04-07 23:42 UTC (permalink / raw)
Cc: stable, netdev
[-- Attachment #1: sky2-ec-clocks-resume.patch --]
[-- Type: text/plain, Size: 906 bytes --]
Some of these chips are disabled until clock is enabled.
This fixes:
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=404107
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
--- linux-2.6.20.y.orig/drivers/net/sky2.c 2007-04-07 15:54:42.000000000 -0700
+++ linux-2.6.20.y/drivers/net/sky2.c 2007-04-07 15:56:37.000000000 -0700
@@ -2437,6 +2437,10 @@
return -EOPNOTSUPP;
}
+ /* Make sure and enable all clocks */
+ if (hw->chip_id == CHIP_ID_YUKON_EC_U)
+ sky2_pci_write32(hw, PCI_DEV_REG3, 0);
+
hw->chip_rev = (sky2_read8(hw, B2_MAC_CFG) & CFG_CHIP_R_MSK) >> 4;
/* This rev is really old, and requires untested workarounds */
@@ -3610,6 +3614,9 @@
pci_restore_state(pdev);
pci_enable_wake(pdev, PCI_D0, 0);
+
+ if (hw->chip_id == CHIP_ID_YUKON_EC_U)
+ sky2_pci_write32(hw, PCI_DEV_REG3, 0);
sky2_set_power_state(hw, PCI_D0);
err = sky2_reset(hw);
--
^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH 4/4] sky2: phy workarounds for Yukon EC-U A1
2007-04-07 23:42 [PATCH 0/4] skge and sky2 patches Stephen Hemminger
` (2 preceding siblings ...)
2007-04-07 23:42 ` [PATCH 3/4] sky2: turn on clocks when doing resume Stephen Hemminger
@ 2007-04-07 23:42 ` Stephen Hemminger
3 siblings, 0 replies; 6+ messages in thread
From: Stephen Hemminger @ 2007-04-07 23:42 UTC (permalink / raw)
Cc: stable, netdev
[-- Attachment #1: sky2-ec-u-a1.patch --]
[-- Type: text/plain, Size: 1050 bytes --]
The workaround Yukon EC-U wasn't comparing with correct
version and wasn't doing correct setup. Without it, 88e8056
throws all sorts of errors.
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
--- linux-2.6.20.y.orig/drivers/net/sky2.c 2007-04-07 15:56:37.000000000 -0700
+++ linux-2.6.20.y/drivers/net/sky2.c 2007-04-07 15:58:12.000000000 -0700
@@ -524,9 +524,9 @@
ledover &= ~PHY_M_LED_MO_RX;
}
- if (hw->chip_id == CHIP_ID_YUKON_EC_U && hw->chip_rev == CHIP_REV_YU_EC_A1) {
+ if (hw->chip_id == CHIP_ID_YUKON_EC_U &&
+ hw->chip_rev == CHIP_REV_YU_EC_U_A1) {
/* apply fixes in PHY AFE */
- pg = gm_phy_read(hw, port, PHY_MARV_EXT_ADR);
gm_phy_write(hw, port, PHY_MARV_EXT_ADR, 255);
/* increase differential signal amplitude in 10BASE-T */
@@ -538,7 +538,7 @@
gm_phy_write(hw, port, 0x17, 0x2002);
/* set page register to 0 */
- gm_phy_write(hw, port, PHY_MARV_EXT_ADR, pg);
+ gm_phy_write(hw, port, PHY_MARV_EXT_ADR, 0);
} else {
gm_phy_write(hw, port, PHY_MARV_LED_CTRL, ledctrl);
--
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2007-04-07 23:44 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-04-07 23:42 [PATCH 0/4] skge and sky2 patches Stephen Hemminger
2007-04-07 23:42 ` [PATCH 1/4] skge: turn carrier off when down Stephen Hemminger
2007-04-07 23:42 ` [PATCH 2/4] sky2: " Stephen Hemminger
2007-04-07 23:42 ` [PATCH 3/4] sky2: turn on clocks when doing resume Stephen Hemminger
2007-04-07 23:42 ` [PATCH 4/4] sky2: phy workarounds for Yukon EC-U A1 Stephen Hemminger
-- strict thread matches above, loose matches on Subject: below --
2007-04-07 23:02 [PATCH 0/4] skge/sky2 patches for 2.6.21 Stephen Hemminger
2007-04-07 23:02 ` [PATCH 3/4] sky2: turn on clocks when doing resume Stephen Hemminger
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.