Re: [Intel-gfx] [PATCH v3 12/16] drm/i915/guc: Convert mapping table to iosys_map

Matthew Brost
2022-02-18T20:51:26Z

On Wed, Feb 16, 2022 at 09:41:43AM -0800, Lucas De Marchi wrote:
> Use iosys_map to write the fields system_info.mapping_table[][].
> Since we already have the info_map around where needed, just use it
> instead of going through guc->ads_map.
>
> Cc: Matt Roper <matthew.d.roper@intel.com>
> Cc: Thomas Hellström <thomas.hellstrom@linux.intel.com>
> Cc: Daniel Vetter <daniel@ffwll.ch>
> Cc: John Harrison <John.C.Harrison@Intel.com>
> Cc: Matthew Brost <matthew.brost@intel.com>
> Cc: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
> Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com>

Reviewed-by: Matthew Brost <matthew.brost@intel.com>

> ---
> drivers/gpu/drm/i915/gt/uc/intel_guc_ads.c | 12 ++++++------
> 1 file changed, 6 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_ads.c b/drivers/gpu/drm/i915/gt/uc/intel_guc_ads.c
> index b739781bd133..c3c31b679e79 100644
> --- a/drivers/gpu/drm/i915/gt/uc/intel_guc_ads.c
> +++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_ads.c
> @@ -204,7 +204,7 @@ int intel_guc_global_policies_update(struct intel_guc *guc)
> }
>
> static void guc_mapping_table_init(struct intel_gt *gt,
> - struct guc_gt_system_info *system_info)
> + struct iosys_map *info_map)
> {
> unsigned int i, j;
> struct intel_engine_cs *engine;
> @@ -213,14 +213,14 @@ static void guc_mapping_table_init(struct intel_gt *gt,
> /* Table must be set to invalid values for entries not used */
> for (i = 0; i < GUC_MAX_ENGINE_CLASSES; ++i)
> for (j = 0; j < GUC_MAX_INSTANCES_PER_CLASS; ++j)
> - system_info->mapping_table[i][j] =
> - GUC_MAX_INSTANCES_PER_CLASS;
> + info_map_write(info_map, mapping_table[i][j],
> + GUC_MAX_INSTANCES_PER_CLASS);
>
> for_each_engine(engine, gt, id) {
> u8 guc_class = engine_class_to_guc_class(engine->class);
>
> - system_info->mapping_table[guc_class][ilog2(engine->logical_mask)] =
> - engine->instance;
> + info_map_write(info_map, mapping_table[guc_class][ilog2(engine->logical_mask)],
> + engine->instance);
> }
> }
>
> @@ -631,7 +631,7 @@ static void __guc_ads_init(struct intel_guc *guc)
> /* Golden contexts for re-initialising after a watchdog reset */
> guc_prep_golden_context(guc);
>
> - guc_mapping_table_init(guc_to_gt(guc), &blob->system_info);
> + guc_mapping_table_init(guc_to_gt(guc), &info_map);
>
> base = intel_guc_ggtt_offset(guc, guc->ads_vma);
>
> --
> 2.35.1
>