summaryrefslogtreecommitdiff
path: root/drivers/staging/android
diff options
context:
space:
mode:
authorSomya Anand <somyaanand214@gmail.com>2014-10-23 21:28:38 +0200
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2014-10-27 10:33:05 +0800
commitd2b778712e3aa5258fabbb96ed05bcb073a1ce2e (patch)
tree253b890968b20ba34ae698c4e792cc38a6fbb843 /drivers/staging/android
parentdd28153b2a8ca216350a9f42de58cf3a966cba30 (diff)
Staging: android: Replace timeval with ktime_t in timed_gpio.c
'struct timeval t' is used to return remaining time in milliseconds. 32-bit systems using 'struct timeval' will break in the year 2038, so we have to replace that code with more appropriate types. This patch changes the android driver to use ktime_t. Signed-off-by: Somya Anand <somyaanand214@gmail.com> Signed-off-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/staging/android')
-rw-r--r--drivers/staging/android/timed_gpio.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/staging/android/timed_gpio.c b/drivers/staging/android/timed_gpio.c
index 8fa4758517c0..12d55148bafc 100644
--- a/drivers/staging/android/timed_gpio.c
+++ b/drivers/staging/android/timed_gpio.c
@@ -20,6 +20,7 @@
#include <linux/hrtimer.h>
#include <linux/err.h>
#include <linux/gpio.h>
+#include <linux/ktime.h>
#include "timed_output.h"
#include "timed_gpio.h"
@@ -46,16 +47,16 @@ static enum hrtimer_restart gpio_timer_func(struct hrtimer *timer)
static int gpio_get_time(struct timed_output_dev *dev)
{
struct timed_gpio_data *data;
- struct timeval t;
+ ktime_t t;
data = container_of(dev, struct timed_gpio_data, dev);
if (!hrtimer_active(&data->timer))
return 0;
- t = ktime_to_timeval(hrtimer_get_remaining(&data->timer));
+ t = hrtimer_get_remaining(&data->timer);
- return t.tv_sec * 1000 + t.tv_usec / 1000;
+ return ktime_to_ms(t);
}
static void gpio_enable(struct timed_output_dev *dev, int value)