drm/msm/dpu: fix the irq index in dpu_encoder_phys_wb_wait_for_commit_done
authorDmitry Baryshkov <dmitry.baryshkov@linaro.org>
Wed, 2 Aug 2023 10:04:19 +0000 (13:04 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 13 Sep 2023 07:42:42 +0000 (09:42 +0200)
[ Upstream commit d93cf453f51da168f4410ba73656f1e862096973 ]

Since commit 1e7ac595fa46 ("drm/msm/dpu: pass irq to
dpu_encoder_helper_wait_for_irq()") the
dpu_encoder_phys_wb_wait_for_commit_done expects the IRQ index rather
than the IRQ index in phys_enc->intr table, however writeback got the
older invocation in place. This was unnoticed for several releases, but
now it's time to fix it.

Fixes: d7d0e73f7de3 ("drm/msm/dpu: introduce the dpu_encoder_phys_* for writeback")
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Patchwork: https://patchwork.freedesktop.org/patch/550924/
Link: https://lore.kernel.org/r/20230802100426.4184892-2-dmitry.baryshkov@linaro.org
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_wb.c

index 62f6ff6..42c7e37 100644 (file)
@@ -460,7 +460,8 @@ static int dpu_encoder_phys_wb_wait_for_commit_done(
        wait_info.atomic_cnt = &phys_enc->pending_kickoff_cnt;
        wait_info.timeout_ms = KICKOFF_TIMEOUT_MS;
 
-       ret = dpu_encoder_helper_wait_for_irq(phys_enc, INTR_IDX_WB_DONE,
+       ret = dpu_encoder_helper_wait_for_irq(phys_enc,
+                       phys_enc->irq[INTR_IDX_WB_DONE],
                        dpu_encoder_phys_wb_done_irq, &wait_info);
        if (ret == -ETIMEDOUT)
                _dpu_encoder_phys_wb_handle_wbdone_timeout(phys_enc);