Yeah looks good, thanks. I thought it should be a separate patch, bur never got around to doing it.
Thanks, Jesse ---- Daniel Vetter wrote ---- >On Mon, Sep 07, 2015 at 03:01:39PM +0100, Thomas Wood wrote: >> These have been replaced by subtests in gem_storedw_loop. >> >> Signed-off-by: Thomas Wood <[email protected]> > >Reviewed-by: Daniel Vetter <[email protected]> > >... especially since I asked for this when reviewing Jesse BAT series and >he didn't do it and still put my r-b onto his patch! > >commit 0679702150157706a6def66b893b29c16345f4db >Author: Jesse Barnes <[email protected]> >Date: Wed Aug 5 16:06:31 2015 -0700 > > tests/gem_storedw_loop: add new store_dword test to unify per-ring ones v2 > > >Tsk ;-) >-Daniel > >> --- >> tests/.gitignore | 4 -- >> tests/Makefile.sources | 4 -- >> tests/gem_storedw_loop_blt.c | 150 >> --------------------------------------- >> tests/gem_storedw_loop_bsd.c | 153 >> ---------------------------------------- >> tests/gem_storedw_loop_render.c | 147 -------------------------------------- >> tests/gem_storedw_loop_vebox.c | 127 --------------------------------- >> 6 files changed, 585 deletions(-) >> delete mode 100644 tests/gem_storedw_loop_blt.c >> delete mode 100644 tests/gem_storedw_loop_bsd.c >> delete mode 100644 tests/gem_storedw_loop_render.c >> delete mode 100644 tests/gem_storedw_loop_vebox.c >> >> diff --git a/tests/.gitignore b/tests/.gitignore >> index d6d05ff..dc8bb53 100644 >> --- a/tests/.gitignore >> +++ b/tests/.gitignore >> @@ -99,10 +99,6 @@ gem_set_tiling_vs_blt >> gem_set_tiling_vs_gtt >> gem_set_tiling_vs_pwrite >> gem_storedw_batches_loop >> -gem_storedw_loop_blt >> -gem_storedw_loop_bsd >> -gem_storedw_loop_render >> -gem_storedw_loop_vebox >> gem_streaming_writes >> gem_stress >> gem_threaded_access_tiled >> diff --git a/tests/Makefile.sources b/tests/Makefile.sources >> index ef69299..2e2e088 100644 >> --- a/tests/Makefile.sources >> +++ b/tests/Makefile.sources >> @@ -139,10 +139,6 @@ TESTS_progs = \ >> gem_set_tiling_vs_gtt \ >> gem_set_tiling_vs_pwrite \ >> gem_storedw_loop \ >> - gem_storedw_loop_blt \ >> - gem_storedw_loop_bsd \ >> - gem_storedw_loop_render \ >> - gem_storedw_loop_vebox \ >> gem_threaded_access_tiled \ >> gem_tiled_fence_blits \ >> gem_tiled_pread_basic \ >> diff --git a/tests/gem_storedw_loop_blt.c b/tests/gem_storedw_loop_blt.c >> deleted file mode 100644 >> index e463a27..0000000 >> --- a/tests/gem_storedw_loop_blt.c >> +++ /dev/null >> @@ -1,150 +0,0 @@ >> -/* >> - * Copyright © 2009 Intel Corporation >> - * >> - * Permission is hereby granted, free of charge, to any person obtaining a >> - * copy of this software and associated documentation files (the >> "Software"), >> - * to deal in the Software without restriction, including without limitation >> - * the rights to use, copy, modify, merge, publish, distribute, sublicense, >> - * and/or sell copies of the Software, and to permit persons to whom the >> - * Software is furnished to do so, subject to the following conditions: >> - * >> - * The above copyright notice and this permission notice (including the next >> - * paragraph) shall be included in all copies or substantial portions of the >> - * Software. >> - * >> - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS >> OR >> - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, >> - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL >> - * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR >> OTHER >> - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING >> - * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER >> DEALINGS >> - * IN THE SOFTWARE. >> - * >> - * Authors: >> - * Eric Anholt <[email protected]> >> - * Jesse Barnes <[email protected]> (based on gem_bad_blit.c) >> - * >> - */ >> - >> -#include "igt.h" >> -#include <stdlib.h> >> -#include <stdio.h> >> -#include <string.h> >> -#include <fcntl.h> >> -#include <inttypes.h> >> -#include <errno.h> >> -#include <sys/stat.h> >> -#include <sys/time.h> >> -#include "drm.h" >> -#include "intel_bufmgr.h" >> - >> -IGT_TEST_DESCRIPTION("Basic blitter MI check using MI_STORE_DATA_IMM."); >> - >> -static drm_intel_bufmgr *bufmgr; >> -struct intel_batchbuffer *batch; >> -static drm_intel_bo *target_buffer; >> -static int has_ppgtt = 0; >> - >> -/* >> - * Testcase: Basic blitter MI check using MI_STORE_DATA_IMM >> - */ >> - >> -static void >> -emit_store_dword_imm(int devid, drm_intel_bo *dest, uint32_t val) >> -{ >> - int cmd; >> - cmd = MI_STORE_DWORD_IMM; >> - if (!has_ppgtt) >> - cmd |= MI_MEM_VIRTUAL; >> - >> - BEGIN_BATCH(4, 0); >> - OUT_BATCH(cmd); >> - if (batch->gen >= 8) { >> - OUT_RELOC(dest, I915_GEM_DOMAIN_INSTRUCTION, >> - I915_GEM_DOMAIN_INSTRUCTION, 0); >> - OUT_BATCH(val); >> - } else { >> - OUT_BATCH(0); /* reserved */ >> - OUT_RELOC(dest, I915_GEM_DOMAIN_INSTRUCTION, >> - I915_GEM_DOMAIN_INSTRUCTION, 0); >> - OUT_BATCH(val); >> - } >> - ADVANCE_BATCH(); >> -} >> - >> -static void >> -store_dword_loop(int devid, int divider) >> -{ >> - int i, val = 0; >> - uint32_t *buf; >> - >> - igt_info("running storedw loop on render with stall every %i batch\n", >> divider); >> - >> - for (i = 0; i < SLOW_QUICK(0x2000, 0x10); i++) { >> - emit_store_dword_imm(devid, target_buffer, val); >> - intel_batchbuffer_flush_on_ring(batch, I915_EXEC_BLT); >> - >> - if (i % divider != 0) >> - goto cont; >> - >> - drm_intel_bo_map(target_buffer, 0); >> - >> - buf = target_buffer->virtual; >> - igt_assert_f(buf[0] == val, >> - "value mismatch: cur 0x%08x, stored 0x%08x\n", >> - buf[0], val); >> - >> - drm_intel_bo_unmap(target_buffer); >> - >> -cont: >> - val++; >> - } >> - >> - drm_intel_bo_map(target_buffer, 0); >> - buf = target_buffer->virtual; >> - >> - igt_info("completed %d writes successfully, current value: 0x%08x\n", i, >> - buf[0]); >> - drm_intel_bo_unmap(target_buffer); >> -} >> - >> -igt_simple_main >> -{ >> - int fd; >> - int devid; >> - >> - fd = drm_open_any(); >> - devid = intel_get_drm_devid(fd); >> - >> - has_ppgtt = gem_uses_aliasing_ppgtt(fd); >> - >> - igt_skip_on_f(intel_gen(devid) < 6, >> - "MI_STORE_DATA can only use GTT address on gen4+/g33 and " >> - "needs snoopable mem on pre-gen6\n"); >> - >> - /* This only works with ppgtt */ >> - igt_require(has_ppgtt); >> - >> - bufmgr = drm_intel_bufmgr_gem_init(fd, 4096); >> - igt_assert(bufmgr); >> - drm_intel_bufmgr_gem_enable_reuse(bufmgr); >> - >> - batch = intel_batchbuffer_alloc(bufmgr, devid); >> - igt_assert(batch); >> - >> - target_buffer = drm_intel_bo_alloc(bufmgr, "target bo", 4096, 4096); >> - igt_assert(target_buffer); >> - >> - store_dword_loop(devid, 1); >> - store_dword_loop(devid, 2); >> - if (!igt_run_in_simulation()) { >> - store_dword_loop(devid, 3); >> - store_dword_loop(devid, 5); >> - } >> - >> - drm_intel_bo_unreference(target_buffer); >> - intel_batchbuffer_free(batch); >> - drm_intel_bufmgr_destroy(bufmgr); >> - >> - close(fd); >> -} >> diff --git a/tests/gem_storedw_loop_bsd.c b/tests/gem_storedw_loop_bsd.c >> deleted file mode 100644 >> index c9deb81..0000000 >> --- a/tests/gem_storedw_loop_bsd.c >> +++ /dev/null >> @@ -1,153 +0,0 @@ >> -/* >> - * Copyright © 2009 Intel Corporation >> - * >> - * Permission is hereby granted, free of charge, to any person obtaining a >> - * copy of this software and associated documentation files (the >> "Software"), >> - * to deal in the Software without restriction, including without limitation >> - * the rights to use, copy, modify, merge, publish, distribute, sublicense, >> - * and/or sell copies of the Software, and to permit persons to whom the >> - * Software is furnished to do so, subject to the following conditions: >> - * >> - * The above copyright notice and this permission notice (including the next >> - * paragraph) shall be included in all copies or substantial portions of the >> - * Software. >> - * >> - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS >> OR >> - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, >> - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL >> - * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR >> OTHER >> - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING >> - * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER >> DEALINGS >> - * IN THE SOFTWARE. >> - * >> - * Authors: >> - * Eric Anholt <[email protected]> >> - * Jesse Barnes <[email protected]> (based on gem_bad_blit.c) >> - * >> - */ >> - >> -#include "igt.h" >> -#include <stdlib.h> >> -#include <stdio.h> >> -#include <string.h> >> -#include <fcntl.h> >> -#include <inttypes.h> >> -#include <errno.h> >> -#include <sys/stat.h> >> -#include <sys/time.h> >> -#include "drm.h" >> -#include "intel_bufmgr.h" >> - >> -IGT_TEST_DESCRIPTION("Basic bsd MI check using MI_STORE_DATA_IMM."); >> - >> -static drm_intel_bufmgr *bufmgr; >> -struct intel_batchbuffer *batch; >> -static drm_intel_bo *target_buffer; >> -static int has_ppgtt = 0; >> - >> -/* >> - * Testcase: Basic bsd MI check using MI_STORE_DATA_IMM >> - */ >> - >> -static void >> -emit_store_dword_imm(int devid, drm_intel_bo *dest, uint32_t val) >> -{ >> - int cmd; >> - cmd = MI_STORE_DWORD_IMM; >> - if (!has_ppgtt) >> - cmd |= MI_MEM_VIRTUAL; >> - >> - BEGIN_BATCH(4, 0); >> - OUT_BATCH(cmd); >> - if (batch->gen >= 8) { >> - OUT_RELOC(dest, I915_GEM_DOMAIN_INSTRUCTION, >> - I915_GEM_DOMAIN_INSTRUCTION, 0); >> - OUT_BATCH(val); >> - } else { >> - OUT_BATCH(0); /* reserved */ >> - OUT_RELOC(dest, I915_GEM_DOMAIN_INSTRUCTION, >> - I915_GEM_DOMAIN_INSTRUCTION, 0); >> - OUT_BATCH(val); >> - } >> - ADVANCE_BATCH(); >> -} >> - >> -static void >> -store_dword_loop(int devid, int divider) >> -{ >> - int i, val = 0; >> - uint32_t *buf; >> - >> - igt_info("running storedw loop on render with stall every %i batch\n", >> divider); >> - >> - for (i = 0; i < SLOW_QUICK(0x2000, 0x10); i++) { >> - emit_store_dword_imm(devid, target_buffer, val); >> - intel_batchbuffer_flush_on_ring(batch, I915_EXEC_BSD); >> - >> - if (i % divider != 0) >> - goto cont; >> - >> - drm_intel_bo_map(target_buffer, 0); >> - >> - buf = target_buffer->virtual; >> - igt_assert_f(buf[0] == val, >> - "value mismatch: cur 0x%08x, stored 0x%08x\n", >> - buf[0], val); >> - >> - drm_intel_bo_unmap(target_buffer); >> - >> -cont: >> - val++; >> - } >> - >> - drm_intel_bo_map(target_buffer, 0); >> - buf = target_buffer->virtual; >> - >> - igt_info("completed %d writes successfully, current value: 0x%08x\n", i, >> - buf[0]); >> - drm_intel_bo_unmap(target_buffer); >> -} >> - >> -igt_simple_main >> -{ >> - int fd; >> - int devid; >> - >> - fd = drm_open_any(); >> - devid = intel_get_drm_devid(fd); >> - >> - has_ppgtt = gem_uses_aliasing_ppgtt(fd); >> - >> - igt_skip_on_f(intel_gen(devid) < 6, >> - "MI_STORE_DATA can only use GTT address on gen4+/g33 and " >> - "needs snoopable mem on pre-gen6\n"); >> - >> - igt_skip_on_f(intel_gen(devid) == 6, >> - "MI_STORE_DATA broken on gen6 bsd\n"); >> - >> - /* This only works with ppgtt */ >> - igt_require(has_ppgtt); >> - >> - bufmgr = drm_intel_bufmgr_gem_init(fd, 4096); >> - igt_assert(bufmgr); >> - drm_intel_bufmgr_gem_enable_reuse(bufmgr); >> - >> - batch = intel_batchbuffer_alloc(bufmgr, devid); >> - igt_assert(batch); >> - >> - target_buffer = drm_intel_bo_alloc(bufmgr, "target bo", 4096, 4096); >> - igt_assert(target_buffer); >> - >> - store_dword_loop(devid, 1); >> - store_dword_loop(devid, 2); >> - if (!igt_run_in_simulation()) { >> - store_dword_loop(devid, 3); >> - store_dword_loop(devid, 5); >> - } >> - >> - drm_intel_bo_unreference(target_buffer); >> - intel_batchbuffer_free(batch); >> - drm_intel_bufmgr_destroy(bufmgr); >> - >> - close(fd); >> -} >> diff --git a/tests/gem_storedw_loop_render.c >> b/tests/gem_storedw_loop_render.c >> deleted file mode 100644 >> index 6d7a1fb..0000000 >> --- a/tests/gem_storedw_loop_render.c >> +++ /dev/null >> @@ -1,147 +0,0 @@ >> -/* >> - * Copyright © 2009 Intel Corporation >> - * >> - * Permission is hereby granted, free of charge, to any person obtaining a >> - * copy of this software and associated documentation files (the >> "Software"), >> - * to deal in the Software without restriction, including without limitation >> - * the rights to use, copy, modify, merge, publish, distribute, sublicense, >> - * and/or sell copies of the Software, and to permit persons to whom the >> - * Software is furnished to do so, subject to the following conditions: >> - * >> - * The above copyright notice and this permission notice (including the next >> - * paragraph) shall be included in all copies or substantial portions of the >> - * Software. >> - * >> - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS >> OR >> - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, >> - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL >> - * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR >> OTHER >> - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING >> - * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER >> DEALINGS >> - * IN THE SOFTWARE. >> - * >> - * Authors: >> - * Eric Anholt <[email protected]> >> - * Jesse Barnes <[email protected]> (based on gem_bad_blit.c) >> - * >> - */ >> - >> -#include "igt.h" >> -#include <stdlib.h> >> -#include <stdio.h> >> -#include <string.h> >> -#include <fcntl.h> >> -#include <inttypes.h> >> -#include <errno.h> >> -#include <sys/stat.h> >> -#include <sys/time.h> >> -#include "drm.h" >> -#include "intel_bufmgr.h" >> - >> -IGT_TEST_DESCRIPTION("Basic render MI check using MI_STORE_DATA_IMM."); >> - >> -static drm_intel_bufmgr *bufmgr; >> -struct intel_batchbuffer *batch; >> -static drm_intel_bo *target_buffer; >> -static int has_ppgtt = 0; >> - >> -/* >> - * Testcase: Basic render MI check using MI_STORE_DATA_IMM >> - */ >> - >> -static void >> -emit_store_dword_imm(int devid, drm_intel_bo *dest, uint32_t val) >> -{ >> - int cmd; >> - cmd = MI_STORE_DWORD_IMM; >> - if (!has_ppgtt) >> - cmd |= MI_MEM_VIRTUAL; >> - >> - BEGIN_BATCH(4, 0); >> - OUT_BATCH(cmd); >> - if (batch->gen >= 8) { >> - OUT_RELOC(dest, I915_GEM_DOMAIN_INSTRUCTION, >> - I915_GEM_DOMAIN_INSTRUCTION, 0); >> - OUT_BATCH(val); >> - } else { >> - OUT_BATCH(0); /* reserved */ >> - OUT_RELOC(dest, I915_GEM_DOMAIN_INSTRUCTION, >> - I915_GEM_DOMAIN_INSTRUCTION, 0); >> - OUT_BATCH(val); >> - } >> - ADVANCE_BATCH(); >> -} >> - >> -static void >> -store_dword_loop(int devid, int divider) >> -{ >> - int i, val = 0; >> - uint32_t *buf; >> - >> - igt_info("running storedw loop on render with stall every %i batch\n", >> divider); >> - >> - for (i = 0; i < SLOW_QUICK(0x2000, 0x10); i++) { >> - emit_store_dword_imm(devid, target_buffer, val); >> - intel_batchbuffer_flush_on_ring(batch, 0); >> - >> - if (i % divider != 0) >> - goto cont; >> - >> - drm_intel_bo_map(target_buffer, 0); >> - >> - buf = target_buffer->virtual; >> - igt_assert_f(buf[0] == val, >> - "value mismatch: cur 0x%08x, stored 0x%08x\n", >> - buf[0], val); >> - >> - drm_intel_bo_unmap(target_buffer); >> - >> -cont: >> - val++; >> - } >> - >> - drm_intel_bo_map(target_buffer, 0); >> - buf = target_buffer->virtual; >> - >> - igt_info("completed %d writes successfully, current value: 0x%08x\n", i, >> - buf[0]); >> - drm_intel_bo_unmap(target_buffer); >> -} >> - >> -igt_simple_main >> -{ >> - int fd; >> - int devid; >> - >> - fd = drm_open_any(); >> - devid = intel_get_drm_devid(fd); >> - >> - has_ppgtt = gem_uses_aliasing_ppgtt(fd); >> - >> - igt_skip_on_f(intel_gen(devid) < 6, >> - "MI_STORE_DATA can only use GTT address on gen4+/g33 and " >> - "needs snoopable mem on pre-gen6\n"); >> - >> - bufmgr = drm_intel_bufmgr_gem_init(fd, 4096); >> - igt_assert(bufmgr); >> - drm_intel_bufmgr_gem_enable_reuse(bufmgr); >> - >> - batch = intel_batchbuffer_alloc(bufmgr, devid); >> - igt_assert(batch); >> - >> - target_buffer = drm_intel_bo_alloc(bufmgr, "target bo", 4096, 4096); >> - igt_assert(target_buffer); >> - >> - store_dword_loop(devid, 1); >> - store_dword_loop(devid, 2); >> - if (!igt_run_in_simulation()) { >> - store_dword_loop(devid, 3); >> - store_dword_loop(devid, 5); >> - } >> - >> - drm_intel_bo_unreference(target_buffer); >> - intel_batchbuffer_free(batch); >> - drm_intel_bufmgr_destroy(bufmgr); >> - >> - close(fd); >> -} >> diff --git a/tests/gem_storedw_loop_vebox.c b/tests/gem_storedw_loop_vebox.c >> deleted file mode 100644 >> index 3fec02c..0000000 >> --- a/tests/gem_storedw_loop_vebox.c >> +++ /dev/null >> @@ -1,127 +0,0 @@ >> -/* >> - * Copyright © 2012 Intel Corporation >> - * >> - * Permission is hereby granted, free of charge, to any person obtaining a >> - * copy of this software and associated documentation files (the >> "Software"), >> - * to deal in the Software without restriction, including without limitation >> - * the rights to use, copy, modify, merge, publish, distribute, sublicense, >> - * and/or sell copies of the Software, and to permit persons to whom the >> - * Software is furnished to do so, subject to the following conditions: >> - * >> - * The above copyright notice and this permission notice (including the next >> - * paragraph) shall be included in all copies or substantial portions of the >> - * Software. >> - * >> - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS >> OR >> - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, >> - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL >> - * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR >> OTHER >> - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING >> - * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER >> DEALINGS >> - * IN THE SOFTWARE. >> - * >> - * Authors: >> - * Xiang, Haihao <[email protected]> (based on gem_store_dw_loop_*) >> - * >> - */ >> - >> -#include "igt.h" >> -#include <stdlib.h> >> -#include <stdio.h> >> -#include <string.h> >> -#include <fcntl.h> >> -#include <inttypes.h> >> -#include <errno.h> >> -#include <sys/stat.h> >> -#include <sys/time.h> >> -#include "drm.h" >> -#include "intel_bufmgr.h" >> - >> -IGT_TEST_DESCRIPTION("Basic vebox MI check using MI_STORE_DATA_IMM."); >> - >> -#define LOCAL_I915_EXEC_VEBOX (4<<0) >> - >> -static drm_intel_bufmgr *bufmgr; >> -struct intel_batchbuffer *batch; >> -static drm_intel_bo *target_buffer; >> - >> -/* >> - * Testcase: Basic vebox MI check using MI_STORE_DATA_IMM >> - */ >> - >> -static void >> -store_dword_loop(int divider) >> -{ >> - int cmd, i, val = 0; >> - uint32_t *buf; >> - >> - igt_info("running storedw loop on blt with stall every %i batch\n", >> divider); >> - >> - cmd = MI_STORE_DWORD_IMM; >> - >> - for (i = 0; i < SLOW_QUICK(0x2000, 0x10); i++) { >> - BEGIN_BATCH(4, 0); >> - OUT_BATCH(cmd); >> - if (batch->gen < 8) >> - OUT_BATCH(0); /* reserved */ >> - OUT_RELOC(target_buffer, I915_GEM_DOMAIN_INSTRUCTION, >> - I915_GEM_DOMAIN_INSTRUCTION, 0); >> - OUT_BATCH(val); >> - ADVANCE_BATCH(); >> - >> - intel_batchbuffer_flush_on_ring(batch, LOCAL_I915_EXEC_VEBOX); >> - >> - if (i % divider != 0) >> - goto cont; >> - >> - drm_intel_bo_map(target_buffer, 0); >> - >> - buf = target_buffer->virtual; >> - igt_assert_eq_u32(buf[0], val); >> - >> - drm_intel_bo_unmap(target_buffer); >> - >> -cont: >> - val++; >> - } >> - >> - drm_intel_bo_map(target_buffer, 0); >> - buf = target_buffer->virtual; >> - >> - igt_info("completed %d writes successfully, current value: 0x%08x\n", i, >> - buf[0]); >> - drm_intel_bo_unmap(target_buffer); >> -} >> - >> -igt_simple_main >> -{ >> - int fd; >> - >> - fd = drm_open_any(); >> - >> - igt_require(gem_has_vebox(fd)); >> - igt_require(gem_uses_aliasing_ppgtt(fd)); >> - >> - bufmgr = drm_intel_bufmgr_gem_init(fd, 4096); >> - igt_assert(bufmgr); >> - drm_intel_bufmgr_gem_enable_reuse(bufmgr); >> - >> - batch = intel_batchbuffer_alloc(bufmgr, intel_get_drm_devid(fd)); >> - igt_require(batch); >> - >> - target_buffer = drm_intel_bo_alloc(bufmgr, "target bo", 4096, 4096); >> - igt_require(target_buffer); >> - >> - store_dword_loop(1); >> - store_dword_loop(2); >> - if (!igt_run_in_simulation()) { >> - store_dword_loop(3); >> - store_dword_loop(5); >> - } >> - >> - drm_intel_bo_unreference(target_buffer); >> - intel_batchbuffer_free(batch); >> - drm_intel_bufmgr_destroy(bufmgr); >> - >> - close(fd); >> -} >> -- >> 1.9.1 >> >> _______________________________________________ >> Intel-gfx mailing list >> [email protected] >> http://lists.freedesktop.org/mailman/listinfo/intel-gfx > >-- >Daniel Vetter >Software Engineer, Intel Corporation >http://blog.ffwll.ch >
_______________________________________________ Intel-gfx mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/intel-gfx
