* [igt-dev] [PATCH i-g-t v2 0/6] Extend and rename intel_tiling_info library
@ 2023-02-08 13:47 Karolina Stolarek
2023-02-08 13:47 ` [igt-dev] [PATCH i-g-t v2 1/6] lib/intel_tiling_info: Rename blt_cmd_info to blt_cmds_desc Karolina Stolarek
` (7 more replies)
0 siblings, 8 replies; 13+ messages in thread
From: Karolina Stolarek @ 2023-02-08 13:47 UTC (permalink / raw)
To: igt-dev
As for now, there is no central place that provides information on
command properties such as compression support or if the command
requires any additional setup. It is possible to modify the already
existing library, intel_tiling_info, and add such information there.
The series adds a new field to better describe blitter commands,
which stores bit flags describing properties. Flags defined as a part
of the series mostly target the block-copy command, as its features
vary the most between generations. The introduction of the field is
followed by an update of DG2 and MTL definitions and gem_ccs test.
This change means that intel_tiling_info library stores more than
just information on tiling formats. As keeping a tiling-specific
name would confuse users, we update the struct names as well as
the library name itself. Each of the renames happens in a separate
commit.
To summarize the name update:
- intel_tiling_info lib ---> intel_cmds_info lib
- blt_cmd_info struct ---> blt_cmds_desc struct
- blt_tiling_info struct ---> blt_cmd_info struct
Although the proposed change was expanded so much that it could be
a standalone series, I decided to label it v2 to link to the work
I sent as a single patch in [1].
v2:
- Rename the library and its structs to better describe what
they store
- Stop using has_flatccs field when checking if a command
can use compression; use blt_cmd_info flags field instead
- Update the name of blt_tiling field in intel_device_info,
as it describes more than just a list of supported tiling
formats
- Drop additional macros for DG2 and MTL definitions
[1] - https://patchwork.freedesktop.org/series/113595/
Karolina Stolarek (6):
lib/intel_tiling_info: Rename blt_cmd_info to blt_cmds_desc
lib/intel_tiling_info: Rename blt_tiling_info to blt_cmd_info
lib/i915: Rename intel_tiling_info library
lib/intel_cmds_info: Add flags field to describe command properties
lib/i915_blt: Add checks for command properties
tests/gem_ccs: Check for extended block-copy and compression support
lib/i915/i915_blt.c | 112 +++++++++++++-----
lib/i915/i915_blt.h | 15 ++-
...{intel_tiling_info.c => intel_cmds_info.c} | 58 +++++----
...{intel_tiling_info.h => intel_cmds_info.h} | 22 ++--
lib/intel_chipset.h | 6 +-
lib/intel_device_info.c | 64 +++++-----
lib/meson.build | 6 +-
tests/i915/gem_ccs.c | 7 +-
8 files changed, 184 insertions(+), 106 deletions(-)
rename lib/i915/{intel_tiling_info.c => intel_cmds_info.c} (57%)
rename lib/i915/{intel_tiling_info.h => intel_cmds_info.h} (53%)
--
2.25.1
^ permalink raw reply [flat|nested] 13+ messages in thread* [igt-dev] [PATCH i-g-t v2 1/6] lib/intel_tiling_info: Rename blt_cmd_info to blt_cmds_desc 2023-02-08 13:47 [igt-dev] [PATCH i-g-t v2 0/6] Extend and rename intel_tiling_info library Karolina Stolarek @ 2023-02-08 13:47 ` Karolina Stolarek 2023-02-09 7:30 ` Zbigniew Kempczyński 2023-02-08 13:47 ` [igt-dev] [PATCH i-g-t v2 2/6] lib/intel_tiling_info: Rename blt_tiling_info to blt_cmd_info Karolina Stolarek ` (6 subsequent siblings) 7 siblings, 1 reply; 13+ messages in thread From: Karolina Stolarek @ 2023-02-08 13:47 UTC (permalink / raw) To: igt-dev The struct stores information on more than just one blitter cmd, so the current name is slightly confusing. Change it to blt_cmds_desc to emphasize that it describes available commands on the platform. Change the field name in intel_device_info, as it won't just describe tiling information. Signed-off-by: Karolina Stolarek <karolina.stolarek@intel.com> --- lib/i915/i915_blt.c | 28 ++++++++-------- lib/i915/i915_blt.h | 4 +-- lib/i915/intel_tiling_info.c | 12 +++---- lib/i915/intel_tiling_info.h | 14 ++++---- lib/intel_chipset.h | 4 +-- lib/intel_device_info.c | 64 ++++++++++++++++++------------------ 6 files changed, 63 insertions(+), 63 deletions(-) diff --git a/lib/i915/i915_blt.c b/lib/i915/i915_blt.c index bbfb6ffc..32d22720 100644 --- a/lib/i915/i915_blt.c +++ b/lib/i915/i915_blt.c @@ -210,42 +210,42 @@ bool blt_supports_compression(int i915) /** * blt_supports_command: - * @info: Blitter command info struct + * @blt_info: Blitter commands description struct * @cmd: Blitter command enum * - * Checks if @info has an entry of supported tiling formats for @cmd command. + * Checks if @blt_info has an entry of supported tiling formats for @cmd command. * * Returns: true if it does, false otherwise */ -bool blt_supports_command(const struct blt_cmd_info *info, +bool blt_supports_command(const struct blt_cmds_desc *blt_info, enum blt_cmd_type cmd) { - igt_require_f(info, "No config found for the platform\n"); + igt_require_f(blt_info, "No config found for the platform\n"); - return info->supported_cmds[cmd]; + return blt_info->supported_cmds[cmd]; } /** * blt_cmd_supports_tiling: - * @info: Blitter command info struct + * @blt_info: Blitter commands description struct * @cmd: Blitter command enum * @tiling: tiling format enum * - * Checks if a @cmd entry of @info lists @tiling. It also returns false if + * Checks if a @cmd entry of @blt_info lists @tiling. It also returns false if * no information about the command is stored. * * Returns: true if it does, false otherwise */ -bool blt_cmd_supports_tiling(const struct blt_cmd_info *info, +bool blt_cmd_supports_tiling(const struct blt_cmds_desc *blt_info, enum blt_cmd_type cmd, enum blt_tiling_type tiling) { struct blt_tiling_info const *tile_config; - if (!info) + if (!blt_info) return false; - tile_config = info->supported_cmds[cmd]; + tile_config = blt_info->supported_cmds[cmd]; /* no config means no support for that tiling */ if (!tile_config) @@ -265,7 +265,7 @@ bool blt_cmd_supports_tiling(const struct blt_cmd_info *info, */ bool blt_has_block_copy(int i915) { - const struct blt_cmd_info *blt_info = GET_BLT_INFO(i915); + const struct blt_cmds_desc *blt_info = GET_BLT_INFO(i915); return blt_supports_command(blt_info, XY_BLOCK_COPY); } @@ -281,7 +281,7 @@ bool blt_has_block_copy(int i915) */ bool blt_has_fast_copy(int i915) { - const struct blt_cmd_info *blt_info = GET_BLT_INFO(i915); + const struct blt_cmds_desc *blt_info = GET_BLT_INFO(i915); return blt_supports_command(blt_info, XY_FAST_COPY); } @@ -298,7 +298,7 @@ bool blt_has_fast_copy(int i915) */ bool blt_fast_copy_supports_tiling(int i915, enum blt_tiling_type tiling) { - const struct blt_cmd_info *blt_info = GET_BLT_INFO(i915); + const struct blt_cmds_desc *blt_info = GET_BLT_INFO(i915); return blt_cmd_supports_tiling(blt_info, XY_FAST_COPY, tiling); } @@ -315,7 +315,7 @@ 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) { - const struct blt_cmd_info *blt_info = GET_BLT_INFO(i915); + const struct blt_cmds_desc *blt_info = GET_BLT_INFO(i915); return blt_cmd_supports_tiling(blt_info, XY_BLOCK_COPY, tiling); } diff --git a/lib/i915/i915_blt.h b/lib/i915/i915_blt.h index 299dff8e..6a0c246a 100644 --- a/lib/i915/i915_blt.h +++ b/lib/i915/i915_blt.h @@ -158,9 +158,9 @@ struct blt_ctrl_surf_copy_data { }; bool blt_supports_compression(int i915); -bool blt_supports_command(const struct blt_cmd_info *info, +bool blt_supports_command(const struct blt_cmds_desc *blt_info, enum blt_cmd_type cmd); -bool blt_cmd_supports_tiling(const struct blt_cmd_info *info, +bool blt_cmd_supports_tiling(const struct blt_cmds_desc *blt_info, enum blt_cmd_type cmd, enum blt_tiling_type tiling); bool blt_has_block_copy(int i915); diff --git a/lib/i915/intel_tiling_info.c b/lib/i915/intel_tiling_info.c index fc388919..671b9934 100644 --- a/lib/i915/intel_tiling_info.c +++ b/lib/i915/intel_tiling_info.c @@ -51,27 +51,27 @@ static const struct blt_tiling_info BIT(T_TILE4) | BIT(T_TILE64)); -const struct blt_cmd_info pre_gen8_blt_info = { +const struct blt_cmds_desc pre_gen8_blt_info = { .supported_cmds = { [SRC_COPY] = &src_copy, [XY_SRC_COPY] = &pre_gen8_xy_src_copy } }; -const struct blt_cmd_info gen8_blt_info = { +const struct blt_cmds_desc gen8_blt_info = { .supported_cmds = { [XY_SRC_COPY] = &gen8_xy_src_copy, } }; -const struct blt_cmd_info gen11_blt_info = { +const struct blt_cmds_desc gen11_blt_info = { .supported_cmds = { [XY_SRC_COPY] = &gen8_xy_src_copy, [XY_FAST_COPY] = &gen11_xy_fast_copy, } }; -const struct blt_cmd_info gen12_blt_info = { +const struct blt_cmds_desc gen12_blt_info = { .supported_cmds = { [XY_SRC_COPY] = &gen8_xy_src_copy, [XY_FAST_COPY] = &gen12_xy_fast_copy, @@ -79,7 +79,7 @@ const struct blt_cmd_info gen12_blt_info = { } }; -const struct blt_cmd_info gen12_dg2_blt_info = { +const struct blt_cmds_desc gen12_dg2_blt_info = { .supported_cmds = { [XY_SRC_COPY] = &gen8_xy_src_copy, [XY_FAST_COPY] = &dg2_xy_fast_copy, @@ -87,7 +87,7 @@ const struct blt_cmd_info gen12_dg2_blt_info = { } }; -const struct blt_cmd_info gen12_mtl_blt_info = { +const struct blt_cmds_desc gen12_mtl_blt_info = { .supported_cmds = { [XY_FAST_COPY] = &dg2_xy_fast_copy, [XY_BLOCK_COPY] = &dg2_xy_block_copy diff --git a/lib/i915/intel_tiling_info.h b/lib/i915/intel_tiling_info.h index bb655103..97fb1ce8 100644 --- a/lib/i915/intel_tiling_info.h +++ b/lib/i915/intel_tiling_info.h @@ -31,16 +31,16 @@ struct blt_tiling_info { uint32_t supported_tiling; }; -struct blt_cmd_info { +struct blt_cmds_desc { struct blt_tiling_info const *supported_cmds[__BLT_MAX_CMD]; }; -extern const struct blt_cmd_info pre_gen8_blt_info; -extern const struct blt_cmd_info gen8_blt_info; -extern const struct blt_cmd_info gen11_blt_info; -extern const struct blt_cmd_info gen12_blt_info; -extern const struct blt_cmd_info gen12_dg2_blt_info; -extern const struct blt_cmd_info gen12_mtl_blt_info; +extern const struct blt_cmds_desc pre_gen8_blt_info; +extern const struct blt_cmds_desc gen8_blt_info; +extern const struct blt_cmds_desc gen11_blt_info; +extern const struct blt_cmds_desc gen12_blt_info; +extern const struct blt_cmds_desc gen12_dg2_blt_info; +extern const struct blt_cmds_desc gen12_mtl_blt_info; #define for_each_tiling(__tiling) \ for (__tiling = T_LINEAR; __tiling < __BLT_MAX_TILING; __tiling++) diff --git a/lib/intel_chipset.h b/lib/intel_chipset.h index cceca929..2e44de24 100644 --- a/lib/intel_chipset.h +++ b/lib/intel_chipset.h @@ -88,13 +88,13 @@ struct intel_device_info { bool is_alderlake_p : 1; bool is_alderlake_n : 1; bool is_meteorlake : 1; - const struct blt_cmd_info *blt_tiling; + const struct blt_cmds_desc *blt_info; const char *codename; }; const struct intel_device_info *intel_get_device_info(uint16_t devid) __attribute__((pure)); -const struct blt_cmd_info *intel_get_blt_info(uint16_t devid) __attribute__((pure)); +const struct blt_cmds_desc *intel_get_blt_info(uint16_t devid) __attribute__((pure)); unsigned intel_gen(uint16_t devid) __attribute__((pure)); unsigned intel_graphics_ver(uint16_t devid) __attribute__((pure)); unsigned intel_display_ver(uint16_t devid) __attribute__((pure)); diff --git a/lib/intel_device_info.c b/lib/intel_device_info.c index 49e95ac8..56a6bbc3 100644 --- a/lib/intel_device_info.c +++ b/lib/intel_device_info.c @@ -145,7 +145,7 @@ static const struct intel_device_info intel_sandybridge_info = { .graphics_ver = 6, .display_ver = 6, .is_sandybridge = true, - .blt_tiling = &pre_gen8_blt_info, + .blt_info = &pre_gen8_blt_info, .codename = "sandybridge" }; static const struct intel_device_info intel_sandybridge_m_info = { @@ -153,7 +153,7 @@ static const struct intel_device_info intel_sandybridge_m_info = { .display_ver = 6, .is_mobile = true, .is_sandybridge = true, - .blt_tiling = &pre_gen8_blt_info, + .blt_info = &pre_gen8_blt_info, .codename = "sandybridge" }; @@ -161,7 +161,7 @@ static const struct intel_device_info intel_ivybridge_info = { .graphics_ver = 7, .display_ver = 7, .is_ivybridge = true, - .blt_tiling = &pre_gen8_blt_info, + .blt_info = &pre_gen8_blt_info, .codename = "ivybridge" }; static const struct intel_device_info intel_ivybridge_m_info = { @@ -169,7 +169,7 @@ static const struct intel_device_info intel_ivybridge_m_info = { .display_ver = 7, .is_mobile = true, .is_ivybridge = true, - .blt_tiling = &pre_gen8_blt_info, + .blt_info = &pre_gen8_blt_info, .codename = "ivybridge" }; @@ -177,7 +177,7 @@ static const struct intel_device_info intel_valleyview_info = { .graphics_ver = 7, .display_ver = 7, .is_valleyview = true, - .blt_tiling = &pre_gen8_blt_info, + .blt_info = &pre_gen8_blt_info, .codename = "valleyview" }; @@ -185,7 +185,7 @@ static const struct intel_device_info intel_valleyview_info = { .graphics_ver = 7, \ .display_ver = 7, \ .is_haswell = true, \ - .blt_tiling = &pre_gen8_blt_info, \ + .blt_info = &pre_gen8_blt_info, \ .codename = "haswell" static const struct intel_device_info intel_haswell_gt1_info = { @@ -207,7 +207,7 @@ static const struct intel_device_info intel_haswell_gt3_info = { .graphics_ver = 8, \ .display_ver = 8, \ .is_broadwell = true, \ - .blt_tiling = &gen8_blt_info, \ + .blt_info = &gen8_blt_info, \ .codename = "broadwell" static const struct intel_device_info intel_broadwell_gt1_info = { @@ -233,14 +233,14 @@ static const struct intel_device_info intel_cherryview_info = { .graphics_ver = 8, .display_ver = 8, .is_cherryview = true, - .blt_tiling = &gen8_blt_info, + .blt_info = &gen8_blt_info, .codename = "cherryview" }; #define SKYLAKE_FIELDS \ .graphics_ver = 9, \ .display_ver = 9, \ - .blt_tiling = &gen11_blt_info, \ + .blt_info = &gen11_blt_info, \ .codename = "skylake", \ .is_skylake = true @@ -268,7 +268,7 @@ static const struct intel_device_info intel_broxton_info = { .graphics_ver = 9, .display_ver = 9, .is_broxton = true, - .blt_tiling = &gen11_blt_info, + .blt_info = &gen11_blt_info, .codename = "broxton" }; @@ -276,7 +276,7 @@ static const struct intel_device_info intel_broxton_info = { .graphics_ver = 9, \ .display_ver = 9, \ .is_kabylake = true, \ - .blt_tiling = &gen11_blt_info, \ + .blt_info = &gen11_blt_info, \ .codename = "kabylake" static const struct intel_device_info intel_kabylake_gt1_info = { @@ -303,7 +303,7 @@ static const struct intel_device_info intel_geminilake_info = { .graphics_ver = 9, .display_ver = 9, .is_geminilake = true, - .blt_tiling = &gen11_blt_info, + .blt_info = &gen11_blt_info, .codename = "geminilake" }; @@ -311,7 +311,7 @@ static const struct intel_device_info intel_geminilake_info = { .graphics_ver = 9, \ .display_ver = 9, \ .is_coffeelake = true, \ - .blt_tiling = &gen11_blt_info, \ + .blt_info = &gen11_blt_info, \ .codename = "coffeelake" static const struct intel_device_info intel_coffeelake_gt1_info = { @@ -333,7 +333,7 @@ static const struct intel_device_info intel_coffeelake_gt3_info = { .graphics_ver = 9, \ .display_ver = 9, \ .is_cometlake = true, \ - .blt_tiling = &gen11_blt_info, \ + .blt_info = &gen11_blt_info, \ .codename = "cometlake" static const struct intel_device_info intel_cometlake_gt1_info = { @@ -350,7 +350,7 @@ static const struct intel_device_info intel_cannonlake_info = { .graphics_ver = 10, .display_ver = 10, .is_cannonlake = true, - .blt_tiling = &gen11_blt_info, + .blt_info = &gen11_blt_info, .codename = "cannonlake" }; @@ -358,7 +358,7 @@ static const struct intel_device_info intel_icelake_info = { .graphics_ver = 11, .display_ver = 11, .is_icelake = true, - .blt_tiling = &gen11_blt_info, + .blt_info = &gen11_blt_info, .codename = "icelake" }; @@ -366,7 +366,7 @@ static const struct intel_device_info intel_elkhartlake_info = { .graphics_ver = 11, .display_ver = 11, .is_elkhartlake = true, - .blt_tiling = &gen11_blt_info, + .blt_info = &gen11_blt_info, .codename = "elkhartlake" }; @@ -374,7 +374,7 @@ static const struct intel_device_info intel_jasperlake_info = { .graphics_ver = 11, .display_ver = 11, .is_jasperlake = true, - .blt_tiling = &gen11_blt_info, + .blt_info = &gen11_blt_info, .codename = "jasperlake" }; @@ -382,7 +382,7 @@ static const struct intel_device_info intel_tigerlake_gt1_info = { .graphics_ver = 12, .display_ver = 12, .is_tigerlake = true, - .blt_tiling = &gen12_blt_info, + .blt_info = &gen12_blt_info, .codename = "tigerlake", .gt = 1, }; @@ -391,7 +391,7 @@ static const struct intel_device_info intel_tigerlake_gt2_info = { .graphics_ver = 12, .display_ver = 12, .is_tigerlake = true, - .blt_tiling = &gen12_blt_info, + .blt_info = &gen12_blt_info, .codename = "tigerlake", .gt = 2, }; @@ -400,7 +400,7 @@ static const struct intel_device_info intel_rocketlake_info = { .graphics_ver = 12, .display_ver = 12, .is_rocketlake = true, - .blt_tiling = &gen12_blt_info, + .blt_info = &gen12_blt_info, .codename = "rocketlake" }; @@ -409,7 +409,7 @@ static const struct intel_device_info intel_dg1_info = { .graphics_rel = 10, .display_ver = 12, .is_dg1 = true, - .blt_tiling = &gen12_blt_info, + .blt_info = &gen12_blt_info, .codename = "dg1" }; @@ -420,7 +420,7 @@ static const struct intel_device_info intel_dg2_info = { .has_4tile = true, .is_dg2 = true, .codename = "dg2", - .blt_tiling = &gen12_dg2_blt_info, + .blt_info = &gen12_dg2_blt_info, .has_flatccs = true, }; @@ -428,7 +428,7 @@ static const struct intel_device_info intel_alderlake_s_info = { .graphics_ver = 12, .display_ver = 12, .is_alderlake_s = true, - .blt_tiling = &gen12_blt_info, + .blt_info = &gen12_blt_info, .codename = "alderlake_s" }; @@ -436,7 +436,7 @@ static const struct intel_device_info intel_raptorlake_s_info = { .graphics_ver = 12, .display_ver = 12, .is_raptorlake_s = true, - .blt_tiling = &gen12_blt_info, + .blt_info = &gen12_blt_info, .codename = "raptorlake_s" }; @@ -444,7 +444,7 @@ static const struct intel_device_info intel_alderlake_p_info = { .graphics_ver = 12, .display_ver = 13, .is_alderlake_p = true, - .blt_tiling = &gen12_blt_info, + .blt_info = &gen12_blt_info, .codename = "alderlake_p" }; @@ -452,7 +452,7 @@ static const struct intel_device_info intel_alderlake_n_info = { .graphics_ver = 12, .display_ver = 13, .is_alderlake_n = true, - .blt_tiling = &gen12_blt_info, + .blt_info = &gen12_blt_info, .codename = "alderlake_n" }; @@ -463,7 +463,7 @@ static const struct intel_device_info intel_ats_m_info = { .is_dg2 = true, .has_4tile = true, .codename = "ats_m", - .blt_tiling = &gen12_dg2_blt_info, + .blt_info = &gen12_dg2_blt_info, .has_flatccs = true, }; @@ -474,7 +474,7 @@ static const struct intel_device_info intel_meteorlake_info = { .has_4tile = true, .is_meteorlake = true, .codename = "meteorlake", - .blt_tiling = &gen12_mtl_blt_info + .blt_info = &gen12_mtl_blt_info }; static const struct pci_id_match intel_device_match[] = { @@ -620,15 +620,15 @@ out: * by the device. * * Returns: - * The associated blt_cmd_info, NULL if no such information is found + * The associated blt_cmds_desc, NULL if no such information is found */ -const struct blt_cmd_info *intel_get_blt_info(uint16_t devid) +const struct blt_cmds_desc *intel_get_blt_info(uint16_t devid) { const struct intel_device_info *dev_info; dev_info = intel_get_device_info(devid); - return dev_info->blt_tiling; + return dev_info->blt_info; } /** -- 2.25.1 ^ permalink raw reply related [flat|nested] 13+ messages in thread
* Re: [igt-dev] [PATCH i-g-t v2 1/6] lib/intel_tiling_info: Rename blt_cmd_info to blt_cmds_desc 2023-02-08 13:47 ` [igt-dev] [PATCH i-g-t v2 1/6] lib/intel_tiling_info: Rename blt_cmd_info to blt_cmds_desc Karolina Stolarek @ 2023-02-09 7:30 ` Zbigniew Kempczyński 0 siblings, 0 replies; 13+ messages in thread From: Zbigniew Kempczyński @ 2023-02-09 7:30 UTC (permalink / raw) To: Karolina Stolarek; +Cc: igt-dev On Wed, Feb 08, 2023 at 02:47:34PM +0100, Karolina Stolarek wrote: > The struct stores information on more than just one blitter cmd, > so the current name is slightly confusing. Change it to > blt_cmds_desc to emphasize that it describes available commands > on the platform. Change the field name in intel_device_info, as > it won't just describe tiling information. > > Signed-off-by: Karolina Stolarek <karolina.stolarek@intel.com> > --- > lib/i915/i915_blt.c | 28 ++++++++-------- > lib/i915/i915_blt.h | 4 +-- > lib/i915/intel_tiling_info.c | 12 +++---- > lib/i915/intel_tiling_info.h | 14 ++++---- > lib/intel_chipset.h | 4 +-- > lib/intel_device_info.c | 64 ++++++++++++++++++------------------ > 6 files changed, 63 insertions(+), 63 deletions(-) > > diff --git a/lib/i915/i915_blt.c b/lib/i915/i915_blt.c > index bbfb6ffc..32d22720 100644 > --- a/lib/i915/i915_blt.c > +++ b/lib/i915/i915_blt.c > @@ -210,42 +210,42 @@ bool blt_supports_compression(int i915) > > /** > * blt_supports_command: > - * @info: Blitter command info struct > + * @blt_info: Blitter commands description struct > * @cmd: Blitter command enum > * > - * Checks if @info has an entry of supported tiling formats for @cmd command. > + * Checks if @blt_info has an entry of supported tiling formats for @cmd command. > * > * Returns: true if it does, false otherwise > */ > -bool blt_supports_command(const struct blt_cmd_info *info, > +bool blt_supports_command(const struct blt_cmds_desc *blt_info, > enum blt_cmd_type cmd) > { > - igt_require_f(info, "No config found for the platform\n"); > + igt_require_f(blt_info, "No config found for the platform\n"); > > - return info->supported_cmds[cmd]; > + return blt_info->supported_cmds[cmd]; > } > > /** > * blt_cmd_supports_tiling: > - * @info: Blitter command info struct > + * @blt_info: Blitter commands description struct > * @cmd: Blitter command enum > * @tiling: tiling format enum > * > - * Checks if a @cmd entry of @info lists @tiling. It also returns false if > + * Checks if a @cmd entry of @blt_info lists @tiling. It also returns false if > * no information about the command is stored. > * > * Returns: true if it does, false otherwise > */ > -bool blt_cmd_supports_tiling(const struct blt_cmd_info *info, > +bool blt_cmd_supports_tiling(const struct blt_cmds_desc *blt_info, > enum blt_cmd_type cmd, > enum blt_tiling_type tiling) > { > struct blt_tiling_info const *tile_config; > > - if (!info) > + if (!blt_info) > return false; > > - tile_config = info->supported_cmds[cmd]; > + tile_config = blt_info->supported_cmds[cmd]; > > /* no config means no support for that tiling */ > if (!tile_config) > @@ -265,7 +265,7 @@ bool blt_cmd_supports_tiling(const struct blt_cmd_info *info, > */ > bool blt_has_block_copy(int i915) > { > - const struct blt_cmd_info *blt_info = GET_BLT_INFO(i915); > + const struct blt_cmds_desc *blt_info = GET_BLT_INFO(i915); > > return blt_supports_command(blt_info, XY_BLOCK_COPY); > } > @@ -281,7 +281,7 @@ bool blt_has_block_copy(int i915) > */ > bool blt_has_fast_copy(int i915) > { > - const struct blt_cmd_info *blt_info = GET_BLT_INFO(i915); > + const struct blt_cmds_desc *blt_info = GET_BLT_INFO(i915); > > return blt_supports_command(blt_info, XY_FAST_COPY); > } > @@ -298,7 +298,7 @@ bool blt_has_fast_copy(int i915) > */ > bool blt_fast_copy_supports_tiling(int i915, enum blt_tiling_type tiling) > { > - const struct blt_cmd_info *blt_info = GET_BLT_INFO(i915); > + const struct blt_cmds_desc *blt_info = GET_BLT_INFO(i915); > > return blt_cmd_supports_tiling(blt_info, XY_FAST_COPY, tiling); > } > @@ -315,7 +315,7 @@ 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) > { > - const struct blt_cmd_info *blt_info = GET_BLT_INFO(i915); > + const struct blt_cmds_desc *blt_info = GET_BLT_INFO(i915); > > return blt_cmd_supports_tiling(blt_info, XY_BLOCK_COPY, tiling); > } > diff --git a/lib/i915/i915_blt.h b/lib/i915/i915_blt.h > index 299dff8e..6a0c246a 100644 > --- a/lib/i915/i915_blt.h > +++ b/lib/i915/i915_blt.h > @@ -158,9 +158,9 @@ struct blt_ctrl_surf_copy_data { > }; > > bool blt_supports_compression(int i915); > -bool blt_supports_command(const struct blt_cmd_info *info, > +bool blt_supports_command(const struct blt_cmds_desc *blt_info, > enum blt_cmd_type cmd); > -bool blt_cmd_supports_tiling(const struct blt_cmd_info *info, > +bool blt_cmd_supports_tiling(const struct blt_cmds_desc *blt_info, > enum blt_cmd_type cmd, > enum blt_tiling_type tiling); > bool blt_has_block_copy(int i915); > diff --git a/lib/i915/intel_tiling_info.c b/lib/i915/intel_tiling_info.c > index fc388919..671b9934 100644 > --- a/lib/i915/intel_tiling_info.c > +++ b/lib/i915/intel_tiling_info.c > @@ -51,27 +51,27 @@ static const struct blt_tiling_info > BIT(T_TILE4) | > BIT(T_TILE64)); > > -const struct blt_cmd_info pre_gen8_blt_info = { > +const struct blt_cmds_desc pre_gen8_blt_info = { > .supported_cmds = { > [SRC_COPY] = &src_copy, > [XY_SRC_COPY] = &pre_gen8_xy_src_copy > } > }; > > -const struct blt_cmd_info gen8_blt_info = { > +const struct blt_cmds_desc gen8_blt_info = { > .supported_cmds = { > [XY_SRC_COPY] = &gen8_xy_src_copy, > } > }; > > -const struct blt_cmd_info gen11_blt_info = { > +const struct blt_cmds_desc gen11_blt_info = { > .supported_cmds = { > [XY_SRC_COPY] = &gen8_xy_src_copy, > [XY_FAST_COPY] = &gen11_xy_fast_copy, > } > }; > > -const struct blt_cmd_info gen12_blt_info = { > +const struct blt_cmds_desc gen12_blt_info = { > .supported_cmds = { > [XY_SRC_COPY] = &gen8_xy_src_copy, > [XY_FAST_COPY] = &gen12_xy_fast_copy, > @@ -79,7 +79,7 @@ const struct blt_cmd_info gen12_blt_info = { > } > }; > > -const struct blt_cmd_info gen12_dg2_blt_info = { > +const struct blt_cmds_desc gen12_dg2_blt_info = { > .supported_cmds = { > [XY_SRC_COPY] = &gen8_xy_src_copy, > [XY_FAST_COPY] = &dg2_xy_fast_copy, > @@ -87,7 +87,7 @@ const struct blt_cmd_info gen12_dg2_blt_info = { > } > }; > > -const struct blt_cmd_info gen12_mtl_blt_info = { > +const struct blt_cmds_desc gen12_mtl_blt_info = { > .supported_cmds = { > [XY_FAST_COPY] = &dg2_xy_fast_copy, > [XY_BLOCK_COPY] = &dg2_xy_block_copy > diff --git a/lib/i915/intel_tiling_info.h b/lib/i915/intel_tiling_info.h > index bb655103..97fb1ce8 100644 > --- a/lib/i915/intel_tiling_info.h > +++ b/lib/i915/intel_tiling_info.h > @@ -31,16 +31,16 @@ struct blt_tiling_info { > uint32_t supported_tiling; > }; > > -struct blt_cmd_info { > +struct blt_cmds_desc { > struct blt_tiling_info const *supported_cmds[__BLT_MAX_CMD]; > }; I assume you want to pack other commands, not only blitter here. Maybe this struct should be named intel_cmds_desc? And supported_cmds need to be renamed to sth else, like blt_cmds or blt_supported_cmds? I'm not sure it should be done in this step (patch) so I will take a look to further patches. > > -extern const struct blt_cmd_info pre_gen8_blt_info; > -extern const struct blt_cmd_info gen8_blt_info; > -extern const struct blt_cmd_info gen11_blt_info; > -extern const struct blt_cmd_info gen12_blt_info; > -extern const struct blt_cmd_info gen12_dg2_blt_info; > -extern const struct blt_cmd_info gen12_mtl_blt_info; > +extern const struct blt_cmds_desc pre_gen8_blt_info; > +extern const struct blt_cmds_desc gen8_blt_info; > +extern const struct blt_cmds_desc gen11_blt_info; > +extern const struct blt_cmds_desc gen12_blt_info; > +extern const struct blt_cmds_desc gen12_dg2_blt_info; > +extern const struct blt_cmds_desc gen12_mtl_blt_info; > > #define for_each_tiling(__tiling) \ > for (__tiling = T_LINEAR; __tiling < __BLT_MAX_TILING; __tiling++) > diff --git a/lib/intel_chipset.h b/lib/intel_chipset.h > index cceca929..2e44de24 100644 > --- a/lib/intel_chipset.h > +++ b/lib/intel_chipset.h > @@ -88,13 +88,13 @@ struct intel_device_info { > bool is_alderlake_p : 1; > bool is_alderlake_n : 1; > bool is_meteorlake : 1; > - const struct blt_cmd_info *blt_tiling; > + const struct blt_cmds_desc *blt_info; > const char *codename; > }; > > const struct intel_device_info *intel_get_device_info(uint16_t devid) __attribute__((pure)); > > -const struct blt_cmd_info *intel_get_blt_info(uint16_t devid) __attribute__((pure)); > +const struct blt_cmds_desc *intel_get_blt_info(uint16_t devid) __attribute__((pure)); > unsigned intel_gen(uint16_t devid) __attribute__((pure)); > unsigned intel_graphics_ver(uint16_t devid) __attribute__((pure)); > unsigned intel_display_ver(uint16_t devid) __attribute__((pure)); > diff --git a/lib/intel_device_info.c b/lib/intel_device_info.c > index 49e95ac8..56a6bbc3 100644 > --- a/lib/intel_device_info.c > +++ b/lib/intel_device_info.c > @@ -145,7 +145,7 @@ static const struct intel_device_info intel_sandybridge_info = { > .graphics_ver = 6, > .display_ver = 6, > .is_sandybridge = true, > - .blt_tiling = &pre_gen8_blt_info, > + .blt_info = &pre_gen8_blt_info, > .codename = "sandybridge" > }; > static const struct intel_device_info intel_sandybridge_m_info = { > @@ -153,7 +153,7 @@ static const struct intel_device_info intel_sandybridge_m_info = { > .display_ver = 6, > .is_mobile = true, > .is_sandybridge = true, > - .blt_tiling = &pre_gen8_blt_info, > + .blt_info = &pre_gen8_blt_info, > .codename = "sandybridge" > }; > > @@ -161,7 +161,7 @@ static const struct intel_device_info intel_ivybridge_info = { > .graphics_ver = 7, > .display_ver = 7, > .is_ivybridge = true, > - .blt_tiling = &pre_gen8_blt_info, > + .blt_info = &pre_gen8_blt_info, > .codename = "ivybridge" > }; > static const struct intel_device_info intel_ivybridge_m_info = { > @@ -169,7 +169,7 @@ static const struct intel_device_info intel_ivybridge_m_info = { > .display_ver = 7, > .is_mobile = true, > .is_ivybridge = true, > - .blt_tiling = &pre_gen8_blt_info, > + .blt_info = &pre_gen8_blt_info, > .codename = "ivybridge" > }; > > @@ -177,7 +177,7 @@ static const struct intel_device_info intel_valleyview_info = { > .graphics_ver = 7, > .display_ver = 7, > .is_valleyview = true, > - .blt_tiling = &pre_gen8_blt_info, > + .blt_info = &pre_gen8_blt_info, > .codename = "valleyview" > }; > > @@ -185,7 +185,7 @@ static const struct intel_device_info intel_valleyview_info = { > .graphics_ver = 7, \ > .display_ver = 7, \ > .is_haswell = true, \ > - .blt_tiling = &pre_gen8_blt_info, \ > + .blt_info = &pre_gen8_blt_info, \ > .codename = "haswell" > > static const struct intel_device_info intel_haswell_gt1_info = { > @@ -207,7 +207,7 @@ static const struct intel_device_info intel_haswell_gt3_info = { > .graphics_ver = 8, \ > .display_ver = 8, \ > .is_broadwell = true, \ > - .blt_tiling = &gen8_blt_info, \ > + .blt_info = &gen8_blt_info, \ > .codename = "broadwell" > > static const struct intel_device_info intel_broadwell_gt1_info = { > @@ -233,14 +233,14 @@ static const struct intel_device_info intel_cherryview_info = { > .graphics_ver = 8, > .display_ver = 8, > .is_cherryview = true, > - .blt_tiling = &gen8_blt_info, > + .blt_info = &gen8_blt_info, > .codename = "cherryview" > }; > > #define SKYLAKE_FIELDS \ > .graphics_ver = 9, \ > .display_ver = 9, \ > - .blt_tiling = &gen11_blt_info, \ > + .blt_info = &gen11_blt_info, \ > .codename = "skylake", \ > .is_skylake = true > > @@ -268,7 +268,7 @@ static const struct intel_device_info intel_broxton_info = { > .graphics_ver = 9, > .display_ver = 9, > .is_broxton = true, > - .blt_tiling = &gen11_blt_info, > + .blt_info = &gen11_blt_info, > .codename = "broxton" > }; > > @@ -276,7 +276,7 @@ static const struct intel_device_info intel_broxton_info = { > .graphics_ver = 9, \ > .display_ver = 9, \ > .is_kabylake = true, \ > - .blt_tiling = &gen11_blt_info, \ > + .blt_info = &gen11_blt_info, \ > .codename = "kabylake" > > static const struct intel_device_info intel_kabylake_gt1_info = { > @@ -303,7 +303,7 @@ static const struct intel_device_info intel_geminilake_info = { > .graphics_ver = 9, > .display_ver = 9, > .is_geminilake = true, > - .blt_tiling = &gen11_blt_info, > + .blt_info = &gen11_blt_info, > .codename = "geminilake" > }; > > @@ -311,7 +311,7 @@ static const struct intel_device_info intel_geminilake_info = { > .graphics_ver = 9, \ > .display_ver = 9, \ > .is_coffeelake = true, \ > - .blt_tiling = &gen11_blt_info, \ > + .blt_info = &gen11_blt_info, \ > .codename = "coffeelake" > > static const struct intel_device_info intel_coffeelake_gt1_info = { > @@ -333,7 +333,7 @@ static const struct intel_device_info intel_coffeelake_gt3_info = { > .graphics_ver = 9, \ > .display_ver = 9, \ > .is_cometlake = true, \ > - .blt_tiling = &gen11_blt_info, \ > + .blt_info = &gen11_blt_info, \ > .codename = "cometlake" > > static const struct intel_device_info intel_cometlake_gt1_info = { > @@ -350,7 +350,7 @@ static const struct intel_device_info intel_cannonlake_info = { > .graphics_ver = 10, > .display_ver = 10, > .is_cannonlake = true, > - .blt_tiling = &gen11_blt_info, > + .blt_info = &gen11_blt_info, > .codename = "cannonlake" > }; > > @@ -358,7 +358,7 @@ static const struct intel_device_info intel_icelake_info = { > .graphics_ver = 11, > .display_ver = 11, > .is_icelake = true, > - .blt_tiling = &gen11_blt_info, > + .blt_info = &gen11_blt_info, > .codename = "icelake" > }; > > @@ -366,7 +366,7 @@ static const struct intel_device_info intel_elkhartlake_info = { > .graphics_ver = 11, > .display_ver = 11, > .is_elkhartlake = true, > - .blt_tiling = &gen11_blt_info, > + .blt_info = &gen11_blt_info, > .codename = "elkhartlake" > }; > > @@ -374,7 +374,7 @@ static const struct intel_device_info intel_jasperlake_info = { > .graphics_ver = 11, > .display_ver = 11, > .is_jasperlake = true, > - .blt_tiling = &gen11_blt_info, > + .blt_info = &gen11_blt_info, > .codename = "jasperlake" > }; > > @@ -382,7 +382,7 @@ static const struct intel_device_info intel_tigerlake_gt1_info = { > .graphics_ver = 12, > .display_ver = 12, > .is_tigerlake = true, > - .blt_tiling = &gen12_blt_info, > + .blt_info = &gen12_blt_info, > .codename = "tigerlake", > .gt = 1, > }; > @@ -391,7 +391,7 @@ static const struct intel_device_info intel_tigerlake_gt2_info = { > .graphics_ver = 12, > .display_ver = 12, > .is_tigerlake = true, > - .blt_tiling = &gen12_blt_info, > + .blt_info = &gen12_blt_info, > .codename = "tigerlake", > .gt = 2, > }; > @@ -400,7 +400,7 @@ static const struct intel_device_info intel_rocketlake_info = { > .graphics_ver = 12, > .display_ver = 12, > .is_rocketlake = true, > - .blt_tiling = &gen12_blt_info, > + .blt_info = &gen12_blt_info, > .codename = "rocketlake" > }; > > @@ -409,7 +409,7 @@ static const struct intel_device_info intel_dg1_info = { > .graphics_rel = 10, > .display_ver = 12, > .is_dg1 = true, > - .blt_tiling = &gen12_blt_info, > + .blt_info = &gen12_blt_info, > .codename = "dg1" > }; > > @@ -420,7 +420,7 @@ static const struct intel_device_info intel_dg2_info = { > .has_4tile = true, > .is_dg2 = true, > .codename = "dg2", > - .blt_tiling = &gen12_dg2_blt_info, > + .blt_info = &gen12_dg2_blt_info, > .has_flatccs = true, > }; > > @@ -428,7 +428,7 @@ static const struct intel_device_info intel_alderlake_s_info = { > .graphics_ver = 12, > .display_ver = 12, > .is_alderlake_s = true, > - .blt_tiling = &gen12_blt_info, > + .blt_info = &gen12_blt_info, > .codename = "alderlake_s" > }; > > @@ -436,7 +436,7 @@ static const struct intel_device_info intel_raptorlake_s_info = { > .graphics_ver = 12, > .display_ver = 12, > .is_raptorlake_s = true, > - .blt_tiling = &gen12_blt_info, > + .blt_info = &gen12_blt_info, > .codename = "raptorlake_s" > }; > > @@ -444,7 +444,7 @@ static const struct intel_device_info intel_alderlake_p_info = { > .graphics_ver = 12, > .display_ver = 13, > .is_alderlake_p = true, > - .blt_tiling = &gen12_blt_info, > + .blt_info = &gen12_blt_info, > .codename = "alderlake_p" > }; > > @@ -452,7 +452,7 @@ static const struct intel_device_info intel_alderlake_n_info = { > .graphics_ver = 12, > .display_ver = 13, > .is_alderlake_n = true, > - .blt_tiling = &gen12_blt_info, > + .blt_info = &gen12_blt_info, > .codename = "alderlake_n" > }; > > @@ -463,7 +463,7 @@ static const struct intel_device_info intel_ats_m_info = { > .is_dg2 = true, > .has_4tile = true, > .codename = "ats_m", > - .blt_tiling = &gen12_dg2_blt_info, > + .blt_info = &gen12_dg2_blt_info, > .has_flatccs = true, > }; > > @@ -474,7 +474,7 @@ static const struct intel_device_info intel_meteorlake_info = { > .has_4tile = true, > .is_meteorlake = true, > .codename = "meteorlake", > - .blt_tiling = &gen12_mtl_blt_info > + .blt_info = &gen12_mtl_blt_info You may add ',' at the end, then future changes will touch single line only. -- Zbigniew > }; > > static const struct pci_id_match intel_device_match[] = { > @@ -620,15 +620,15 @@ out: > * by the device. > * > * Returns: > - * The associated blt_cmd_info, NULL if no such information is found > + * The associated blt_cmds_desc, NULL if no such information is found > */ > -const struct blt_cmd_info *intel_get_blt_info(uint16_t devid) > +const struct blt_cmds_desc *intel_get_blt_info(uint16_t devid) > { > const struct intel_device_info *dev_info; > > dev_info = intel_get_device_info(devid); > > - return dev_info->blt_tiling; > + return dev_info->blt_info; > } > > /** > -- > 2.25.1 > ^ permalink raw reply [flat|nested] 13+ messages in thread
* [igt-dev] [PATCH i-g-t v2 2/6] lib/intel_tiling_info: Rename blt_tiling_info to blt_cmd_info 2023-02-08 13:47 [igt-dev] [PATCH i-g-t v2 0/6] Extend and rename intel_tiling_info library Karolina Stolarek 2023-02-08 13:47 ` [igt-dev] [PATCH i-g-t v2 1/6] lib/intel_tiling_info: Rename blt_cmd_info to blt_cmds_desc Karolina Stolarek @ 2023-02-08 13:47 ` Karolina Stolarek 2023-02-09 7:52 ` Zbigniew Kempczyński 2023-02-08 13:47 ` [igt-dev] [PATCH i-g-t v2 3/6] lib/i915: Rename intel_tiling_info library Karolina Stolarek ` (5 subsequent siblings) 7 siblings, 1 reply; 13+ messages in thread From: Karolina Stolarek @ 2023-02-08 13:47 UTC (permalink / raw) To: igt-dev This struct will store other information on the copy command, not just what tiling formats it supports. Change the struct name to be more generic. Signed-off-by: Karolina Stolarek <karolina.stolarek@intel.com> --- lib/i915/i915_blt.c | 8 ++++---- lib/i915/intel_tiling_info.c | 16 ++++++++-------- lib/i915/intel_tiling_info.h | 4 ++-- 3 files changed, 14 insertions(+), 14 deletions(-) diff --git a/lib/i915/i915_blt.c b/lib/i915/i915_blt.c index 32d22720..554905d2 100644 --- a/lib/i915/i915_blt.c +++ b/lib/i915/i915_blt.c @@ -240,18 +240,18 @@ bool blt_cmd_supports_tiling(const struct blt_cmds_desc *blt_info, enum blt_cmd_type cmd, enum blt_tiling_type tiling) { - struct blt_tiling_info const *tile_config; + struct blt_cmd_info const *cmd_info; if (!blt_info) return false; - tile_config = blt_info->supported_cmds[cmd]; + cmd_info = blt_info->supported_cmds[cmd]; /* no config means no support for that tiling */ - if (!tile_config) + if (!cmd_info) return false; - return tile_config->supported_tiling & BIT(tiling); + return cmd_info->supported_tiling & BIT(tiling); } /** diff --git a/lib/i915/intel_tiling_info.c b/lib/i915/intel_tiling_info.c index 671b9934..5f785777 100644 --- a/lib/i915/intel_tiling_info.c +++ b/lib/i915/intel_tiling_info.c @@ -12,39 +12,39 @@ .supported_tiling = _tiling \ } -static const struct blt_tiling_info src_copy = BLT_INFO(SRC_COPY, BIT(T_LINEAR)); -static const struct blt_tiling_info +static const struct blt_cmd_info src_copy = BLT_INFO(SRC_COPY, BIT(T_LINEAR)); +static const struct blt_cmd_info pre_gen8_xy_src_copy = BLT_INFO(XY_SRC_COPY, BIT(T_LINEAR) | BIT(T_XMAJOR)); -static const struct blt_tiling_info +static const struct blt_cmd_info gen8_xy_src_copy = BLT_INFO(XY_SRC_COPY, BIT(T_LINEAR) | BIT(T_XMAJOR) | BIT(T_YMAJOR)); -static const struct blt_tiling_info +static const struct blt_cmd_info gen11_xy_fast_copy = BLT_INFO(XY_FAST_COPY, BIT(T_LINEAR) | BIT(T_YMAJOR) | BIT(T_YFMAJOR) | BIT(T_TILE64)); -static const struct blt_tiling_info +static const struct blt_cmd_info gen12_xy_fast_copy = BLT_INFO(XY_FAST_COPY, BIT(T_LINEAR) | BIT(T_YMAJOR) | BIT(T_TILE4) | BIT(T_TILE64)); -static const struct blt_tiling_info +static const struct blt_cmd_info dg2_xy_fast_copy = BLT_INFO(XY_FAST_COPY, BIT(T_LINEAR) | BIT(T_XMAJOR) | BIT(T_TILE4) | BIT(T_TILE64)); -static const struct blt_tiling_info +static const struct blt_cmd_info gen12_xy_block_copy = BLT_INFO(XY_BLOCK_COPY, BIT(T_LINEAR) | BIT(T_YMAJOR)); -static const struct blt_tiling_info +static const struct blt_cmd_info dg2_xy_block_copy = BLT_INFO(XY_BLOCK_COPY, BIT(T_LINEAR) | BIT(T_XMAJOR) | diff --git a/lib/i915/intel_tiling_info.h b/lib/i915/intel_tiling_info.h index 97fb1ce8..e86b6dd4 100644 --- a/lib/i915/intel_tiling_info.h +++ b/lib/i915/intel_tiling_info.h @@ -26,13 +26,13 @@ enum blt_cmd_type { __BLT_MAX_CMD }; -struct blt_tiling_info { +struct blt_cmd_info { enum blt_cmd_type blt_cmd_type; uint32_t supported_tiling; }; struct blt_cmds_desc { - struct blt_tiling_info const *supported_cmds[__BLT_MAX_CMD]; + struct blt_cmd_info const *supported_cmds[__BLT_MAX_CMD]; }; extern const struct blt_cmds_desc pre_gen8_blt_info; -- 2.25.1 ^ permalink raw reply related [flat|nested] 13+ messages in thread
* Re: [igt-dev] [PATCH i-g-t v2 2/6] lib/intel_tiling_info: Rename blt_tiling_info to blt_cmd_info 2023-02-08 13:47 ` [igt-dev] [PATCH i-g-t v2 2/6] lib/intel_tiling_info: Rename blt_tiling_info to blt_cmd_info Karolina Stolarek @ 2023-02-09 7:52 ` Zbigniew Kempczyński 0 siblings, 0 replies; 13+ messages in thread From: Zbigniew Kempczyński @ 2023-02-09 7:52 UTC (permalink / raw) To: Karolina Stolarek; +Cc: igt-dev On Wed, Feb 08, 2023 at 02:47:35PM +0100, Karolina Stolarek wrote: > This struct will store other information on the copy command, > not just what tiling formats it supports. Change the struct name > to be more generic. > > Signed-off-by: Karolina Stolarek <karolina.stolarek@intel.com> > --- > lib/i915/i915_blt.c | 8 ++++---- > lib/i915/intel_tiling_info.c | 16 ++++++++-------- > lib/i915/intel_tiling_info.h | 4 ++-- > 3 files changed, 14 insertions(+), 14 deletions(-) > > diff --git a/lib/i915/i915_blt.c b/lib/i915/i915_blt.c > index 32d22720..554905d2 100644 > --- a/lib/i915/i915_blt.c > +++ b/lib/i915/i915_blt.c > @@ -240,18 +240,18 @@ bool blt_cmd_supports_tiling(const struct blt_cmds_desc *blt_info, > enum blt_cmd_type cmd, > enum blt_tiling_type tiling) > { > - struct blt_tiling_info const *tile_config; > + struct blt_cmd_info const *cmd_info; > > if (!blt_info) > return false; > > - tile_config = blt_info->supported_cmds[cmd]; > + cmd_info = blt_info->supported_cmds[cmd]; > > /* no config means no support for that tiling */ > - if (!tile_config) > + if (!cmd_info) > return false; > > - return tile_config->supported_tiling & BIT(tiling); > + return cmd_info->supported_tiling & BIT(tiling); > } > > /** > diff --git a/lib/i915/intel_tiling_info.c b/lib/i915/intel_tiling_info.c > index 671b9934..5f785777 100644 > --- a/lib/i915/intel_tiling_info.c > +++ b/lib/i915/intel_tiling_info.c > @@ -12,39 +12,39 @@ > .supported_tiling = _tiling \ > } > > -static const struct blt_tiling_info src_copy = BLT_INFO(SRC_COPY, BIT(T_LINEAR)); > -static const struct blt_tiling_info > +static const struct blt_cmd_info src_copy = BLT_INFO(SRC_COPY, BIT(T_LINEAR)); > +static const struct blt_cmd_info > pre_gen8_xy_src_copy = BLT_INFO(XY_SRC_COPY, > BIT(T_LINEAR) | > BIT(T_XMAJOR)); > -static const struct blt_tiling_info > +static const struct blt_cmd_info > gen8_xy_src_copy = BLT_INFO(XY_SRC_COPY, > BIT(T_LINEAR) | > BIT(T_XMAJOR) | > BIT(T_YMAJOR)); > -static const struct blt_tiling_info > +static const struct blt_cmd_info > gen11_xy_fast_copy = BLT_INFO(XY_FAST_COPY, > BIT(T_LINEAR) | > BIT(T_YMAJOR) | > BIT(T_YFMAJOR) | > BIT(T_TILE64)); > -static const struct blt_tiling_info > +static const struct blt_cmd_info > gen12_xy_fast_copy = BLT_INFO(XY_FAST_COPY, > BIT(T_LINEAR) | > BIT(T_YMAJOR) | > BIT(T_TILE4) | > BIT(T_TILE64)); > -static const struct blt_tiling_info > +static const struct blt_cmd_info > dg2_xy_fast_copy = BLT_INFO(XY_FAST_COPY, > BIT(T_LINEAR) | > BIT(T_XMAJOR) | > BIT(T_TILE4) | > BIT(T_TILE64)); > -static const struct blt_tiling_info > +static const struct blt_cmd_info > gen12_xy_block_copy = BLT_INFO(XY_BLOCK_COPY, > BIT(T_LINEAR) | > BIT(T_YMAJOR)); > -static const struct blt_tiling_info > +static const struct blt_cmd_info > dg2_xy_block_copy = BLT_INFO(XY_BLOCK_COPY, > BIT(T_LINEAR) | > BIT(T_XMAJOR) | > diff --git a/lib/i915/intel_tiling_info.h b/lib/i915/intel_tiling_info.h > index 97fb1ce8..e86b6dd4 100644 > --- a/lib/i915/intel_tiling_info.h > +++ b/lib/i915/intel_tiling_info.h > @@ -26,13 +26,13 @@ enum blt_cmd_type { > __BLT_MAX_CMD > }; > > -struct blt_tiling_info { > +struct blt_cmd_info { blt_tiling_info -> blt_cmd_info is ok for me. > enum blt_cmd_type blt_cmd_type; > uint32_t supported_tiling; > }; > > struct blt_cmds_desc { This should imo be renamed to intel_cmds_desc. > - struct blt_tiling_info const *supported_cmds[__BLT_MAX_CMD]; > + struct blt_cmd_info const *supported_cmds[__BLT_MAX_CMD]; Then we can collect more commands (not only blitter here), but supported_cmds should be renamed to blt_supported_cmds or simply blt_cmds. -- Zbigniew > }; > > extern const struct blt_cmds_desc pre_gen8_blt_info; > -- > 2.25.1 > ^ permalink raw reply [flat|nested] 13+ messages in thread
* [igt-dev] [PATCH i-g-t v2 3/6] lib/i915: Rename intel_tiling_info library 2023-02-08 13:47 [igt-dev] [PATCH i-g-t v2 0/6] Extend and rename intel_tiling_info library Karolina Stolarek 2023-02-08 13:47 ` [igt-dev] [PATCH i-g-t v2 1/6] lib/intel_tiling_info: Rename blt_cmd_info to blt_cmds_desc Karolina Stolarek 2023-02-08 13:47 ` [igt-dev] [PATCH i-g-t v2 2/6] lib/intel_tiling_info: Rename blt_tiling_info to blt_cmd_info Karolina Stolarek @ 2023-02-08 13:47 ` Karolina Stolarek 2023-02-09 7:55 ` Zbigniew Kempczyński 2023-02-08 13:47 ` [igt-dev] [PATCH i-g-t v2 4/6] lib/intel_cmds_info: Add flags field to describe command properties Karolina Stolarek ` (4 subsequent siblings) 7 siblings, 1 reply; 13+ messages in thread From: Karolina Stolarek @ 2023-02-08 13:47 UTC (permalink / raw) To: igt-dev The structs here describe the properties of copy commands, not just tiling formats they support. Make the library name more generic. Signed-off-by: Karolina Stolarek <karolina.stolarek@intel.com> --- lib/i915/i915_blt.h | 2 +- lib/i915/{intel_tiling_info.c => intel_cmds_info.c} | 2 +- lib/i915/{intel_tiling_info.h => intel_cmds_info.h} | 0 lib/intel_chipset.h | 2 +- lib/meson.build | 6 +++--- 5 files changed, 6 insertions(+), 6 deletions(-) rename lib/i915/{intel_tiling_info.c => intel_cmds_info.c} (98%) rename lib/i915/{intel_tiling_info.h => intel_cmds_info.h} (100%) diff --git a/lib/i915/i915_blt.h b/lib/i915/i915_blt.h index 6a0c246a..7acf9595 100644 --- a/lib/i915/i915_blt.h +++ b/lib/i915/i915_blt.h @@ -47,7 +47,7 @@ #include <malloc.h> #include "drm.h" #include "igt.h" -#include "intel_tiling_info.h" +#include "intel_cmds_info.h" #define CCS_RATIO 256 diff --git a/lib/i915/intel_tiling_info.c b/lib/i915/intel_cmds_info.c similarity index 98% rename from lib/i915/intel_tiling_info.c rename to lib/i915/intel_cmds_info.c index 5f785777..d99b3131 100644 --- a/lib/i915/intel_tiling_info.c +++ b/lib/i915/intel_cmds_info.c @@ -5,7 +5,7 @@ #include <stdint.h> #include "intel_chipset.h" -#include "i915/intel_tiling_info.h" +#include "i915/intel_cmds_info.h" #define BLT_INFO(_cmd, _tiling) { \ .blt_cmd_type = _cmd, \ diff --git a/lib/i915/intel_tiling_info.h b/lib/i915/intel_cmds_info.h similarity index 100% rename from lib/i915/intel_tiling_info.h rename to lib/i915/intel_cmds_info.h diff --git a/lib/intel_chipset.h b/lib/intel_chipset.h index 2e44de24..a02a84f9 100644 --- a/lib/intel_chipset.h +++ b/lib/intel_chipset.h @@ -31,7 +31,7 @@ #include <pciaccess.h> #include <stdbool.h> -#include "i915/intel_tiling_info.h" +#include "i915/intel_cmds_info.h" #define BIT(x) (1ul <<(x)) diff --git a/lib/meson.build b/lib/meson.build index d49b78ca..c5131d9a 100644 --- a/lib/meson.build +++ b/lib/meson.build @@ -14,7 +14,7 @@ lib_sources = [ 'i915/intel_decode.c', 'i915/intel_memory_region.c', 'i915/intel_mocs.c', - 'i915/intel_tiling_info.c', + 'i915/intel_cmds_info.c', 'i915/i915_blt.c', 'i915/i915_crc.c', 'igt_collection.c', @@ -219,7 +219,7 @@ igt_deps = [ lib_igt ] + lib_deps lin_igt_chipset_build = static_library('igt_chipset', ['intel_chipset.c', 'intel_device_info.c', - 'i915/intel_tiling_info.c'], + 'i915/intel_cmds_info.c'], include_directories : inc) lib_igt_chipset = declare_dependency(link_with : lin_igt_chipset_build, @@ -242,7 +242,7 @@ lib_igt_device_scan_build = static_library('igt_device_scan', 'igt_list.c', 'igt_tools_stub.c', 'intel_device_info.c', - 'i915/intel_tiling_info.c', + 'i915/intel_cmds_info.c', ], dependencies : scan_dep, include_directories : inc) -- 2.25.1 ^ permalink raw reply related [flat|nested] 13+ messages in thread
* Re: [igt-dev] [PATCH i-g-t v2 3/6] lib/i915: Rename intel_tiling_info library 2023-02-08 13:47 ` [igt-dev] [PATCH i-g-t v2 3/6] lib/i915: Rename intel_tiling_info library Karolina Stolarek @ 2023-02-09 7:55 ` Zbigniew Kempczyński 0 siblings, 0 replies; 13+ messages in thread From: Zbigniew Kempczyński @ 2023-02-09 7:55 UTC (permalink / raw) To: Karolina Stolarek; +Cc: igt-dev On Wed, Feb 08, 2023 at 02:47:36PM +0100, Karolina Stolarek wrote: > The structs here describe the properties of copy commands, not > just tiling formats they support. Make the library name more > generic. > > Signed-off-by: Karolina Stolarek <karolina.stolarek@intel.com> > --- > lib/i915/i915_blt.h | 2 +- > lib/i915/{intel_tiling_info.c => intel_cmds_info.c} | 2 +- > lib/i915/{intel_tiling_info.h => intel_cmds_info.h} | 0 > lib/intel_chipset.h | 2 +- > lib/meson.build | 6 +++--- > 5 files changed, 6 insertions(+), 6 deletions(-) > rename lib/i915/{intel_tiling_info.c => intel_cmds_info.c} (98%) > rename lib/i915/{intel_tiling_info.h => intel_cmds_info.h} (100%) intel_cmds_info is ok so structure I suggested in patch 2/6 should rather be named intel_cmds_info instead intel_cmds_desc. But I would accept intel_cmds_desc too if you want to keep this name. I've noticed here lack of change in intel_cmds_info.h in #ifdef ... line. You still keep INTEL_TILING_INFO there. -- Zbigniew > > diff --git a/lib/i915/i915_blt.h b/lib/i915/i915_blt.h > index 6a0c246a..7acf9595 100644 > --- a/lib/i915/i915_blt.h > +++ b/lib/i915/i915_blt.h > @@ -47,7 +47,7 @@ > #include <malloc.h> > #include "drm.h" > #include "igt.h" > -#include "intel_tiling_info.h" > +#include "intel_cmds_info.h" > > #define CCS_RATIO 256 > > diff --git a/lib/i915/intel_tiling_info.c b/lib/i915/intel_cmds_info.c > similarity index 98% > rename from lib/i915/intel_tiling_info.c > rename to lib/i915/intel_cmds_info.c > index 5f785777..d99b3131 100644 > --- a/lib/i915/intel_tiling_info.c > +++ b/lib/i915/intel_cmds_info.c > @@ -5,7 +5,7 @@ > > #include <stdint.h> > #include "intel_chipset.h" > -#include "i915/intel_tiling_info.h" > +#include "i915/intel_cmds_info.h" > > #define BLT_INFO(_cmd, _tiling) { \ > .blt_cmd_type = _cmd, \ > diff --git a/lib/i915/intel_tiling_info.h b/lib/i915/intel_cmds_info.h > similarity index 100% > rename from lib/i915/intel_tiling_info.h > rename to lib/i915/intel_cmds_info.h > diff --git a/lib/intel_chipset.h b/lib/intel_chipset.h > index 2e44de24..a02a84f9 100644 > --- a/lib/intel_chipset.h > +++ b/lib/intel_chipset.h > @@ -31,7 +31,7 @@ > #include <pciaccess.h> > #include <stdbool.h> > > -#include "i915/intel_tiling_info.h" > +#include "i915/intel_cmds_info.h" > > #define BIT(x) (1ul <<(x)) > > diff --git a/lib/meson.build b/lib/meson.build > index d49b78ca..c5131d9a 100644 > --- a/lib/meson.build > +++ b/lib/meson.build > @@ -14,7 +14,7 @@ lib_sources = [ > 'i915/intel_decode.c', > 'i915/intel_memory_region.c', > 'i915/intel_mocs.c', > - 'i915/intel_tiling_info.c', > + 'i915/intel_cmds_info.c', > 'i915/i915_blt.c', > 'i915/i915_crc.c', > 'igt_collection.c', > @@ -219,7 +219,7 @@ igt_deps = [ lib_igt ] + lib_deps > lin_igt_chipset_build = static_library('igt_chipset', > ['intel_chipset.c', > 'intel_device_info.c', > - 'i915/intel_tiling_info.c'], > + 'i915/intel_cmds_info.c'], > include_directories : inc) > > lib_igt_chipset = declare_dependency(link_with : lin_igt_chipset_build, > @@ -242,7 +242,7 @@ lib_igt_device_scan_build = static_library('igt_device_scan', > 'igt_list.c', > 'igt_tools_stub.c', > 'intel_device_info.c', > - 'i915/intel_tiling_info.c', > + 'i915/intel_cmds_info.c', > ], > dependencies : scan_dep, > include_directories : inc) > -- > 2.25.1 > ^ permalink raw reply [flat|nested] 13+ messages in thread
* [igt-dev] [PATCH i-g-t v2 4/6] lib/intel_cmds_info: Add flags field to describe command properties 2023-02-08 13:47 [igt-dev] [PATCH i-g-t v2 0/6] Extend and rename intel_tiling_info library Karolina Stolarek ` (2 preceding siblings ...) 2023-02-08 13:47 ` [igt-dev] [PATCH i-g-t v2 3/6] lib/i915: Rename intel_tiling_info library Karolina Stolarek @ 2023-02-08 13:47 ` Karolina Stolarek 2023-02-09 7:57 ` Zbigniew Kempczyński 2023-02-08 13:47 ` [igt-dev] [PATCH i-g-t v2 5/6] lib/i915_blt: Add checks for " Karolina Stolarek ` (3 subsequent siblings) 7 siblings, 1 reply; 13+ messages in thread From: Karolina Stolarek @ 2023-02-08 13:47 UTC (permalink / raw) To: igt-dev Blitter commands may have different properties depending on the platform. Add a new field to blt_cmd_info struct to describe their properties. Update block-copy definitions for DG2 and MTL to use that field. Signed-off-by: Karolina Stolarek <karolina.stolarek@intel.com> --- lib/i915/intel_cmds_info.c | 28 ++++++++++++++++++++++------ lib/i915/intel_cmds_info.h | 4 ++++ 2 files changed, 26 insertions(+), 6 deletions(-) diff --git a/lib/i915/intel_cmds_info.c b/lib/i915/intel_cmds_info.c index d99b3131..f79a8e86 100644 --- a/lib/i915/intel_cmds_info.c +++ b/lib/i915/intel_cmds_info.c @@ -12,6 +12,12 @@ .supported_tiling = _tiling \ } +#define BLT_INFO_EXT(_cmd, _tiling, _flags) { \ + .blt_cmd_type = _cmd, \ + .supported_tiling = _tiling, \ + .flags = _flags, \ + } + static const struct blt_cmd_info src_copy = BLT_INFO(SRC_COPY, BIT(T_LINEAR)); static const struct blt_cmd_info pre_gen8_xy_src_copy = BLT_INFO(XY_SRC_COPY, @@ -45,11 +51,21 @@ static const struct blt_cmd_info BIT(T_LINEAR) | BIT(T_YMAJOR)); static const struct blt_cmd_info - dg2_xy_block_copy = BLT_INFO(XY_BLOCK_COPY, - BIT(T_LINEAR) | - BIT(T_XMAJOR) | - BIT(T_TILE4) | - BIT(T_TILE64)); + dg2_xy_block_copy = BLT_INFO_EXT(XY_BLOCK_COPY, + BIT(T_LINEAR) | + BIT(T_XMAJOR) | + BIT(T_TILE4) | + BIT(T_TILE64), + BLT_CMD_EXTENDED | + BLT_CMD_SUPPORTS_COMPRESSION); + +static const struct blt_cmd_info + mtl_xy_block_copy = BLT_INFO_EXT(XY_BLOCK_COPY, + BIT(T_LINEAR) | + BIT(T_XMAJOR) | + BIT(T_TILE4) | + BIT(T_TILE64), + BLT_CMD_EXTENDED); const struct blt_cmds_desc pre_gen8_blt_info = { .supported_cmds = { @@ -90,6 +106,6 @@ const struct blt_cmds_desc gen12_dg2_blt_info = { const struct blt_cmds_desc gen12_mtl_blt_info = { .supported_cmds = { [XY_FAST_COPY] = &dg2_xy_fast_copy, - [XY_BLOCK_COPY] = &dg2_xy_block_copy + [XY_BLOCK_COPY] = &mtl_xy_block_copy } }; diff --git a/lib/i915/intel_cmds_info.h b/lib/i915/intel_cmds_info.h index e86b6dd4..37cfca84 100644 --- a/lib/i915/intel_cmds_info.h +++ b/lib/i915/intel_cmds_info.h @@ -29,6 +29,10 @@ enum blt_cmd_type { struct blt_cmd_info { enum blt_cmd_type blt_cmd_type; uint32_t supported_tiling; + + uint32_t flags; +#define BLT_CMD_EXTENDED (1 << 0) +#define BLT_CMD_SUPPORTS_COMPRESSION (1 << 1) }; struct blt_cmds_desc { -- 2.25.1 ^ permalink raw reply related [flat|nested] 13+ messages in thread
* Re: [igt-dev] [PATCH i-g-t v2 4/6] lib/intel_cmds_info: Add flags field to describe command properties 2023-02-08 13:47 ` [igt-dev] [PATCH i-g-t v2 4/6] lib/intel_cmds_info: Add flags field to describe command properties Karolina Stolarek @ 2023-02-09 7:57 ` Zbigniew Kempczyński 0 siblings, 0 replies; 13+ messages in thread From: Zbigniew Kempczyński @ 2023-02-09 7:57 UTC (permalink / raw) To: Karolina Stolarek; +Cc: igt-dev On Wed, Feb 08, 2023 at 02:47:37PM +0100, Karolina Stolarek wrote: > Blitter commands may have different properties depending on the > platform. Add a new field to blt_cmd_info struct to describe > their properties. Update block-copy definitions for DG2 and MTL > to use that field. > > Signed-off-by: Karolina Stolarek <karolina.stolarek@intel.com> > --- > lib/i915/intel_cmds_info.c | 28 ++++++++++++++++++++++------ > lib/i915/intel_cmds_info.h | 4 ++++ > 2 files changed, 26 insertions(+), 6 deletions(-) > > diff --git a/lib/i915/intel_cmds_info.c b/lib/i915/intel_cmds_info.c > index d99b3131..f79a8e86 100644 > --- a/lib/i915/intel_cmds_info.c > +++ b/lib/i915/intel_cmds_info.c > @@ -12,6 +12,12 @@ > .supported_tiling = _tiling \ > } > > +#define BLT_INFO_EXT(_cmd, _tiling, _flags) { \ > + .blt_cmd_type = _cmd, \ > + .supported_tiling = _tiling, \ > + .flags = _flags, \ > + } > + > static const struct blt_cmd_info src_copy = BLT_INFO(SRC_COPY, BIT(T_LINEAR)); > static const struct blt_cmd_info > pre_gen8_xy_src_copy = BLT_INFO(XY_SRC_COPY, > @@ -45,11 +51,21 @@ static const struct blt_cmd_info > BIT(T_LINEAR) | > BIT(T_YMAJOR)); > static const struct blt_cmd_info > - dg2_xy_block_copy = BLT_INFO(XY_BLOCK_COPY, > - BIT(T_LINEAR) | > - BIT(T_XMAJOR) | > - BIT(T_TILE4) | > - BIT(T_TILE64)); > + dg2_xy_block_copy = BLT_INFO_EXT(XY_BLOCK_COPY, > + BIT(T_LINEAR) | > + BIT(T_XMAJOR) | > + BIT(T_TILE4) | > + BIT(T_TILE64), > + BLT_CMD_EXTENDED | > + BLT_CMD_SUPPORTS_COMPRESSION); > + > +static const struct blt_cmd_info > + mtl_xy_block_copy = BLT_INFO_EXT(XY_BLOCK_COPY, > + BIT(T_LINEAR) | > + BIT(T_XMAJOR) | > + BIT(T_TILE4) | > + BIT(T_TILE64), > + BLT_CMD_EXTENDED); > > const struct blt_cmds_desc pre_gen8_blt_info = { > .supported_cmds = { > @@ -90,6 +106,6 @@ const struct blt_cmds_desc gen12_dg2_blt_info = { > const struct blt_cmds_desc gen12_mtl_blt_info = { > .supported_cmds = { > [XY_FAST_COPY] = &dg2_xy_fast_copy, > - [XY_BLOCK_COPY] = &dg2_xy_block_copy > + [XY_BLOCK_COPY] = &mtl_xy_block_copy Add ',' at the end of the line. > } > }; > diff --git a/lib/i915/intel_cmds_info.h b/lib/i915/intel_cmds_info.h > index e86b6dd4..37cfca84 100644 > --- a/lib/i915/intel_cmds_info.h > +++ b/lib/i915/intel_cmds_info.h > @@ -29,6 +29,10 @@ enum blt_cmd_type { > struct blt_cmd_info { > enum blt_cmd_type blt_cmd_type; > uint32_t supported_tiling; > + This empty line is unnecessary. -- Zbigniew > + uint32_t flags; > +#define BLT_CMD_EXTENDED (1 << 0) > +#define BLT_CMD_SUPPORTS_COMPRESSION (1 << 1) > }; > > struct blt_cmds_desc { > -- > 2.25.1 > ^ permalink raw reply [flat|nested] 13+ messages in thread
* [igt-dev] [PATCH i-g-t v2 5/6] lib/i915_blt: Add checks for command properties 2023-02-08 13:47 [igt-dev] [PATCH i-g-t v2 0/6] Extend and rename intel_tiling_info library Karolina Stolarek ` (3 preceding siblings ...) 2023-02-08 13:47 ` [igt-dev] [PATCH i-g-t v2 4/6] lib/intel_cmds_info: Add flags field to describe command properties Karolina Stolarek @ 2023-02-08 13:47 ` Karolina Stolarek 2023-02-08 13:47 ` [igt-dev] [PATCH i-g-t v2 6/6] tests/gem_ccs: Check for extended block-copy and compression support Karolina Stolarek ` (2 subsequent siblings) 7 siblings, 0 replies; 13+ messages in thread From: Karolina Stolarek @ 2023-02-08 13:47 UTC (permalink / raw) To: igt-dev Add a predicate that checks if a command has a specific property. Introduce helpers that check if a platform uses an extended version of the block-copy command or supports compression. Group functions together in the header file. Signed-off-by: Karolina Stolarek <karolina.stolarek@intel.com> --- lib/i915/i915_blt.c | 73 +++++++++++++++++++++++++++++++++++++++++++-- lib/i915/i915_blt.h | 8 +++++ 2 files changed, 79 insertions(+), 2 deletions(-) diff --git a/lib/i915/i915_blt.c b/lib/i915/i915_blt.c index 554905d2..f85e12ca 100644 --- a/lib/i915/i915_blt.c +++ b/lib/i915/i915_blt.c @@ -208,6 +208,15 @@ bool blt_supports_compression(int i915) return HAS_FLATCCS(devid); } +static const struct blt_cmd_info *blt_get_cmd_info(const struct blt_cmds_desc *blt_info, + enum blt_cmd_type cmd) +{ + if (!blt_info) + return NULL; + + return blt_info->supported_cmds[cmd]; +} + /** * blt_supports_command: * @blt_info: Blitter commands description struct @@ -222,7 +231,7 @@ bool blt_supports_command(const struct blt_cmds_desc *blt_info, { igt_require_f(blt_info, "No config found for the platform\n"); - return blt_info->supported_cmds[cmd]; + return blt_get_cmd_info(blt_info, cmd); } /** @@ -245,7 +254,7 @@ bool blt_cmd_supports_tiling(const struct blt_cmds_desc *blt_info, if (!blt_info) return false; - cmd_info = blt_info->supported_cmds[cmd]; + cmd_info = blt_get_cmd_info(blt_info, cmd); /* no config means no support for that tiling */ if (!cmd_info) @@ -254,6 +263,32 @@ bool blt_cmd_supports_tiling(const struct blt_cmds_desc *blt_info, return cmd_info->supported_tiling & BIT(tiling); } +/** + * blt_cmd_has_property: + * @blt_info: Blitter commands description struct + * @cmd: Blitter command enum + * @prop: property flag + * + * Checks if a @cmd entry of @blt_info has @prop property. The properties can + * be freely combined, but the function will return true for platforms for + * which all properties defined in the bit flag are present. The function + * returns false if no information about the command is stored. + * + * Returns: true if it does, false otherwise + */ +bool blt_cmd_has_property(const struct blt_cmds_desc *blt_info, + enum blt_cmd_type cmd, uint32_t prop) +{ + struct blt_cmd_info const *cmd_info; + + cmd_info = blt_get_cmd_info(blt_info, cmd); + + if (!cmd_info) + return false; + + return cmd_info->flags & prop; +} + /** * blt_has_block_copy * @i915: drm fd @@ -320,6 +355,40 @@ bool blt_block_copy_supports_tiling(int i915, enum blt_tiling_type tiling) return blt_cmd_supports_tiling(blt_info, XY_BLOCK_COPY, tiling); } +/** + * blt_block_copy_supports_compression + * @i915: drm fd + * + * Check if block copy provided by @i915 device supports compression. + * + * Returns: + * true if it does, false otherwise. + */ +bool blt_block_copy_supports_compression(int i915) +{ + const struct blt_cmds_desc *blt_info = GET_BLT_INFO(i915); + + return blt_cmd_has_property(blt_info, XY_BLOCK_COPY, + BLT_CMD_SUPPORTS_COMPRESSION); +} + +/** + * blt_uses_extended_block_copy + * @i915: drm fd + * + * Check if block copy provided by @i915 device uses an extended version + * of the command. + * + * Returns: + * true if it does, false otherwise. + */ +bool blt_uses_extended_block_copy(int i915) +{ + const struct blt_cmds_desc *blt_info = GET_BLT_INFO(i915); + + return blt_cmd_has_property(blt_info, XY_BLOCK_COPY, BLT_CMD_EXTENDED); +} + /** * blt_tiling_name: * @tiling: tiling id diff --git a/lib/i915/i915_blt.h b/lib/i915/i915_blt.h index 7acf9595..23e0609f 100644 --- a/lib/i915/i915_blt.h +++ b/lib/i915/i915_blt.h @@ -163,10 +163,18 @@ bool blt_supports_command(const struct blt_cmds_desc *blt_info, bool blt_cmd_supports_tiling(const struct blt_cmds_desc *blt_info, enum blt_cmd_type cmd, enum blt_tiling_type tiling); +bool blt_cmd_has_property(const struct blt_cmds_desc *blt_info, + enum blt_cmd_type cmd, + uint32_t prop); + bool blt_has_block_copy(int i915); bool blt_has_fast_copy(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); +bool blt_block_copy_supports_compression(int i915); +bool blt_uses_extended_block_copy(int i915); + const char *blt_tiling_name(enum blt_tiling_type tiling); uint64_t emit_blt_block_copy(int i915, -- 2.25.1 ^ permalink raw reply related [flat|nested] 13+ messages in thread
* [igt-dev] [PATCH i-g-t v2 6/6] tests/gem_ccs: Check for extended block-copy and compression support 2023-02-08 13:47 [igt-dev] [PATCH i-g-t v2 0/6] Extend and rename intel_tiling_info library Karolina Stolarek ` (4 preceding siblings ...) 2023-02-08 13:47 ` [igt-dev] [PATCH i-g-t v2 5/6] lib/i915_blt: Add checks for " Karolina Stolarek @ 2023-02-08 13:47 ` Karolina Stolarek 2023-02-08 18:56 ` [igt-dev] ✓ Fi.CI.BAT: success for Extend and rename intel_tiling_info library Patchwork 2023-02-09 6:01 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork 7 siblings, 0 replies; 13+ messages in thread From: Karolina Stolarek @ 2023-02-08 13:47 UTC (permalink / raw) To: igt-dev Use a helper that checks blitter command flags instead of directly checking Flat CCS compression support. Check for extended block-copy command when initializing the copy object in block_copy and block_multicopy tests. Signed-off-by: Karolina Stolarek <karolina.stolarek@intel.com> --- lib/i915/i915_blt.c | 17 ----------------- lib/i915/i915_blt.h | 1 - tests/i915/gem_ccs.c | 7 +++---- 3 files changed, 3 insertions(+), 22 deletions(-) diff --git a/lib/i915/i915_blt.c b/lib/i915/i915_blt.c index f85e12ca..766e76f8 100644 --- a/lib/i915/i915_blt.c +++ b/lib/i915/i915_blt.c @@ -191,23 +191,6 @@ struct gen12_block_copy_data_ext { } dw21; }; -/** - * blt_supports_compression: - * @i915: drm fd - * - * Function checks if HW supports flatccs compression in blitter commands - * on @i915 device. - * - * Returns: - * true if it does, false otherwise. - */ -bool blt_supports_compression(int i915) -{ - uint32_t devid = intel_get_drm_devid(i915); - - return HAS_FLATCCS(devid); -} - static const struct blt_cmd_info *blt_get_cmd_info(const struct blt_cmds_desc *blt_info, enum blt_cmd_type cmd) { diff --git a/lib/i915/i915_blt.h b/lib/i915/i915_blt.h index 23e0609f..add591ea 100644 --- a/lib/i915/i915_blt.h +++ b/lib/i915/i915_blt.h @@ -157,7 +157,6 @@ struct blt_ctrl_surf_copy_data { bool print_bb; }; -bool blt_supports_compression(int i915); bool blt_supports_command(const struct blt_cmds_desc *blt_info, enum blt_cmd_type cmd); bool blt_cmd_supports_tiling(const struct blt_cmds_desc *blt_info, diff --git a/tests/i915/gem_ccs.c b/tests/i915/gem_ccs.c index a24c8e1f..b7e8bda7 100644 --- a/tests/i915/gem_ccs.c +++ b/tests/i915/gem_ccs.c @@ -346,7 +346,6 @@ static void block_copy(int i915, uint32_t run_id = mid_tiling; uint32_t mid_region = region2, bb; uint32_t width = param.width, height = param.height; - uint32_t devid = intel_get_drm_devid(i915); enum blt_compression mid_compression = config->compression; int mid_compression_format = param.compression_format; enum blt_compression_type comp_type = COMPRESSION_TYPE_3D; @@ -355,7 +354,7 @@ static void block_copy(int i915, igt_assert(__gem_create_in_memory_regions(i915, &bb, &bb_size, region1) == 0); - if (!blt_supports_compression(i915) && !IS_METEORLAKE(devid)) + if (!blt_uses_extended_block_copy(i915)) pext = NULL; src = blt_create_object(i915, region1, width, height, bpp, uc_mocs, @@ -470,7 +469,7 @@ static void block_multicopy(int i915, igt_assert(__gem_create_in_memory_regions(i915, &bb, &bb_size, region1) == 0); - if (!blt_supports_compression(i915)) + if (!blt_uses_extended_block_copy(i915)) pext3 = NULL; src = blt_create_object(i915, region1, width, height, bpp, uc_mocs, @@ -557,7 +556,7 @@ static void block_copy_test(int i915, const struct intel_execution_engine2 *e; int tiling; - if (config->compression && !blt_supports_compression(i915)) + if (config->compression && !blt_block_copy_supports_compression(i915)) return; if (config->inplace && !config->compression) -- 2.25.1 ^ permalink raw reply related [flat|nested] 13+ messages in thread
* [igt-dev] ✓ Fi.CI.BAT: success for Extend and rename intel_tiling_info library 2023-02-08 13:47 [igt-dev] [PATCH i-g-t v2 0/6] Extend and rename intel_tiling_info library Karolina Stolarek ` (5 preceding siblings ...) 2023-02-08 13:47 ` [igt-dev] [PATCH i-g-t v2 6/6] tests/gem_ccs: Check for extended block-copy and compression support Karolina Stolarek @ 2023-02-08 18:56 ` Patchwork 2023-02-09 6:01 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork 7 siblings, 0 replies; 13+ messages in thread From: Patchwork @ 2023-02-08 18:56 UTC (permalink / raw) To: Karolina Stolarek; +Cc: igt-dev [-- Attachment #1: Type: text/plain, Size: 2296 bytes --] == Series Details == Series: Extend and rename intel_tiling_info library URL : https://patchwork.freedesktop.org/series/113785/ State : success == Summary == CI Bug Log - changes from CI_DRM_12713 -> IGTPW_8465 ==================================================== Summary ------- **SUCCESS** No regressions found. External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8465/index.html Participating hosts (37 -> 36) ------------------------------ Missing (1): fi-snb-2520m Known issues ------------ Here are the changes found in IGTPW_8465 that come from known issues: ### IGT changes ### #### Possible fixes #### * igt@i915_selftest@live@hangcheck: - {bat-adlm-1}: [ABORT][1] -> [PASS][2] [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12713/bat-adlm-1/igt@i915_selftest@live@hangcheck.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8465/bat-adlm-1/igt@i915_selftest@live@hangcheck.html - fi-skl-guc: [DMESG-WARN][3] -> [PASS][4] [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12713/fi-skl-guc/igt@i915_selftest@live@hangcheck.html [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8465/fi-skl-guc/igt@i915_selftest@live@hangcheck.html {name}: This element is suppressed. This means it is ignored when computing the status of the difference (SUCCESS, WARNING, or FAILURE). [i915#1845]: https://gitlab.freedesktop.org/drm/intel/issues/1845 [i915#3546]: https://gitlab.freedesktop.org/drm/intel/issues/3546 [i915#4983]: https://gitlab.freedesktop.org/drm/intel/issues/4983 [i915#7828]: https://gitlab.freedesktop.org/drm/intel/issues/7828 [i915#7911]: https://gitlab.freedesktop.org/drm/intel/issues/7911 [i915#7913]: https://gitlab.freedesktop.org/drm/intel/issues/7913 Build changes ------------- * CI: CI-20190529 -> None * IGT: IGT_7153 -> IGTPW_8465 CI-20190529: 20190529 CI_DRM_12713: 5180055794b438ce688a6804afb0af08e626ebab @ git://anongit.freedesktop.org/gfx-ci/linux IGTPW_8465: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8465/index.html IGT_7153: f47f859f13376958a2bd199423b1f0ff53dddbe0 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8465/index.html [-- Attachment #2: Type: text/html, Size: 2522 bytes --] ^ permalink raw reply [flat|nested] 13+ messages in thread
* [igt-dev] ✓ Fi.CI.IGT: success for Extend and rename intel_tiling_info library 2023-02-08 13:47 [igt-dev] [PATCH i-g-t v2 0/6] Extend and rename intel_tiling_info library Karolina Stolarek ` (6 preceding siblings ...) 2023-02-08 18:56 ` [igt-dev] ✓ Fi.CI.BAT: success for Extend and rename intel_tiling_info library Patchwork @ 2023-02-09 6:01 ` Patchwork 7 siblings, 0 replies; 13+ messages in thread From: Patchwork @ 2023-02-09 6:01 UTC (permalink / raw) To: Karolina Stolarek; +Cc: igt-dev [-- Attachment #1: Type: text/plain, Size: 20411 bytes --] == Series Details == Series: Extend and rename intel_tiling_info library URL : https://patchwork.freedesktop.org/series/113785/ State : success == Summary == CI Bug Log - changes from CI_DRM_12713_full -> IGTPW_8465_full ==================================================== Summary ------- **SUCCESS** No regressions found. External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8465/index.html Participating hosts (10 -> 10) ------------------------------ No changes in participating hosts Known issues ------------ Here are the changes found in IGTPW_8465_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]) +3 similar issues [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12713/shard-glk2/igt@gem_exec_fair@basic-pace-share@rcs0.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8465/shard-glk7/igt@gem_exec_fair@basic-pace-share@rcs0.html * igt@kms_flip@flip-vs-expired-vblank-interruptible@b-hdmi-a1: - shard-glk: [PASS][3] -> [FAIL][4] ([i915#79]) [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12713/shard-glk1/igt@kms_flip@flip-vs-expired-vblank-interruptible@b-hdmi-a1.html [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8465/shard-glk8/igt@kms_flip@flip-vs-expired-vblank-interruptible@b-hdmi-a1.html * igt@kms_flip@flip-vs-expired-vblank@a-hdmi-a2: - shard-glk: [PASS][5] -> [FAIL][6] ([i915#2122]) [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12713/shard-glk4/igt@kms_flip@flip-vs-expired-vblank@a-hdmi-a2.html [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8465/shard-glk2/igt@kms_flip@flip-vs-expired-vblank@a-hdmi-a2.html #### Possible fixes #### * igt@fbdev@eof: - {shard-rkl}: [SKIP][7] ([i915#2582]) -> [PASS][8] +2 similar issues [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12713/shard-rkl-3/igt@fbdev@eof.html [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8465/shard-rkl-2/igt@fbdev@eof.html * igt@gem_ctx_exec@basic-nohangcheck: - {shard-rkl}: [FAIL][9] ([i915#6268]) -> [PASS][10] [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12713/shard-rkl-1/igt@gem_ctx_exec@basic-nohangcheck.html [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8465/shard-rkl-5/igt@gem_ctx_exec@basic-nohangcheck.html * igt@gem_eio@in-flight-external: - {shard-rkl}: [ABORT][11] ([i915#7811]) -> [PASS][12] [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12713/shard-rkl-4/igt@gem_eio@in-flight-external.html [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8465/shard-rkl-2/igt@gem_eio@in-flight-external.html * igt@gem_exec_endless@dispatch@bcs0: - {shard-rkl}: [SKIP][13] ([i915#6247]) -> [PASS][14] [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12713/shard-rkl-5/igt@gem_exec_endless@dispatch@bcs0.html [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8465/shard-rkl-2/igt@gem_exec_endless@dispatch@bcs0.html * igt@gem_exec_fair@basic-pace@rcs0: - {shard-rkl}: [FAIL][15] ([i915#2842]) -> [PASS][16] +2 similar issues [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12713/shard-rkl-3/igt@gem_exec_fair@basic-pace@rcs0.html [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8465/shard-rkl-5/igt@gem_exec_fair@basic-pace@rcs0.html * igt@gem_exec_reloc@basic-write-read: - {shard-rkl}: [SKIP][17] ([i915#3281]) -> [PASS][18] +4 similar issues [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12713/shard-rkl-2/igt@gem_exec_reloc@basic-write-read.html [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8465/shard-rkl-5/igt@gem_exec_reloc@basic-write-read.html * igt@gem_exec_schedule@semaphore-power: - {shard-rkl}: [SKIP][19] ([i915#7276]) -> [PASS][20] [19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12713/shard-rkl-1/igt@gem_exec_schedule@semaphore-power.html [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8465/shard-rkl-5/igt@gem_exec_schedule@semaphore-power.html * igt@gem_mmap_gtt@coherency: - {shard-rkl}: [SKIP][21] ([fdo#111656]) -> [PASS][22] [21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12713/shard-rkl-6/igt@gem_mmap_gtt@coherency.html [22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8465/shard-rkl-5/igt@gem_mmap_gtt@coherency.html * igt@gem_mmap_wc@set-cache-level: - {shard-rkl}: [SKIP][23] ([i915#1850]) -> [PASS][24] [23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12713/shard-rkl-1/igt@gem_mmap_wc@set-cache-level.html [24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8465/shard-rkl-6/igt@gem_mmap_wc@set-cache-level.html * igt@gem_readwrite@beyond-eob: - {shard-rkl}: [SKIP][25] ([i915#3282]) -> [PASS][26] +1 similar issue [25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12713/shard-rkl-2/igt@gem_readwrite@beyond-eob.html [26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8465/shard-rkl-5/igt@gem_readwrite@beyond-eob.html * igt@gen9_exec_parse@bb-start-param: - {shard-rkl}: [SKIP][27] ([i915#2527]) -> [PASS][28] +1 similar issue [27]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12713/shard-rkl-6/igt@gen9_exec_parse@bb-start-param.html [28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8465/shard-rkl-5/igt@gen9_exec_parse@bb-start-param.html * igt@i915_hangman@engine-engine-error@bcs0: - {shard-rkl}: [SKIP][29] ([i915#6258]) -> [PASS][30] [29]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12713/shard-rkl-5/igt@i915_hangman@engine-engine-error@bcs0.html [30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8465/shard-rkl-2/igt@i915_hangman@engine-engine-error@bcs0.html * igt@i915_pm_dc@dc5-dpms: - {shard-rkl}: [FAIL][31] ([i915#7330]) -> [PASS][32] [31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12713/shard-rkl-5/igt@i915_pm_dc@dc5-dpms.html [32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8465/shard-rkl-2/igt@i915_pm_dc@dc5-dpms.html * igt@i915_pm_rpm@dpms-mode-unset-lpsp: - {shard-rkl}: [SKIP][33] ([i915#1397]) -> [PASS][34] [33]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12713/shard-rkl-2/igt@i915_pm_rpm@dpms-mode-unset-lpsp.html [34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8465/shard-rkl-6/igt@i915_pm_rpm@dpms-mode-unset-lpsp.html * igt@i915_pm_rpm@dpms-mode-unset-non-lpsp: - {shard-dg1}: [SKIP][35] ([i915#1397]) -> [PASS][36] [35]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12713/shard-dg1-14/igt@i915_pm_rpm@dpms-mode-unset-non-lpsp.html [36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8465/shard-dg1-15/igt@i915_pm_rpm@dpms-mode-unset-non-lpsp.html * igt@i915_selftest@live@gt_heartbeat: - shard-glk: [DMESG-FAIL][37] ([i915#5334]) -> [PASS][38] [37]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12713/shard-glk8/igt@i915_selftest@live@gt_heartbeat.html [38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8465/shard-glk2/igt@i915_selftest@live@gt_heartbeat.html * igt@kms_big_fb@linear-32bpp-rotate-0: - {shard-rkl}: [SKIP][39] ([i915#1845] / [i915#4098]) -> [PASS][40] +26 similar issues [39]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12713/shard-rkl-3/igt@kms_big_fb@linear-32bpp-rotate-0.html [40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8465/shard-rkl-6/igt@kms_big_fb@linear-32bpp-rotate-0.html * igt@kms_fbcon_fbt@psr: - {shard-rkl}: [SKIP][41] ([i915#3955]) -> [PASS][42] [41]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12713/shard-rkl-3/igt@kms_fbcon_fbt@psr.html [42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8465/shard-rkl-6/igt@kms_fbcon_fbt@psr.html * igt@kms_frontbuffer_tracking@psr-1p-offscren-pri-shrfb-draw-blt: - {shard-rkl}: [SKIP][43] ([i915#1849] / [i915#4098]) -> [PASS][44] +12 similar issues [43]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12713/shard-rkl-3/igt@kms_frontbuffer_tracking@psr-1p-offscren-pri-shrfb-draw-blt.html [44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8465/shard-rkl-6/igt@kms_frontbuffer_tracking@psr-1p-offscren-pri-shrfb-draw-blt.html * igt@kms_psr@sprite_mmap_cpu: - {shard-rkl}: [SKIP][45] ([i915#1072]) -> [PASS][46] +1 similar issue [45]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12713/shard-rkl-5/igt@kms_psr@sprite_mmap_cpu.html [46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8465/shard-rkl-6/igt@kms_psr@sprite_mmap_cpu.html * igt@perf_pmu@idle@rcs0: - {shard-rkl}: [FAIL][47] ([i915#4349]) -> [PASS][48] [47]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12713/shard-rkl-1/igt@perf_pmu@idle@rcs0.html [48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8465/shard-rkl-1/igt@perf_pmu@idle@rcs0.html * igt@prime_vgem@basic-read: - {shard-rkl}: [SKIP][49] ([fdo#109295] / [i915#3291] / [i915#3708]) -> [PASS][50] [49]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12713/shard-rkl-3/igt@prime_vgem@basic-read.html [50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8465/shard-rkl-5/igt@prime_vgem@basic-read.html {name}: This element is suppressed. This means it is ignored when computing the status of the difference (SUCCESS, WARNING, or FAILURE). [fdo#109274]: https://bugs.freedesktop.org/show_bug.cgi?id=109274 [fdo#109279]: https://bugs.freedesktop.org/show_bug.cgi?id=109279 [fdo#109280]: https://bugs.freedesktop.org/show_bug.cgi?id=109280 [fdo#109283]: https://bugs.freedesktop.org/show_bug.cgi?id=109283 [fdo#109289]: https://bugs.freedesktop.org/show_bug.cgi?id=109289 [fdo#109295]: https://bugs.freedesktop.org/show_bug.cgi?id=109295 [fdo#109303]: https://bugs.freedesktop.org/show_bug.cgi?id=109303 [fdo#109307]: https://bugs.freedesktop.org/show_bug.cgi?id=109307 [fdo#109308]: https://bugs.freedesktop.org/show_bug.cgi?id=109308 [fdo#109309]: https://bugs.freedesktop.org/show_bug.cgi?id=109309 [fdo#109312]: https://bugs.freedesktop.org/show_bug.cgi?id=109312 [fdo#109314]: https://bugs.freedesktop.org/show_bug.cgi?id=109314 [fdo#109315]: https://bugs.freedesktop.org/show_bug.cgi?id=109315 [fdo#109506]: https://bugs.freedesktop.org/show_bug.cgi?id=109506 [fdo#109642]: https://bugs.freedesktop.org/show_bug.cgi?id=109642 [fdo#110189]: https://bugs.freedesktop.org/show_bug.cgi?id=110189 [fdo#110723]: https://bugs.freedesktop.org/show_bug.cgi?id=110723 [fdo#111068]: https://bugs.freedesktop.org/show_bug.cgi?id=111068 [fdo#111614]: https://bugs.freedesktop.org/show_bug.cgi?id=111614 [fdo#111615]: https://bugs.freedesktop.org/show_bug.cgi?id=111615 [fdo#111644]: https://bugs.freedesktop.org/show_bug.cgi?id=111644 [fdo#111656]: https://bugs.freedesktop.org/show_bug.cgi?id=111656 [fdo#111825]: https://bugs.freedesktop.org/show_bug.cgi?id=111825 [fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827 [i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072 [i915#1257]: https://gitlab.freedesktop.org/drm/intel/issues/1257 [i915#132]: https://gitlab.freedesktop.org/drm/intel/issues/132 [i915#1397]: https://gitlab.freedesktop.org/drm/intel/issues/1397 [i915#1755]: https://gitlab.freedesktop.org/drm/intel/issues/1755 [i915#1825]: https://gitlab.freedesktop.org/drm/intel/issues/1825 [i915#1839]: https://gitlab.freedesktop.org/drm/intel/issues/1839 [i915#1845]: https://gitlab.freedesktop.org/drm/intel/issues/1845 [i915#1849]: https://gitlab.freedesktop.org/drm/intel/issues/1849 [i915#1850]: https://gitlab.freedesktop.org/drm/intel/issues/1850 [i915#1902]: https://gitlab.freedesktop.org/drm/intel/issues/1902 [i915#2122]: https://gitlab.freedesktop.org/drm/intel/issues/2122 [i915#2190]: https://gitlab.freedesktop.org/drm/intel/issues/2190 [i915#2232]: https://gitlab.freedesktop.org/drm/intel/issues/2232 [i915#2434]: https://gitlab.freedesktop.org/drm/intel/issues/2434 [i915#2437]: https://gitlab.freedesktop.org/drm/intel/issues/2437 [i915#2527]: https://gitlab.freedesktop.org/drm/intel/issues/2527 [i915#2575]: https://gitlab.freedesktop.org/drm/intel/issues/2575 [i915#2582]: https://gitlab.freedesktop.org/drm/intel/issues/2582 [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#280]: https://gitlab.freedesktop.org/drm/intel/issues/280 [i915#284]: https://gitlab.freedesktop.org/drm/intel/issues/284 [i915#2842]: https://gitlab.freedesktop.org/drm/intel/issues/2842 [i915#2846]: https://gitlab.freedesktop.org/drm/intel/issues/2846 [i915#2856]: https://gitlab.freedesktop.org/drm/intel/issues/2856 [i915#2920]: https://gitlab.freedesktop.org/drm/intel/issues/2920 [i915#3116]: https://gitlab.freedesktop.org/drm/intel/issues/3116 [i915#3281]: https://gitlab.freedesktop.org/drm/intel/issues/3281 [i915#3282]: https://gitlab.freedesktop.org/drm/intel/issues/3282 [i915#3291]: https://gitlab.freedesktop.org/drm/intel/issues/3291 [i915#3297]: https://gitlab.freedesktop.org/drm/intel/issues/3297 [i915#3299]: https://gitlab.freedesktop.org/drm/intel/issues/3299 [i915#3301]: https://gitlab.freedesktop.org/drm/intel/issues/3301 [i915#3318]: https://gitlab.freedesktop.org/drm/intel/issues/3318 [i915#3323]: https://gitlab.freedesktop.org/drm/intel/issues/3323 [i915#3359]: https://gitlab.freedesktop.org/drm/intel/issues/3359 [i915#3458]: https://gitlab.freedesktop.org/drm/intel/issues/3458 [i915#3469]: https://gitlab.freedesktop.org/drm/intel/issues/3469 [i915#3539]: https://gitlab.freedesktop.org/drm/intel/issues/3539 [i915#3546]: https://gitlab.freedesktop.org/drm/intel/issues/3546 [i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555 [i915#3558]: https://gitlab.freedesktop.org/drm/intel/issues/3558 [i915#3637]: https://gitlab.freedesktop.org/drm/intel/issues/3637 [i915#3638]: https://gitlab.freedesktop.org/drm/intel/issues/3638 [i915#3639]: https://gitlab.freedesktop.org/drm/intel/issues/3639 [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#3742]: https://gitlab.freedesktop.org/drm/intel/issues/3742 [i915#3840]: https://gitlab.freedesktop.org/drm/intel/issues/3840 [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#4079]: https://gitlab.freedesktop.org/drm/intel/issues/4079 [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#4212]: https://gitlab.freedesktop.org/drm/intel/issues/4212 [i915#426]: https://gitlab.freedesktop.org/drm/intel/issues/426 [i915#4270]: https://gitlab.freedesktop.org/drm/intel/issues/4270 [i915#433]: https://gitlab.freedesktop.org/drm/intel/issues/433 [i915#4349]: https://gitlab.freedesktop.org/drm/intel/issues/4349 [i915#4387]: https://gitlab.freedesktop.org/drm/intel/issues/4387 [i915#4538]: https://gitlab.freedesktop.org/drm/intel/issues/4538 [i915#4565]: https://gitlab.freedesktop.org/drm/intel/issues/4565 [i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613 [i915#4771]: https://gitlab.freedesktop.org/drm/intel/issues/4771 [i915#4812]: https://gitlab.freedesktop.org/drm/intel/issues/4812 [i915#4833]: https://gitlab.freedesktop.org/drm/intel/issues/4833 [i915#4852]: https://gitlab.freedesktop.org/drm/intel/issues/4852 [i915#4860]: https://gitlab.freedesktop.org/drm/intel/issues/4860 [i915#4880]: https://gitlab.freedesktop.org/drm/intel/issues/4880 [i915#4881]: https://gitlab.freedesktop.org/drm/intel/issues/4881 [i915#5122]: https://gitlab.freedesktop.org/drm/intel/issues/5122 [i915#5176]: https://gitlab.freedesktop.org/drm/intel/issues/5176 [i915#5235]: https://gitlab.freedesktop.org/drm/intel/issues/5235 [i915#5286]: https://gitlab.freedesktop.org/drm/intel/issues/5286 [i915#5289]: https://gitlab.freedesktop.org/drm/intel/issues/5289 [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#5439]: https://gitlab.freedesktop.org/drm/intel/issues/5439 [i915#5461]: https://gitlab.freedesktop.org/drm/intel/issues/5461 [i915#5563]: https://gitlab.freedesktop.org/drm/intel/issues/5563 [i915#5723]: https://gitlab.freedesktop.org/drm/intel/issues/5723 [i915#6095]: https://gitlab.freedesktop.org/drm/intel/issues/6095 [i915#6117]: https://gitlab.freedesktop.org/drm/intel/issues/6117 [i915#6227]: https://gitlab.freedesktop.org/drm/intel/issues/6227 [i915#6230]: https://gitlab.freedesktop.org/drm/intel/issues/6230 [i915#6245]: https://gitlab.freedesktop.org/drm/intel/issues/6245 [i915#6247]: https://gitlab.freedesktop.org/drm/intel/issues/6247 [i915#6248]: https://gitlab.freedesktop.org/drm/intel/issues/6248 [i915#6258]: https://gitlab.freedesktop.org/drm/intel/issues/6258 [i915#6268]: https://gitlab.freedesktop.org/drm/intel/issues/6268 [i915#6301]: https://gitlab.freedesktop.org/drm/intel/issues/6301 [i915#6334]: https://gitlab.freedesktop.org/drm/intel/issues/6334 [i915#6344]: https://gitlab.freedesktop.org/drm/intel/issues/6344 [i915#6412]: https://gitlab.freedesktop.org/drm/intel/issues/6412 [i915#6433]: https://gitlab.freedesktop.org/drm/intel/issues/6433 [i915#6497]: https://gitlab.freedesktop.org/drm/intel/issues/6497 [i915#6524]: https://gitlab.freedesktop.org/drm/intel/issues/6524 [i915#658]: https://gitlab.freedesktop.org/drm/intel/issues/658 [i915#6621]: https://gitlab.freedesktop.org/drm/intel/issues/6621 [i915#6768]: https://gitlab.freedesktop.org/drm/intel/issues/6768 [i915#6944]: https://gitlab.freedesktop.org/drm/intel/issues/6944 [i915#7037]: https://gitlab.freedesktop.org/drm/intel/issues/7037 [i915#7116]: https://gitlab.freedesktop.org/drm/intel/issues/7116 [i915#7118]: https://gitlab.freedesktop.org/drm/intel/issues/7118 [i915#7128]: https://gitlab.freedesktop.org/drm/intel/issues/7128 [i915#7276]: https://gitlab.freedesktop.org/drm/intel/issues/7276 [i915#7294]: https://gitlab.freedesktop.org/drm/intel/issues/7294 [i915#7330]: https://gitlab.freedesktop.org/drm/intel/issues/7330 [i915#7561]: https://gitlab.freedesktop.org/drm/intel/issues/7561 [i915#7651]: https://gitlab.freedesktop.org/drm/intel/issues/7651 [i915#7697]: https://gitlab.freedesktop.org/drm/intel/issues/7697 [i915#7701]: https://gitlab.freedesktop.org/drm/intel/issues/7701 [i915#7707]: https://gitlab.freedesktop.org/drm/intel/issues/7707 [i915#7711]: https://gitlab.freedesktop.org/drm/intel/issues/7711 [i915#7742]: https://gitlab.freedesktop.org/drm/intel/issues/7742 [i915#7811]: https://gitlab.freedesktop.org/drm/intel/issues/7811 [i915#7828]: https://gitlab.freedesktop.org/drm/intel/issues/7828 [i915#79]: https://gitlab.freedesktop.org/drm/intel/issues/79 [i915#7949]: https://gitlab.freedesktop.org/drm/intel/issues/7949 [i915#7957]: https://gitlab.freedesktop.org/drm/intel/issues/7957 [i915#7975]: https://gitlab.freedesktop.org/drm/intel/issues/7975 Build changes ------------- * CI: CI-20190529 -> None * IGT: IGT_7153 -> IGTPW_8465 CI-20190529: 20190529 CI_DRM_12713: 5180055794b438ce688a6804afb0af08e626ebab @ git://anongit.freedesktop.org/gfx-ci/linux IGTPW_8465: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8465/index.html IGT_7153: f47f859f13376958a2bd199423b1f0ff53dddbe0 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8465/index.html [-- Attachment #2: Type: text/html, Size: 13070 bytes --] ^ permalink raw reply [flat|nested] 13+ messages in thread
end of thread, other threads:[~2023-02-09 7:57 UTC | newest] Thread overview: 13+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2023-02-08 13:47 [igt-dev] [PATCH i-g-t v2 0/6] Extend and rename intel_tiling_info library Karolina Stolarek 2023-02-08 13:47 ` [igt-dev] [PATCH i-g-t v2 1/6] lib/intel_tiling_info: Rename blt_cmd_info to blt_cmds_desc Karolina Stolarek 2023-02-09 7:30 ` Zbigniew Kempczyński 2023-02-08 13:47 ` [igt-dev] [PATCH i-g-t v2 2/6] lib/intel_tiling_info: Rename blt_tiling_info to blt_cmd_info Karolina Stolarek 2023-02-09 7:52 ` Zbigniew Kempczyński 2023-02-08 13:47 ` [igt-dev] [PATCH i-g-t v2 3/6] lib/i915: Rename intel_tiling_info library Karolina Stolarek 2023-02-09 7:55 ` Zbigniew Kempczyński 2023-02-08 13:47 ` [igt-dev] [PATCH i-g-t v2 4/6] lib/intel_cmds_info: Add flags field to describe command properties Karolina Stolarek 2023-02-09 7:57 ` Zbigniew Kempczyński 2023-02-08 13:47 ` [igt-dev] [PATCH i-g-t v2 5/6] lib/i915_blt: Add checks for " Karolina Stolarek 2023-02-08 13:47 ` [igt-dev] [PATCH i-g-t v2 6/6] tests/gem_ccs: Check for extended block-copy and compression support Karolina Stolarek 2023-02-08 18:56 ` [igt-dev] ✓ Fi.CI.BAT: success for Extend and rename intel_tiling_info library Patchwork 2023-02-09 6:01 ` [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