From 186feab0cffd054d1d28d80cc65493406d769213 Mon Sep 17 00:00:00 2001 From: Michael Shalayeff Date: Thu, 19 Dec 2002 01:24:04 +0000 Subject: proper barrier call in ie_ack --- sys/dev/ic/i82596var.h | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'sys/dev') diff --git a/sys/dev/ic/i82596var.h b/sys/dev/ic/i82596var.h index f8a84489e48..fea89780500 100644 --- a/sys/dev/ic/i82596var.h +++ b/sys/dev/ic/i82596var.h @@ -1,4 +1,4 @@ -/* $OpenBSD: i82596var.h,v 1.9 2002/10/13 14:21:49 mickey Exp $ */ +/* $OpenBSD: i82596var.h,v 1.10 2002/12/19 01:24:03 mickey Exp $ */ /* $NetBSD: i82586var.h,v 1.10 1998/08/15 04:42:42 mycroft Exp $ */ /*- @@ -295,10 +295,11 @@ int i82596_start_cmd(struct ie_softc *, int, int, int, int); static __inline__ void ie_ack(struct ie_softc *sc, u_int mask) /* in native byte-order */ { - register u_int status; + u_int status; + int off = IE_SCB_STATUS(sc->scb); - bus_space_barrier(sc->bt, sc->bh, 0, 0, BUS_SPACE_BARRIER_READ); - status = (sc->ie_bus_read16)(sc, IE_SCB_STATUS(sc->scb)); + bus_space_barrier(sc->bt, sc->bh, off, 2, BUS_SPACE_BARRIER_READ); + status = (sc->ie_bus_read16)(sc, off); i82596_start_cmd(sc, status & mask, 0, 0, 0); } -- cgit v1.2.3