We want -EBUSY for a pending flip and -EINVAL if the pipe is off
(either dpms off or completely off). With the small exception that
someone thought it would be funny to return -EBUSY when the crtc is
fully off.
This catches parallel access to bo->virtual causing sigbus
Signed-off-by: Mika Kuoppala <mika.kuoppala@intel.com>
[danvet: applied some bikeshed
- changed prefix from drm_ to gem_, it's a kernel gem test
- added autohell magic to link with pthreads
- .gitignore entry
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Yell if it's wrong.
For some odd reason this blows up on my snb. And always on the same
o->count frame on the 2nd crtc ... And we have to thank the hpd poll
helper for that. Comment explaining this added, also made the error
non-fatal.
Attempt to stress test performing relocations whilst the batch is in the
CPU domain.
A freshly allocated buffer starts in the CPU domain, and the pwrite
should also be performed whilst in the CPU domain and so we should
execute the relocations within the CPU domain. If for any reason one of
those steps should land it in the GTT domain, we take the secondary
precaution of filling the mappable portion of the GATT.
In order to detect whether a relocation fails, we first fill a target
buffer with a sequence of invalid commands that would cause the GPU to
immediate hang, and then attempt to overwrite them with a legal, if
short, batchbuffer using a BLT. Then we come to execute the bo, if the
relocation fail and we either copy across all zeros or garbage, then the
GPU will hang.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Needs a bit more relaxed select timeout to work (which is not
required when testing dummy_load vs. dpms, since the dpms forces the
sync, not the select timeout).
Since panning with set_crtc is synchronous, we need to stall for any
outstanding pageflips. This new testcase exercise that code. Unfortunately
we still need eyes to check whether we don't loose the offset :(
- don't yell around about dropped frames on tv connectors (and explain
why in a comment)
- wait a bit when using a test config that checks for dropped frames before
starting. Also allow for 1% of fudge, this makes it reliably work
- make the dummy load more variable, took too long on older machines.
We're suspecting that something is fishy with the event deliver/vblank
timestamp handling on gmch platforms. Unfortunately, this isn't it.
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Those infoframes are programmed when using stereo 3D modes.
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Reviewed-by: Rodrigo Vivi <rodrigo.vivi@gmail.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Each mode line has a number just like '[i]'. So we can only test the specified mode with giving the number of mode to '-o' parameter.
Signed-off-by: Yi Sun <yi.sun@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Repeat the memset streaming performance test on the same mapping so that
we can factor out the overhead of establishing the GTT/CPU mmaps.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
This make the reasonable assumption that the libc code for memset() can
saturate the memory bandwidth -- at any rate it should do better than
the copy.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
This only ever worked because we used to have a bug in our driver which
was fixed months ago by:
commit b4db1e35ac59c144965f517bc575a0d75b60b03f
Author: Jesse Barnes <jbarnes@virtuousgeek.org>
Date: Tue Mar 20 10:59:09 2012 -0700
drm/i915: treat src w & h as fixed point in sprite handling code
Reported-by: Armin Reese <armin.c.reese@intel.com>
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
Now that we can dump registers giving a partial name, adding more
information about the dumped registers seems useful.
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Let people give just a part of the register name. Handy when not
remembering the exact name or if the register is defined with a
different name than the one in the spec being looked at.
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>