[PATCH] drm/mediatek: dsi: Move mtk_dsi_stop() call back to mtk_dsi_poweroff()
AngeloGioacchino Del Regno
angelogioacchino.delregno at collabora.com
Mon Sep 19 06:32:52 PDT 2022
Il 19/09/22 10:40, Hsin-Yi Wang ha scritto:
> On Mon, Sep 19, 2022 at 4:39 PM Nícolas F. R. A. Prado
> <nfraprado at collabora.com> wrote:
>>
>> As the comment right before the mtk_dsi_stop() call advises,
>> mtk_dsi_stop() should only be called after
>> mtk_drm_crtc_atomic_disable(). That's because that function calls
>> drm_crtc_wait_one_vblank(), which requires the vblank irq to be enabled.
>>
>> Previously mtk_dsi_stop(), being in mtk_dsi_poweroff() and guarded by a
>> refcount, would only be called at the end of
>> mtk_drm_crtc_atomic_disable(), through the call to mtk_crtc_ddp_hw_fini().
>> Commit cde7e2e35c28 ("drm/mediatek: Separate poweron/poweroff from
>> enable/disable and define new funcs") moved the mtk_dsi_stop() call to
>> mtk_output_dsi_disable(), causing it to be called before
>> mtk_drm_crtc_atomic_disable(), and consequently generating vblank
>> timeout warnings during suspend.
>>
>> Move the mtk_dsi_stop() call back to mtk_dsi_poweroff() so that we have
>> a working vblank irq during mtk_drm_crtc_atomic_disable() and stop
>> getting vblank timeout warnings.
>>
>> Fixes: cde7e2e35c28 ("drm/mediatek: Separate poweron/poweroff from enable/disable and define new funcs")
>> Signed-off-by: Nícolas F. R. A. Prado <nfraprado at collabora.com>
>>
> Tested-by: Hsin-Yi Wang <hsinyi at chromium.org>
>
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno at collabora.com>
More information about the linux-arm-kernel
mailing list