summaryrefslogtreecommitdiffstats
path: root/sys/ia64/include/cpufunc.h
diff options
context:
space:
mode:
authormarcel <marcel@FreeBSD.org>2002-10-28 01:00:57 +0000
committermarcel <marcel@FreeBSD.org>2002-10-28 01:00:57 +0000
commitf6c5839fe106183332c9a1a9eb901b0f67600b53 (patch)
tree69e500dd53de6d8ec06d130cfbfeb1f91f4c0b03 /sys/ia64/include/cpufunc.h
parent497dadedf9ebb24f25fa291012649b2a8269fc83 (diff)
downloadFreeBSD-src-f6c5839fe106183332c9a1a9eb901b0f67600b53.zip
FreeBSD-src-f6c5839fe106183332c9a1a9eb901b0f67600b53.tar.gz
Remove mf.a (the acceptance form of the memory fence instruction)
from all low-level bus space support functions. There's no need to actually force the read/write to be accepted by the platform before we can do anything else. We still have the mf instruction there, which forces ordering. This too is not required given the semantices of the bus space I/O functions, but it's not at all clear to me if there are any poorly written device drivers that depend on the strict ordering by the processor. The motto here is to take small steps...
Diffstat (limited to 'sys/ia64/include/cpufunc.h')
-rw-r--r--sys/ia64/include/cpufunc.h12
1 files changed, 0 insertions, 12 deletions
diff --git a/sys/ia64/include/cpufunc.h b/sys/ia64/include/cpufunc.h
index ce1cbb7..ce3330e 100644
--- a/sys/ia64/include/cpufunc.h
+++ b/sys/ia64/include/cpufunc.h
@@ -68,7 +68,6 @@ inb(u_int port)
{
volatile u_int8_t *p = ia64_port_address(port);
u_int8_t v = *p;
- ia64_mf_a();
ia64_mf();
return v;
}
@@ -78,7 +77,6 @@ inw(u_int port)
{
volatile u_int16_t *p = ia64_port_address(port);
u_int16_t v = *p;
- ia64_mf_a();
ia64_mf();
return v;
}
@@ -88,7 +86,6 @@ inl(u_int port)
{
volatile u_int32_t *p = ia64_port_address(port);
u_int32_t v = *p;
- ia64_mf_a();
ia64_mf();
return v;
}
@@ -122,7 +119,6 @@ outb(u_int port, u_int8_t data)
{
volatile u_int8_t *p = ia64_port_address(port);
*p = data;
- ia64_mf_a();
ia64_mf();
}
@@ -131,7 +127,6 @@ outw(u_int port, u_int16_t data)
{
volatile u_int16_t *p = ia64_port_address(port);
*p = data;
- ia64_mf_a();
ia64_mf();
}
@@ -140,7 +135,6 @@ outl(u_int port, u_int32_t data)
{
volatile u_int32_t *p = ia64_port_address(port);
*p = data;
- ia64_mf_a();
ia64_mf();
}
@@ -173,7 +167,6 @@ readb(u_int addr)
{
volatile u_int8_t *p = ia64_memory_address(addr);
u_int8_t v = *p;
- ia64_mf_a();
ia64_mf();
return v;
}
@@ -183,7 +176,6 @@ readw(u_int addr)
{
volatile u_int16_t *p = ia64_memory_address(addr);
u_int16_t v = *p;
- ia64_mf_a();
ia64_mf();
return v;
}
@@ -193,7 +185,6 @@ readl(u_int addr)
{
volatile u_int32_t *p = ia64_memory_address(addr);
u_int32_t v = *p;
- ia64_mf_a();
ia64_mf();
return v;
}
@@ -203,7 +194,6 @@ writeb(u_int addr, u_int8_t data)
{
volatile u_int8_t *p = ia64_memory_address(addr);
*p = data;
- ia64_mf_a();
ia64_mf();
}
@@ -212,7 +202,6 @@ writew(u_int addr, u_int16_t data)
{
volatile u_int16_t *p = ia64_memory_address(addr);
*p = data;
- ia64_mf_a();
ia64_mf();
}
@@ -221,7 +210,6 @@ writel(u_int addr, u_int32_t data)
{
volatile u_int32_t *p = ia64_memory_address(addr);
*p = data;
- ia64_mf_a();
ia64_mf();
}
OpenPOWER on IntegriCloud