Hi, Bibby:
I've tried to apply this series to 5.5-rc1, but there are many conflicts. Please resend this series based on 5.5-rc1.
And I've found that if I config CONFIG_MTK_CMDQ=m, the code inside '#ifdef CONFIG_MTK_CMDQ' would not be built. I think you should change this to '#if IS_ENABLED(CONFIG_MTK_CMDQ)'.
Regards, CK
On Thu, 2019-12-05 at 17:27 +0800, Bibby Hsieh wrote:
The CMDQ (Command Queue) in MT8183 is used to help update all relevant display controller registers with critical time limation. This patch add cmdq interface in ddp_comp interface, let all ddp_comp interface can support cpu/cmdq function at the same time.
These patches also can fixup cursor moving is not smooth when heavy load in webgl.
This patch depends on ptach: add drm support for MT8183 (https://patchwork.kernel.org/cover/11121519/) support gce on mt8183 platform (https://patchwork.kernel.org/cover/11255147) drm/mediatek: Refactor plane init/check and support rotation (https://pw-emeril.freedesktop.org/series/69015/) drm/mediatek: Check return value of mtk_drm_ddp_comp_for_plane (https://lore.kernel.org/patchwork/patch/1154517/)
Changes since v3:
- remove redundant code and variable
Changes since v2:
- move some changes to another patch
- disable layer in atomic_disable()
Changes since v1:
- remove redundant code
- merge the duplicate code
- use async instead of cursor
Changes since v0:
- remove redundant code
- remove patch "drm/mediatek: fix atomic_state reference counting" After remove this patch, the issue we met before is gone. So I do not add any extra code to do something.
Bibby Hsieh (7): drm/mediatek: use DRM core's atomic commit helper drm/mediatek: handle events when enabling/disabling crtc drm/mediatek: update cursors by using async atomic update drm/mediatek: disable all the planes in atomic_disable drm/mediatek: remove unused external function drm/mediatek: support CMDQ interface in ddp component drm/mediatek: apply CMDQ control flow
drivers/gpu/drm/mediatek/mtk_disp_color.c | 7 +- drivers/gpu/drm/mediatek/mtk_disp_ovl.c | 67 ++++---- drivers/gpu/drm/mediatek/mtk_disp_rdma.c | 43 ++--- drivers/gpu/drm/mediatek/mtk_drm_crtc.c | 165 ++++++++++++++++---- drivers/gpu/drm/mediatek/mtk_drm_crtc.h | 2 + drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.c | 132 ++++++++++++---- drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.h | 47 +++--- drivers/gpu/drm/mediatek/mtk_drm_drv.c | 86 +--------- drivers/gpu/drm/mediatek/mtk_drm_drv.h | 7 - drivers/gpu/drm/mediatek/mtk_drm_plane.c | 47 ++++++ drivers/gpu/drm/mediatek/mtk_drm_plane.h | 2 + 11 files changed, 381 insertions(+), 224 deletions(-)