diff options
author | Gustavo Sousa <gustavo.sousa@intel.com> | 2023-06-09 17:38:14 +0300 |
---|---|---|
committer | Rodrigo Vivi <rodrigo.vivi@intel.com> | 2023-12-20 02:35:20 +0300 |
commit | 1011812c642c664b254986fb34264c2ee8d2bb50 (patch) | |
tree | ac761aaa563b21a4d21a365cfa62f491da9f0ab2 /drivers | |
parent | f1a5a9bf14182ae659cb3b5331021662c1ee1d9a (diff) | |
download | linux-1011812c642c664b254986fb34264c2ee8d2bb50.tar.xz |
drm/xe/reg_sr: Use a single parameter for xe_reg_sr_apply_whitelist()
All other parameters can be extracted from a single struct xe_hw_engine
reference. This removes redundancy and simplifies the code.
Reviewed-by: Lucas De Marchi <lucas.demarchi@intel.com>
Link: https://lore.kernel.org/r/20230609143815.302540-2-gustavo.sousa@intel.com
Signed-off-by: Gustavo Sousa <gustavo.sousa@intel.com>
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/gpu/drm/xe/xe_gt.c | 3 | ||||
-rw-r--r-- | drivers/gpu/drm/xe/xe_hw_engine.c | 2 | ||||
-rw-r--r-- | drivers/gpu/drm/xe/xe_reg_sr.c | 7 | ||||
-rw-r--r-- | drivers/gpu/drm/xe/xe_reg_sr.h | 4 |
4 files changed, 9 insertions, 7 deletions
diff --git a/drivers/gpu/drm/xe/xe_gt.c b/drivers/gpu/drm/xe/xe_gt.c index 3799e663bad3..2458397ce8af 100644 --- a/drivers/gpu/drm/xe/xe_gt.c +++ b/drivers/gpu/drm/xe/xe_gt.c @@ -491,8 +491,7 @@ static int do_gt_restart(struct xe_gt *gt) for_each_hw_engine(hwe, gt, id) { xe_reg_sr_apply_mmio(&hwe->reg_sr, gt); - xe_reg_sr_apply_whitelist(&hwe->reg_whitelist, - hwe->mmio_base, gt); + xe_reg_sr_apply_whitelist(hwe); } return 0; diff --git a/drivers/gpu/drm/xe/xe_hw_engine.c b/drivers/gpu/drm/xe/xe_hw_engine.c index b42a0cb50159..68cd793cdfb5 100644 --- a/drivers/gpu/drm/xe/xe_hw_engine.c +++ b/drivers/gpu/drm/xe/xe_hw_engine.c @@ -381,7 +381,7 @@ static int hw_engine_init(struct xe_gt *gt, struct xe_hw_engine *hwe, XE_BUG_ON(!(gt->info.engine_mask & BIT(id))); xe_reg_sr_apply_mmio(&hwe->reg_sr, gt); - xe_reg_sr_apply_whitelist(&hwe->reg_whitelist, hwe->mmio_base, gt); + xe_reg_sr_apply_whitelist(hwe); hwe->hwsp = xe_bo_create_pin_map(xe, tile, NULL, SZ_4K, ttm_bo_type_kernel, XE_BO_CREATE_VRAM_IF_DGFX(tile) | diff --git a/drivers/gpu/drm/xe/xe_reg_sr.c b/drivers/gpu/drm/xe/xe_reg_sr.c index 8580ff38b82c..65e6ad1906c6 100644 --- a/drivers/gpu/drm/xe/xe_reg_sr.c +++ b/drivers/gpu/drm/xe/xe_reg_sr.c @@ -20,6 +20,7 @@ #include "xe_gt.h" #include "xe_gt_mcr.h" #include "xe_gt_printk.h" +#include "xe_hw_engine_types.h" #include "xe_macros.h" #include "xe_mmio.h" #include "xe_reg_whitelist.h" @@ -211,12 +212,14 @@ err_force_wake: drm_err(&xe->drm, "Failed to apply, err=%d\n", err); } -void xe_reg_sr_apply_whitelist(struct xe_reg_sr *sr, u32 mmio_base, - struct xe_gt *gt) +void xe_reg_sr_apply_whitelist(struct xe_hw_engine *hwe) { + struct xe_reg_sr *sr = &hwe->reg_whitelist; + struct xe_gt *gt = hwe->gt; struct xe_device *xe = gt_to_xe(gt); struct xe_reg_sr_entry *entry; struct drm_printer p; + u32 mmio_base = hwe->mmio_base; unsigned long reg; unsigned int slot = 0; int err; diff --git a/drivers/gpu/drm/xe/xe_reg_sr.h b/drivers/gpu/drm/xe/xe_reg_sr.h index c3001798d9e8..e3197c33afe2 100644 --- a/drivers/gpu/drm/xe/xe_reg_sr.h +++ b/drivers/gpu/drm/xe/xe_reg_sr.h @@ -14,6 +14,7 @@ struct xe_device; struct xe_gt; +struct xe_hw_engine; struct drm_printer; int xe_reg_sr_init(struct xe_reg_sr *sr, const char *name, struct xe_device *xe); @@ -22,7 +23,6 @@ void xe_reg_sr_dump(struct xe_reg_sr *sr, struct drm_printer *p); int xe_reg_sr_add(struct xe_reg_sr *sr, const struct xe_reg_sr_entry *e, struct xe_gt *gt); void xe_reg_sr_apply_mmio(struct xe_reg_sr *sr, struct xe_gt *gt); -void xe_reg_sr_apply_whitelist(struct xe_reg_sr *sr, u32 mmio_base, - struct xe_gt *gt); +void xe_reg_sr_apply_whitelist(struct xe_hw_engine *hwe); #endif |