diff options
-rw-r--r-- | drivers/staging/greybus/loopback.c | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/drivers/staging/greybus/loopback.c b/drivers/staging/greybus/loopback.c index b46ded22b533..4879edda982a 100644 --- a/drivers/staging/greybus/loopback.c +++ b/drivers/staging/greybus/loopback.c @@ -283,6 +283,15 @@ static struct attribute *loopback_attrs[] = { }; ATTRIBUTE_GROUPS(loopback); +static u32 gb_loopback_nsec_to_usec_latency(u64 elapsed_nsecs) +{ + u32 lat; + + do_div(elapsed_nsecs, NSEC_PER_USEC); + lat = elapsed_nsecs; + return lat; +} + static u64 gb_loopback_calc_latency(struct timeval *ts, struct timeval *te) { u64 t1, t2; @@ -532,9 +541,7 @@ static void gb_loopback_calculate_stats(struct gb_loopback *gb) u64 tmp; /* Express latency in terms of microseconds */ - tmp = gb->elapsed_nsecs; - do_div(tmp, NSEC_PER_USEC); - lat = tmp; + lat = gb_loopback_nsec_to_usec_latency(gb->elapsed_nsecs); /* Log latency statistic */ gb_loopback_update_stats(&gb_dev.latency, lat); |