summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkettenis <kettenis@openbsd.org>2020-07-26 17:44:15 +0000
committerkettenis <kettenis@openbsd.org>2020-07-26 17:44:15 +0000
commitc04334bff6bd8ed05da561d0d26ef44b0a41d5f3 (patch)
tree64fc189cce801d74f9c72113bbc46b842b61e8be
parentReference unveil(2) in system accounting and daily.8. (diff)
downloadwireguard-openbsd-c04334bff6bd8ed05da561d0d26ef44b0a41d5f3.tar.xz
wireguard-openbsd-c04334bff6bd8ed05da561d0d26ef44b0a41d5f3.zip
Avoid nvram lock timeout on sparc64 systems with onboard BCM5704 instances
that come without a fitted EEPROM/NVRAM. ok deraadt@, kn@
-rw-r--r--sys/dev/pci/if_bge.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/dev/pci/if_bge.c b/sys/dev/pci/if_bge.c
index 337a9795dd4..7cc69d902b9 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.391 2020/07/10 13:26:37 patrick Exp $ */
+/* $OpenBSD: if_bge.c,v 1.392 2020/07/26 17:44:15 kettenis Exp $ */
/*
* Copyright (c) 2001 Wind River Systems
@@ -3235,7 +3235,8 @@ bge_reset(struct bge_softc *sc)
write_op = bge_writereg_ind;
if (BGE_ASICREV(sc->bge_chipid) != BGE_ASICREV_BCM5700 &&
- BGE_ASICREV(sc->bge_chipid) != BGE_ASICREV_BCM5701) {
+ BGE_ASICREV(sc->bge_chipid) != BGE_ASICREV_BCM5701 &&
+ !(sc->bge_flags & BGE_NO_EEPROM)) {
CSR_WRITE_4(sc, BGE_NVRAM_SWARB, BGE_NVRAMSWARB_SET1);
for (i = 0; i < 8000; i++) {
if (CSR_READ_4(sc, BGE_NVRAM_SWARB) &