summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorBryan O'Donoghue2015-08-17 01:55:06 +0200
committerGreg Kroah-Hartman2015-08-18 18:45:23 +0200
commit7c985351d40475ab752b230d5761e646973cb59b (patch)
tree00fb63f29d07663270a31ece0786bceaa1845cfc /drivers
parentgreybus: loopback: add gb_loopback_nsec_to_usec_latency (diff)
downloadkernel-qcow2-linux-7c985351d40475ab752b230d5761e646973cb59b.tar.gz
kernel-qcow2-linux-7c985351d40475ab752b230d5761e646973cb59b.tar.xz
kernel-qcow2-linux-7c985351d40475ab752b230d5761e646973cb59b.zip
greybus: loopback: functionally decompose gb_loopback_calc_latency
The __gb_loopback_calc_latency will be useful in later patches. Provide it here and use as intended. Later on we just want to use the timestamp rollover detection, so split it out now. Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/staging/greybus/loopback.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/drivers/staging/greybus/loopback.c b/drivers/staging/greybus/loopback.c
index 4879edda982a..39375f1e0d8e 100644
--- a/drivers/staging/greybus/loopback.c
+++ b/drivers/staging/greybus/loopback.c
@@ -292,16 +292,22 @@ static u32 gb_loopback_nsec_to_usec_latency(u64 elapsed_nsecs)
return lat;
}
+static u64 __gb_loopback_calc_latency(u64 t1, u64 t2)
+{
+ if (t2 > t1)
+ return t2 - t1;
+ else
+ return NSEC_PER_DAY - t2 + t1;
+}
+
static u64 gb_loopback_calc_latency(struct timeval *ts, struct timeval *te)
{
u64 t1, t2;
t1 = timeval_to_ns(ts);
t2 = timeval_to_ns(te);
- if (t2 > t1)
- return t2 - t1;
- else
- return NSEC_PER_DAY - t2 + t1;
+
+ return __gb_loopback_calc_latency(t1, t2);
}
static int gb_loopback_sink(struct gb_loopback *gb, u32 len)