aboutsummaryrefslogtreecommitdiff
path: root/sys/amd64/include
diff options
context:
space:
mode:
authorJohn Baldwin <jhb@FreeBSD.org>2000-10-18 10:30:12 +0000
committerJohn Baldwin <jhb@FreeBSD.org>2000-10-18 10:30:12 +0000
commit25f3f7c530913a985a90e3913513dfc8bb57e7f8 (patch)
tree673a4b52a6d6adbabeea210ba8361387039348a4 /sys/amd64/include
parentb8493884df6cb5fa3c17570b286459385c17ebe1 (diff)
Notes
Diffstat (limited to 'sys/amd64/include')
-rw-r--r--sys/amd64/include/bus_amd64.h23
-rw-r--r--sys/amd64/include/bus_at386.h23
-rw-r--r--sys/amd64/include/bus_dma.h23
3 files changed, 69 insertions, 0 deletions
diff --git a/sys/amd64/include/bus_amd64.h b/sys/amd64/include/bus_amd64.h
index 2d84400e8bda..3423e6b1ad4f 100644
--- a/sys/amd64/include/bus_amd64.h
+++ b/sys/amd64/include/bus_amd64.h
@@ -1154,6 +1154,29 @@ bus_space_barrier(bus_space_tag_t tag, bus_space_handle_t bsh,
/*
+ * Generic memory barrier functions.
+ */
+static __inline void
+barrier_read(void)
+{
+ bus_space_barrier(I386_BUS_SPACE_MEM, 0, 0, ~0, BUS_SPACE_BARRIER_READ);
+}
+
+static __inline void
+barrier_write(void)
+{
+ bus_space_barrier(I386_BUS_SPACE_MEM, 0, 0, ~0,
+ BUS_SPACE_BARRIER_WRITE);
+}
+
+static __inline void
+barrier_rw(void)
+{
+ bus_space_barrier(I386_BUS_SPACE_MEM, 0, 0, ~0,
+ BUS_SPACE_BARRIER_READ | BUS_SPACE_BARRIER_WRITE);
+}
+
+/*
* Flags used in various bus DMA methods.
*/
#define BUS_DMA_WAITOK 0x00 /* safe to sleep (pseudo-flag) */
diff --git a/sys/amd64/include/bus_at386.h b/sys/amd64/include/bus_at386.h
index 2d84400e8bda..3423e6b1ad4f 100644
--- a/sys/amd64/include/bus_at386.h
+++ b/sys/amd64/include/bus_at386.h
@@ -1154,6 +1154,29 @@ bus_space_barrier(bus_space_tag_t tag, bus_space_handle_t bsh,
/*
+ * Generic memory barrier functions.
+ */
+static __inline void
+barrier_read(void)
+{
+ bus_space_barrier(I386_BUS_SPACE_MEM, 0, 0, ~0, BUS_SPACE_BARRIER_READ);
+}
+
+static __inline void
+barrier_write(void)
+{
+ bus_space_barrier(I386_BUS_SPACE_MEM, 0, 0, ~0,
+ BUS_SPACE_BARRIER_WRITE);
+}
+
+static __inline void
+barrier_rw(void)
+{
+ bus_space_barrier(I386_BUS_SPACE_MEM, 0, 0, ~0,
+ BUS_SPACE_BARRIER_READ | BUS_SPACE_BARRIER_WRITE);
+}
+
+/*
* Flags used in various bus DMA methods.
*/
#define BUS_DMA_WAITOK 0x00 /* safe to sleep (pseudo-flag) */
diff --git a/sys/amd64/include/bus_dma.h b/sys/amd64/include/bus_dma.h
index 2d84400e8bda..3423e6b1ad4f 100644
--- a/sys/amd64/include/bus_dma.h
+++ b/sys/amd64/include/bus_dma.h
@@ -1154,6 +1154,29 @@ bus_space_barrier(bus_space_tag_t tag, bus_space_handle_t bsh,
/*
+ * Generic memory barrier functions.
+ */
+static __inline void
+barrier_read(void)
+{
+ bus_space_barrier(I386_BUS_SPACE_MEM, 0, 0, ~0, BUS_SPACE_BARRIER_READ);
+}
+
+static __inline void
+barrier_write(void)
+{
+ bus_space_barrier(I386_BUS_SPACE_MEM, 0, 0, ~0,
+ BUS_SPACE_BARRIER_WRITE);
+}
+
+static __inline void
+barrier_rw(void)
+{
+ bus_space_barrier(I386_BUS_SPACE_MEM, 0, 0, ~0,
+ BUS_SPACE_BARRIER_READ | BUS_SPACE_BARRIER_WRITE);
+}
+
+/*
* Flags used in various bus DMA methods.
*/
#define BUS_DMA_WAITOK 0x00 /* safe to sleep (pseudo-flag) */