summaryrefslogtreecommitdiff
path: root/sys/dev
diff options
context:
space:
mode:
authormsaitoh <msaitoh@NetBSD.org>2022-10-26 06:36:39 +0000
committermsaitoh <msaitoh@NetBSD.org>2022-10-26 06:36:39 +0000
commit9ae57b30bbab5cf380ce16ac9bc4827409911ced (patch)
tree5e602937e5cd6aab46145ef130d8a6b09f687b58 /sys/dev
parent8b21705f98f02f3dc9ae733d221082fbe408c385 (diff)
Add comment to ICH/PCH's lock stuff in wm_reset().
Diffstat (limited to 'sys/dev')
-rw-r--r--sys/dev/pci/if_wm.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/sys/dev/pci/if_wm.c b/sys/dev/pci/if_wm.c
index 1928a9f437d..12244ae53c2 100644
--- a/sys/dev/pci/if_wm.c
+++ b/sys/dev/pci/if_wm.c
@@ -1,4 +1,4 @@
-/* $NetBSD: if_wm.c,v 1.765 2022/10/19 06:37:25 msaitoh Exp $ */
+/* $NetBSD: if_wm.c,v 1.766 2022/10/26 06:36:39 msaitoh Exp $ */
/*
* Copyright (c) 2001, 2002, 2003, 2004 Wasabi Systems, Inc.
@@ -82,7 +82,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_wm.c,v 1.765 2022/10/19 06:37:25 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_wm.c,v 1.766 2022/10/26 06:36:39 msaitoh Exp $");
#ifdef _KERNEL_OPT
#include "opt_if_wm.h"
@@ -5579,6 +5579,11 @@ wm_reset(struct wm_softc *sc)
CSR_WRITE(sc, WMREG_CTRL, reg);
/* Don't insert a completion barrier when reset */
delay(20*1000);
+ /*
+ * The EXTCNFCTR_MDIO_SW_OWNERSHIP bit is cleared by the reset,
+ * so don't use sc->phy.release(sc). Release sc_ich_phymtx
+ * only. See also wm_get_swflag_ich8lan().
+ */
mutex_exit(sc->sc_ich_phymtx);
break;
case WM_T_82580: