mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-08-30 12:13:51 -04:00
drm/imagination: Update the trace point pvr_job_submit_fw()
Trace point pvr_job_submit_fw() is used to trace job submission to
the FW. Currently it is recorded when a command is written to the Client
circular buffer.
Move trace recording after writing command to the Kernel circular buffer to
better represent command submission to the FW.
Fixes: c1079aebb4 ("drm/imagination: Add support for trace points")
Signed-off-by: Brajesh Gupta <brajesh.gupta@imgtec.com>
Reviewed-by: Alessio Belle <alessio.belle@imgtec.com>
Link: https://patch.msgid.link/20260724-b4-tracepoint-fix-v3-1-8f8e5e8179d3@imgtec.com
Signed-off-by: Alessio Belle <alessio.belle@imgtec.com>
This commit is contained in:
committed by
Alessio Belle
parent
e40e20ac08
commit
c256bd4868
@@ -726,8 +726,6 @@ static void pvr_queue_submit_job_to_cccb(struct pvr_job *job)
|
||||
cmd->partial_render_geom_frag_fence.value = job->done_fence->seqno - 1;
|
||||
}
|
||||
|
||||
trace_pvr_job_submit_fw(job);
|
||||
|
||||
/* Submit job to FW */
|
||||
pvr_cccb_write_command_with_header(cccb, job->fw_ccb_cmd_type, job->cmd_len, job->cmd,
|
||||
job->id, job->id);
|
||||
@@ -802,6 +800,9 @@ static struct dma_fence *pvr_queue_run_job(struct drm_sched_job *sched_job)
|
||||
job->hwrt,
|
||||
frag_job->fw_ccb_cmd_type ==
|
||||
ROGUE_FWIF_CCB_CMD_TYPE_FRAG_PR);
|
||||
|
||||
trace_pvr_job_submit_fw(geom_job);
|
||||
trace_pvr_job_submit_fw(frag_job);
|
||||
} else {
|
||||
struct pvr_queue *queue = container_of(job->base.sched,
|
||||
struct pvr_queue, scheduler);
|
||||
@@ -809,6 +810,8 @@ static struct dma_fence *pvr_queue_run_job(struct drm_sched_job *sched_job)
|
||||
pvr_cccb_send_kccb_kick(pvr_dev, &queue->cccb,
|
||||
pvr_context_get_fw_addr(job->ctx) + queue->ctx_offset,
|
||||
job->hwrt);
|
||||
|
||||
trace_pvr_job_submit_fw(job);
|
||||
}
|
||||
|
||||
return dma_fence_get(job->done_fence);
|
||||
|
||||
Reference in New Issue
Block a user