18 #ifndef INCdevLibImplh 19 #define INCdevLibImplh 1 22 #include "libComAPI.h" 40 size_t logicalAddress,
size_t size,
volatile void **ppPhysicalAddress);
47 const void *pValueWritten);
51 void (*pFunction)(
void *),
void *parameter);
54 void (*pFunction)(
void *));
62 void *(*pDevA24Malloc)(
size_t nbytes);
76 #ifndef NO_DEVLIB_COMPAT 78 # define pdevLibVirtualOS pdevLibVME long(* pDevInit)(void)
Init devLib.
long(* pDevEnableInterruptLevelVME)(unsigned level)
Enable VME interrupt level to CPU.
long(* pDevDisconnectInterruptVME)(unsigned vectorNumber, void(*pFunction)(void *))
Disconnect ISR from a VME interrupt vector.
devLibVME devLibVirtualOS
A type definition for devLibVME.
epicsAddressType
The available bus address types.
long(* pDevMapAddr)(epicsAddressType addrType, unsigned options, size_t logicalAddress, size_t size, volatile void **ppPhysicalAddress)
Map a bus address to the CPU's address space.
Miscellaneous macro definitions.
struct devLibVME devLibVME
A table of function pointers for devLibVME implementations.
int(* pDevInterruptInUseVME)(unsigned vectorNumber)
Check if interrupt vector has an ISR connected.
long(* pDevConnectInterruptVME)(unsigned vectorNumber, void(*pFunction)(void *), void *parameter)
Connect ISR to a VME interrupt vector.
LIBCOM_API devLibVME * pdevLibVME
Pointer to the entry table used by devLibVME routines.
void(* pDevA24Free)(void *pBlock)
Free a block allocated for the VME A24 address space.
long(* pDevDisableInterruptLevelVME)(unsigned level)
Disable VME interrupt level to CPU.
API for accessing hardware devices, originally over VMEbus.
long(* pDevReadProbe)(unsigned wordSize, volatile const void *ptr, void *pValueRead)
Read a word, detect and protect against bus errors.
A table of function pointers for devLibVME implementations.
long(* pDevWriteProbe)(unsigned wordSize, volatile void *ptr, const void *pValueWritten)
Write a word, detect and protect against bus errors.