Re: [PATCH v2 1/3] drm/xe/guc_pc: Make xe_guc_pc_stop() void

Rodrigo Vivi
2026-04-27T22:07:10Z

On Mon, Apr 27, 2026 at 02:59:26PM +0530, Raag Jadav wrote:
> xe_guc_pc_stop() doesn't return any meaningful value. Refactor it into
> void function.
>
> Signed-off-by: Raag Jadav <raag.jadav@intel.com>

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

> ---
> drivers/gpu/drm/xe/xe_guc.c | 9 ++-------
> drivers/gpu/drm/xe/xe_guc_pc.c | 8 +++-----
> drivers/gpu/drm/xe/xe_guc_pc.h | 2 +-
> 3 files changed, 6 insertions(+), 13 deletions(-)
>
> diff --git a/drivers/gpu/drm/xe/xe_guc.c b/drivers/gpu/drm/xe/xe_guc.c
> index 1355b68d3fce..ec291588c482 100644
> --- a/drivers/gpu/drm/xe/xe_guc.c
> +++ b/drivers/gpu/drm/xe/xe_guc.c
> @@ -1730,13 +1730,8 @@ void xe_guc_reset_wait(struct xe_guc *guc)
>
> void xe_guc_stop_prepare(struct xe_guc *guc)
> {
> - if (!IS_SRIOV_VF(guc_to_xe(guc))) {
> - int err;
> -
> - err = xe_guc_pc_stop(&guc->pc);
> - xe_gt_WARN(guc_to_gt(guc), err, "Failed to stop GuC PC: %pe\n",
> - ERR_PTR(err));
> - }
> + if (!IS_SRIOV_VF(guc_to_xe(guc)))
> + xe_guc_pc_stop(&guc->pc);
> }
>
> void xe_guc_stop(struct xe_guc *guc)
> diff --git a/drivers/gpu/drm/xe/xe_guc_pc.c b/drivers/gpu/drm/xe/xe_guc_pc.c
> index 7ecd91ad6192..9530cddbd11d 100644
> --- a/drivers/gpu/drm/xe/xe_guc_pc.c
> +++ b/drivers/gpu/drm/xe/xe_guc_pc.c
> @@ -1316,18 +1316,16 @@ int xe_guc_pc_start(struct xe_guc_pc *pc)
> * xe_guc_pc_stop - Stop GuC's Power Conservation component
> * @pc: Xe_GuC_PC instance
> */
> -int xe_guc_pc_stop(struct xe_guc_pc *pc)
> +void xe_guc_pc_stop(struct xe_guc_pc *pc)
> {
> struct xe_device *xe = pc_to_xe(pc);
>
> if (xe->info.skip_guc_pc)
> - return 0;
> + return;
>
> mutex_lock(&pc->freq_lock);
> pc->freq_ready = false;
> mutex_unlock(&pc->freq_lock);
> -
> - return 0;
> }
>
> /**
> @@ -1343,7 +1341,7 @@ static void xe_guc_pc_fini_hw(void *arg)
> return;
>
> CLASS(xe_force_wake, fw_ref)(gt_to_fw(pc_to_gt(pc)), XE_FW_GT);
> - XE_WARN_ON(xe_guc_pc_stop(pc));
> + xe_guc_pc_stop(pc);
>
> /* Bind requested freq to mert_freq_cap before unload */
> pc_set_cur_freq(pc, min(pc_max_freq_cap(pc), xe_guc_pc_get_rpe_freq(pc)));
> diff --git a/drivers/gpu/drm/xe/xe_guc_pc.h b/drivers/gpu/drm/xe/xe_guc_pc.h
> index 0678a4e787b3..1025a2b15f5f 100644
> --- a/drivers/gpu/drm/xe/xe_guc_pc.h
> +++ b/drivers/gpu/drm/xe/xe_guc_pc.h
> @@ -13,7 +13,7 @@ struct drm_printer;
>
> int xe_guc_pc_init(struct xe_guc_pc *pc);
> int xe_guc_pc_start(struct xe_guc_pc *pc);
> -int xe_guc_pc_stop(struct xe_guc_pc *pc);
> +void xe_guc_pc_stop(struct xe_guc_pc *pc);
> void xe_guc_pc_print(struct xe_guc_pc *pc, struct drm_printer *p);
> int xe_guc_pc_action_set_param(struct xe_guc_pc *pc, u8 id, u32 value);
> int xe_guc_pc_action_unset_param(struct xe_guc_pc *pc, u8 id);
> --
> 2.43.0
>