This is Unofficial EPICS BASE Doxygen Site
epicsMMIO.h File Reference
#include <vxWorks.h>
#include <sysLib.h>
#include <version.h>
#include <epicsTypes.h>
#include <epicsEndian.h>
#include <compilerSpecific.h>
+ Include dependency graph for epicsMMIO.h:

Go to the source code of this file.

Macros

#define _VSB_CONFIG_FILE   <../lib/h/config/vsbConfig.h>
 
#define be16_to_cpu(X)   (epicsUInt16)(X)
 
#define be32_to_cpu(X)   (epicsUInt32)(X)
 
#define le16_to_cpu(X)   bswap16(X)
 
#define le32_to_cpu(X)   bswap32(X)
 
#define ioread8(address)   sysPciInByte((UINT8 *)(address))
 
#define iowrite8(address, data)   sysPciOutByte((UINT8 *)(address), (epicsUInt8)(data))
 
#define nat_ioread16(address)   bswap16(sysPciInWord((UINT16 *)(address)))
 
#define nat_ioread32(address)   bswap32(sysPciInLong((UINT32 *)(address)))
 
#define nat_iowrite16(address, data)   sysPciOutWord((UINT16 *)(address), bswap16(data))
 
#define nat_iowrite32(address, data)   sysPciOutLong((UINT32 *)(address), bswap32(data))
 
#define be_ioread16(address)   bswap16(sysPciInWord((UINT16 *)(address)))
 
#define be_ioread32(address)   bswap32(sysPciInLong((UINT32 *)(address)))
 
#define be_iowrite16(address, data)   sysPciOutWord((UINT16 *)(address), bswap16(data))
 
#define be_iowrite32(address, data)   sysPciOutLong((UINT32 *)(address), bswap32(data))
 
#define le_ioread16(address)   sysPciInWord((UINT16 *)(address))
 
#define le_ioread32(address)   sysPciInLong((UINT32 *)(address))
 
#define le_iowrite16(address, data)   sysPciOutWord((UINT16 *)(address), (data))
 
#define le_iowrite32(address, data)   sysPciOutLong((UINT32 *)(address), (data))
 
#define VX_MEM_BARRIER_R()   do{}while(0)
 
#define VX_MEM_BARRIER_W()   do{}while(0)
 
#define VX_MEM_BARRIER_RW()   do{}while(0)
 
#define rbarr()   VX_MEM_BARRIER_R()
 
#define wbarr()   VX_MEM_BARRIER_W()
 
#define rwbarr()   VX_MEM_BARRIER_RW()
 

Functions

UINT8 sysPciInByte (UINT8 *addr)
 
void sysPciOutByte (UINT8 *addr, UINT8 data)
 
UINT16 sysPciInWord (UINT16 *addr)
 
void sysPciOutWord (UINT16 *addr, UINT16 data)
 
UINT32 sysPciInLong (UINT32 *addr)
 
void sysPciOutLong (UINT32 *addr, UINT32 data)
 

Macro Definition Documentation

#define _VSB_CONFIG_FILE   <../lib/h/config/vsbConfig.h>

Definition at line 31 of file epicsMMIO.h.

#define be16_to_cpu (   X)    (epicsUInt16)(X)

Definition at line 72 of file epicsMMIO.h.

#define be32_to_cpu (   X)    (epicsUInt32)(X)

Definition at line 73 of file epicsMMIO.h.

#define be_ioread16 (   address)    bswap16(sysPciInWord((UINT16 *)(address)))

Definition at line 117 of file epicsMMIO.h.

#define be_ioread32 (   address)    bswap32(sysPciInLong((UINT32 *)(address)))

Definition at line 118 of file epicsMMIO.h.

#define be_iowrite16 (   address,
  data 
)    sysPciOutWord((UINT16 *)(address), bswap16(data))

Definition at line 120 of file epicsMMIO.h.

#define be_iowrite32 (   address,
  data 
)    sysPciOutLong((UINT32 *)(address), bswap32(data))

Definition at line 121 of file epicsMMIO.h.

#define ioread8 (   address)    sysPciInByte((UINT8 *)(address))

Definition at line 108 of file epicsMMIO.h.

#define iowrite8 (   address,
  data 
)    sysPciOutByte((UINT8 *)(address), (epicsUInt8)(data))

Definition at line 109 of file epicsMMIO.h.

#define le16_to_cpu (   X)    bswap16(X)

Definition at line 74 of file epicsMMIO.h.

#define le32_to_cpu (   X)    bswap32(X)

Definition at line 75 of file epicsMMIO.h.

#define le_ioread16 (   address)    sysPciInWord((UINT16 *)(address))

Definition at line 123 of file epicsMMIO.h.

#define le_ioread32 (   address)    sysPciInLong((UINT32 *)(address))

Definition at line 124 of file epicsMMIO.h.

#define le_iowrite16 (   address,
  data 
)    sysPciOutWord((UINT16 *)(address), (data))

Definition at line 126 of file epicsMMIO.h.

#define le_iowrite32 (   address,
  data 
)    sysPciOutLong((UINT32 *)(address), (data))

Definition at line 127 of file epicsMMIO.h.

#define nat_ioread16 (   address)    bswap16(sysPciInWord((UINT16 *)(address)))

Definition at line 111 of file epicsMMIO.h.

#define nat_ioread32 (   address)    bswap32(sysPciInLong((UINT32 *)(address)))

Definition at line 112 of file epicsMMIO.h.

#define nat_iowrite16 (   address,
  data 
)    sysPciOutWord((UINT16 *)(address), bswap16(data))

Definition at line 114 of file epicsMMIO.h.

#define nat_iowrite32 (   address,
  data 
)    sysPciOutLong((UINT32 *)(address), bswap32(data))

Definition at line 115 of file epicsMMIO.h.

#define rbarr ( )    VX_MEM_BARRIER_R()

Definition at line 169 of file epicsMMIO.h.

#define rwbarr ( )    VX_MEM_BARRIER_RW()

Definition at line 171 of file epicsMMIO.h.

#define VX_MEM_BARRIER_R ( )    do{}while(0)

Definition at line 160 of file epicsMMIO.h.

#define VX_MEM_BARRIER_RW ( )    do{}while(0)

Definition at line 166 of file epicsMMIO.h.

#define VX_MEM_BARRIER_W ( )    do{}while(0)

Definition at line 163 of file epicsMMIO.h.

#define wbarr ( )    VX_MEM_BARRIER_W()

Definition at line 170 of file epicsMMIO.h.

Function Documentation

UINT8 sysPciInByte ( UINT8 *  addr)
UINT32 sysPciInLong ( UINT32 *  addr)
UINT16 sysPciInWord ( UINT16 *  addr)
void sysPciOutByte ( UINT8 *  addr,
UINT8  data 
)
void sysPciOutLong ( UINT32 *  addr,
UINT32  data 
)
void sysPciOutWord ( UINT16 *  addr,
UINT16  data 
)