[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <576379dd-e5b0-3363-07a1-c623aeea6fee@linaro.org>
Date: Wed, 15 Jun 2022 14:50:56 +0300
From: Dmitry Baryshkov <dmitry.baryshkov@...aro.org>
To: Vinod Polimera <quic_vpolimer@...cinc.com>,
dri-devel@...ts.freedesktop.org, linux-arm-msm@...r.kernel.org,
freedreno@...ts.freedesktop.org, linux-kernel@...r.kernel.org,
devicetree@...r.kernel.org, agross@...nel.org,
bjorn.andersson@...aro.org, robh+dt@...nel.org,
robdclark@...il.com, seanpaul@...omium.org, swboyd@...omium.org,
dianders@...omium.org, krzysztof.kozlowski@...onical.com,
thierry.reding@...il.com, sam@...nborg.org, airlied@...ux.ie,
daniel@...ll.ch
Cc: quic_kalyant@...cinc.com, quic_sbillaka@...cinc.com,
quic_vproddut@...cinc.com
Subject: Re: [PATCH v2 3/4] drm/msm/disp/dpu1: use atomic enable/disable
callbacks for encoder functions
On 21/02/2022 17:51, Vinod Polimera wrote:
> Use atomic variants for encoder callback functions such that
> certain states like self-refresh can be accessed as part of
> enable/disable sequence.
>
> Signed-off-by: Kalyan Thota <quic_kalyant@...cinc.com>
> Signed-off-by: Vinod Polimera <quic_vpolimer@...cinc.com>
>
> Changes in v2:
> - As per review suggestion by Dmitry.
> ---
> drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c | 10 ++++++----
> 1 file changed, 6 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c b/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c
> index 1e648db..6eac417 100644
> --- a/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c
> +++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c
> @@ -1138,7 +1138,8 @@ void dpu_encoder_virt_runtime_resume(struct drm_encoder *drm_enc)
> mutex_unlock(&dpu_enc->enc_lock);
> }
>
> -static void dpu_encoder_virt_enable(struct drm_encoder *drm_enc)
> +static void dpu_encoder_virt_enable(struct drm_encoder *drm_enc,
> + struct drm_atomic_state *state)
> {
> struct dpu_encoder_virt *dpu_enc = NULL;
> int ret = 0;
> @@ -1176,7 +1177,8 @@ static void dpu_encoder_virt_enable(struct drm_encoder *drm_enc)
> mutex_unlock(&dpu_enc->enc_lock);
> }
>
> -static void dpu_encoder_virt_disable(struct drm_encoder *drm_enc)
> +static void dpu_encoder_virt_disable(struct drm_encoder *drm_enc,
> + struct drm_atomic_state *state)
> {
> struct dpu_encoder_virt *dpu_enc = NULL;
> struct msm_drm_private *priv;
> @@ -2094,8 +2096,8 @@ static void dpu_encoder_frame_done_timeout(struct timer_list *t)
>
> static const struct drm_encoder_helper_funcs dpu_encoder_helper_funcs = {
> .mode_set = dpu_encoder_virt_mode_set,
> - .disable = dpu_encoder_virt_disable,
> - .enable = dpu_encoder_virt_enable,
> + .atomic_disable = dpu_encoder_virt_disable,
> + .atomic_enable = dpu_encoder_virt_enable,
A small nit before you post the next iteration of PSR:
Please rename these functions to follow atomic_enable/atomic_disable names.
> .atomic_check = dpu_encoder_virt_atomic_check,
> };
>
--
With best wishes
Dmitry
Powered by blists - more mailing lists