[Mesa-dev] [PATCH 07/14] intel/blorp: Take a range of layers in blorp_ccs_resolve

Lionel Landwerlin lionel.g.landwerlin at intel.com
Tue Nov 14 17:34:02 UTC 2017


On 13/11/17 16:12, Jason Ekstrand wrote:
> ---
>   src/intel/blorp/blorp.h               | 3 ++-
>   src/intel/blorp/blorp_clear.c         | 7 +++++--
>   src/mesa/drivers/dri/i965/brw_blorp.c | 2 +-
>   3 files changed, 8 insertions(+), 4 deletions(-)
>
> diff --git a/src/intel/blorp/blorp.h b/src/intel/blorp/blorp.h
> index c3077aa..690e65f 100644
> --- a/src/intel/blorp/blorp.h
> +++ b/src/intel/blorp/blorp.h
> @@ -202,7 +202,8 @@ enum blorp_fast_clear_op {
>   
>   void
>   blorp_ccs_resolve(struct blorp_batch *batch,
> -                  struct blorp_surf *surf, uint32_t level, uint32_t layer,
> +                  struct blorp_surf *surf, uint32_t level,
> +                  uint32_t start_layer, uint32_t num_layers,
>                     enum isl_format format,
>                     enum blorp_fast_clear_op resolve_op);
>   
> diff --git a/src/intel/blorp/blorp_clear.c b/src/intel/blorp/blorp_clear.c
> index 8d758df..56cc3dd 100644
> --- a/src/intel/blorp/blorp_clear.c
> +++ b/src/intel/blorp/blorp_clear.c
> @@ -778,13 +778,16 @@ prepare_ccs_resolve(struct blorp_batch * const batch,
>   
>   void
>   blorp_ccs_resolve(struct blorp_batch *batch,
> -                  struct blorp_surf *surf, uint32_t level, uint32_t layer,
> +                  struct blorp_surf *surf, uint32_t level,
> +                  uint32_t start_layer, uint32_t num_layers,
>                     enum isl_format format,
>                     enum blorp_fast_clear_op resolve_op)
>   {
>      struct blorp_params params;
>   
> -   prepare_ccs_resolve(batch, &params, surf, level, layer, format, resolve_op);
> +   prepare_ccs_resolve(batch, &params, surf, level, start_layer,
> +                       format, resolve_op);
> +   params.num_layers = num_layers;

Ohoh... Was num_layers uninitialized before this patch?

Otherwise looks good :

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com>

>   
>      batch->blorp->exec(batch, &params);
>   }
> diff --git a/src/mesa/drivers/dri/i965/brw_blorp.c b/src/mesa/drivers/dri/i965/brw_blorp.c
> index eae8aaa..0736583 100644
> --- a/src/mesa/drivers/dri/i965/brw_blorp.c
> +++ b/src/mesa/drivers/dri/i965/brw_blorp.c
> @@ -1486,7 +1486,7 @@ brw_blorp_resolve_color(struct brw_context *brw, struct intel_mipmap_tree *mt,
>   
>      struct blorp_batch batch;
>      blorp_batch_init(&brw->blorp, &batch, brw, 0);
> -   blorp_ccs_resolve(&batch, &surf, level, layer,
> +   blorp_ccs_resolve(&batch, &surf, level, layer, 1,
>                        brw_blorp_to_isl_format(brw, format, true),
>                        resolve_op);
>      blorp_batch_finish(&batch);




More information about the mesa-dev mailing list