summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorbriggs <briggs@openbsd.org>1997-04-10 03:15:59 +0000
committerbriggs <briggs@openbsd.org>1997-04-10 03:15:59 +0000
commit020a6995af4273f52ce30e8f8d0311754df89b58 (patch)
treec4bfc7483508bffd403c97bdd50374880779e962
parentAdd missing __C #define (diff)
downloadwireguard-openbsd-020a6995af4273f52ce30e8f8d0311754df89b58.tar.xz
wireguard-openbsd-020a6995af4273f52ce30e8f8d0311754df89b58.zip
Stop the SONIC before setting reset, not after...
-rw-r--r--sys/arch/mac68k/dev/if_sn.c6
-rw-r--r--sys/arch/mac68k/dev/if_sn_obio.c8
2 files changed, 8 insertions, 6 deletions
diff --git a/sys/arch/mac68k/dev/if_sn.c b/sys/arch/mac68k/dev/if_sn.c
index 4dd01df444e..b92e858ca70 100644
--- a/sys/arch/mac68k/dev/if_sn.c
+++ b/sys/arch/mac68k/dev/if_sn.c
@@ -1,5 +1,5 @@
/* $NetBSD: if_sn.c,v 1.7 1997/03/20 17:47:51 scottr Exp $ */
-/* $OpenBSD: if_sn.c,v 1.18 1997/04/10 02:35:02 briggs Exp $ */
+/* $OpenBSD: if_sn.c,v 1.19 1997/04/10 03:15:59 briggs Exp $ */
/*
* National Semiconductor SONIC Driver
@@ -131,10 +131,10 @@ snsetup(sc)
* Put the pup in reset mode (sninit() will fix it later),
* stop the timer, disable all interrupts and clear any interrupts.
*/
- NIC_PUT(sc, SNR_CR, CR_RST);
- wbflush();
NIC_PUT(sc, SNR_CR, CR_STP);
wbflush();
+ NIC_PUT(sc, SNR_CR, CR_RST);
+ wbflush();
NIC_PUT(sc, SNR_IMR, 0);
wbflush();
NIC_PUT(sc, SNR_ISR, ISR_ALL);
diff --git a/sys/arch/mac68k/dev/if_sn_obio.c b/sys/arch/mac68k/dev/if_sn_obio.c
index bdac74a89d6..a432dd59067 100644
--- a/sys/arch/mac68k/dev/if_sn_obio.c
+++ b/sys/arch/mac68k/dev/if_sn_obio.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: if_sn_obio.c,v 1.10 1997/04/07 13:03:17 briggs Exp $ */
+/* $OpenBSD: if_sn_obio.c,v 1.11 1997/04/10 03:16:00 briggs Exp $ */
/*
* Copyright (C) 1997 Allen Briggs
@@ -214,15 +214,17 @@ sn_obio_getaddr_kludge(sc)
int i, ors=0;
/* Shut down NIC */
- NIC_PUT(sc, SNR_CR, CR_RST);
- wbflush();
NIC_PUT(sc, SNR_CR, CR_STP);
wbflush();
+ NIC_PUT(sc, SNR_CR, CR_RST);
+ wbflush();
NIC_PUT(sc, SNR_IMR, 0);
wbflush();
NIC_PUT(sc, SNR_ISR, ISR_ALL);
wbflush();
+ NIC_PUT(sc, SNR_CR, CR_RST);
+ wbflush();
NIC_PUT(sc, SNR_CEP, 15); /* For some reason, Apple fills top first. */
wbflush();
i = NIC_GET(sc, SNR_CAP2);