[PATCH v2 37/43] drm/xe/sriov: Convert register access to use xe_mmio

Rodrigo Vivi rodrigo.vivi at intel.com
Tue Sep 10 18:47:37 UTC 2024


On Fri, Sep 06, 2024 at 05:08:26PM -0700, Matt Roper wrote:
> Stop using GT pointers for register access.
> 

Reviewed-by: Rodrigo Vivi <rodrigo.vivi at intel.com>

> Signed-off-by: Matt Roper <matthew.d.roper at intel.com>
> ---
>  drivers/gpu/drm/xe/xe_gt_sriov_pf.c         | 6 +++---
>  drivers/gpu/drm/xe/xe_gt_sriov_pf_service.c | 6 +++---
>  drivers/gpu/drm/xe/xe_gt_sriov_vf.c         | 4 ++--
>  drivers/gpu/drm/xe/xe_sriov.c               | 2 +-
>  4 files changed, 9 insertions(+), 9 deletions(-)
> 
> diff --git a/drivers/gpu/drm/xe/xe_gt_sriov_pf.c b/drivers/gpu/drm/xe/xe_gt_sriov_pf.c
> index 919d960165d5..065a9878f8e9 100644
> --- a/drivers/gpu/drm/xe/xe_gt_sriov_pf.c
> +++ b/drivers/gpu/drm/xe/xe_gt_sriov_pf.c
> @@ -74,7 +74,7 @@ static bool pf_needs_enable_ggtt_guest_update(struct xe_device *xe)
>  
>  static void pf_enable_ggtt_guest_update(struct xe_gt *gt)
>  {
> -	xe_mmio_write32(gt, VIRTUAL_CTRL_REG, GUEST_GTT_UPDATE_EN);
> +	xe_mmio_write32(&gt->mmio, VIRTUAL_CTRL_REG, GUEST_GTT_UPDATE_EN);
>  }
>  
>  /**
> @@ -116,13 +116,13 @@ static void pf_clear_vf_scratch_regs(struct xe_gt *gt, unsigned int vfid)
>  		count = MED_VF_SW_FLAG_COUNT;
>  		for (n = 0; n < count; n++) {
>  			scratch = xe_reg_vf_to_pf(MED_VF_SW_FLAG(n), vfid, stride);
> -			xe_mmio_write32(gt, scratch, 0);
> +			xe_mmio_write32(&gt->mmio, scratch, 0);
>  		}
>  	} else {
>  		count = VF_SW_FLAG_COUNT;
>  		for (n = 0; n < count; n++) {
>  			scratch = xe_reg_vf_to_pf(VF_SW_FLAG(n), vfid, stride);
> -			xe_mmio_write32(gt, scratch, 0);
> +			xe_mmio_write32(&gt->mmio, scratch, 0);
>  		}
>  	}
>  }
> diff --git a/drivers/gpu/drm/xe/xe_gt_sriov_pf_service.c b/drivers/gpu/drm/xe/xe_gt_sriov_pf_service.c
> index 0e23b7ea4f3e..924e75b94aec 100644
> --- a/drivers/gpu/drm/xe/xe_gt_sriov_pf_service.c
> +++ b/drivers/gpu/drm/xe/xe_gt_sriov_pf_service.c
> @@ -237,7 +237,7 @@ static void read_many(struct xe_gt *gt, unsigned int count,
>  		      const struct xe_reg *regs, u32 *values)
>  {
>  	while (count--)
> -		*values++ = xe_mmio_read32(gt, *regs++);
> +		*values++ = xe_mmio_read32(&gt->mmio, *regs++);
>  }
>  
>  static void pf_prepare_runtime_info(struct xe_gt *gt)
> @@ -402,7 +402,7 @@ static int pf_service_runtime_query(struct xe_gt *gt, u32 start, u32 limit,
>  
>  	for (i = 0; i < count; ++i, ++data) {
>  		addr = runtime->regs[start + i].addr;
> -		data->offset = xe_mmio_adjusted_addr(gt, addr);
> +		data->offset = xe_mmio_adjusted_addr(&gt->mmio, addr);
>  		data->value = runtime->values[start + i];
>  	}
>  
> @@ -513,7 +513,7 @@ int xe_gt_sriov_pf_service_print_runtime(struct xe_gt *gt, struct drm_printer *p
>  
>  	for (; size--; regs++, values++) {
>  		drm_printf(p, "reg[%#x] = %#x\n",
> -			   xe_mmio_adjusted_addr(gt, regs->addr), *values);
> +			   xe_mmio_adjusted_addr(&gt->mmio, regs->addr), *values);
>  	}
>  
>  	return 0;
> diff --git a/drivers/gpu/drm/xe/xe_gt_sriov_vf.c b/drivers/gpu/drm/xe/xe_gt_sriov_vf.c
> index 4ebc82e607af..d3baba50f085 100644
> --- a/drivers/gpu/drm/xe/xe_gt_sriov_vf.c
> +++ b/drivers/gpu/drm/xe/xe_gt_sriov_vf.c
> @@ -881,7 +881,7 @@ static struct vf_runtime_reg *vf_lookup_reg(struct xe_gt *gt, u32 addr)
>   */
>  u32 xe_gt_sriov_vf_read32(struct xe_gt *gt, struct xe_reg reg)
>  {
> -	u32 addr = xe_mmio_adjusted_addr(gt, reg.addr);
> +	u32 addr = xe_mmio_adjusted_addr(&gt->mmio, reg.addr);
>  	struct vf_runtime_reg *rr;
>  
>  	xe_gt_assert(gt, IS_SRIOV_VF(gt_to_xe(gt)));
> @@ -917,7 +917,7 @@ u32 xe_gt_sriov_vf_read32(struct xe_gt *gt, struct xe_reg reg)
>   */
>  void xe_gt_sriov_vf_write32(struct xe_gt *gt, struct xe_reg reg, u32 val)
>  {
> -	u32 addr = xe_mmio_adjusted_addr(gt, reg.addr);
> +	u32 addr = xe_mmio_adjusted_addr(&gt->mmio, reg.addr);
>  
>  	xe_gt_assert(gt, IS_SRIOV_VF(gt_to_xe(gt)));
>  	xe_gt_assert(gt, !reg.vf);
> diff --git a/drivers/gpu/drm/xe/xe_sriov.c b/drivers/gpu/drm/xe/xe_sriov.c
> index 5a1d65e4f19f..69a066ef20c0 100644
> --- a/drivers/gpu/drm/xe/xe_sriov.c
> +++ b/drivers/gpu/drm/xe/xe_sriov.c
> @@ -35,7 +35,7 @@ const char *xe_sriov_mode_to_string(enum xe_sriov_mode mode)
>  
>  static bool test_is_vf(struct xe_device *xe)
>  {
> -	u32 value = xe_mmio_read32(xe_root_mmio_gt(xe), VF_CAP_REG);
> +	u32 value = xe_mmio_read32(xe_root_tile_mmio(xe), VF_CAP_REG);
>  
>  	return value & VF_CAP;
>  }
> -- 
> 2.45.2
> 


More information about the Intel-xe mailing list