[PATCH 2/2] drm/xe/lnl: Enable GuC SLPC DCC task
Cavitt, Jonathan
jonathan.cavitt at intel.com
Fri Dec 20 16:31:53 UTC 2024
-----Original Message-----
From: Intel-xe <intel-xe-bounces at lists.freedesktop.org> On Behalf Of Rodrigo Vivi
Sent: Friday, December 20, 2024 7:30 AM
To: intel-xe at lists.freedesktop.org
Cc: Vivi, Rodrigo <rodrigo.vivi at intel.com>; Belgaumkar, Vinay <vinay.belgaumkar at intel.com>
Subject: [PATCH 2/2] drm/xe/lnl: Enable GuC SLPC DCC task
>
> Enable DCC (Duty Cycle Control) in Lunar Lake.
>
> DCC is the SLPC task that tries to keep
> the GT from operating inefficiently when thermally constrained.
>
> Although the recommendation is to enable it, LNL GuC is leaving
> it disabled by default on LNL.
>
> It would minimize the GT frequency oscilation on throttled
> scenarios, what could potentially reduce latencies.
s/oscilation/oscillation/
s/what/which/
But otherwise:
Reviewed-by: Jonathan Cavitt <jonathan.cavitt at intel.com>
-Jonathan Cavitt
>
> v2: Move set_policies call after wait for running state, so
> we ensure it is not overwritten. (Vinay)
>
> Cc: Vinay Belgaumkar <vinay.belgaumkar at intel.com>
> Signed-off-by: Rodrigo Vivi <rodrigo.vivi at intel.com>
> ---
> drivers/gpu/drm/xe/xe_guc_pc.c | 14 ++++++++++++++
> 1 file changed, 14 insertions(+)
>
> diff --git a/drivers/gpu/drm/xe/xe_guc_pc.c b/drivers/gpu/drm/xe/xe_guc_pc.c
> index 9f9e0642c796..4233679036de 100644
> --- a/drivers/gpu/drm/xe/xe_guc_pc.c
> +++ b/drivers/gpu/drm/xe/xe_guc_pc.c
> @@ -956,6 +956,16 @@ static int pc_init_freqs(struct xe_guc_pc *pc)
> return ret;
> }
>
> +static int slpc_set_policies(struct xe_guc_pc *pc)
> +{
> + struct xe_device *xe = pc_to_xe(pc);
> +
> + if (xe->info.platform == XE_LUNARLAKE)
> + return pc_action_set_param(pc, SLPC_PARAM_TASK_ENABLE_DCC, 1);
> +
> + return 0;
> +}
> +
> /**
> * xe_guc_pc_start - Start GuC's Power Conservation component
> * @pc: Xe_GuC_PC instance
> @@ -1000,6 +1010,10 @@ int xe_guc_pc_start(struct xe_guc_pc *pc)
> goto out;
> }
>
> + ret = slpc_set_policies(pc);
> + if (ret)
> + goto out;
> +
> ret = pc_init_freqs(pc);
> if (ret)
> goto out;
> --
> 2.47.1
>
>
More information about the Intel-xe
mailing list