summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys/dev/pci/if_bge.c7
-rw-r--r--sys/dev/pci/if_bgereg.h4
2 files changed, 9 insertions, 2 deletions
diff --git a/sys/dev/pci/if_bge.c b/sys/dev/pci/if_bge.c
index 4906b15eda6..07c4794ba4e 100644
--- a/sys/dev/pci/if_bge.c
+++ b/sys/dev/pci/if_bge.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: if_bge.c,v 1.189 2006/10/15 06:49:19 brad Exp $ */
+/* $OpenBSD: if_bge.c,v 1.190 2006/10/17 22:28:07 brad Exp $ */
/*
* Copyright (c) 2001 Wind River Systems
@@ -2063,6 +2063,11 @@ bge_reset(struct bge_softc *sc)
BGE_PCIMISCCTL_INDIRECT_ACCESS|BGE_PCIMISCCTL_MASK_PCI_INTR|
BGE_PCIMISCCTL_ENDIAN_WORDSWAP|BGE_PCIMISCCTL_PCISTATE_RW);
+ if (BGE_ASICREV(sc->bge_chipid) == BGE_ASICREV_BCM5752 ||
+ BGE_ASICREV(sc->bge_chipid) == BGE_ASICREV_BCM5755 ||
+ BGE_ASICREV(sc->bge_chipid) == BGE_ASICREV_BCM5787)
+ CSR_WRITE_4(sc, BGE_FASTBOOT_PC, 0);
+
reset = BGE_MISCCFG_RESET_CORE_CLOCKS|(65<<1);
if (sc->bge_flags & BGE_PCIE) {
diff --git a/sys/dev/pci/if_bgereg.h b/sys/dev/pci/if_bgereg.h
index 0758d63b6a6..2b0ac15cccc 100644
--- a/sys/dev/pci/if_bgereg.h
+++ b/sys/dev/pci/if_bgereg.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: if_bgereg.h,v 1.65 2006/10/15 06:49:19 brad Exp $ */
+/* $OpenBSD: if_bgereg.h,v 1.66 2006/10/17 22:28:07 brad Exp $ */
/*
* Copyright (c) 2001 Wind River Systems
@@ -1688,6 +1688,8 @@
#define BGE_MDI_CTL 0x6844
#define BGE_EE_DELAY 0x6848
+#define BGE_FASTBOOT_PC 0x6894
+
/*
* TLP Control Register
* Applicable to BCM5721 and BCM5751 only