Hi, Matthias: Would you work on this series in a short time? Some Yongqiang's patches [1] also modify mmsys driver, and now it depend on your patch to prevent conflicts. If you would not work on this series in a short time, I would like to apply Yongqiang's patch without this series. [1] https://patchwork.kernel.org/project/linux-mediatek/list/?series=223221 Regards, CK On Sat, 2019-12-07 at 23:47 +0100, matthias.bgg@xxxxxxxxxx wrote: > From: Matthias Brugger <mbrugger@xxxxxxxx> > > [reseding due to wrong mail of Stephen] > > This is version five of the series. It's a long time this wasn't worked on, so > as a reminder, version four can be found here: > https://patchwork.kernel.org/cover/10686247/ > > The biggest changes this new version does, is to implement the clock probing > through a platform driver. The corresponding platform device get's created in > the DRM driver. I converted all the clock drivers to platform drivers and tested > the approach on the Acer Chromebook R13 (mt8173 based). > Apart from that I reordered the patches so that the DT bindings update are the first > patches. > > Changes since v5: > - re-arrange the patch order > - generate platform_device for mmsys clock driver inside the DRM driver > - fix DTS binding accordingly > - switch all mmsys clock driver to platform probing > - fix mt8173 platform driver remove function > - fix probe defer path in HDMI driver > - fix probe defer path in mtk_mdp_comp > - fix identation of error messages > > Changes since v4: > - fix missing regmap accessors in drm diver (patch 1) > - omit probe deffered warning on all drivers (patch 5) > - update drm and clk bindings (patch 6 and 7) > - put mmsys clock part in dts child node of mmsys. Only done > for HW where no dts backport compatible breakage is expected > (either DRM driver not yet implemented or no HW available to > the public) (patch 9 to 12) > > Changes since v3: > - use platform device to probe clock driver > - add Acked-by CK Hu for the probe deferred patch > > Changes since v2: > - fix kconfig typo (shame on me) > - delete __initconst from mm_clocks as converted to a platform driver > > Changes since v1: > - add binding documentation > - ddp: use regmap_update_bits > - ddp: ignore EPROBE_DEFER on clock probing > - mfd: delete mmsys_private > - add Reviewed-by and Acked-by tags > > MMSYS in Mediatek SoCs has some registers to control clock gates (which is > used in the clk driver) and some registers to set the routing and enable > the differnet blocks of the display subsystem. > > Up to now both drivers, clock and drm are probed with the same device tree > compatible. But only the first driver get probed, which in effect breaks > graphics on mt8173 and mt2701. > > This patch uses a platform device registration in the DRM driver, which > will trigger the probe of the corresponding clock driver. It was tested on the > bananapi-r2 and the Acer R13 Chromebook. > > > Matthias Brugger (12): > dt-bindings: display: mediatek: Add mmsys binding description > dt-bindings: mediatek: Add compatible for mt7623 > drm/mediatek: Use regmap for register access > drm: mediatek: Omit warning on probe defers > media: mtk-mdp: Check return value of of_clk_get > clk: mediatek: mt2701: switch mmsys to platform device probing > clk: mediatek: mt2712e: switch to platform device probing > clk: mediatek: mt6779: switch mmsys to platform device probing > clk: mediatek: mt6797: switch to platform device probing > clk: mediatek: mt8183: switch mmsys to platform device probing > clk: mediatek: mt8173: switch mmsys to platform device probing > drm/mediatek: Add support for mmsys through a pdev > > .../display/mediatek/mediatek,disp.txt | 30 ++++++----- > drivers/clk/mediatek/clk-mt2701-mm.c | 41 +++++++++----- > drivers/clk/mediatek/clk-mt2712-mm.c | 39 +++++++++----- > drivers/clk/mediatek/clk-mt6779-mm.c | 41 +++++++++----- > drivers/clk/mediatek/clk-mt6797-mm.c | 43 ++++++++++----- > drivers/clk/mediatek/clk-mt8173.c | 51 +++++++++++++++--- > drivers/clk/mediatek/clk-mt8183-mm.c | 39 +++++++++----- > drivers/gpu/drm/mediatek/mtk_disp_color.c | 5 +- > drivers/gpu/drm/mediatek/mtk_disp_ovl.c | 5 +- > drivers/gpu/drm/mediatek/mtk_disp_rdma.c | 5 +- > drivers/gpu/drm/mediatek/mtk_dpi.c | 12 +++-- > drivers/gpu/drm/mediatek/mtk_drm_crtc.c | 4 +- > drivers/gpu/drm/mediatek/mtk_drm_ddp.c | 54 +++++++++---------- > drivers/gpu/drm/mediatek/mtk_drm_ddp.h | 4 +- > drivers/gpu/drm/mediatek/mtk_drm_drv.c | 35 +++++++++--- > drivers/gpu/drm/mediatek/mtk_drm_drv.h | 4 +- > drivers/gpu/drm/mediatek/mtk_dsi.c | 8 ++- > drivers/gpu/drm/mediatek/mtk_hdmi.c | 4 +- > drivers/media/platform/mtk-mdp/mtk_mdp_comp.c | 6 +++ > 19 files changed, 295 insertions(+), 135 deletions(-) >