[Intel-gfx] [RFC 0/3] render state initialization (bdw rc6)

Mika Kuoppala mika.kuoppala at linux.intel.com
Tue Apr 22 19:19:41 CEST 2014


Hi,

Here are patches to initialize first render context to a hopefully, 
valid state. If pipeline/context is not initialized and we enter rc6 on bdw,
the render ring can hung on the first batch submitted. That is atleast
the hypothesis this work is based on.

The states are stripped from rendercopy_genX's from i-g-t/lib and
the state generators are part of i-g-t also. The states are
propably overshoot from what can be consider the minimal valid
(null) state on the pipeline. I just initialized everything rendercopy
does and haven't really put effort on optimizing the state until
I get some test results that this indeed solves anything.

The state generators can be found here but they are not needed for testing.
http://cgit.freedesktop.org/~miku/intel-gpu-tools/log/?h=null_state_gen

Gen7 and Gen8 seems to atleast survive the boot but Gen6 is totally
untested.

Here is the branch for testing:
http://cgit.freedesktop.org/~miku/drm-intel/log/?h=render_state

I am interested to know if these patches make matters better/worse for those
who have issues with first batch hanging on bdw, but as always, any feedback
is greatly appreciated.

Mika Kuoppala (3):
  drm/i915: export vmap_batch from command parser
  drm/i915: add render state initialization
  drm/i915: add null render states for gen6, gen7 and gen8

 drivers/gpu/drm/i915/Makefile                 |    1 +
 drivers/gpu/drm/i915/i915_cmd_parser.c        |    4 +-
 drivers/gpu/drm/i915/i915_drv.h               |    3 +
 drivers/gpu/drm/i915/i915_gem_context.c       |    7 +
 drivers/gpu/drm/i915/i915_gem_render_state.c  |  222 ++++++++++++
 drivers/gpu/drm/i915/intel_renderstate_gen6.h |  290 +++++++++++++++
 drivers/gpu/drm/i915/intel_renderstate_gen7.h |  254 +++++++++++++
 drivers/gpu/drm/i915/intel_renderstate_gen8.h |  480 +++++++++++++++++++++++++
 8 files changed, 1259 insertions(+), 2 deletions(-)
 create mode 100644 drivers/gpu/drm/i915/i915_gem_render_state.c
 create mode 100644 drivers/gpu/drm/i915/intel_renderstate_gen6.h
 create mode 100644 drivers/gpu/drm/i915/intel_renderstate_gen7.h
 create mode 100644 drivers/gpu/drm/i915/intel_renderstate_gen8.h

-- 
1.7.9.5




More information about the Intel-gfx mailing list