linux/include/uapi
Chris Wilson 1f977d7e94 drm/i915: Use two 32bit reads for select 64bit REG_READ ioctls
commit 648a9bc530 upstream.

Since the hardware sometimes mysteriously totally flummoxes the 64bit
read of a 64bit register when read using a single instruction, split the
read into two instructions. Since the read here is of automatically
incrementing timestamp counters, we also have to be very careful in
order to make sure that it does not increment between the two
instructions.

However, since userspace tried to workaround this issue and so enshrined
this ABI for a broken hardware read and in the process neglected that
the read only fails in some environments, we have to introduce a new
uABI flag for userspace to request the 2x32 bit accurate read of the
timestamp.

v2: Fix alignment check and include details of the workaround for
userspace.

Reported-by: Karol Herbst <freedesktop@karolherbst.de>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=91317
Testcase: igt/gem_reg_read
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Michał Winiarski <michal.winiarski@intel.com>
Tested-by: Michał Winiarski <michal.winiarski@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
History 2015-08-03 09:29:09 -07:00
..
asm-generic errno.h: Improve ENOSYS's comment 2015-04-17 09:03:58 -04:00
drm drm/i915: Use two 32bit reads for select 64bit REG_READ ioctls 2015-08-03 09:29:09 -07:00
linux include/uapi/linux/virtio_balloon.h: include linux/virtio_types.h 2015-06-01 15:46:54 +02:00
misc cxl: Add documentation for userspace APIs 2014-10-08 20:16:19 +11:00
mtd mtd: lpddr: add driver for LPDDR2-NVM PCM memories 2014-05-20 17:45:17 -07:00
rdma RDMA/core: Enable the iWarp Port Mapper to provide the actual address of the connecting peer to its clients 2015-05-05 09:18:01 -04:00
scsi FCoE Updates for 3.9 2013-03-01 09:10:08 +00:00
sound ALSA: asound.h - use SNDRV_CTL_ELEM_ID_NAME_MAXLEN 2015-04-18 09:05:55 +02:00
video UAPI: (Scripted) Disintegrate include/video 2012-12-20 17:14:26 +00:00
xen xen: install xen/gntdev.h and xen/gntalloc.h 2014-02-11 10:12:36 -05:00
Kbuild cxl: Add userspace header file 2014-10-08 20:15:57 +11:00