FreeBSD kernel pms device code
satimer.c File Reference

The file implements the timerTick function. More...

#include <sys/cdefs.h>
#include <dev/pms/config.h>
#include <dev/pms/RefTisa/sallsdk/spc/saglobal.h>
Include dependency graph for satimer.c:

Go to the source code of this file.

Functions

 __FBSDID ("$FreeBSD$")
 
GLOBAL void saTimerTick (agsaRoot_t *agRoot)
 TimerTick. More...
 
GLOBAL agsaTimerDesc_tsiTimerAdd (agsaRoot_t *agRoot, bit32 timeout, agsaCallback_t pfnTimeout, bit32 Event, void *pParm)
 add a timer More...
 
GLOBAL void siTimerRemove (agsaRoot_t *agRoot, agsaTimerDesc_t *pTimer)
 remove a valid timer More...
 
GLOBAL void siTimerRemoveAll (agsaRoot_t *agRoot)
 remove all valid timer More...
 

Detailed Description

The file implements the timerTick function.

Definition in file satimer.c.

Function Documentation

◆ __FBSDID()

__FBSDID ( "$FreeBSD$"  )

◆ saTimerTick()

◆ siTimerAdd()

GLOBAL agsaTimerDesc_t * siTimerAdd ( agsaRoot_t agRoot,
bit32  timeout,
agsaCallback_t  pfnTimeout,
bit32  Event,
void *  pParm 
)

add a timer

add a timer

Parameters
agRoothandles for this instance of SAS/SATA hardware
pTimerthe pointer to the timer being added
timeoutthe timeout ticks from now
pfnTimeoutcallback function when time is out
Eventthe Event code passed to callback function
pParmthe pointer to parameter passed to callback function
Returns
If the timer is added successfully
  • AGSA_RC_SUCCESS timer is added successfully
  • AGSA_RC_FAILURE cannot add new timer, run out of resource

Definition at line 230 of file satimer.c.

References agNULL, agTRUE, agsaTimerDesc_s::Event, agsaLLRoot_s::freeTimers, hpDBG_VERY_LOUD, agsaTimerDesc_s::linkNode, LL_TIMER_LOCK, ossaSingleThreadedEnter(), ossaSingleThreadedLeave(), agsaTimerDesc_s::pfnTimeout, agsaTimerDesc_s::pParm, saLlinkInitialize, saLlistAdd, saLlistGetHead, saLlistGetNext, saLlistInsert, saLlistRemove, agsaContext_s::sdkData, smTraceFuncEnter, smTraceFuncExit, agsaTimerDesc_s::timeoutTick, agsaLLRoot_s::timeTick, agsaTimerDesc_s::valid, and agsaLLRoot_s::validTimers.

Referenced by saInitialize().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ siTimerRemove()

GLOBAL void siTimerRemove ( agsaRoot_t agRoot,
agsaTimerDesc_t pTimer 
)

remove a valid timer

remove a timer

Parameters
agRoothandles for this instance of SAS/SATA hardware
pTimerthe timer to be removed
Returns
-void-

Definition at line 335 of file satimer.c.

References agFALSE, agTRUE, agsaLLRoot_s::freeTimers, hpDBG_VERY_LOUD, agsaTimerDesc_s::linkNode, LL_TIMER_LOCK, ossaSingleThreadedEnter(), ossaSingleThreadedLeave(), saLlistAdd, saLlistRemove, agsaContext_s::sdkData, smTraceFuncEnter, smTraceFuncExit, agsaTimerDesc_s::valid, and agsaLLRoot_s::validTimers.

Here is the call graph for this function:

◆ siTimerRemoveAll()

GLOBAL void siTimerRemoveAll ( agsaRoot_t agRoot)

remove all valid timer

remove all timer

Parameters
agRoothandles for this instance of SAS/SATA hardware
Returns
-void-

Definition at line 373 of file satimer.c.

References agFALSE, agNULL, agsaLLRoot_s::freeTimers, hpDBG_VERY_LOUD, agsaTimerDesc_s::linkNode, LL_TIMER_LOCK, ossaSingleThreadedEnter(), ossaSingleThreadedLeave(), saLlistAdd, saLlistGetHead, saLlistRemove, agsaContext_s::sdkData, smTraceFuncEnter, smTraceFuncExit, agsaTimerDesc_s::valid, and agsaLLRoot_s::validTimers.

Here is the call graph for this function: