diff options
author | Zhao Yakui <yakui.zhao@intel.com> | 2014-02-11 10:48:44 +0800 |
---|---|---|
committer | Damien Lespiau <damien.lespiau@intel.com> | 2014-09-30 12:21:03 +0100 |
commit | 17371958dbe6de8a92bf3e0e98b37ddb12241c17 (patch) | |
tree | e5ddf68deefa4bdd151dcafd89ef978cc064b07e /lib/media_fill_gen9.c | |
parent | 31e94ad28b5fab3373e6c7bf10b7894ca89cfb0a (diff) |
mediafill/skl: follow the spec to update STATE_BASE_ADDRESS command
Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
Signed-off-by: Ben Widawsky <benjamin.widawsky@intel.com>
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Diffstat (limited to 'lib/media_fill_gen9.c')
-rw-r--r-- | lib/media_fill_gen9.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/lib/media_fill_gen9.c b/lib/media_fill_gen9.c index 98e24037..a0672211 100644 --- a/lib/media_fill_gen9.c +++ b/lib/media_fill_gen9.c @@ -192,9 +192,9 @@ gen8_fill_interface_descriptor(struct intel_batchbuffer *batch, struct igt_buf * } static void -gen8_emit_state_base_address(struct intel_batchbuffer *batch) +gen9_emit_state_base_address(struct intel_batchbuffer *batch) { - OUT_BATCH(GEN8_STATE_BASE_ADDRESS | (16 - 2)); + OUT_BATCH(GEN8_STATE_BASE_ADDRESS | (19 - 2)); /* general */ OUT_BATCH(0 | BASE_ADDRESS_MODIFY); @@ -228,6 +228,11 @@ gen8_emit_state_base_address(struct intel_batchbuffer *batch) OUT_BATCH(0xfffff000 | 1); /* intruction buffer size, must set modify enable bit, otherwise it may result in GPU hang */ OUT_BATCH(1 << 12 | 1); + + /* Bindless surface state base address */ + OUT_BATCH(0 | BASE_ADDRESS_MODIFY); + OUT_BATCH(0); + OUT_BATCH(0xfffff000); } static void @@ -358,7 +363,7 @@ gen9_media_fillfunc(struct intel_batchbuffer *batch, /* media pipeline */ batch->ptr = batch->buffer; OUT_BATCH(GEN8_PIPELINE_SELECT | PIPELINE_SELECT_MEDIA); - gen8_emit_state_base_address(batch); + gen9_emit_state_base_address(batch); gen8_emit_vfe_state(batch); |