Message ID | 1349444222-22274-2-git-send-email-imre.deak@intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Fri, Oct 5, 2012 at 9:36 AM, Imre Deak <imre.deak@intel.com> wrote: > Needed by the upcoming DRM raw monotonic timestamp support. I just had a quick look at driver/input/evdev.c, since evdev devices did a similar change recently to allow evdev timestamp from the monotonic clock. They're using a different time API: time_mono = ktime_get(); time_real = ktime_sub(time_mono, ktime_get_monotonic_offset()); and event->time = ktime_to_timeval(client->clkid == CLOCK_MONOTONIC ? mono : real); I'm not really up-to-date on kernel time APIs, but I wonder if that may be better? At least, I suspect we wouldn't need changes outside drm if we use this API. Kristian > Signed-off-by: Imre Deak <imre.deak@intel.com> > --- > kernel/time/timekeeping.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/kernel/time/timekeeping.c b/kernel/time/timekeeping.c > index d3b91e7..073d262 100644 > --- a/kernel/time/timekeeping.c > +++ b/kernel/time/timekeeping.c > @@ -365,7 +365,7 @@ void ktime_get_ts(struct timespec *ts) > } > EXPORT_SYMBOL_GPL(ktime_get_ts); > > -#ifdef CONFIG_NTP_PPS > +#if defined(CONFIG_NTP_PPS) || defined(CONFIG_DRM) || defined(CONFIG_DRM_MODULE) > > /** > * getnstime_raw_and_real - get day and raw monotonic time in timespec format > -- > 1.7.9.5 >
On Fri, 2012-10-05 at 12:14 -0400, Kristian Høgsberg wrote: > On Fri, Oct 5, 2012 at 9:36 AM, Imre Deak <imre.deak@intel.com> wrote: > > Needed by the upcoming DRM raw monotonic timestamp support. > > I just had a quick look at driver/input/evdev.c, since evdev devices > did a similar change recently to allow evdev timestamp from the > monotonic clock. They're using a different time API: > > time_mono = ktime_get(); > time_real = ktime_sub(time_mono, ktime_get_monotonic_offset()); > > and > > event->time = ktime_to_timeval(client->clkid == CLOCK_MONOTONIC ? > mono : real); > > I'm not really up-to-date on kernel time APIs, but I wonder if that > may be better? At least, I suspect we wouldn't need changes outside > drm if we use this API. Thanks, I will use this instead of getnstime_raw_and_real. The reason is as discussed on #intel-gfx that this provides a monotonic vs. raw monotonic time and that as you say it won't require a change in the time keeping code. --Imre > > Kristian > > > > Signed-off-by: Imre Deak <imre.deak@intel.com> > > --- > > kernel/time/timekeeping.c | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/kernel/time/timekeeping.c b/kernel/time/timekeeping.c > > index d3b91e7..073d262 100644 > > --- a/kernel/time/timekeeping.c > > +++ b/kernel/time/timekeeping.c > > @@ -365,7 +365,7 @@ void ktime_get_ts(struct timespec *ts) > > } > > EXPORT_SYMBOL_GPL(ktime_get_ts); > > > > -#ifdef CONFIG_NTP_PPS > > +#if defined(CONFIG_NTP_PPS) || defined(CONFIG_DRM) || defined(CONFIG_DRM_MODULE) > > > > /** > > * getnstime_raw_and_real - get day and raw monotonic time in timespec format > > -- > > 1.7.9.5 > >
diff --git a/kernel/time/timekeeping.c b/kernel/time/timekeeping.c index d3b91e7..073d262 100644 --- a/kernel/time/timekeeping.c +++ b/kernel/time/timekeeping.c @@ -365,7 +365,7 @@ void ktime_get_ts(struct timespec *ts) } EXPORT_SYMBOL_GPL(ktime_get_ts); -#ifdef CONFIG_NTP_PPS +#if defined(CONFIG_NTP_PPS) || defined(CONFIG_DRM) || defined(CONFIG_DRM_MODULE) /** * getnstime_raw_and_real - get day and raw monotonic time in timespec format
Needed by the upcoming DRM raw monotonic timestamp support. Signed-off-by: Imre Deak <imre.deak@intel.com> --- kernel/time/timekeeping.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)