* [igt-dev] [PATCH i-g-t 0/4] Use intel_cmds_info in i915_pm_rpm
@ 2023-05-22 9:57 Karolina Stolarek
2023-05-22 9:57 ` [igt-dev] [PATCH i-g-t 1/4] lib/i915: Add library support for XY_COLOR_BLT Karolina Stolarek
` (5 more replies)
0 siblings, 6 replies; 11+ messages in thread
From: Karolina Stolarek @ 2023-05-22 9:57 UTC (permalink / raw)
To: igt-dev
i915_pm_rpm test uses XY_COLOR_BLT blitter command which is not
supported in newer generations. This series modifies gem-execbuf
test to switch to fast copy if it can't do a color blit. It also
introduces an updated version of intel_cmds_info library that has
information on XY_COLOR_BLT support.
Karolina Stolarek (2):
lib/intel_cmds_info: Drop BLT_CMD_LONG flag
tests/i915/i915_pm_rpm: Check command property instead of gen
Vikas Srivastava (2):
lib/i915: Add library support for XY_COLOR_BLT
tests/i915/i915_pm_rpm: Modify gem-execbuf test for gen12+
lib/i915/i915_blt.c | 16 +++
lib/i915/i915_blt.h | 1 +
lib/i915/intel_cmds_info.c | 23 ++++-
lib/i915/intel_cmds_info.h | 1 +
tests/i915/i915_pm_rpm.c | 195 +++++++++++++++++++++++++++++--------
5 files changed, 191 insertions(+), 45 deletions(-)
--
2.25.1
^ permalink raw reply [flat|nested] 11+ messages in thread* [igt-dev] [PATCH i-g-t 1/4] lib/i915: Add library support for XY_COLOR_BLT 2023-05-22 9:57 [igt-dev] [PATCH i-g-t 0/4] Use intel_cmds_info in i915_pm_rpm Karolina Stolarek @ 2023-05-22 9:57 ` Karolina Stolarek 2023-05-22 9:57 ` [igt-dev] [PATCH i-g-t 2/4] tests/i915/i915_pm_rpm: Modify gem-execbuf test for gen12+ Karolina Stolarek ` (4 subsequent siblings) 5 siblings, 0 replies; 11+ messages in thread From: Karolina Stolarek @ 2023-05-22 9:57 UTC (permalink / raw) To: igt-dev; +Cc: Vikas Srivastava From: Vikas Srivastava <vikas.srivastava@intel.com> Add API to check support for XY_COLOR_BLT command in existing library for gen12 and older platforms. Cc: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com> Signed-off-by: Vikas Srivastava <vikas.srivastava@intel.com> Signed-off-by: Karolina Stolarek <karolina.stolarek@intel.com> --- lib/i915/i915_blt.c | 16 ++++++++++++++++ lib/i915/i915_blt.h | 1 + lib/i915/intel_cmds_info.c | 23 ++++++++++++++++++++--- lib/i915/intel_cmds_info.h | 2 ++ 4 files changed, 39 insertions(+), 3 deletions(-) diff --git a/lib/i915/i915_blt.c b/lib/i915/i915_blt.c index ef67fe26f..b9a5f8e19 100644 --- a/lib/i915/i915_blt.c +++ b/lib/i915/i915_blt.c @@ -317,6 +317,22 @@ bool blt_has_xy_src_copy(int i915) return blt_supports_command(cmds_info, XY_SRC_COPY); } +/** + * blt_has_xy_color + * @i915: drm fd + * + * Check if XY_COLOR_BLT is supported by @i915 device + * + * Returns: + * true if it does, false otherwise. + */ +bool blt_has_xy_color(int i915) +{ + const struct intel_cmds_info *cmds_info = GET_CMDS_INFO(i915); + + return blt_supports_command(cmds_info, XY_COLOR_BLT); +} + /** * blt_fast_copy_supports_tiling * @i915: drm fd diff --git a/lib/i915/i915_blt.h b/lib/i915/i915_blt.h index a5f0edd15..1e18d15c3 100644 --- a/lib/i915/i915_blt.h +++ b/lib/i915/i915_blt.h @@ -169,6 +169,7 @@ bool blt_cmd_has_property(const struct intel_cmds_info *cmds_info, bool blt_has_block_copy(int i915); bool blt_has_fast_copy(int i915); bool blt_has_xy_src_copy(int i915); +bool blt_has_xy_color(int i915); bool blt_fast_copy_supports_tiling(int i915, enum blt_tiling_type tiling); bool blt_block_copy_supports_tiling(int i915, enum blt_tiling_type tiling); diff --git a/lib/i915/intel_cmds_info.c b/lib/i915/intel_cmds_info.c index 166fb4740..3ce2fd74b 100644 --- a/lib/i915/intel_cmds_info.c +++ b/lib/i915/intel_cmds_info.c @@ -82,24 +82,38 @@ static const struct blt_cmd_info BIT(T_TILE64), BLT_CMD_EXTENDED); +static const struct blt_cmd_info + gen6_xy_color_blt = BLT_INFO_EXT(XY_COLOR_BLT, + BIT(T_LINEAR) | + BIT(T_YMAJOR) | + BIT(T_XMAJOR), + BLT_CMD_LONG); + +static const struct blt_cmd_info + pre_gen6_xy_color_blt = BLT_INFO(XY_COLOR_BLT, + BIT(T_LINEAR) | + BIT(T_XMAJOR)); + const struct intel_cmds_info pre_gen6_cmds_info = { .blt_cmds = { [SRC_COPY] = &src_copy, - [XY_SRC_COPY] = &pre_gen6_xy_src_copy + [XY_SRC_COPY] = &pre_gen6_xy_src_copy, + [XY_COLOR_BLT] = &pre_gen6_xy_color_blt, } }; const struct intel_cmds_info gen6_cmds_info = { .blt_cmds = { [SRC_COPY] = &src_copy, - [XY_SRC_COPY] = &gen6_xy_src_copy + [XY_SRC_COPY] = &gen6_xy_src_copy, + [XY_COLOR_BLT] = &gen6_xy_color_blt, } - }; const struct intel_cmds_info gen8_cmds_info = { .blt_cmds = { [XY_SRC_COPY] = &gen6_xy_src_copy, + [XY_COLOR_BLT] = &gen6_xy_color_blt, } }; @@ -107,6 +121,7 @@ const struct intel_cmds_info gen11_cmds_info = { .blt_cmds = { [XY_SRC_COPY] = &gen6_xy_src_copy, [XY_FAST_COPY] = &gen11_xy_fast_copy, + [XY_COLOR_BLT] = &gen6_xy_color_blt, } }; @@ -115,6 +130,7 @@ const struct intel_cmds_info gen12_cmds_info = { [XY_SRC_COPY] = &gen6_xy_src_copy, [XY_FAST_COPY] = &gen12_xy_fast_copy, [XY_BLOCK_COPY] = &gen12_xy_block_copy, + [XY_COLOR_BLT] = &gen6_xy_color_blt, } }; @@ -123,6 +139,7 @@ const struct intel_cmds_info gen12_dg2_cmds_info = { [XY_SRC_COPY] = &gen6_xy_src_copy, [XY_FAST_COPY] = &dg2_xy_fast_copy, [XY_BLOCK_COPY] = &dg2_xy_block_copy, + [XY_COLOR_BLT] = &gen6_xy_color_blt, } }; diff --git a/lib/i915/intel_cmds_info.h b/lib/i915/intel_cmds_info.h index 1db8709f8..5998a35ca 100644 --- a/lib/i915/intel_cmds_info.h +++ b/lib/i915/intel_cmds_info.h @@ -23,6 +23,7 @@ enum blt_cmd_type { XY_SRC_COPY, XY_FAST_COPY, XY_BLOCK_COPY, + XY_COLOR_BLT, __BLT_MAX_CMD }; @@ -33,6 +34,7 @@ struct blt_cmd_info { uint32_t flags; #define BLT_CMD_EXTENDED (1 << 0) #define BLT_CMD_SUPPORTS_COMPRESSION (1 << 1) +#define BLT_CMD_LONG (1 << 2) }; struct intel_cmds_info { -- 2.25.1 ^ permalink raw reply related [flat|nested] 11+ messages in thread
* [igt-dev] [PATCH i-g-t 2/4] tests/i915/i915_pm_rpm: Modify gem-execbuf test for gen12+ 2023-05-22 9:57 [igt-dev] [PATCH i-g-t 0/4] Use intel_cmds_info in i915_pm_rpm Karolina Stolarek 2023-05-22 9:57 ` [igt-dev] [PATCH i-g-t 1/4] lib/i915: Add library support for XY_COLOR_BLT Karolina Stolarek @ 2023-05-22 9:57 ` Karolina Stolarek 2023-05-22 11:29 ` Zbigniew Kempczyński 2023-05-22 9:57 ` [igt-dev] [PATCH i-g-t 3/4] lib/intel_cmds_info: Drop BLT_CMD_LONG flag Karolina Stolarek ` (3 subsequent siblings) 5 siblings, 1 reply; 11+ messages in thread From: Karolina Stolarek @ 2023-05-22 9:57 UTC (permalink / raw) To: igt-dev; +Cc: Vikas Srivastava From: Vikas Srivastava <vikas.srivastava@intel.com> xy_color_blt is not supported on MTL and other gen12+ target hence an IGT test update needs to be done. Modify the test to add a lib API to check for xy_color_blt support. Signed-off-by: Vikas Srivastava <vikas.srivastava@intel.com> Signed-off-by: Karolina Stolarek <karolina.stolarek@intel.com> --- tests/i915/i915_pm_rpm.c | 185 ++++++++++++++++++++++++++++++--------- 1 file changed, 146 insertions(+), 39 deletions(-) diff --git a/tests/i915/i915_pm_rpm.c b/tests/i915/i915_pm_rpm.c index d9b4cbbfe..b23eba544 100644 --- a/tests/i915/i915_pm_rpm.c +++ b/tests/i915/i915_pm_rpm.c @@ -243,6 +243,7 @@ #include "igt_debugfs.h" #include "igt_device.h" #include "igt_edid.h" +#include "i915/i915_blt.h" #define MSR_PC8_RES 0x630 #define MSR_PC9_RES 0x631 @@ -252,6 +253,11 @@ #define MAX_ENCODERS 32 #define MAX_CRTCS 16 +#define WIDTH 64 +#define HEIGHT 64 +#define STRIDE (WIDTH) +#define SIZE (HEIGHT * STRIDE) + enum pc8_status { PC8_ENABLED, PC8_DISABLED @@ -308,10 +314,57 @@ struct modeset_params { drmModeModeInfoPtr mode; }; +struct data_t { + int width; + int height; + uint32_t region; +}; + struct modeset_params lpsp_mode_params; struct modeset_params non_lpsp_mode_params; struct modeset_params *default_mode_params; +/* API to create mmap buffer */ +static struct intel_buf * +create_buf(struct data_t *data, uint32_t color) +{ + struct intel_buf *buf; + uint8_t *ptr; + uint32_t handle; + struct buf_ops *bops; + int i; + + buf = calloc(1, sizeof(*buf)); + igt_assert(buf); + bops = buf_ops_create(drm_fd); + + handle = gem_create_in_memory_regions(drm_fd, SIZE, data->region); + intel_buf_init_using_handle(bops, handle, buf, + data->width / 4, data->height, 32, 0, + I915_TILING_NONE, 0); + + ptr = gem_mmap__cpu_coherent(drm_fd, buf->handle, 0, + buf->surface[0].size, PROT_WRITE); + + for (i = 0; i < buf->surface[0].size; i++) + ptr[i] = color; + + munmap(ptr, buf->surface[0].size); + + return buf; +} + +/* checking the buffer content is correct or not */ +static void buf_check(uint8_t *ptr, int x, int y, uint8_t color) +{ + uint8_t val; + + val = ptr[y * WIDTH + x]; + igt_assert_f(val == color, + "Expected 0x%02x, found 0x%02x at (%d,%d)\n", + color, val, x, y); +} + static int modprobe(const char *driver) { return igt_kmod_load(driver, NULL); @@ -1522,7 +1575,7 @@ static void submit_blt_cmd(uint32_t dst_handle, int dst_size, /* Make sure we can submit a batch buffer and verify its result. */ static void gem_execbuf_subtest(struct drm_i915_gem_memory_class_instance *mem_regions) { - int x, y; + int x, y, i, j; uint32_t handle; int bpp = 4; int pitch = 128 * bpp; @@ -1531,10 +1584,31 @@ static void gem_execbuf_subtest(struct drm_i915_gem_memory_class_instance *mem_r uint32_t presumed_offset = 0; int sq_x = 5, sq_y = 10, sq_w = 15, sq_h = 20; uint32_t color; + struct intel_buf *buf; + uint8_t *ptr; + struct data_t data = {0, }; + struct igt_collection *region; + struct drm_i915_query_memory_regions *region_info; + struct igt_collection *region_set; + uint32_t id; igt_require_gem(drm_fd); gem_require_blitter(drm_fd); + region_info = gem_get_query_memory_regions(drm_fd); + igt_assert(region_info); + region_set = get_memory_region_set(region_info, + I915_SYSTEM_MEMORY, + I915_DEVICE_MEMORY); + for_each_combination(region, 1, region_set) { + id = igt_collection_get_value(region, 0); + break; + } + + data.width = WIDTH; + data.height = HEIGHT; + data.region = id; + /* Create and set data while the device is active. */ enable_one_screen_or_forcewake_get_and_wait(&ms_data); @@ -1549,62 +1623,95 @@ static void gem_execbuf_subtest(struct drm_i915_gem_memory_class_instance *mem_r disable_all_screens_or_forcewake_put_and_wait(&ms_data); color = 0x12345678; - submit_blt_cmd(handle, dst_size, sq_x, sq_y, sq_w, sq_h, pitch, color, - &presumed_offset); - igt_assert(wait_for_suspended()); + if (blt_has_xy_color(drm_fd)) { + submit_blt_cmd(handle, dst_size, sq_x, sq_y, sq_w, sq_h, pitch, color, + &presumed_offset); + igt_assert(wait_for_suspended()); - gem_read(drm_fd, handle, 0, cpu_buf, dst_size); - igt_assert(wait_for_suspended()); - for (y = 0; y < 128; y++) { - for (x = 0; x < 128; x++) { - uint32_t px = cpu_buf[y * 128 + x]; + gem_read(drm_fd, handle, 0, cpu_buf, dst_size); + for (y = 0; y < 128; y++) { + for (x = 0; x < 128; x++) { + uint32_t px = cpu_buf[y * 128 + x]; - if (y >= sq_y && y < (sq_y + sq_h) && - x >= sq_x && x < (sq_x + sq_w)) - igt_assert_eq_u32(px, color); - else - igt_assert(px == 0); + if (y >= sq_y && y < (sq_y + sq_h) && + x >= sq_x && x < (sq_x + sq_w)) + igt_assert_eq_u32(px, color); + else + igt_assert(px == 0); + } } + } else { + buf = create_buf(&data, color); + ptr = gem_mmap__device_coherent(drm_fd, buf->handle, 0, + buf->surface[0].size, PROT_READ); + igt_assert(wait_for_suspended()); + + for (i = 0; i < WIDTH; i++) + for (j = 0; j < HEIGHT; j++) + buf_check(ptr, i, j, color); + munmap(ptr, buf->surface[0].size); } /* Now resume and check for it again. */ enable_one_screen_or_forcewake_get_and_wait(&ms_data); - memset(cpu_buf, 0, dst_size); - gem_read(drm_fd, handle, 0, cpu_buf, dst_size); - for (y = 0; y < 128; y++) { - for (x = 0; x < 128; x++) { - uint32_t px = cpu_buf[y * 128 + x]; - - if (y >= sq_y && y < (sq_y + sq_h) && - x >= sq_x && x < (sq_x + sq_w)) - igt_assert_eq_u32(px, color); - else - igt_assert(px == 0); + if (blt_has_xy_color(drm_fd)) { + memset(cpu_buf, 0, dst_size); + gem_read(drm_fd, handle, 0, cpu_buf, dst_size); + + for (y = 0; y < 128; y++) { + for (x = 0; x < 128; x++) { + uint32_t px = cpu_buf[y * 128 + x]; + + if (y >= sq_y && y < (sq_y + sq_h) && + x >= sq_x && x < (sq_x + sq_w)) + igt_assert_eq_u32(px, color); + else + igt_assert(px == 0); + } } + } else { + buf = create_buf(&data, color); + ptr = gem_mmap__device_coherent(drm_fd, buf->handle, 0, + buf->surface[0].size, PROT_READ); + for (i = 0; i < WIDTH; i++) + for (j = 0; j < HEIGHT; j++) + buf_check(ptr, i, j, color); + munmap(ptr, buf->surface[0].size); } /* Now we'll do the opposite: do the blt while active, then read while * suspended. We use the same spot, but a different color. As a bonus, * we're testing the presumed_offset from the previous command. */ color = 0x87654321; - submit_blt_cmd(handle, dst_size, sq_x, sq_y, sq_w, sq_h, pitch, color, - &presumed_offset); + if (blt_has_xy_color(drm_fd)) { - disable_all_screens_or_forcewake_put_and_wait(&ms_data); + submit_blt_cmd(handle, dst_size, sq_x, sq_y, sq_w, sq_h, pitch, color, + &presumed_offset); - memset(cpu_buf, 0, dst_size); - gem_read(drm_fd, handle, 0, cpu_buf, dst_size); - for (y = 0; y < 128; y++) { - for (x = 0; x < 128; x++) { - uint32_t px = cpu_buf[y * 128 + x]; - - if (y >= sq_y && y < (sq_y + sq_h) && - x >= sq_x && x < (sq_x + sq_w)) - igt_assert_eq_u32(px, color); - else - igt_assert(px == 0); + disable_all_screens_or_forcewake_put_and_wait(&ms_data); + + memset(cpu_buf, 0, dst_size); + gem_read(drm_fd, handle, 0, cpu_buf, dst_size); + for (y = 0; y < 128; y++) { + for (x = 0; x < 128; x++) { + uint32_t px = cpu_buf[y * 128 + x]; + + if (y >= sq_y && y < (sq_y + sq_h) && + x >= sq_x && x < (sq_x + sq_w)) + igt_assert_eq_u32(px, color); + else + igt_assert(px == 0); + } } + } else { + buf = create_buf(&data, color); + ptr = gem_mmap__device_coherent(drm_fd, buf->handle, 0, + buf->surface[0].size, PROT_READ); + for (i = 0; i < WIDTH; i++) + for (j = 0; j < HEIGHT; j++) + buf_check(ptr, i, j, color); + munmap(ptr, buf->surface[0].size); } gem_close(drm_fd, handle); -- 2.25.1 ^ permalink raw reply related [flat|nested] 11+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 2/4] tests/i915/i915_pm_rpm: Modify gem-execbuf test for gen12+ 2023-05-22 9:57 ` [igt-dev] [PATCH i-g-t 2/4] tests/i915/i915_pm_rpm: Modify gem-execbuf test for gen12+ Karolina Stolarek @ 2023-05-22 11:29 ` Zbigniew Kempczyński 2023-05-25 9:35 ` Karolina Stolarek 0 siblings, 1 reply; 11+ messages in thread From: Zbigniew Kempczyński @ 2023-05-22 11:29 UTC (permalink / raw) To: Karolina Stolarek; +Cc: igt-dev On Mon, May 22, 2023 at 11:57:12AM +0200, Karolina Stolarek wrote: > From: Vikas Srivastava <vikas.srivastava@intel.com> > > xy_color_blt is not supported on MTL and other gen12+ target > hence an IGT test update needs to be done. Modify the test > to add a lib API to check for xy_color_blt support. > > Signed-off-by: Vikas Srivastava <vikas.srivastava@intel.com> > Signed-off-by: Karolina Stolarek <karolina.stolarek@intel.com> > --- > tests/i915/i915_pm_rpm.c | 185 ++++++++++++++++++++++++++++++--------- > 1 file changed, 146 insertions(+), 39 deletions(-) > > diff --git a/tests/i915/i915_pm_rpm.c b/tests/i915/i915_pm_rpm.c > index d9b4cbbfe..b23eba544 100644 > --- a/tests/i915/i915_pm_rpm.c > +++ b/tests/i915/i915_pm_rpm.c > @@ -243,6 +243,7 @@ > #include "igt_debugfs.h" > #include "igt_device.h" > #include "igt_edid.h" > +#include "i915/i915_blt.h" > > #define MSR_PC8_RES 0x630 > #define MSR_PC9_RES 0x631 > @@ -252,6 +253,11 @@ > #define MAX_ENCODERS 32 > #define MAX_CRTCS 16 > > +#define WIDTH 64 > +#define HEIGHT 64 > +#define STRIDE (WIDTH) > +#define SIZE (HEIGHT * STRIDE) > + > enum pc8_status { > PC8_ENABLED, > PC8_DISABLED > @@ -308,10 +314,57 @@ struct modeset_params { > drmModeModeInfoPtr mode; > }; > > +struct data_t { > + int width; > + int height; > + uint32_t region; > +}; > + > struct modeset_params lpsp_mode_params; > struct modeset_params non_lpsp_mode_params; > struct modeset_params *default_mode_params; > > +/* API to create mmap buffer */ > +static struct intel_buf * > +create_buf(struct data_t *data, uint32_t color) > +{ > + struct intel_buf *buf; > + uint8_t *ptr; > + uint32_t handle; > + struct buf_ops *bops; > + int i; > + > + buf = calloc(1, sizeof(*buf)); > + igt_assert(buf); > + bops = buf_ops_create(drm_fd); > + > + handle = gem_create_in_memory_regions(drm_fd, SIZE, data->region); > + intel_buf_init_using_handle(bops, handle, buf, > + data->width / 4, data->height, 32, 0, > + I915_TILING_NONE, 0); > + > + ptr = gem_mmap__cpu_coherent(drm_fd, buf->handle, 0, > + buf->surface[0].size, PROT_WRITE); > + > + for (i = 0; i < buf->surface[0].size; i++) > + ptr[i] = color; > + > + munmap(ptr, buf->surface[0].size); > + > + return buf; > +} > + > +/* checking the buffer content is correct or not */ > +static void buf_check(uint8_t *ptr, int x, int y, uint8_t color) > +{ > + uint8_t val; > + > + val = ptr[y * WIDTH + x]; > + igt_assert_f(val == color, > + "Expected 0x%02x, found 0x%02x at (%d,%d)\n", > + color, val, x, y); > +} > + > static int modprobe(const char *driver) > { > return igt_kmod_load(driver, NULL); > @@ -1522,7 +1575,7 @@ static void submit_blt_cmd(uint32_t dst_handle, int dst_size, > /* Make sure we can submit a batch buffer and verify its result. */ > static void gem_execbuf_subtest(struct drm_i915_gem_memory_class_instance *mem_regions) > { > - int x, y; > + int x, y, i, j; > uint32_t handle; > int bpp = 4; > int pitch = 128 * bpp; > @@ -1531,10 +1584,31 @@ static void gem_execbuf_subtest(struct drm_i915_gem_memory_class_instance *mem_r > uint32_t presumed_offset = 0; > int sq_x = 5, sq_y = 10, sq_w = 15, sq_h = 20; > uint32_t color; > + struct intel_buf *buf; > + uint8_t *ptr; > + struct data_t data = {0, }; > + struct igt_collection *region; > + struct drm_i915_query_memory_regions *region_info; > + struct igt_collection *region_set; > + uint32_t id; > > igt_require_gem(drm_fd); > gem_require_blitter(drm_fd); > > + region_info = gem_get_query_memory_regions(drm_fd); > + igt_assert(region_info); > + region_set = get_memory_region_set(region_info, > + I915_SYSTEM_MEMORY, > + I915_DEVICE_MEMORY); > + for_each_combination(region, 1, region_set) { > + id = igt_collection_get_value(region, 0); > + break; > + } All above region work finally lead to simple gem_create() in system memory (break). I think order of SYSTEM and DEVICE regions has meaning here (I guess you want to prefer DEVICE on discrete instead of SYSTEM). -- Zbigniew > + > + data.width = WIDTH; > + data.height = HEIGHT; > + data.region = id; > + > /* Create and set data while the device is active. */ > enable_one_screen_or_forcewake_get_and_wait(&ms_data); > > @@ -1549,62 +1623,95 @@ static void gem_execbuf_subtest(struct drm_i915_gem_memory_class_instance *mem_r > disable_all_screens_or_forcewake_put_and_wait(&ms_data); > > color = 0x12345678; > - submit_blt_cmd(handle, dst_size, sq_x, sq_y, sq_w, sq_h, pitch, color, > - &presumed_offset); > - igt_assert(wait_for_suspended()); > + if (blt_has_xy_color(drm_fd)) { > + submit_blt_cmd(handle, dst_size, sq_x, sq_y, sq_w, sq_h, pitch, color, > + &presumed_offset); > + igt_assert(wait_for_suspended()); > > - gem_read(drm_fd, handle, 0, cpu_buf, dst_size); > - igt_assert(wait_for_suspended()); > - for (y = 0; y < 128; y++) { > - for (x = 0; x < 128; x++) { > - uint32_t px = cpu_buf[y * 128 + x]; > + gem_read(drm_fd, handle, 0, cpu_buf, dst_size); > + for (y = 0; y < 128; y++) { > + for (x = 0; x < 128; x++) { > + uint32_t px = cpu_buf[y * 128 + x]; > > - if (y >= sq_y && y < (sq_y + sq_h) && > - x >= sq_x && x < (sq_x + sq_w)) > - igt_assert_eq_u32(px, color); > - else > - igt_assert(px == 0); > + if (y >= sq_y && y < (sq_y + sq_h) && > + x >= sq_x && x < (sq_x + sq_w)) > + igt_assert_eq_u32(px, color); > + else > + igt_assert(px == 0); > + } > } > + } else { > + buf = create_buf(&data, color); > + ptr = gem_mmap__device_coherent(drm_fd, buf->handle, 0, > + buf->surface[0].size, PROT_READ); > + igt_assert(wait_for_suspended()); > + > + for (i = 0; i < WIDTH; i++) > + for (j = 0; j < HEIGHT; j++) > + buf_check(ptr, i, j, color); > + munmap(ptr, buf->surface[0].size); > } > > /* Now resume and check for it again. */ > enable_one_screen_or_forcewake_get_and_wait(&ms_data); > > - memset(cpu_buf, 0, dst_size); > - gem_read(drm_fd, handle, 0, cpu_buf, dst_size); > - for (y = 0; y < 128; y++) { > - for (x = 0; x < 128; x++) { > - uint32_t px = cpu_buf[y * 128 + x]; > - > - if (y >= sq_y && y < (sq_y + sq_h) && > - x >= sq_x && x < (sq_x + sq_w)) > - igt_assert_eq_u32(px, color); > - else > - igt_assert(px == 0); > + if (blt_has_xy_color(drm_fd)) { > + memset(cpu_buf, 0, dst_size); > + gem_read(drm_fd, handle, 0, cpu_buf, dst_size); > + > + for (y = 0; y < 128; y++) { > + for (x = 0; x < 128; x++) { > + uint32_t px = cpu_buf[y * 128 + x]; > + > + if (y >= sq_y && y < (sq_y + sq_h) && > + x >= sq_x && x < (sq_x + sq_w)) > + igt_assert_eq_u32(px, color); > + else > + igt_assert(px == 0); > + } > } > + } else { > + buf = create_buf(&data, color); > + ptr = gem_mmap__device_coherent(drm_fd, buf->handle, 0, > + buf->surface[0].size, PROT_READ); > + for (i = 0; i < WIDTH; i++) > + for (j = 0; j < HEIGHT; j++) > + buf_check(ptr, i, j, color); > + munmap(ptr, buf->surface[0].size); > } > > /* Now we'll do the opposite: do the blt while active, then read while > * suspended. We use the same spot, but a different color. As a bonus, > * we're testing the presumed_offset from the previous command. */ > color = 0x87654321; > - submit_blt_cmd(handle, dst_size, sq_x, sq_y, sq_w, sq_h, pitch, color, > - &presumed_offset); > + if (blt_has_xy_color(drm_fd)) { > > - disable_all_screens_or_forcewake_put_and_wait(&ms_data); > + submit_blt_cmd(handle, dst_size, sq_x, sq_y, sq_w, sq_h, pitch, color, > + &presumed_offset); > > - memset(cpu_buf, 0, dst_size); > - gem_read(drm_fd, handle, 0, cpu_buf, dst_size); > - for (y = 0; y < 128; y++) { > - for (x = 0; x < 128; x++) { > - uint32_t px = cpu_buf[y * 128 + x]; > - > - if (y >= sq_y && y < (sq_y + sq_h) && > - x >= sq_x && x < (sq_x + sq_w)) > - igt_assert_eq_u32(px, color); > - else > - igt_assert(px == 0); > + disable_all_screens_or_forcewake_put_and_wait(&ms_data); > + > + memset(cpu_buf, 0, dst_size); > + gem_read(drm_fd, handle, 0, cpu_buf, dst_size); > + for (y = 0; y < 128; y++) { > + for (x = 0; x < 128; x++) { > + uint32_t px = cpu_buf[y * 128 + x]; > + > + if (y >= sq_y && y < (sq_y + sq_h) && > + x >= sq_x && x < (sq_x + sq_w)) > + igt_assert_eq_u32(px, color); > + else > + igt_assert(px == 0); > + } > } > + } else { > + buf = create_buf(&data, color); > + ptr = gem_mmap__device_coherent(drm_fd, buf->handle, 0, > + buf->surface[0].size, PROT_READ); > + for (i = 0; i < WIDTH; i++) > + for (j = 0; j < HEIGHT; j++) > + buf_check(ptr, i, j, color); > + munmap(ptr, buf->surface[0].size); > } > > gem_close(drm_fd, handle); > -- > 2.25.1 > ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 2/4] tests/i915/i915_pm_rpm: Modify gem-execbuf test for gen12+ 2023-05-22 11:29 ` Zbigniew Kempczyński @ 2023-05-25 9:35 ` Karolina Stolarek 0 siblings, 0 replies; 11+ messages in thread From: Karolina Stolarek @ 2023-05-25 9:35 UTC (permalink / raw) To: Zbigniew Kempczyński; +Cc: igt-dev On 22.05.2023 13:29, Zbigniew Kempczyński wrote: > On Mon, May 22, 2023 at 11:57:12AM +0200, Karolina Stolarek wrote: >> From: Vikas Srivastava <vikas.srivastava@intel.com> >> >> xy_color_blt is not supported on MTL and other gen12+ target >> hence an IGT test update needs to be done. Modify the test >> to add a lib API to check for xy_color_blt support. >> >> Signed-off-by: Vikas Srivastava <vikas.srivastava@intel.com> >> Signed-off-by: Karolina Stolarek <karolina.stolarek@intel.com> >> --- >> tests/i915/i915_pm_rpm.c | 185 ++++++++++++++++++++++++++++++--------- >> 1 file changed, 146 insertions(+), 39 deletions(-) >> >> diff --git a/tests/i915/i915_pm_rpm.c b/tests/i915/i915_pm_rpm.c >> index d9b4cbbfe..b23eba544 100644 >> --- a/tests/i915/i915_pm_rpm.c >> +++ b/tests/i915/i915_pm_rpm.c >> @@ -243,6 +243,7 @@ >> #include "igt_debugfs.h" >> #include "igt_device.h" >> #include "igt_edid.h" >> +#include "i915/i915_blt.h" >> >> #define MSR_PC8_RES 0x630 >> #define MSR_PC9_RES 0x631 >> @@ -252,6 +253,11 @@ >> #define MAX_ENCODERS 32 >> #define MAX_CRTCS 16 >> >> +#define WIDTH 64 >> +#define HEIGHT 64 >> +#define STRIDE (WIDTH) >> +#define SIZE (HEIGHT * STRIDE) >> + >> enum pc8_status { >> PC8_ENABLED, >> PC8_DISABLED >> @@ -308,10 +314,57 @@ struct modeset_params { >> drmModeModeInfoPtr mode; >> }; >> >> +struct data_t { >> + int width; >> + int height; >> + uint32_t region; >> +}; >> + >> struct modeset_params lpsp_mode_params; >> struct modeset_params non_lpsp_mode_params; >> struct modeset_params *default_mode_params; >> >> +/* API to create mmap buffer */ >> +static struct intel_buf * >> +create_buf(struct data_t *data, uint32_t color) >> +{ >> + struct intel_buf *buf; >> + uint8_t *ptr; >> + uint32_t handle; >> + struct buf_ops *bops; >> + int i; >> + >> + buf = calloc(1, sizeof(*buf)); >> + igt_assert(buf); >> + bops = buf_ops_create(drm_fd); >> + >> + handle = gem_create_in_memory_regions(drm_fd, SIZE, data->region); >> + intel_buf_init_using_handle(bops, handle, buf, >> + data->width / 4, data->height, 32, 0, >> + I915_TILING_NONE, 0); >> + >> + ptr = gem_mmap__cpu_coherent(drm_fd, buf->handle, 0, >> + buf->surface[0].size, PROT_WRITE); >> + >> + for (i = 0; i < buf->surface[0].size; i++) >> + ptr[i] = color; >> + >> + munmap(ptr, buf->surface[0].size); >> + >> + return buf; >> +} >> + >> +/* checking the buffer content is correct or not */ >> +static void buf_check(uint8_t *ptr, int x, int y, uint8_t color) >> +{ >> + uint8_t val; >> + >> + val = ptr[y * WIDTH + x]; >> + igt_assert_f(val == color, >> + "Expected 0x%02x, found 0x%02x at (%d,%d)\n", >> + color, val, x, y); >> +} >> + >> static int modprobe(const char *driver) >> { >> return igt_kmod_load(driver, NULL); >> @@ -1522,7 +1575,7 @@ static void submit_blt_cmd(uint32_t dst_handle, int dst_size, >> /* Make sure we can submit a batch buffer and verify its result. */ >> static void gem_execbuf_subtest(struct drm_i915_gem_memory_class_instance *mem_regions) >> { >> - int x, y; >> + int x, y, i, j; >> uint32_t handle; >> int bpp = 4; >> int pitch = 128 * bpp; >> @@ -1531,10 +1584,31 @@ static void gem_execbuf_subtest(struct drm_i915_gem_memory_class_instance *mem_r >> uint32_t presumed_offset = 0; >> int sq_x = 5, sq_y = 10, sq_w = 15, sq_h = 20; >> uint32_t color; >> + struct intel_buf *buf; >> + uint8_t *ptr; >> + struct data_t data = {0, }; >> + struct igt_collection *region; >> + struct drm_i915_query_memory_regions *region_info; >> + struct igt_collection *region_set; >> + uint32_t id; >> >> igt_require_gem(drm_fd); >> gem_require_blitter(drm_fd); >> >> + region_info = gem_get_query_memory_regions(drm_fd); >> + igt_assert(region_info); >> + region_set = get_memory_region_set(region_info, >> + I915_SYSTEM_MEMORY, >> + I915_DEVICE_MEMORY); >> + for_each_combination(region, 1, region_set) { >> + id = igt_collection_get_value(region, 0); >> + break; >> + } > > All above region work finally lead to simple gem_create() in > system memory (break). I think order of SYSTEM and DEVICE > regions has meaning here (I guess you want to prefer DEVICE > on discrete instead of SYSTEM). > Hmm, interesting. I believe this definition was inspired by what was already in the code, but I can try and move things around. Many thanks, Karolina > -- > Zbigniew > >> + >> + data.width = WIDTH; >> + data.height = HEIGHT; >> + data.region = id; >> + >> /* Create and set data while the device is active. */ >> enable_one_screen_or_forcewake_get_and_wait(&ms_data); >> >> @@ -1549,62 +1623,95 @@ static void gem_execbuf_subtest(struct drm_i915_gem_memory_class_instance *mem_r >> disable_all_screens_or_forcewake_put_and_wait(&ms_data); >> >> color = 0x12345678; >> - submit_blt_cmd(handle, dst_size, sq_x, sq_y, sq_w, sq_h, pitch, color, >> - &presumed_offset); >> - igt_assert(wait_for_suspended()); >> + if (blt_has_xy_color(drm_fd)) { >> + submit_blt_cmd(handle, dst_size, sq_x, sq_y, sq_w, sq_h, pitch, color, >> + &presumed_offset); >> + igt_assert(wait_for_suspended()); >> >> - gem_read(drm_fd, handle, 0, cpu_buf, dst_size); >> - igt_assert(wait_for_suspended()); >> - for (y = 0; y < 128; y++) { >> - for (x = 0; x < 128; x++) { >> - uint32_t px = cpu_buf[y * 128 + x]; >> + gem_read(drm_fd, handle, 0, cpu_buf, dst_size); >> + for (y = 0; y < 128; y++) { >> + for (x = 0; x < 128; x++) { >> + uint32_t px = cpu_buf[y * 128 + x]; >> >> - if (y >= sq_y && y < (sq_y + sq_h) && >> - x >= sq_x && x < (sq_x + sq_w)) >> - igt_assert_eq_u32(px, color); >> - else >> - igt_assert(px == 0); >> + if (y >= sq_y && y < (sq_y + sq_h) && >> + x >= sq_x && x < (sq_x + sq_w)) >> + igt_assert_eq_u32(px, color); >> + else >> + igt_assert(px == 0); >> + } >> } >> + } else { >> + buf = create_buf(&data, color); >> + ptr = gem_mmap__device_coherent(drm_fd, buf->handle, 0, >> + buf->surface[0].size, PROT_READ); >> + igt_assert(wait_for_suspended()); >> + >> + for (i = 0; i < WIDTH; i++) >> + for (j = 0; j < HEIGHT; j++) >> + buf_check(ptr, i, j, color); >> + munmap(ptr, buf->surface[0].size); >> } >> >> /* Now resume and check for it again. */ >> enable_one_screen_or_forcewake_get_and_wait(&ms_data); >> >> - memset(cpu_buf, 0, dst_size); >> - gem_read(drm_fd, handle, 0, cpu_buf, dst_size); >> - for (y = 0; y < 128; y++) { >> - for (x = 0; x < 128; x++) { >> - uint32_t px = cpu_buf[y * 128 + x]; >> - >> - if (y >= sq_y && y < (sq_y + sq_h) && >> - x >= sq_x && x < (sq_x + sq_w)) >> - igt_assert_eq_u32(px, color); >> - else >> - igt_assert(px == 0); >> + if (blt_has_xy_color(drm_fd)) { >> + memset(cpu_buf, 0, dst_size); >> + gem_read(drm_fd, handle, 0, cpu_buf, dst_size); >> + >> + for (y = 0; y < 128; y++) { >> + for (x = 0; x < 128; x++) { >> + uint32_t px = cpu_buf[y * 128 + x]; >> + >> + if (y >= sq_y && y < (sq_y + sq_h) && >> + x >= sq_x && x < (sq_x + sq_w)) >> + igt_assert_eq_u32(px, color); >> + else >> + igt_assert(px == 0); >> + } >> } >> + } else { >> + buf = create_buf(&data, color); >> + ptr = gem_mmap__device_coherent(drm_fd, buf->handle, 0, >> + buf->surface[0].size, PROT_READ); >> + for (i = 0; i < WIDTH; i++) >> + for (j = 0; j < HEIGHT; j++) >> + buf_check(ptr, i, j, color); >> + munmap(ptr, buf->surface[0].size); >> } >> >> /* Now we'll do the opposite: do the blt while active, then read while >> * suspended. We use the same spot, but a different color. As a bonus, >> * we're testing the presumed_offset from the previous command. */ >> color = 0x87654321; >> - submit_blt_cmd(handle, dst_size, sq_x, sq_y, sq_w, sq_h, pitch, color, >> - &presumed_offset); >> + if (blt_has_xy_color(drm_fd)) { >> >> - disable_all_screens_or_forcewake_put_and_wait(&ms_data); >> + submit_blt_cmd(handle, dst_size, sq_x, sq_y, sq_w, sq_h, pitch, color, >> + &presumed_offset); >> >> - memset(cpu_buf, 0, dst_size); >> - gem_read(drm_fd, handle, 0, cpu_buf, dst_size); >> - for (y = 0; y < 128; y++) { >> - for (x = 0; x < 128; x++) { >> - uint32_t px = cpu_buf[y * 128 + x]; >> - >> - if (y >= sq_y && y < (sq_y + sq_h) && >> - x >= sq_x && x < (sq_x + sq_w)) >> - igt_assert_eq_u32(px, color); >> - else >> - igt_assert(px == 0); >> + disable_all_screens_or_forcewake_put_and_wait(&ms_data); >> + >> + memset(cpu_buf, 0, dst_size); >> + gem_read(drm_fd, handle, 0, cpu_buf, dst_size); >> + for (y = 0; y < 128; y++) { >> + for (x = 0; x < 128; x++) { >> + uint32_t px = cpu_buf[y * 128 + x]; >> + >> + if (y >= sq_y && y < (sq_y + sq_h) && >> + x >= sq_x && x < (sq_x + sq_w)) >> + igt_assert_eq_u32(px, color); >> + else >> + igt_assert(px == 0); >> + } >> } >> + } else { >> + buf = create_buf(&data, color); >> + ptr = gem_mmap__device_coherent(drm_fd, buf->handle, 0, >> + buf->surface[0].size, PROT_READ); >> + for (i = 0; i < WIDTH; i++) >> + for (j = 0; j < HEIGHT; j++) >> + buf_check(ptr, i, j, color); >> + munmap(ptr, buf->surface[0].size); >> } >> >> gem_close(drm_fd, handle); >> -- >> 2.25.1 >> ^ permalink raw reply [flat|nested] 11+ messages in thread
* [igt-dev] [PATCH i-g-t 3/4] lib/intel_cmds_info: Drop BLT_CMD_LONG flag 2023-05-22 9:57 [igt-dev] [PATCH i-g-t 0/4] Use intel_cmds_info in i915_pm_rpm Karolina Stolarek 2023-05-22 9:57 ` [igt-dev] [PATCH i-g-t 1/4] lib/i915: Add library support for XY_COLOR_BLT Karolina Stolarek 2023-05-22 9:57 ` [igt-dev] [PATCH i-g-t 2/4] tests/i915/i915_pm_rpm: Modify gem-execbuf test for gen12+ Karolina Stolarek @ 2023-05-22 9:57 ` Karolina Stolarek 2023-05-22 11:32 ` Zbigniew Kempczyński 2023-05-22 9:57 ` [igt-dev] [PATCH i-g-t 4/4] tests/i915/i915_pm_rpm: Check command property instead of gen Karolina Stolarek ` (2 subsequent siblings) 5 siblings, 1 reply; 11+ messages in thread From: Karolina Stolarek @ 2023-05-22 9:57 UTC (permalink / raw) To: igt-dev It looks like a separate flag for longer commands isn't needed and we can use BLT_CMD_EXTENDED instead. Cc: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com> Signed-off-by: Karolina Stolarek <karolina.stolarek@intel.com> --- lib/i915/intel_cmds_info.c | 2 +- lib/i915/intel_cmds_info.h | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/lib/i915/intel_cmds_info.c b/lib/i915/intel_cmds_info.c index 3ce2fd74b..09b612279 100644 --- a/lib/i915/intel_cmds_info.c +++ b/lib/i915/intel_cmds_info.c @@ -87,7 +87,7 @@ static const struct blt_cmd_info BIT(T_LINEAR) | BIT(T_YMAJOR) | BIT(T_XMAJOR), - BLT_CMD_LONG); + BLT_CMD_EXTENDED); static const struct blt_cmd_info pre_gen6_xy_color_blt = BLT_INFO(XY_COLOR_BLT, diff --git a/lib/i915/intel_cmds_info.h b/lib/i915/intel_cmds_info.h index 5998a35ca..91d0f15ec 100644 --- a/lib/i915/intel_cmds_info.h +++ b/lib/i915/intel_cmds_info.h @@ -34,7 +34,6 @@ struct blt_cmd_info { uint32_t flags; #define BLT_CMD_EXTENDED (1 << 0) #define BLT_CMD_SUPPORTS_COMPRESSION (1 << 1) -#define BLT_CMD_LONG (1 << 2) }; struct intel_cmds_info { -- 2.25.1 ^ permalink raw reply related [flat|nested] 11+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 3/4] lib/intel_cmds_info: Drop BLT_CMD_LONG flag 2023-05-22 9:57 ` [igt-dev] [PATCH i-g-t 3/4] lib/intel_cmds_info: Drop BLT_CMD_LONG flag Karolina Stolarek @ 2023-05-22 11:32 ` Zbigniew Kempczyński 2023-05-25 9:29 ` Karolina Stolarek 0 siblings, 1 reply; 11+ messages in thread From: Zbigniew Kempczyński @ 2023-05-22 11:32 UTC (permalink / raw) To: Karolina Stolarek; +Cc: igt-dev On Mon, May 22, 2023 at 11:57:13AM +0200, Karolina Stolarek wrote: > It looks like a separate flag for longer commands isn't needed > and we can use BLT_CMD_EXTENDED instead. If so what for you're introducing this flag in patch 1/4? -- Zbigniew > > Cc: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com> > Signed-off-by: Karolina Stolarek <karolina.stolarek@intel.com> > --- > lib/i915/intel_cmds_info.c | 2 +- > lib/i915/intel_cmds_info.h | 1 - > 2 files changed, 1 insertion(+), 2 deletions(-) > > diff --git a/lib/i915/intel_cmds_info.c b/lib/i915/intel_cmds_info.c > index 3ce2fd74b..09b612279 100644 > --- a/lib/i915/intel_cmds_info.c > +++ b/lib/i915/intel_cmds_info.c > @@ -87,7 +87,7 @@ static const struct blt_cmd_info > BIT(T_LINEAR) | > BIT(T_YMAJOR) | > BIT(T_XMAJOR), > - BLT_CMD_LONG); > + BLT_CMD_EXTENDED); > > static const struct blt_cmd_info > pre_gen6_xy_color_blt = BLT_INFO(XY_COLOR_BLT, > diff --git a/lib/i915/intel_cmds_info.h b/lib/i915/intel_cmds_info.h > index 5998a35ca..91d0f15ec 100644 > --- a/lib/i915/intel_cmds_info.h > +++ b/lib/i915/intel_cmds_info.h > @@ -34,7 +34,6 @@ struct blt_cmd_info { > uint32_t flags; > #define BLT_CMD_EXTENDED (1 << 0) > #define BLT_CMD_SUPPORTS_COMPRESSION (1 << 1) > -#define BLT_CMD_LONG (1 << 2) > }; > > struct intel_cmds_info { > -- > 2.25.1 > ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 3/4] lib/intel_cmds_info: Drop BLT_CMD_LONG flag 2023-05-22 11:32 ` Zbigniew Kempczyński @ 2023-05-25 9:29 ` Karolina Stolarek 0 siblings, 0 replies; 11+ messages in thread From: Karolina Stolarek @ 2023-05-25 9:29 UTC (permalink / raw) To: Zbigniew Kempczyński; +Cc: igt-dev On 22.05.2023 13:32, Zbigniew Kempczyński wrote: > On Mon, May 22, 2023 at 11:57:13AM +0200, Karolina Stolarek wrote: >> It looks like a separate flag for longer commands isn't needed >> and we can use BLT_CMD_EXTENDED instead. > > If so what for you're introducing this flag in patch 1/4? > The idea was to keep the original patch and work on the top of it. But I can modify it and drop this commit, no problem. Thanks, Karolina > -- > Zbigniew > >> >> Cc: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com> >> Signed-off-by: Karolina Stolarek <karolina.stolarek@intel.com> >> --- >> lib/i915/intel_cmds_info.c | 2 +- >> lib/i915/intel_cmds_info.h | 1 - >> 2 files changed, 1 insertion(+), 2 deletions(-) >> >> diff --git a/lib/i915/intel_cmds_info.c b/lib/i915/intel_cmds_info.c >> index 3ce2fd74b..09b612279 100644 >> --- a/lib/i915/intel_cmds_info.c >> +++ b/lib/i915/intel_cmds_info.c >> @@ -87,7 +87,7 @@ static const struct blt_cmd_info >> BIT(T_LINEAR) | >> BIT(T_YMAJOR) | >> BIT(T_XMAJOR), >> - BLT_CMD_LONG); >> + BLT_CMD_EXTENDED); >> >> static const struct blt_cmd_info >> pre_gen6_xy_color_blt = BLT_INFO(XY_COLOR_BLT, >> diff --git a/lib/i915/intel_cmds_info.h b/lib/i915/intel_cmds_info.h >> index 5998a35ca..91d0f15ec 100644 >> --- a/lib/i915/intel_cmds_info.h >> +++ b/lib/i915/intel_cmds_info.h >> @@ -34,7 +34,6 @@ struct blt_cmd_info { >> uint32_t flags; >> #define BLT_CMD_EXTENDED (1 << 0) >> #define BLT_CMD_SUPPORTS_COMPRESSION (1 << 1) >> -#define BLT_CMD_LONG (1 << 2) >> }; >> >> struct intel_cmds_info { >> -- >> 2.25.1 >> ^ permalink raw reply [flat|nested] 11+ messages in thread
* [igt-dev] [PATCH i-g-t 4/4] tests/i915/i915_pm_rpm: Check command property instead of gen 2023-05-22 9:57 [igt-dev] [PATCH i-g-t 0/4] Use intel_cmds_info in i915_pm_rpm Karolina Stolarek ` (2 preceding siblings ...) 2023-05-22 9:57 ` [igt-dev] [PATCH i-g-t 3/4] lib/intel_cmds_info: Drop BLT_CMD_LONG flag Karolina Stolarek @ 2023-05-22 9:57 ` Karolina Stolarek 2023-05-22 10:26 ` [igt-dev] ✓ Fi.CI.BAT: success for Use intel_cmds_info in i915_pm_rpm Patchwork 2023-05-22 14:31 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork 5 siblings, 0 replies; 11+ messages in thread From: Karolina Stolarek @ 2023-05-22 9:57 UTC (permalink / raw) To: igt-dev Update submit_blt_cmd() function to check if a platform uses a long version of XY_COLOR_BLT when building the command. Remove checks related to the gen alone. Signed-off-by: Karolina Stolarek <karolina.stolarek@intel.com> --- tests/i915/i915_pm_rpm.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/tests/i915/i915_pm_rpm.c b/tests/i915/i915_pm_rpm.c index b23eba544..8656f5531 100644 --- a/tests/i915/i915_pm_rpm.c +++ b/tests/i915/i915_pm_rpm.c @@ -1489,20 +1489,24 @@ static void submit_blt_cmd(uint32_t dst_handle, int dst_size, uint32_t batch_handle; int batch_size = 8 * sizeof(uint32_t); uint32_t batch_buf[batch_size]; + bool cmd_extended; struct drm_i915_gem_execbuffer2 execbuf = {}; struct drm_i915_gem_exec_object2 objs[2] = {{}, {}}; struct drm_i915_gem_relocation_entry relocs[1] = {{}}; struct drm_i915_gem_wait gem_wait; uint64_t ahnd = get_reloc_ahnd(drm_fd, 0), dst_offset; + const struct intel_cmds_info *cmds_info = intel_get_cmds_info(ms_data.devid); if (ahnd) dst_offset = get_offset(ahnd, dst_handle, dst_size, 0); else dst_offset = *presumed_dst_offset; + cmd_extended = blt_cmd_has_property(cmds_info, XY_COLOR_BLT, + BLT_CMD_EXTENDED); i = 0; - if (intel_gen(ms_data.devid) >= 8) + if (cmd_extended) batch_buf[i++] = XY_COLOR_BLT_CMD_NOLEN | XY_COLOR_BLT_WRITE_ALPHA | XY_COLOR_BLT_WRITE_RGB | 0x5; @@ -1515,12 +1519,12 @@ static void submit_blt_cmd(uint32_t dst_handle, int dst_size, batch_buf[i++] = ((y + height) << 16) | (x + width); reloc_pos = i; batch_buf[i++] = dst_offset; - if (intel_gen(ms_data.devid) >= 8) + if (cmd_extended) batch_buf[i++] = dst_offset >> 32; batch_buf[i++] = color; batch_buf[i++] = MI_BATCH_BUFFER_END; - if (intel_gen(ms_data.devid) < 8) + if (!cmd_extended) batch_buf[i++] = MI_NOOP; igt_assert(i * sizeof(uint32_t) == batch_size); -- 2.25.1 ^ permalink raw reply related [flat|nested] 11+ messages in thread
* [igt-dev] ✓ Fi.CI.BAT: success for Use intel_cmds_info in i915_pm_rpm 2023-05-22 9:57 [igt-dev] [PATCH i-g-t 0/4] Use intel_cmds_info in i915_pm_rpm Karolina Stolarek ` (3 preceding siblings ...) 2023-05-22 9:57 ` [igt-dev] [PATCH i-g-t 4/4] tests/i915/i915_pm_rpm: Check command property instead of gen Karolina Stolarek @ 2023-05-22 10:26 ` Patchwork 2023-05-22 14:31 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork 5 siblings, 0 replies; 11+ messages in thread From: Patchwork @ 2023-05-22 10:26 UTC (permalink / raw) To: Karolina Stolarek; +Cc: igt-dev [-- Attachment #1: Type: text/plain, Size: 4583 bytes --] == Series Details == Series: Use intel_cmds_info in i915_pm_rpm URL : https://patchwork.freedesktop.org/series/118102/ State : success == Summary == CI Bug Log - changes from CI_DRM_13171 -> IGTPW_9016 ==================================================== Summary ------- **SUCCESS** No regressions found. External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9016/index.html Participating hosts (39 -> 37) ------------------------------ Missing (2): fi-kbl-soraka fi-snb-2520m Known issues ------------ Here are the changes found in IGTPW_9016 that come from known issues: ### IGT changes ### #### Issues hit #### * igt@i915_selftest@live@migrate: - bat-dg2-11: [PASS][1] -> [DMESG-WARN][2] ([i915#7699]) [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13171/bat-dg2-11/igt@i915_selftest@live@migrate.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9016/bat-dg2-11/igt@i915_selftest@live@migrate.html * igt@i915_selftest@live@requests: - bat-rpls-1: [PASS][3] -> [ABORT][4] ([i915#4983] / [i915#7911] / [i915#7920]) [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13171/bat-rpls-1/igt@i915_selftest@live@requests.html [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9016/bat-rpls-1/igt@i915_selftest@live@requests.html * igt@i915_selftest@live@slpc: - bat-rpls-2: NOTRUN -> [DMESG-WARN][5] ([i915#6367]) [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9016/bat-rpls-2/igt@i915_selftest@live@slpc.html * igt@i915_suspend@basic-s2idle-without-i915: - bat-rpls-2: NOTRUN -> [ABORT][6] ([i915#6687]) [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9016/bat-rpls-2/igt@i915_suspend@basic-s2idle-without-i915.html * igt@kms_pipe_crc_basic@read-crc: - bat-adlp-9: NOTRUN -> [SKIP][7] ([i915#3546]) +1 similar issue [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9016/bat-adlp-9/igt@kms_pipe_crc_basic@read-crc.html #### Possible fixes #### * igt@i915_selftest@live@gt_heartbeat: - fi-apl-guc: [DMESG-FAIL][8] ([i915#5334]) -> [PASS][9] [8]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13171/fi-apl-guc/igt@i915_selftest@live@gt_heartbeat.html [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9016/fi-apl-guc/igt@i915_selftest@live@gt_heartbeat.html * igt@i915_selftest@live@requests: - bat-rpls-2: [ABORT][10] ([i915#7913]) -> [PASS][11] [10]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13171/bat-rpls-2/igt@i915_selftest@live@requests.html [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9016/bat-rpls-2/igt@i915_selftest@live@requests.html - {bat-mtlp-8}: [DMESG-FAIL][12] ([i915#8497]) -> [PASS][13] [12]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13171/bat-mtlp-8/igt@i915_selftest@live@requests.html [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9016/bat-mtlp-8/igt@i915_selftest@live@requests.html - {bat-mtlp-6}: [DMESG-FAIL][14] ([i915#8497]) -> [PASS][15] [14]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13171/bat-mtlp-6/igt@i915_selftest@live@requests.html [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9016/bat-mtlp-6/igt@i915_selftest@live@requests.html {name}: This element is suppressed. This means it is ignored when computing the status of the difference (SUCCESS, WARNING, or FAILURE). [i915#3546]: https://gitlab.freedesktop.org/drm/intel/issues/3546 [i915#4983]: https://gitlab.freedesktop.org/drm/intel/issues/4983 [i915#5334]: https://gitlab.freedesktop.org/drm/intel/issues/5334 [i915#6367]: https://gitlab.freedesktop.org/drm/intel/issues/6367 [i915#6687]: https://gitlab.freedesktop.org/drm/intel/issues/6687 [i915#7699]: https://gitlab.freedesktop.org/drm/intel/issues/7699 [i915#7911]: https://gitlab.freedesktop.org/drm/intel/issues/7911 [i915#7913]: https://gitlab.freedesktop.org/drm/intel/issues/7913 [i915#7920]: https://gitlab.freedesktop.org/drm/intel/issues/7920 [i915#8497]: https://gitlab.freedesktop.org/drm/intel/issues/8497 Build changes ------------- * CI: CI-20190529 -> None * IGT: IGT_7299 -> IGTPW_9016 CI-20190529: 20190529 CI_DRM_13171: 9ee3008b1f9517cd236dedf72f28c228fede7559 @ git://anongit.freedesktop.org/gfx-ci/linux IGTPW_9016: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9016/index.html IGT_7299: 3effd4be7f6c867d942532b3fe18d6c54fffbd7a @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9016/index.html [-- Attachment #2: Type: text/html, Size: 5452 bytes --] ^ permalink raw reply [flat|nested] 11+ messages in thread
* [igt-dev] ✓ Fi.CI.IGT: success for Use intel_cmds_info in i915_pm_rpm 2023-05-22 9:57 [igt-dev] [PATCH i-g-t 0/4] Use intel_cmds_info in i915_pm_rpm Karolina Stolarek ` (4 preceding siblings ...) 2023-05-22 10:26 ` [igt-dev] ✓ Fi.CI.BAT: success for Use intel_cmds_info in i915_pm_rpm Patchwork @ 2023-05-22 14:31 ` Patchwork 5 siblings, 0 replies; 11+ messages in thread From: Patchwork @ 2023-05-22 14:31 UTC (permalink / raw) To: Karolina Stolarek; +Cc: igt-dev [-- Attachment #1: Type: text/plain, Size: 16299 bytes --] == Series Details == Series: Use intel_cmds_info in i915_pm_rpm URL : https://patchwork.freedesktop.org/series/118102/ State : success == Summary == CI Bug Log - changes from CI_DRM_13171_full -> IGTPW_9016_full ==================================================== Summary ------- **SUCCESS** No regressions found. External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9016/index.html Participating hosts (7 -> 8) ------------------------------ Additional (1): shard-rkl0 Known issues ------------ Here are the changes found in IGTPW_9016_full that come from known issues: ### IGT changes ### #### Issues hit #### * igt@gem_exec_fair@basic-pace-share@rcs0: - shard-glk: [PASS][1] -> [FAIL][2] ([i915#2842]) [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13171/shard-glk8/igt@gem_exec_fair@basic-pace-share@rcs0.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9016/shard-glk2/igt@gem_exec_fair@basic-pace-share@rcs0.html * igt@gem_exec_fair@basic-pace-solo@rcs0: - shard-apl: [PASS][3] -> [FAIL][4] ([i915#2842]) [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13171/shard-apl6/igt@gem_exec_fair@basic-pace-solo@rcs0.html [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9016/shard-apl4/igt@gem_exec_fair@basic-pace-solo@rcs0.html * igt@gem_lmem_evict@dontneed-evict-race: - shard-glk: NOTRUN -> [SKIP][5] ([fdo#109271] / [i915#4613]) [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9016/shard-glk8/igt@gem_lmem_evict@dontneed-evict-race.html * igt@gem_pread@exhaustion: - shard-glk: NOTRUN -> [WARN][6] ([i915#2658]) [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9016/shard-glk9/igt@gem_pread@exhaustion.html * igt@i915_query@query-topology-unsupported: - shard-apl: NOTRUN -> [SKIP][7] ([fdo#109271]) [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9016/shard-apl3/igt@i915_query@query-topology-unsupported.html * igt@kms_ccs@pipe-c-crc-sprite-planes-basic-y_tiled_gen12_mc_ccs: - shard-apl: NOTRUN -> [SKIP][8] ([fdo#109271] / [i915#3886]) [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9016/shard-apl2/igt@kms_ccs@pipe-c-crc-sprite-planes-basic-y_tiled_gen12_mc_ccs.html * igt@kms_chamelium_hpd@vga-hpd: - shard-glk: NOTRUN -> [SKIP][9] ([fdo#109271]) +16 similar issues [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9016/shard-glk2/igt@kms_chamelium_hpd@vga-hpd.html * igt@kms_flip@flip-vs-absolute-wf_vblank-interruptible@b-hdmi-a1: - shard-glk: [PASS][10] -> [FAIL][11] ([i915#2122]) [10]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13171/shard-glk5/igt@kms_flip@flip-vs-absolute-wf_vblank-interruptible@b-hdmi-a1.html [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9016/shard-glk1/igt@kms_flip@flip-vs-absolute-wf_vblank-interruptible@b-hdmi-a1.html * igt@kms_flip@flip-vs-suspend@c-dp1: - shard-apl: [PASS][12] -> [ABORT][13] ([i915#180]) [12]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13171/shard-apl6/igt@kms_flip@flip-vs-suspend@c-dp1.html [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9016/shard-apl3/igt@kms_flip@flip-vs-suspend@c-dp1.html * igt@kms_plane_alpha_blend@alpha-transparent-fb@pipe-a-hdmi-a-1: - shard-glk: NOTRUN -> [FAIL][14] ([i915#4573]) +1 similar issue [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9016/shard-glk1/igt@kms_plane_alpha_blend@alpha-transparent-fb@pipe-a-hdmi-a-1.html * igt@kms_plane_scaling@plane-upscale-with-modifiers-factor-0-25@pipe-a-vga-1: - shard-snb: NOTRUN -> [SKIP][15] ([fdo#109271]) +14 similar issues [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9016/shard-snb2/igt@kms_plane_scaling@plane-upscale-with-modifiers-factor-0-25@pipe-a-vga-1.html * igt@kms_plane_scaling@planes-downscale-factor-0-25@pipe-b-vga-1: - shard-snb: NOTRUN -> [SKIP][16] ([fdo#109271] / [i915#4579]) +10 similar issues [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9016/shard-snb4/igt@kms_plane_scaling@planes-downscale-factor-0-25@pipe-b-vga-1.html * igt@kms_setmode@basic@pipe-a-vga-1: - shard-snb: NOTRUN -> [FAIL][17] ([i915#5465]) +1 similar issue [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9016/shard-snb6/igt@kms_setmode@basic@pipe-a-vga-1.html #### Possible fixes #### * igt@gem_ctx_exec@basic-nohangcheck: - {shard-rkl}: [FAIL][18] ([i915#6268]) -> [PASS][19] [18]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13171/shard-rkl-2/igt@gem_ctx_exec@basic-nohangcheck.html [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9016/shard-rkl-1/igt@gem_ctx_exec@basic-nohangcheck.html * igt@gem_eio@kms: - {shard-dg1}: [FAIL][20] ([i915#5784]) -> [PASS][21] [20]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13171/shard-dg1-17/igt@gem_eio@kms.html [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9016/shard-dg1-17/igt@gem_eio@kms.html * igt@gem_exec_fair@basic-none@vcs0: - {shard-rkl}: [FAIL][22] ([i915#2842]) -> [PASS][23] +1 similar issue [22]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13171/shard-rkl-6/igt@gem_exec_fair@basic-none@vcs0.html [23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9016/shard-rkl-1/igt@gem_exec_fair@basic-none@vcs0.html * igt@i915_pm_lpsp@kms-lpsp@kms-lpsp-hdmi-a: - {shard-rkl}: [SKIP][24] ([i915#1937] / [i915#4579]) -> [PASS][25] [24]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13171/shard-rkl-4/igt@i915_pm_lpsp@kms-lpsp@kms-lpsp-hdmi-a.html [25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9016/shard-rkl-7/igt@i915_pm_lpsp@kms-lpsp@kms-lpsp-hdmi-a.html * igt@i915_pm_rc6_residency@rc6-idle@vcs0: - {shard-dg1}: [FAIL][26] ([i915#3591]) -> [PASS][27] [26]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13171/shard-dg1-13/igt@i915_pm_rc6_residency@rc6-idle@vcs0.html [27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9016/shard-dg1-17/igt@i915_pm_rc6_residency@rc6-idle@vcs0.html * igt@i915_pm_rpm@dpms-mode-unset-non-lpsp: - {shard-rkl}: [SKIP][28] ([i915#1397]) -> [PASS][29] +2 similar issues [28]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13171/shard-rkl-7/igt@i915_pm_rpm@dpms-mode-unset-non-lpsp.html [29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9016/shard-rkl-4/igt@i915_pm_rpm@dpms-mode-unset-non-lpsp.html * igt@i915_selftest@live@gt_heartbeat: - shard-apl: [DMESG-FAIL][30] ([i915#5334]) -> [PASS][31] [30]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13171/shard-apl1/igt@i915_selftest@live@gt_heartbeat.html [31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9016/shard-apl4/igt@i915_selftest@live@gt_heartbeat.html * igt@kms_big_fb@x-tiled-max-hw-stride-64bpp-rotate-0-hflip-async-flip: - {shard-rkl}: [FAIL][32] ([i915#3743]) -> [PASS][33] [32]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13171/shard-rkl-7/igt@kms_big_fb@x-tiled-max-hw-stride-64bpp-rotate-0-hflip-async-flip.html [33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9016/shard-rkl-1/igt@kms_big_fb@x-tiled-max-hw-stride-64bpp-rotate-0-hflip-async-flip.html * igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions: - shard-glk: [FAIL][34] ([i915#2346]) -> [PASS][35] [34]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13171/shard-glk8/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions.html [35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9016/shard-glk6/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions.html * igt@kms_flip@flip-vs-expired-vblank@c-hdmi-a1: - shard-glk: [FAIL][36] ([i915#79]) -> [PASS][37] [36]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13171/shard-glk9/igt@kms_flip@flip-vs-expired-vblank@c-hdmi-a1.html [37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9016/shard-glk4/igt@kms_flip@flip-vs-expired-vblank@c-hdmi-a1.html * igt@kms_sysfs_edid_timing: - {shard-dg1}: [FAIL][38] ([IGT#2] / [i915#6493]) -> [PASS][39] [38]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13171/shard-dg1-15/igt@kms_sysfs_edid_timing.html [39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9016/shard-dg1-12/igt@kms_sysfs_edid_timing.html * igt@perf@stress-open-close@0-rcs0: - shard-glk: [ABORT][40] ([i915#5213] / [i915#7941]) -> [PASS][41] [40]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13171/shard-glk8/igt@perf@stress-open-close@0-rcs0.html [41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9016/shard-glk9/igt@perf@stress-open-close@0-rcs0.html {name}: This element is suppressed. This means it is ignored when computing the status of the difference (SUCCESS, WARNING, or FAILURE). [IGT#2]: https://gitlab.freedesktop.org/drm/igt-gpu-tools/issues/2 [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271 [fdo#109274]: https://bugs.freedesktop.org/show_bug.cgi?id=109274 [fdo#109280]: https://bugs.freedesktop.org/show_bug.cgi?id=109280 [fdo#109285]: https://bugs.freedesktop.org/show_bug.cgi?id=109285 [fdo#109289]: https://bugs.freedesktop.org/show_bug.cgi?id=109289 [fdo#109312]: https://bugs.freedesktop.org/show_bug.cgi?id=109312 [fdo#109315]: https://bugs.freedesktop.org/show_bug.cgi?id=109315 [fdo#110189]: https://bugs.freedesktop.org/show_bug.cgi?id=110189 [fdo#110723]: https://bugs.freedesktop.org/show_bug.cgi?id=110723 [fdo#111614]: https://bugs.freedesktop.org/show_bug.cgi?id=111614 [fdo#111615]: https://bugs.freedesktop.org/show_bug.cgi?id=111615 [fdo#111825]: https://bugs.freedesktop.org/show_bug.cgi?id=111825 [fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827 [fdo#112283]: https://bugs.freedesktop.org/show_bug.cgi?id=112283 [i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072 [i915#1397]: https://gitlab.freedesktop.org/drm/intel/issues/1397 [i915#180]: https://gitlab.freedesktop.org/drm/intel/issues/180 [i915#1825]: https://gitlab.freedesktop.org/drm/intel/issues/1825 [i915#1902]: https://gitlab.freedesktop.org/drm/intel/issues/1902 [i915#1937]: https://gitlab.freedesktop.org/drm/intel/issues/1937 [i915#2122]: https://gitlab.freedesktop.org/drm/intel/issues/2122 [i915#2346]: https://gitlab.freedesktop.org/drm/intel/issues/2346 [i915#2527]: https://gitlab.freedesktop.org/drm/intel/issues/2527 [i915#2575]: https://gitlab.freedesktop.org/drm/intel/issues/2575 [i915#2587]: https://gitlab.freedesktop.org/drm/intel/issues/2587 [i915#2658]: https://gitlab.freedesktop.org/drm/intel/issues/2658 [i915#2672]: https://gitlab.freedesktop.org/drm/intel/issues/2672 [i915#2681]: https://gitlab.freedesktop.org/drm/intel/issues/2681 [i915#2705]: https://gitlab.freedesktop.org/drm/intel/issues/2705 [i915#2842]: https://gitlab.freedesktop.org/drm/intel/issues/2842 [i915#3023]: https://gitlab.freedesktop.org/drm/intel/issues/3023 [i915#3116]: https://gitlab.freedesktop.org/drm/intel/issues/3116 [i915#315]: https://gitlab.freedesktop.org/drm/intel/issues/315 [i915#3281]: https://gitlab.freedesktop.org/drm/intel/issues/3281 [i915#3282]: https://gitlab.freedesktop.org/drm/intel/issues/3282 [i915#3297]: https://gitlab.freedesktop.org/drm/intel/issues/3297 [i915#3359]: https://gitlab.freedesktop.org/drm/intel/issues/3359 [i915#3458]: https://gitlab.freedesktop.org/drm/intel/issues/3458 [i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555 [i915#3591]: https://gitlab.freedesktop.org/drm/intel/issues/3591 [i915#3637]: https://gitlab.freedesktop.org/drm/intel/issues/3637 [i915#3638]: https://gitlab.freedesktop.org/drm/intel/issues/3638 [i915#3689]: https://gitlab.freedesktop.org/drm/intel/issues/3689 [i915#3708]: https://gitlab.freedesktop.org/drm/intel/issues/3708 [i915#3734]: https://gitlab.freedesktop.org/drm/intel/issues/3734 [i915#3743]: https://gitlab.freedesktop.org/drm/intel/issues/3743 [i915#3804]: https://gitlab.freedesktop.org/drm/intel/issues/3804 [i915#3886]: https://gitlab.freedesktop.org/drm/intel/issues/3886 [i915#3955]: https://gitlab.freedesktop.org/drm/intel/issues/3955 [i915#4070]: https://gitlab.freedesktop.org/drm/intel/issues/4070 [i915#4077]: https://gitlab.freedesktop.org/drm/intel/issues/4077 [i915#4078]: https://gitlab.freedesktop.org/drm/intel/issues/4078 [i915#4083]: https://gitlab.freedesktop.org/drm/intel/issues/4083 [i915#4098]: https://gitlab.freedesktop.org/drm/intel/issues/4098 [i915#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103 [i915#4213]: https://gitlab.freedesktop.org/drm/intel/issues/4213 [i915#4270]: https://gitlab.freedesktop.org/drm/intel/issues/4270 [i915#4349]: https://gitlab.freedesktop.org/drm/intel/issues/4349 [i915#4538]: https://gitlab.freedesktop.org/drm/intel/issues/4538 [i915#4573]: https://gitlab.freedesktop.org/drm/intel/issues/4573 [i915#4579]: https://gitlab.freedesktop.org/drm/intel/issues/4579 [i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613 [i915#4816]: https://gitlab.freedesktop.org/drm/intel/issues/4816 [i915#4833]: https://gitlab.freedesktop.org/drm/intel/issues/4833 [i915#4860]: https://gitlab.freedesktop.org/drm/intel/issues/4860 [i915#5176]: https://gitlab.freedesktop.org/drm/intel/issues/5176 [i915#5213]: https://gitlab.freedesktop.org/drm/intel/issues/5213 [i915#5235]: https://gitlab.freedesktop.org/drm/intel/issues/5235 [i915#5286]: https://gitlab.freedesktop.org/drm/intel/issues/5286 [i915#5325]: https://gitlab.freedesktop.org/drm/intel/issues/5325 [i915#533]: https://gitlab.freedesktop.org/drm/intel/issues/533 [i915#5334]: https://gitlab.freedesktop.org/drm/intel/issues/5334 [i915#5354]: https://gitlab.freedesktop.org/drm/intel/issues/5354 [i915#5439]: https://gitlab.freedesktop.org/drm/intel/issues/5439 [i915#5461]: https://gitlab.freedesktop.org/drm/intel/issues/5461 [i915#5465]: https://gitlab.freedesktop.org/drm/intel/issues/5465 [i915#5784]: https://gitlab.freedesktop.org/drm/intel/issues/5784 [i915#6095]: https://gitlab.freedesktop.org/drm/intel/issues/6095 [i915#6227]: https://gitlab.freedesktop.org/drm/intel/issues/6227 [i915#6230]: https://gitlab.freedesktop.org/drm/intel/issues/6230 [i915#6268]: https://gitlab.freedesktop.org/drm/intel/issues/6268 [i915#6334]: https://gitlab.freedesktop.org/drm/intel/issues/6334 [i915#6493]: https://gitlab.freedesktop.org/drm/intel/issues/6493 [i915#658]: https://gitlab.freedesktop.org/drm/intel/issues/658 [i915#6768]: https://gitlab.freedesktop.org/drm/intel/issues/6768 [i915#6946]: https://gitlab.freedesktop.org/drm/intel/issues/6946 [i915#7582]: https://gitlab.freedesktop.org/drm/intel/issues/7582 [i915#7697]: https://gitlab.freedesktop.org/drm/intel/issues/7697 [i915#7701]: https://gitlab.freedesktop.org/drm/intel/issues/7701 [i915#7711]: https://gitlab.freedesktop.org/drm/intel/issues/7711 [i915#7742]: https://gitlab.freedesktop.org/drm/intel/issues/7742 [i915#7828]: https://gitlab.freedesktop.org/drm/intel/issues/7828 [i915#79]: https://gitlab.freedesktop.org/drm/intel/issues/79 [i915#7941]: https://gitlab.freedesktop.org/drm/intel/issues/7941 [i915#7975]: https://gitlab.freedesktop.org/drm/intel/issues/7975 [i915#8213]: https://gitlab.freedesktop.org/drm/intel/issues/8213 [i915#8304]: https://gitlab.freedesktop.org/drm/intel/issues/8304 [i915#8398]: https://gitlab.freedesktop.org/drm/intel/issues/8398 [i915#8414]: https://gitlab.freedesktop.org/drm/intel/issues/8414 [i915#8502]: https://gitlab.freedesktop.org/drm/intel/issues/8502 Build changes ------------- * CI: CI-20190529 -> None * IGT: IGT_7299 -> IGTPW_9016 * Piglit: piglit_4509 -> None CI-20190529: 20190529 CI_DRM_13171: 9ee3008b1f9517cd236dedf72f28c228fede7559 @ git://anongit.freedesktop.org/gfx-ci/linux IGTPW_9016: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9016/index.html IGT_7299: 3effd4be7f6c867d942532b3fe18d6c54fffbd7a @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9016/index.html [-- Attachment #2: Type: text/html, Size: 12776 bytes --] ^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2023-05-25 9:35 UTC | newest] Thread overview: 11+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2023-05-22 9:57 [igt-dev] [PATCH i-g-t 0/4] Use intel_cmds_info in i915_pm_rpm Karolina Stolarek 2023-05-22 9:57 ` [igt-dev] [PATCH i-g-t 1/4] lib/i915: Add library support for XY_COLOR_BLT Karolina Stolarek 2023-05-22 9:57 ` [igt-dev] [PATCH i-g-t 2/4] tests/i915/i915_pm_rpm: Modify gem-execbuf test for gen12+ Karolina Stolarek 2023-05-22 11:29 ` Zbigniew Kempczyński 2023-05-25 9:35 ` Karolina Stolarek 2023-05-22 9:57 ` [igt-dev] [PATCH i-g-t 3/4] lib/intel_cmds_info: Drop BLT_CMD_LONG flag Karolina Stolarek 2023-05-22 11:32 ` Zbigniew Kempczyński 2023-05-25 9:29 ` Karolina Stolarek 2023-05-22 9:57 ` [igt-dev] [PATCH i-g-t 4/4] tests/i915/i915_pm_rpm: Check command property instead of gen Karolina Stolarek 2023-05-22 10:26 ` [igt-dev] ✓ Fi.CI.BAT: success for Use intel_cmds_info in i915_pm_rpm Patchwork 2023-05-22 14:31 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox