* [PATCH] drm/imagination: Wait for FW trace update command completion
@ 2026-01-08 4:09 Brajesh Gupta
2026-01-16 10:03 ` Matt Coster
2026-01-19 11:23 ` Matt Coster
0 siblings, 2 replies; 3+ messages in thread
From: Brajesh Gupta @ 2026-01-08 4:09 UTC (permalink / raw)
To: frank.binns, matt.coster, maarten.lankhorst, mripard,
tzimmermann, airlied, simona, alessio.belle, alexandru.dadu
Cc: dri-devel, linux-kernel
Possibility of no FW trace available after update in the fw_trace_mask due
to asynchronous mode of command consumption in the FW.
To ensure FW trace is available after update, wait for FW trace log update
command completion from the FW.
Fixes: cc1aeedb98ad ("drm/imagination: Implement firmware infrastructure and META FW support")
Signed-off-by: Brajesh Gupta <brajesh.gupta@imgtec.com>
---
drivers/gpu/drm/imagination/pvr_fw_trace.c | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/imagination/pvr_fw_trace.c b/drivers/gpu/drm/imagination/pvr_fw_trace.c
index 8a56952f6730..99d681413eff 100644
--- a/drivers/gpu/drm/imagination/pvr_fw_trace.c
+++ b/drivers/gpu/drm/imagination/pvr_fw_trace.c
@@ -137,6 +137,7 @@ update_logtype(struct pvr_device *pvr_dev, u32 group_mask)
struct rogue_fwif_kccb_cmd cmd;
int idx;
int err;
+ int slot;
if (group_mask)
fw_trace->tracebuf_ctrl->log_type = ROGUE_FWIF_LOG_TYPE_TRACE | group_mask;
@@ -154,8 +155,13 @@ update_logtype(struct pvr_device *pvr_dev, u32 group_mask)
cmd.cmd_type = ROGUE_FWIF_KCCB_CMD_LOGTYPE_UPDATE;
cmd.kccb_flags = 0;
- err = pvr_kccb_send_cmd(pvr_dev, &cmd, NULL);
+ err = pvr_kccb_send_cmd(pvr_dev, &cmd, &slot);
+ if (err)
+ goto err_drm_dev_exit;
+
+ err = pvr_kccb_wait_for_completion(pvr_dev, slot, HZ, NULL);
+err_drm_dev_exit:
drm_dev_exit(idx);
err_up_read:
--
2.43.0
^ permalink raw reply [flat|nested] 3+ messages in thread* Re: [PATCH] drm/imagination: Wait for FW trace update command completion
2026-01-08 4:09 [PATCH] drm/imagination: Wait for FW trace update command completion Brajesh Gupta
@ 2026-01-16 10:03 ` Matt Coster
2026-01-19 11:23 ` Matt Coster
1 sibling, 0 replies; 3+ messages in thread
From: Matt Coster @ 2026-01-16 10:03 UTC (permalink / raw)
To: Brajesh Gupta
Cc: Maarten Lankhorst, Maxime Ripard, Thomas Zimmermann,
David Airlie, Simona Vetter, Frank Binns, Alessio Belle,
Alexandru Dadu, dri-devel, linux-kernel
[-- Attachment #1.1: Type: text/plain, Size: 1872 bytes --]
On 08/01/2026 04:09, Brajesh Gupta wrote:
> Possibility of no FW trace available after update in the fw_trace_mask due
> to asynchronous mode of command consumption in the FW.
>
> To ensure FW trace is available after update, wait for FW trace log update
> command completion from the FW.
>
> Fixes: cc1aeedb98ad ("drm/imagination: Implement firmware infrastructure and META FW support")
> Signed-off-by: Brajesh Gupta <brajesh.gupta@imgtec.com>
Reviewed-by: Matt Coster <matt.coster@imgtec.com>
I'll apply this to drm-misc-fixes later today if there are no
objections.
Cheers,
Matt
> ---
> drivers/gpu/drm/imagination/pvr_fw_trace.c | 8 +++++++-
> 1 file changed, 7 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/imagination/pvr_fw_trace.c b/drivers/gpu/drm/imagination/pvr_fw_trace.c
> index 8a56952f6730..99d681413eff 100644
> --- a/drivers/gpu/drm/imagination/pvr_fw_trace.c
> +++ b/drivers/gpu/drm/imagination/pvr_fw_trace.c
> @@ -137,6 +137,7 @@ update_logtype(struct pvr_device *pvr_dev, u32 group_mask)
> struct rogue_fwif_kccb_cmd cmd;
> int idx;
> int err;
> + int slot;
>
> if (group_mask)
> fw_trace->tracebuf_ctrl->log_type = ROGUE_FWIF_LOG_TYPE_TRACE | group_mask;
> @@ -154,8 +155,13 @@ update_logtype(struct pvr_device *pvr_dev, u32 group_mask)
> cmd.cmd_type = ROGUE_FWIF_KCCB_CMD_LOGTYPE_UPDATE;
> cmd.kccb_flags = 0;
>
> - err = pvr_kccb_send_cmd(pvr_dev, &cmd, NULL);
> + err = pvr_kccb_send_cmd(pvr_dev, &cmd, &slot);
> + if (err)
> + goto err_drm_dev_exit;
> +
> + err = pvr_kccb_wait_for_completion(pvr_dev, slot, HZ, NULL);
>
> +err_drm_dev_exit:
> drm_dev_exit(idx);
>
> err_up_read:
> --
> 2.43.0
>
--
Matt Coster
E: matt.coster@imgtec.com
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 236 bytes --]
^ permalink raw reply [flat|nested] 3+ messages in thread* Re: [PATCH] drm/imagination: Wait for FW trace update command completion
2026-01-08 4:09 [PATCH] drm/imagination: Wait for FW trace update command completion Brajesh Gupta
2026-01-16 10:03 ` Matt Coster
@ 2026-01-19 11:23 ` Matt Coster
1 sibling, 0 replies; 3+ messages in thread
From: Matt Coster @ 2026-01-19 11:23 UTC (permalink / raw)
To: frank.binns, maarten.lankhorst, mripard, tzimmermann, airlied,
simona, alessio.belle, alexandru.dadu, Brajesh Gupta
Cc: dri-devel, linux-kernel
On Thu, 08 Jan 2026 04:09:36 +0000, Brajesh Gupta wrote:
> Possibility of no FW trace available after update in the fw_trace_mask due
> to asynchronous mode of command consumption in the FW.
>
> To ensure FW trace is available after update, wait for FW trace log update
> command completion from the FW.
>
>
> [...]
Applied, thanks!
[1/1] drm/imagination: Wait for FW trace update command completion
commit: 812062e74a3945b575dce89d330b67cb50054a77
Best regards,
--
Matt Coster <matt.coster@imgtec.com>
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2026-01-19 11:23 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-01-08 4:09 [PATCH] drm/imagination: Wait for FW trace update command completion Brajesh Gupta
2026-01-16 10:03 ` Matt Coster
2026-01-19 11:23 ` Matt Coster
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®