diff options
author | 2000-09-24 23:10:48 +0000 | |
---|---|---|
committer | 2000-09-24 23:10:48 +0000 | |
commit | c371d6627cf2006f6d2485b5f8c14c317a63cb89 (patch) | |
tree | 88cb78befaf2b453af8b278b138abd6945fc856c | |
parent | Correctly ignore -n flag with -d when both options are separate (i.e. (diff) | |
download | wireguard-openbsd-c371d6627cf2006f6d2485b5f8c14c317a63cb89.tar.xz wireguard-openbsd-c371d6627cf2006f6d2485b5f8c14c317a63cb89.zip |
For the Toshiba TOPIC95B CardBus controller, we must clear the socket and slot
control registers at shutdown else we hang. Fixes it on my laptop, should help
out espie@ on his Toshiba system too.
-rw-r--r-- | sys/dev/pci/pccbb.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/sys/dev/pci/pccbb.c b/sys/dev/pci/pccbb.c index 0269453df6a..d9b07be18db 100644 --- a/sys/dev/pci/pccbb.c +++ b/sys/dev/pci/pccbb.c @@ -1,4 +1,4 @@ -/* $OpenBSD: pccbb.c,v 1.6 2000/07/25 00:04:59 mickey Exp $ */ +/* $OpenBSD: pccbb.c,v 1.7 2000/09/24 23:10:48 aaron Exp $ */ /* $NetBSD: pccbb.c,v 1.42 2000/06/16 23:41:35 cgd Exp $ */ /* @@ -370,6 +370,10 @@ pccbb_shutdown(void *arg) PCI_COMMAND_MASTER_ENABLE); pci_conf_write(sc->sc_pc, sc->sc_tag, PCI_COMMAND_STATUS_REG, command); + if (sc->sc_chipset == CB_TOPIC95B) { + pci_conf_write(sc->sc_pc, sc->sc_tag, TOPIC_SOCKET_CTRL, 0); + pci_conf_write(sc->sc_pc, sc->sc_tag, TOPIC_SLOT_CTRL, 0); + } } void |