21 #if (CPU_FAMILY != PPC) && (CPU_FAMILY != I80X86) 30 #ifndef _VSB_CONFIG_FILE 31 # define _VSB_CONFIG_FILE <../lib/h/config/vsbConfig.h> 40 #include <compilerSpecific.h> 47 #if _WRS_VXWORKS_MAJOR > 6 48 # include <vxAtomicLib.h> 49 #elif _WRS_VXWORKS_MAJOR == 6 && _WRS_VXWORKS_MINOR >= 6 50 # include <vxAtomicLib.h> 65 return (((
epicsUInt32)(value) & 0x000000ff) << 24) |
71 #if EPICS_BYTE_ORDER == EPICS_ENDIAN_BIG 72 # define be16_to_cpu(X) (epicsUInt16)(X) 73 # define be32_to_cpu(X) (epicsUInt32)(X) 74 # define le16_to_cpu(X) bswap16(X) 75 # define le32_to_cpu(X) bswap32(X) 77 #elif EPICS_BYTE_ORDER == EPICS_ENDIAN_LITTLE 78 # define be16_to_cpu(X) bswap16(X) 79 # define be32_to_cpu(X) bswap32(X) 80 # define le16_to_cpu(X) (epicsUInt16)(X) 81 # define le32_to_cpu(X) (epicsUInt32)(X) 84 # error Unable to determine native byte order 108 #define ioread8(address) sysPciInByte((UINT8 *)(address)) 109 #define iowrite8(address,data) sysPciOutByte((UINT8 *)(address), (epicsUInt8)(data)) 111 #define nat_ioread16(address) bswap16(sysPciInWord((UINT16 *)(address))) 112 #define nat_ioread32(address) bswap32(sysPciInLong((UINT32 *)(address))) 114 #define nat_iowrite16(address,data) sysPciOutWord((UINT16 *)(address), bswap16(data)) 115 #define nat_iowrite32(address,data) sysPciOutLong((UINT32 *)(address), bswap32(data)) 117 #define be_ioread16(address) bswap16(sysPciInWord((UINT16 *)(address))) 118 #define be_ioread32(address) bswap32(sysPciInLong((UINT32 *)(address))) 120 #define be_iowrite16(address,data) sysPciOutWord((UINT16 *)(address), bswap16(data)) 121 #define be_iowrite32(address,data) sysPciOutLong((UINT32 *)(address), bswap32(data)) 123 #define le_ioread16(address) sysPciInWord((UINT16 *)(address)) 124 #define le_ioread32(address) sysPciInLong((UINT32 *)(address)) 126 #define le_iowrite16(address,data) sysPciOutWord((UINT16 *)(address), (data)) 127 #define le_iowrite32(address,data) sysPciOutLong((UINT32 *)(address), (data)) 135 #define ioread8(address) sysInByte ((epicsUInt32)(address)) 136 #define iowrite8(address,data) sysOutByte ((epicsUInt32)(address), (epicsUInt8)(data)) 138 #define nat_ioread16(address) sysInWord ((epicsUInt32)(address)) 139 #define nat_ioread32(address) sysInLong ((epicsUInt32)(address)) 141 #define nat_iowrite16(address,data) sysOutWord((epicsUInt32)(address),(data)) 142 #define nat_iowrite32(address,data) sysOutLong((epicsUInt32)(address),(data)) 144 #define be_ioread16(address) be16_to_cpu (sysInWord ((epicsUInt32)(address))) 145 #define be_ioread32(address) be32_to_cpu (sysInLong ((epicsUInt32)(address))) 147 #define be_iowrite16(address,data) sysOutWord ((epicsUInt32)(address), be16_to_cpu((epicsUInt16)(data))) 148 #define be_iowrite32(address,data) sysOutLong ((epicsUInt32)(address), be32_to_cpu((epicsUInt32)(data))) 150 #define le_ioread16(address) le16_to_cpu (sysInWord ((epicsUInt32)(address))) 151 #define le_ioread32(address) le32_to_cpu (sysInLong ((epicsUInt32)(address))) 153 #define le_iowrite16(address,data) sysOutWord ((epicsUInt32)(address), le16_to_cpu((epicsUInt16)(data))) 154 #define le_iowrite32(address,data) sysOutLong ((epicsUInt32)(address), le32_to_cpu((epicsUInt32)(data))) 159 #ifndef VX_MEM_BARRIER_R 160 # define VX_MEM_BARRIER_R() do{}while(0) 162 #ifndef VX_MEM_BARRIER_W 163 # define VX_MEM_BARRIER_W() do{}while(0) 165 #ifndef VX_MEM_BARRIER_RW 166 # define VX_MEM_BARRIER_RW() do{}while(0) 169 #define rbarr() VX_MEM_BARRIER_R() 170 #define wbarr() VX_MEM_BARRIER_W() 171 #define rwbarr() VX_MEM_BARRIER_RW()
#define EPICS_ALWAYS_INLINE
void sysPciOutWord(UINT16 *addr, UINT16 data)
unsigned short epicsUInt16
void sysPciOutByte(UINT8 *addr, UINT8 data)
UINT16 sysPciInWord(UINT16 *addr)
void sysPciOutLong(UINT32 *addr, UINT32 data)
UINT32 sysPciInLong(UINT32 *addr)
UINT8 sysPciInByte(UINT8 *addr)