timespec: Add timespec subtraction helpers

Add helpers to subtract two timespecs, then return the difference in
either milliseconds or nanoseconds. These will be used to compare
timestamps during the repaint cycle.

Signed-off-by: Daniel Stone <daniels@collabora.com>
Suggested-by: Pekka Paalanen <pekka.paalanen@collabora.co.uk>
Reviewed-by: Pekka Paalanen <pekka.paalanen@collabora.co.uk>
This commit is contained in:
Daniel Stone
2017-03-01 11:34:03 +00:00
committed by Pekka Paalanen
parent 37ad7e3bae
commit 839b63546d
2 changed files with 48 additions and 0 deletions
+22
View File
@@ -142,3 +142,25 @@ ZUC_TEST(timespec_test, timespec_add_msec)
ZUC_ASSERT_EQ(1002, r.tv_sec);
ZUC_ASSERT_EQ(2000001, r.tv_nsec);
}
ZUC_TEST(timespec_test, timespec_sub_to_nsec)
{
struct timespec a, b;
a.tv_sec = 1000;
a.tv_nsec = 1;
b.tv_sec = 1;
b.tv_nsec = 2;
ZUC_ASSERT_EQ((999L * NSEC_PER_SEC) - 1, timespec_sub_to_nsec(&a, &b));
}
ZUC_TEST(timespec_test, timespec_sub_to_msec)
{
struct timespec a, b;
a.tv_sec = 1000;
a.tv_nsec = 2000000L;
b.tv_sec = 2;
b.tv_nsec = 1000000L;
ZUC_ASSERT_EQ((998 * 1000) + 1, timespec_sub_to_msec(&a, &b));
}