Author: hauke
Date: 2014-07-06 15:45:43 +0200 (Sun, 06 Jul 2014)
New Revision: 41527

Added:
   trunk/target/linux/brcm47xx/patches-3.10/791-tg3-no-pci-sleep.patch
   trunk/target/linux/brcm47xx/patches-3.14/791-tg3-no-pci-sleep.patch
Log:
brcm47xx: fix bcm4705 rebooting when initializing the switch.

When the Ethernet controller is powered down and someone wants to
access the mdio bus like the witch driver (b53) the system crashed if
PCI_D3hot was set before. This patch deactivates this power sawing mode
when a switch driver is in use.

Signed-off-by: Hauke Mehrtens <[email protected]>


Added: trunk/target/linux/brcm47xx/patches-3.10/791-tg3-no-pci-sleep.patch
===================================================================
--- trunk/target/linux/brcm47xx/patches-3.10/791-tg3-no-pci-sleep.patch         
                (rev 0)
+++ trunk/target/linux/brcm47xx/patches-3.10/791-tg3-no-pci-sleep.patch 
2014-07-06 13:45:43 UTC (rev 41527)
@@ -0,0 +1,17 @@
+When the Ethernet controller is powered down and someone wants to 
+access the mdio bus like the witch driver (b53) the system crashed if 
+PCI_D3hot was set before. This patch deactivates this power sawing mode 
+when a switch driver is in use.
+
+--- a/drivers/net/ethernet/broadcom/tg3.c
++++ b/drivers/net/ethernet/broadcom/tg3.c
+@@ -4221,7 +4221,8 @@ static void tg3_power_down(struct tg3 *t
+       tg3_power_down_prepare(tp);
+ 
+       pci_wake_from_d3(tp->pdev, tg3_flag(tp, WOL_ENABLE));
+-      pci_set_power_state(tp->pdev, PCI_D3hot);
++      if (!tg3_flag(tp, ROBOSWITCH))
++              pci_set_power_state(tp->pdev, PCI_D3hot);
+ }
+ 
+ static void tg3_aux_stat_to_speed_duplex(struct tg3 *tp, u32 val, u16 *speed, 
u8 *duplex)

Added: trunk/target/linux/brcm47xx/patches-3.14/791-tg3-no-pci-sleep.patch
===================================================================
--- trunk/target/linux/brcm47xx/patches-3.14/791-tg3-no-pci-sleep.patch         
                (rev 0)
+++ trunk/target/linux/brcm47xx/patches-3.14/791-tg3-no-pci-sleep.patch 
2014-07-06 13:45:43 UTC (rev 41527)
@@ -0,0 +1,17 @@
+When the Ethernet controller is powered down and someone wants to 
+access the mdio bus like the witch driver (b53) the system crashed if 
+PCI_D3hot was set before. This patch deactivates this power sawing mode 
+when a switch driver is in use.
+
+--- a/drivers/net/ethernet/broadcom/tg3.c
++++ b/drivers/net/ethernet/broadcom/tg3.c
+@@ -4269,7 +4269,8 @@ static int tg3_power_down_prepare(struct
+ static void tg3_power_down(struct tg3 *tp)
+ {
+       pci_wake_from_d3(tp->pdev, tg3_flag(tp, WOL_ENABLE));
+-      pci_set_power_state(tp->pdev, PCI_D3hot);
++      if (!tg3_flag(tp, ROBOSWITCH))
++              pci_set_power_state(tp->pdev, PCI_D3hot);
+ }
+ 
+ static void tg3_aux_stat_to_speed_duplex(struct tg3 *tp, u32 val, u16 *speed, 
u8 *duplex)
_______________________________________________
openwrt-commits mailing list
[email protected]
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-commits

Reply via email to