[PATCH v4 09/11] drm/xe: Remove xe_uc_init_hwconfig()

Lucas De Marchi lucas.demarchi at intel.com
Wed Jun 25 19:16:49 UTC 2025


On Thu, Jun 19, 2025 at 12:49:08PM +0200, Maarten Lankhorst wrote:
>This function is called immediately after xe_uc_init(), so just put it
>there instead.
>
>Signed-off-by: Maarten Lankhorst <dev at lankhorst.se>


Reviewed-by: Lucas De Marchi <lucas.demarchi at intel.com>

Lucas De Marchi

>---
> drivers/gpu/drm/xe/xe_gt.c |  4 ----
> drivers/gpu/drm/xe/xe_uc.c | 31 ++++++-------------------------
> drivers/gpu/drm/xe/xe_uc.h |  1 -
> 3 files changed, 6 insertions(+), 30 deletions(-)
>
>diff --git a/drivers/gpu/drm/xe/xe_gt.c b/drivers/gpu/drm/xe/xe_gt.c
>index 3942f1ac253e7..14761849390d8 100644
>--- a/drivers/gpu/drm/xe/xe_gt.c
>+++ b/drivers/gpu/drm/xe/xe_gt.c
>@@ -466,10 +466,6 @@ static int gt_init_with_gt_forcewake(struct xe_gt *gt)
> 	if (err)
> 		goto err_force_wake;
>
>-	err = xe_uc_init_hwconfig(&gt->uc);
>-	if (err)
>-		goto err_force_wake;
>-
> 	xe_gt_topology_init(gt);
> 	xe_gt_mcr_init(gt);
> 	xe_gt_enable_host_l2_vram(gt);
>diff --git a/drivers/gpu/drm/xe/xe_uc.c b/drivers/gpu/drm/xe/xe_uc.c
>index 0e9ea57fcc88c..8f56a5ef41e24 100644
>--- a/drivers/gpu/drm/xe/xe_uc.c
>+++ b/drivers/gpu/drm/xe/xe_uc.c
>@@ -72,15 +72,17 @@ int xe_uc_init(struct xe_uc *uc)
> 	if (!xe_device_uc_enabled(uc_to_xe(uc)))
> 		return 0;
>
>-	if (IS_SRIOV_VF(uc_to_xe(uc)))
>-		return 0;
>+	if (!IS_SRIOV_VF(uc_to_xe(uc))) {
>+		ret = xe_wopcm_init(&uc->wopcm);
>+		if (ret)
>+			goto err;
>+	}
>
>-	ret = xe_wopcm_init(&uc->wopcm);
>+	ret = xe_guc_min_load_for_hwconfig(&uc->guc);
> 	if (ret)
> 		goto err;
>
> 	return 0;
>-
> err:
> 	xe_gt_err(uc_to_gt(uc), "Failed to initialize uC (%pe)\n", ERR_PTR(ret));
> 	return ret;
>@@ -142,27 +144,6 @@ int xe_uc_sanitize_reset(struct xe_uc *uc)
> 	return uc_reset(uc);
> }
>
>-/**
>- * xe_uc_init_hwconfig - minimally init Uc, read and parse hwconfig
>- * @uc: The UC object
>- *
>- * Return: 0 on success, negative error code on error.
>- */
>-int xe_uc_init_hwconfig(struct xe_uc *uc)
>-{
>-	int ret;
>-
>-	/* GuC submission not enabled, nothing to do */
>-	if (!xe_device_uc_enabled(uc_to_xe(uc)))
>-		return 0;
>-
>-	ret = xe_guc_min_load_for_hwconfig(&uc->guc);
>-	if (ret)
>-		return ret;
>-
>-	return 0;
>-}
>-
> static int vf_uc_init_hw(struct xe_uc *uc)
> {
> 	int err;
>diff --git a/drivers/gpu/drm/xe/xe_uc.h b/drivers/gpu/drm/xe/xe_uc.h
>index b573b7731f62e..c13d705fe02c4 100644
>--- a/drivers/gpu/drm/xe/xe_uc.h
>+++ b/drivers/gpu/drm/xe/xe_uc.h
>@@ -10,7 +10,6 @@ struct xe_uc;
>
> int xe_uc_init_noalloc(struct xe_uc *uc);
> int xe_uc_init(struct xe_uc *uc);
>-int xe_uc_init_hwconfig(struct xe_uc *uc);
> int xe_uc_init_post_hwconfig(struct xe_uc *uc);
> int xe_uc_init_hw(struct xe_uc *uc);
> int xe_uc_fini_hw(struct xe_uc *uc);
>-- 
>2.45.2
>


More information about the Intel-xe mailing list