32 #include "libComAPI.h" 59 #ifndef NO_DEVLIB_COMPAT 87 volatile void **ppLocalAddr);
100 unsigned wordSize,
volatile const void *ptr,
void *pValueRead);
133 unsigned wordSize,
volatile void *ptr,
const void *pValueWritten);
150 const char *pOwnerName,
152 size_t logicalBaseAddress,
154 volatile void **pPhysicalAddress);
167 size_t logicalBaseAddress,
168 const char *pOwnerName);
189 const char *pOwnerName,
193 volatile void **pLocalAddress);
215 unsigned vectorNumber,
216 void (*pFunction)(
void *),
233 unsigned vectorNumber,
234 void (*pFunction)(
void *));
323 unsigned interruptLevel,
324 void (*pFunction)(
void *),
335 unsigned interruptLevel,
336 void (*pFunction)(
void *));
361 #ifndef NO_DEVLIB_OLD_INTERFACE 377 epicsInterruptType intType,
378 unsigned vectorNumber,
379 void (*pFunction)(
void *),
390 epicsInterruptType intType,
391 unsigned vectorNumber,
392 void (*pFunction)(
void *));
402 epicsInterruptType intType,
unsigned level);
412 epicsInterruptType intType,
unsigned level);
LIBCOM_API long devDisconnectInterrupt(epicsInterruptType intType, unsigned vectorNumber, void(*pFunction)(void *))
LIBCOM_API long devDisableInterruptLevel(epicsInterruptType intType, unsigned level)
LIBCOM_API long devAddressMap(void)
Print a map of registered bus addresses.
LIBCOM_API long devReadProbe(unsigned wordSize, volatile const void *ptr, void *pValueRead)
Probe the bus for reading from a specific address.
Memory mapped ISA access.
LIBCOM_API long devBusToLocalAddr(epicsAddressType addrType, size_t busAddr, volatile void **ppLocalAddr)
Translate a bus address to a pointer the CPU can use.
epicsAddressType
The available bus address types.
LIBCOM_API void * devLibA24Calloc(size_t size)
calloc() for VME drivers that support DMA.
LIBCOM_API long devNoResponseProbe(epicsAddressType addrType, size_t base, size_t size)
Read-probe a range of bus addresses, looking for empty space.
Miscellaneous macro definitions.
LIBCOM_API long devWriteProbe(unsigned wordSize, volatile void *ptr, const void *pValueWritten)
Probe the bus for writing to a specific address.
LIBCOM_API long devDisconnectInterruptVME(unsigned vectorNumber, void(*pFunction)(void *))
Disconnect an ISR from its VME interrupt vector.
LIBCOM_API int devInterruptInUseVME(unsigned vectorNumber)
Determine if a VME interrupt vector is in use.
LIBCOM_API long devDisconnectInterruptISA(unsigned interruptLevel, void(*pFunction)(void *))
LIBCOM_API const char * epicsAddressTypeName[]
A string representation of each of the bus address types.
LIBCOM_API long locationProbe(epicsAddressType addrType, char *pLocation)
LIBCOM_API long devConnectInterrupt(epicsInterruptType intType, unsigned vectorNumber, void(*pFunction)(void *), void *parameter)
LIBCOM_API long devDisableInterruptLevelISA(unsigned level)
LIBCOM_API long devEnableInterruptLevelVME(unsigned level)
Enable a VME interrupt level onto the CPU.
LIBCOM_API long devEnableInterruptLevel(epicsInterruptType intType, unsigned level)
VME-64 CR/CSR address space.
An interface from devLibVME.c to its OS-specific implementations.
LIBCOM_API long devAllocAddress(const char *pOwnerName, epicsAddressType addrType, size_t size, unsigned alignment, volatile void **pLocalAddress)
Allocate and register an unoccupied address block.
LIBCOM_API int devInterruptLevelInUseISA(unsigned interruptLevel)
API for accessing hardware devices, originally over VMEbus.
Invalid, must be the last entry.
LIBCOM_API void * devLibA24Malloc(size_t size)
malloc() for VME drivers that support DMA.
LIBCOM_API long devConnectInterruptISA(unsigned interruptLevel, void(*pFunction)(void *), void *parameter)
LIBCOM_API long devDisableInterruptLevelVME(unsigned level)
Disable a VME interrupt level.
LIBCOM_API long devUnregisterAddress(epicsAddressType addrType, size_t logicalBaseAddress, const char *pOwnerName)
Release a bus address range previously registered.
LIBCOM_API long devRegisterAddress(const char *pOwnerName, epicsAddressType addrType, size_t logicalBaseAddress, size_t size, volatile void **pPhysicalAddress)
Register a bus address range with a name.
LIBCOM_API void devLibA24Free(void *pBlock)
free() for VME drivers that support DMA.
LIBCOM_API long devEnableInterruptLevelISA(unsigned level)
LIBCOM_API long devConnectInterruptVME(unsigned vectorNumber, void(*pFunction)(void *), void *parameter)
Connect an ISR up to a VME interrupt vector.