123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101 |
- #include "TimerTask.h"
- #include "time.h"
- #include <stdint.h>
- #include "main.h"
- #include <signal.h>
- static void ProcessTimerReq (void);
-
-
-
-
- void TimerTask( int signo )
- {
-
- switch(signo)
- {
- case SIGALRM:
-
-
-
- if(g_BMCInfo.SensorSharedMem.SensorTick < 0xffffffff)
- g_BMCInfo.SensorSharedMem.SensorTick++;
-
- if(g_BMCInfo.SenConfig.PowerOnTick < 0xffffffff)
- g_BMCInfo.SenConfig.PowerOnTick++;
-
- if(g_BMCInfo.SenConfig.SysResetTick < 0xffffffff)
- g_BMCInfo.SenConfig.SysResetTick++;
-
- g_BMCInfo.CurTimerSecond++;
- if(g_BMCInfo.PowerGoodFlag && (g_BMCInfo.CurTimerSecond%60 == 0))
- {
- g_BMCInfo.BootValidMinutes++;
- g_BMCInfo.TotalBootValidMinutes++;
- }
- ProcessTimerReq();
- break;
- }
- }
- static void ProcessTimerReq (void)
- {
- int i;
- for (i = 0; i < g_BMCInfo.TimerTaskTblSize; i++)
- {
- if (0 == (g_BMCInfo.CurTimerTick % g_BMCInfo.TimerTaskTbl [i].NumSecs))
- {
- g_BMCInfo.TimerTaskTbl [i].TimerFn ();
- }
- }
- return;
- }
|