[igt-dev] [PATCH i-g-t v2 4/6] lib/intel_cmds_info: Add flags field to describe command properties
Zbigniew Kempczyński
zbigniew.kempczynski at intel.com
Thu Feb 9 07:57:49 UTC 2023
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 at 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
>
More information about the igt-dev
mailing list