diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2023-02-27 14:49:09 -0700 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2023-03-07 07:30:44 +0100 |
commit | 6730543457855f69be28e016e190043764b25073 (patch) | |
tree | cd8588a08f9706d618cb72caf1f8442adcfca33a /cpukit/score | |
parent | pps: Simplify capture and event processing (diff) | |
download | rtems-6730543457855f69be28e016e190043764b25073.tar.bz2 |
pps: Move pcount assignment in pps_event()
Move the pseq increment. This makes it possible to reuse registers earlier.
Reviewed by: imp
Pull Request: https://github.com/freebsd/freebsd-src/pull/604
Diffstat (limited to 'cpukit/score')
-rw-r--r-- | cpukit/score/src/kern_tc.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/cpukit/score/src/kern_tc.c b/cpukit/score/src/kern_tc.c index 99abd652d8..586331dc7a 100644 --- a/cpukit/score/src/kern_tc.c +++ b/cpukit/score/src/kern_tc.c @@ -2226,25 +2226,25 @@ pps_event(struct pps_state *pps, int event) #endif } + *pcount = pps->capcount; + /* * If the timecounter changed, we cannot compare the count values, so * we have to drop the rest of the PPS-stuff until the next event. */ if (__predict_false(pps->ppstc != captc)) { pps->ppstc = captc; - *pcount = pps->capcount; pps->ppscount[2] = pps->capcount; return; } + (*pseq)++; + /* Convert the count to a timespec. */ tcount = pps->capcount - tcount; tcount &= captc->tc_counter_mask; bintime_addx(&bt, capth_scale * tcount); bintime2timespec(&bt, &ts); - - *pcount = pps->capcount; - (*pseq)++; *tsp = ts; if (foff) { |