On Tue, 17 Apr 2012 23:04:18 +0200 Daniel Vetter <daniel at ffwll.ch> wrote: > On Tue, Apr 17, 2012 at 08:34:11PM +0000, Lawrynowicz, Jacek wrote: > > ARB_timer_query allows client read TIMESTAMP both asynchronously and synchronously. > > The former can be implemented as you said but the latter requires support from the KMD. > > This must be a simple MMIO read as this is the only way to report "current" GPU time. > > Implementing synchronous TIMESTAMP query using pipe control would render the third example from ARB_timer_query spec useless. > > Ok, I've looked like a dofus again, but now I've read the spec and we > indeed seem to need a synchronous readout of the TIMESTAMP register. I > guess a new register will do, together with some fixed-point integer that > tells userspace how to convert it to nanoseconds. > -Daniel I've not read the spec, but synchronous and "current" doesn't mean the exact same thing to me. I assume the spec doesn't allow getting the value in a batch and then just waiting for rendering to complete? If we go with the register read approach, I vote sysfs.