]> Pileus Git - ~andy/linux/commit
drm/i915: Initialize hardware semaphore state on ring init
authorMika Kuoppala <mika.kuoppala@linux.intel.com>
Wed, 19 Dec 2012 09:13:06 +0000 (11:13 +0200)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Wed, 19 Dec 2012 10:17:01 +0000 (11:17 +0100)
commitf7e98ad4d4a8afa043126a6f24d0a154a684e081
tree9cdb7b52da1a1c7e802ba31b02b94045f1fb10a6
parentb70ec5bf439b35a18e702f88078d393261c3e3f2
drm/i915: Initialize hardware semaphore state on ring init

Hardware status page needs to have proper seqno set
as our initial seqno can be arbitrary. If initial seqno is close
to wrap boundary on init and i915_seqno_passed() (31bit space)
refers to hw status page which contains zero, errorneous result
will be returned.

v2: clear mboxes and set hws page directly instead of going
through rings. Suggested by Chris Wilson.

v3: hws needs to be updated for all gens. Noticed by Chris
Wilson.

References: https://bugs.freedesktop.org/show_bug.cgi?id=58230
Signed-off-by: Mika Kuoppala <mika.kuoppala@intel.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
drivers/gpu/drm/i915/i915_gem.c
drivers/gpu/drm/i915/intel_ringbuffer.c
drivers/gpu/drm/i915/intel_ringbuffer.h