summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrad Smith <brad@cvs.openbsd.org>2015-01-06 04:05:44 +0000
committerBrad Smith <brad@cvs.openbsd.org>2015-01-06 04:05:44 +0000
commit6de5a8a7d433513feab3f399af4a7b10a6c923f5 (patch)
tree17dee38d45d02bb8db301d15a9db05be9ddbc094
parent7e613b51a04a2a19c417cd7d6e6ad9611d52fbef (diff)
Always enable the receive filter. It was being enabled via sis_init()
but not if calling sis_iff() via sis_ioctl().
-rw-r--r--sys/dev/pci/if_sis.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/sys/dev/pci/if_sis.c b/sys/dev/pci/if_sis.c
index fcaa1b468a1..e1991124338 100644
--- a/sys/dev/pci/if_sis.c
+++ b/sys/dev/pci/if_sis.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: if_sis.c,v 1.121 2014/12/22 02:28:52 tedu Exp $ */
+/* $OpenBSD: if_sis.c,v 1.122 2015/01/06 04:05:43 brad Exp $ */
/*
* Copyright (c) 1997, 1998, 1999
* Bill Paul <wpaul@ctr.columbia.edu>. All rights reserved.
@@ -850,6 +850,8 @@ sis_iff_ns(struct sis_softc *sc)
}
CSR_WRITE_4(sc, SIS_RXFILT_CTL, rxfilt);
+ /* Turn the receive filter on. */
+ CSR_WRITE_4(sc, SIS_RXFILT_CTL, rxfilt | SIS_RXFILTCTL_ENABLE);
CSR_READ_4(sc, SIS_RXFILT_CTL);
}
@@ -916,6 +918,8 @@ sis_iff_sis(struct sis_softc *sc)
}
CSR_WRITE_4(sc, SIS_RXFILT_CTL, rxfilt);
+ /* Turn the receive filter on. */
+ CSR_WRITE_4(sc, SIS_RXFILT_CTL, rxfilt | SIS_RXFILTCTL_ENABLE);
CSR_READ_4(sc, SIS_RXFILT_CTL);
}
@@ -1785,9 +1789,6 @@ sis_init(void *xsc)
*/
sis_iff(sc);
- /* Turn the receive filter on */
- SIS_SETBIT(sc, SIS_RXFILT_CTL, SIS_RXFILTCTL_ENABLE);
-
/*
* Load the address of the RX and TX lists.
*/