On 06/11/2025 14:46, Boris Brezillon wrote:
> Not only this only works once, because of how extract events work
> (event is enabled if the req and ack bit differ, and it's signalled
> by the FW by setting identical req and ack, to re-enable the event,
> we need to toggle the bit, which we never do). But more importantly,
> we never do anything with this event, so we're better off dropping it
> when programming the CS slot.
> 
> Signed-off-by: Boris Brezillon <[email protected]>

Reviewed-by: Steven Price <[email protected]>

> ---
>  drivers/gpu/drm/panthor/panthor_sched.c | 6 ++----
>  1 file changed, 2 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/gpu/drm/panthor/panthor_sched.c 
> b/drivers/gpu/drm/panthor/panthor_sched.c
> index 9931f4a6cd96..94514d464e64 100644
> --- a/drivers/gpu/drm/panthor/panthor_sched.c
> +++ b/drivers/gpu/drm/panthor/panthor_sched.c
> @@ -1069,12 +1069,10 @@ cs_slot_prog_locked(struct panthor_device *ptdev, u32 
> csg_id, u32 cs_id)
>       panthor_fw_update_reqs(cs_iface, req,
>                              CS_IDLE_SYNC_WAIT |
>                              CS_IDLE_EMPTY |
> -                            CS_STATE_START |
> -                            CS_EXTRACT_EVENT,
> +                            CS_STATE_START,
>                              CS_IDLE_SYNC_WAIT |
>                              CS_IDLE_EMPTY |
> -                            CS_STATE_MASK |
> -                            CS_EXTRACT_EVENT);
> +                            CS_STATE_MASK);
>       if (queue->iface.input->insert != queue->iface.input->extract && 
> queue->timeout_suspended) {
>               drm_sched_resume_timeout(&queue->scheduler, 
> queue->remaining_time);
>               queue->timeout_suspended = false;

Reply via email to