Go to the documentation of this file. 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) 43 # warning I/O operations not defined for this RTEMS architecture