From: Marijn Suijten <marijn.suijten@somainline.org>
To: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Cc: Rob Clark <robin.clark@oss.qualcomm.com>,
Dmitry Baryshkov <lumag@kernel.org>,
Abhinav Kumar <abhinav.kumar@linux.dev>,
Jessica Zhang <jesszhan0024@gmail.com>,
Sean Paul <sean@poorly.run>, David Airlie <airlied@gmail.com>,
Simona Vetter <simona@ffwll.ch>, Teguh Sobirin <teguh@sobir.in>,
linux-arm-msm@vger.kernel.org, dri-devel@lists.freedesktop.org,
freedreno@lists.freedesktop.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v5 2/2] drm/msm/dpu: fix WD timer handling on DPU 8.x
Date: Mon, 29 Dec 2025 12:39:13 +0100 [thread overview]
Message-ID: <aVJlvFWcq5QMVWYM@SoMainline.org> (raw)
In-Reply-To: <20251228-intf-fix-wd-v5-2-f6fce628e6f2@oss.qualcomm.com>
On 2025-12-28 05:57:12, Dmitry Baryshkov wrote:
> Since DPU 8.x Watchdog timer settings were moved from the TOP to the
> INTF block. Support programming the timer in the INTF block. Fixes tag
> points to the commit which removed register access to thos registers on
thos -> those
> DPU 8.x+ (and which also should have added proper support for WD timer
> on those devices).
Right, yes. Commit 2f69e5458447 ("drm/msm/dpu: skip watchdog timer programming
through TOP on >= SM8450") was already a fixup of that (though marked as fixing
the followup commit 100d7ef ("drm/msm/dpu: add support for SM8450") for being
the first to use the new DPU_MDP_PERIPH_0_REMOVED flag).
>
> Fixes: 43e3293fc614 ("drm/msm/dpu: add support for MDP_TOP blackhole")
> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Reviewed-by: Marijn Suijten <marijn.suijten@somainline.org>
...
> @@ -791,7 +791,7 @@ static void _dpu_encoder_update_vsync_source(struct dpu_encoder_virt *dpu_enc,
>
> if (phys_enc->has_intf_te && phys_enc->hw_intf->ops.vsync_sel)
> phys_enc->hw_intf->ops.vsync_sel(phys_enc->hw_intf,
> - vsync_cfg.vsync_source);
> + &vsync_cfg);
In some way this makes me wonder if we simply need another struct, in favour
of not missing fields that are never / not-yet read, although resulting in more
clutter.
(Just a nit / question, not a request)
...
> + if (cfg->vsync_source == DPU_VSYNC_SOURCE_WD_TIMER_0) {
> + u32 reg;
> +
> + DPU_REG_WRITE(c, INTF_WD_TIMER_0_LOAD_VALUE,
> + CALCULATE_WD_LOAD_VALUE(cfg->frame_rate));
> +
> + DPU_REG_WRITE(c, INTF_WD_TIMER_0_CTL, BIT(0)); /* clear timer */
> + reg = DPU_REG_READ(c, INTF_WD_TIMER_0_CTL2);
> + reg |= BIT(8); /* enable heartbeat timer */
> + reg |= BIT(0); /* enable WD timer */
My downstream also sets BIT(1) for "select default 16 clock ticks":
https://github.com/sonyxperiadev/kernel-techpack-display-driver/blob/61a727e1ce1fda617a73793b2cbb76b5ca846ea2/msm/sde/sde_hw_intf.c#L511
Although it doesn't read back the current register value. Do we need that; or
maybe you are inferring this "missing" BIT(1) via this readback?
After all downstream removed the readback exactly in favour of setting BIT(1)
though because of a "default value change" since MDSS 9.x.x:
https://github.com/sonyxperiadev/kernel-techpack-display-driver/commit/e55c68138b04770d51067c158f92de526e0c926e
- Marijn
next prev parent reply other threads:[~2025-12-29 11:39 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-12-28 3:57 [PATCH v5 0/2] drm/msm/dpu: fix vsync source programming on DPU >= 8.0 Dmitry Baryshkov
2025-12-28 3:57 ` [PATCH v5 1/2] drm/msm/dpu: Set vsync source irrespective of mdp top support Dmitry Baryshkov
2025-12-29 11:23 ` Marijn Suijten
2025-12-28 3:57 ` [PATCH v5 2/2] drm/msm/dpu: fix WD timer handling on DPU 8.x Dmitry Baryshkov
2025-12-29 11:39 ` Marijn Suijten [this message]
2025-12-30 7:13 ` Dmitry Baryshkov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=aVJlvFWcq5QMVWYM@SoMainline.org \
--to=marijn.suijten@somainline.org \
--cc=abhinav.kumar@linux.dev \
--cc=airlied@gmail.com \
--cc=dmitry.baryshkov@oss.qualcomm.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=freedreno@lists.freedesktop.org \
--cc=jesszhan0024@gmail.com \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=lumag@kernel.org \
--cc=robin.clark@oss.qualcomm.com \
--cc=sean@poorly.run \
--cc=simona@ffwll.ch \
--cc=teguh@sobir.in \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.