+++ /dev/null
-From: Matt Carlson <Matt.Carlson@broadcom.net>
-Subject: tg3 libphy workaround
-Reference: bnc#68725
-Acked-by: Karsten Keil <kkeil@novell.com>
-
-Hi Philip. Below is the SLES 11 patch that disables 5785 support and
-forces the 57780 to use the in-driver phy code rather than the phylib
-code.
-
-While I have your attention, are there any outstanding bootloader
-install bugs? On my lab machine, I install SLES 11 onto partition 12
-and tell the installer to install the bootloader (GRUB) into the MBR
-of that partition. I then reboot the machine and instruct the existing
-bootloader in partition 1 (GRUB again) to chainload to partition 12.
-
-It seems the SLES 11 installer somehow corrupts the MBR of the disk so
-that it no longer boots. I've installed SLES 11 twice now and on the
-2nd install, I carefully navigated through the bootloader configuration
-portion. I don't think I'm doing anything wrong. Anyways, just an FYI...
-
-
-
-diff -Nrup 1/drivers/net/tg3.c 2/drivers/net/tg3.c
---- 1/drivers/net/tg3.c 2009-01-14 15:19:32.000000000 -0800
-+++ 2/drivers/net/tg3.c 2009-01-23 07:06:53.000000000 -0800
-@@ -205,7 +205,6 @@ static struct pci_device_id tg3_pci_tbl[
- {PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, PCI_DEVICE_ID_TIGON3_5723)},
- {PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, PCI_DEVICE_ID_TIGON3_5761)},
- {PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, PCI_DEVICE_ID_TIGON3_5761E)},
-- {PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, PCI_DEVICE_ID_TIGON3_5785)},
- {PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, TG3PCI_DEVICE_TIGON3_57780)},
- {PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, TG3PCI_DEVICE_TIGON3_57760)},
- {PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, TG3PCI_DEVICE_TIGON3_57790)},
-@@ -12428,8 +12427,7 @@ static int __devinit tg3_get_invariants(
- GET_CHIP_REV(tp->pci_chip_rev_id) != CHIPREV_5700_BX)
- tp->coalesce_mode |= HOSTCC_MODE_32BYTE;
-
-- if (GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_5785 ||
-- GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_57780)
-+ if (GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_5785)
- tp->tg3_flags3 |= TG3_FLG3_USE_PHYLIB;
-
- err = tg3_mdio_init(tp);
-@@ -13192,6 +13190,7 @@ static char * __devinit tg3_phy_string(s
- case PHY_ID_BCM5756: return "5722/5756";
- case PHY_ID_BCM5906: return "5906";
- case PHY_ID_BCM5761: return "5761";
-+ case PHY_ID_BCM57780: return "57780";
- case PHY_ID_BCM8002: return "8002/serdes";
- case 0: return "serdes";
- default: return "unknown";
-diff -Nrup 1/drivers/net/tg3.h 2/drivers/net/tg3.h
---- 1/drivers/net/tg3.h 2009-01-14 15:19:30.000000000 -0800
-+++ 2/drivers/net/tg3.h 2009-01-23 07:04:58.000000000 -0800
-@@ -2586,6 +2586,7 @@ struct tg3 {
- #define PHY_ID_BCM5761 0xbc050fd0
- #define PHY_ID_BCM5906 0xdc00ac40
- #define PHY_ID_BCM8002 0x60010140
-+#define PHY_ID_BCM57780 0x5c0d8990
- #define PHY_ID_INVALID 0xffffffff
- #define PHY_ID_REV_MASK 0x0000000f
- #define PHY_REV_BCM5401_B0 0x1