5 #include <epicsEndian.h>
7 #if defined(_ARCH_PPC) || defined(__PPC__) || defined(__PPC)
8 # include <libcpu/io.h>
12 # define ioread8(A) in_8((volatile epicsUInt8*)(A))
13 # define iowrite8(A,D) out_8((volatile epicsUInt8*)(A), D)
14 # define le_ioread16(A) in_le16((volatile epicsUInt16*)(A))
15 # define le_ioread32(A) in_le32((volatile epicsUInt32*)(A))
16 # define le_iowrite16(A,D) out_le16((volatile epicsUInt16*)(A), D)
17 # define le_iowrite32(A,D) out_le32((volatile epicsUInt32*)(A), D)
18 # define be_ioread16(A) in_be16((volatile epicsUInt16*)(A))
19 # define be_ioread32(A) in_be32((volatile epicsUInt32*)(A))
20 # define be_iowrite16(A,D) out_be16((volatile epicsUInt16*)(A), D)
21 # define be_iowrite32(A,D) out_be32((volatile epicsUInt32*)(A), D)
23 # define rbarr() iobarrier_r()
24 # define wbarr() iobarrier_w()
25 # define rwbarr() iobarrier_rw()
28 # define nat_ioread16 be_ioread16
29 # define nat_ioread32 be_ioread32
30 # define nat_iowrite16 be_iowrite16
31 # define nat_iowrite32 be_iowrite32
33 #elif defined(i386) ||defined(__i386__) || defined(__i386)
40 #include "mrfIoOpsDef.h"
43 # warning I/O operations not defined for this RTEMS architecture
45 #include "mrfIoOpsDef.h"