This is Unofficial EPICS BASE Doxygen Site
devLibVMEOSD.c File Reference
#include <stdlib.h>
#include <vxWorks.h>
#include <types.h>
#include <iv.h>
#include <vme.h>
#include <sysLib.h>
#include <memLib.h>
#include <intLib.h>
#include <logLib.h>
#include <vxLib.h>
#include "epicsFindSymbol.h"
#include "devLibVME.h"
#include "errlog.h"
+ Include dependency graph for devLibVMEOSD.c:

Go to the source code of this file.

Macros

#define VME_AM_CSR   (0x2f)
 
#define EPICSAddrTypeNoConvert   -1
 

Typedefs

typedef void myISR(void *pParam)
 

Functions

void unsolicitedHandlerEPICS (int vectorNumber)
 
int cISRTest (void(*)(), void(**)(), void **)
 
long devEnableInterruptLevelISA (unsigned level)
 
long devDisableInterruptLevelISA (unsigned level)
 

Variables

int EPICStovxWorksAddrType []
 
devLibVMEpdevLibVME = &vxVirtualOS
 Pointer to the entry table used by devLibVME routines. More...
 

Macro Definition Documentation

#define EPICSAddrTypeNoConvert   -1

Definition at line 77 of file devLibVMEOSD.c.

#define VME_AM_CSR   (0x2f)

Definition at line 65 of file devLibVMEOSD.c.

Typedef Documentation

typedef void myISR(void *pParam)

Definition at line 32 of file devLibVMEOSD.c.

Function Documentation

int cISRTest ( void(*)()  ,
void(**)()  ,
void **   
)
long devDisableInterruptLevelISA ( unsigned  level)

Disable ISA interrupt level

Parameters
levelInterrupt level.
Returns
Returns True/False.

Definition at line 263 of file devLibVMEOSD.c.

264 {
265  if (sysIntDisablePICFunc) {
266  int s;
267  s = sysIntDisablePICFunc (level);
268  if (s!=OK) {
269  return S_dev_intEnFail;
270  }
271  } else {
272  return S_dev_intEnFail;
273  }
274 
275  return 0;
276 }
#define S_dev_intEnFail
Unable to enable interrupt level.
Definition: devLib.h:84
long devEnableInterruptLevelISA ( unsigned  level)

Enable ISA interrupt level

Parameters
levelInterrupt level.
Returns
Returns True/False.

Definition at line 246 of file devLibVMEOSD.c.

247 {
248  if (sysIntEnablePICFunc) {
249  int s;
250  s = sysIntEnablePICFunc (level);
251  if (s!=OK) {
252  return S_dev_intEnFail;
253  }
254  return 0;
255  } else {
256  return S_dev_intEnFail;
257  }
258 }
#define S_dev_intEnFail
Unable to enable interrupt level.
Definition: devLib.h:84
void unsolicitedHandlerEPICS ( int  vectorNumber)

Definition at line 430 of file devLibVMEOSD.c.

431 {
432  /*
433  * call logMsg() and not errMessage()
434  * so we are certain that printf()
435  * does not get called at interrupt level
436  */
437  logMsg(
438  "%s: line=%d: Interrupt to EPICS disconnected vector = 0X %X",
439  (int)__FILE__,
440  __LINE__,
441  vectorNumber,
442  0,
443  0,
444  0);
445 }

Variable Documentation

int EPICStovxWorksAddrType[]
Initial value:
= {
VME_AM_SUP_SHORT_IO,
VME_AM_STD_SUP_DATA,
VME_AM_EXT_SUP_DATA,
}
#define EPICSAddrTypeNoConvert
Definition: devLibVMEOSD.c:77
#define VME_AM_CSR
Definition: devLibVMEOSD.c:65

Definition at line 80 of file devLibVMEOSD.c.

devLibVME* pdevLibVME = &vxVirtualOS

Pointer to the entry table used by devLibVME routines.

Definition at line 154 of file devLibVMEOSD.c.