summaryrefslogtreecommitdiffstats
path: root/sys/alpha/include
diff options
context:
space:
mode:
authorjhb <jhb@FreeBSD.org>2000-10-18 10:30:12 +0000
committerjhb <jhb@FreeBSD.org>2000-10-18 10:30:12 +0000
commita4104b417ea985c653c0668f77ffee40394327a6 (patch)
tree65f9ce24ef1b9657dabe0c1eb26b1faa5882ec1c /sys/alpha/include
parent8aa01908ad19f43c27b74c89bcd456610e34b435 (diff)
downloadFreeBSD-src-a4104b417ea985c653c0668f77ffee40394327a6.zip
FreeBSD-src-a4104b417ea985c653c0668f77ffee40394327a6.tar.gz
Add in a simple API for memory barriers to machine/bus.h:
- barrier_read() enforces a memory read barrier - barrier_write() enforces a memory write barrier - barrier_rw() enforces a memory read/write barrier
Diffstat (limited to 'sys/alpha/include')
-rw-r--r--sys/alpha/include/bus.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/sys/alpha/include/bus.h b/sys/alpha/include/bus.h
index 7fe2726..1810c4b 100644
--- a/sys/alpha/include/bus.h
+++ b/sys/alpha/include/bus.h
@@ -364,6 +364,18 @@ void busspace_generic_barrier(struct alpha_busspace *space,
#define bus_space_barrier(t, h, o, l, f) \
(t)->ab_ops->abo_barrier(t, (h)+(o), l, f)
+#define barrier_read \
+ bus_space_barrier(busspace_isa_mem, 0, BUS_SPACE_UNRESTRICTED, \
+ BUS_SPACE_BARRIER_READ)
+
+#define barrier_write \
+ bus_space_barrier(busspace_isa_mem, 0, BUS_SPACE_UNRESTRICTED, \
+ BUS_SPACE_BARRIER_WRITE)
+
+#define barrier_rw \
+ bus_space_barrier(busspace_isa_mem, 0, BUS_SPACE_UNRESTRICTED, \
+ BUS_SPACE_BARRIER_READ | BUS_SPACE_BARRIER_WRITE)
+
/*
* Flags used in various bus DMA methods.
*/
OpenPOWER on IntegriCloud