git-svn-id: svn://svn.code.sf.net/p/chibios/svn/branches/stable_20.3.x@15406 27425a3e-05d8-49a3-a47f-9c15f0e5edd8
This commit is contained in:
Giovanni Di Sirio 2022-01-25 06:45:46 +00:00 committed by Andrey
parent a9fbaff1ed
commit b12a2586f0
2 changed files with 7 additions and 4 deletions

View File

@ -612,7 +612,7 @@ void chVTDoTickI(void) {
} }
#else /* CH_CFG_ST_TIMEDELTA > 0 */ #else /* CH_CFG_ST_TIMEDELTA > 0 */
virtual_timer_t *vtp; virtual_timer_t *vtp;
sysinterval_t delta, nowdelta; sysinterval_t nowdelta;
systime_t now; systime_t now;
/* Looping through timers consuming all timers with deltas lower or equal /* Looping through timers consuming all timers with deltas lower or equal
@ -663,11 +663,13 @@ void chVTDoTickI(void) {
return; return;
} }
/* Calculating the delta to the next alarm time.*/ /* The "unprocessed nowdelta" time slice is added to "last time"
delta = vtp->dlist.delta - nowdelta; and subtracted to next timer's delta.*/
vtlp->lasttime += nowdelta;
vtp->dlist.delta -= nowdelta;
/* Update alarm time to next timer.*/ /* Update alarm time to next timer.*/
vt_set_alarm(now, delta); vt_set_alarm(now, vtp->dlist.delta);
#endif /* CH_CFG_ST_TIMEDELTA > 0 */ #endif /* CH_CFG_ST_TIMEDELTA > 0 */
} }

View File

@ -75,6 +75,7 @@
*** 20.3.5 *** *** 20.3.5 ***
- FIX: Some MISRA-related fixes. - FIX: Some MISRA-related fixes.
- FIX: Fixed Virtual Timers failure in a specific condition (bug #1215).
- FIX: Fixed invalid state transition in SNOR flash driver (bug #1212). - FIX: Fixed invalid state transition in SNOR flash driver (bug #1212).
- FIX: Fixed missing check in chobjcaches.h (bug #1210). - FIX: Fixed missing check in chobjcaches.h (bug #1210).
- FIX: Fixed RT testbuild application broken (bug #1208). - FIX: Fixed RT testbuild application broken (bug #1208).