[PATCH v6 00/12] MT8173 DRM support

Daniel Vetter daniel at ffwll.ch
Thu Nov 19 00:40:40 PST 2015


On Wed, Nov 18, 2015 at 06:34:08PM +0100, Philipp Zabel wrote:
> Hi,
> 
> another update to the MT8173 DRM support patchset. Since the device tree
> bindings are now in order, I have dropped the RFC.
> The irq handler is still writing to hardware registers, as on MT8173 vblank
> synchronised register updates need help from a separate hardware command
> queue unit. A driver for that is currently being written, so this will be
> fixed later.

Imo this is minor enough that it shouldn't block merging, and otherwise
the driver looks rather neat. Once you have acks for the arm/clk parts I
think you should just send a pull requests for this to Dave for 4.5. And
yes, that means Acked-by: Daniel Vetter <daniel.vetter at ffwll.ch> (too lazy
to do a full review again) for the drm side.

Cheers, Daniel

> 
> Changes since v5:
> - Updated DISP_MUTEX description in binding documentation
> - Register and unregister drivers in a loop
> - Combined mtk_drm_crtc and mtk_crtc_ddp_context, added mtk_disp_ovl
>   structure to contain ovl ddp component
> - Reworked component callbacks (removed comp_ prefix from
>   mtk_ddp_comp_funcs, move id into mtk_ddp_comp added inline
>   functions to wrap callbacks)
> - Use non-sync pm_runtime_put variant
> - Use RGB888 as fallback format
> - Removed unused pipe parameter from mtk_ddp_add_comp_to_path
> - Renamed mtk_drm_private->pipe to ->num_pipes
> - Updated mtk specific crtc and plane atomic state handling
> - Moved mtk_drm_crtc_plane_config to plane local mtk_plane_config
> - Let layer_config take a struct mtk_plane_state
> - Use writel_relaxed in mtk_ddp_add_comp_to_path
> - Removed some unused parameters, functions, and local variables
> - Removed custom crtc enable flag
> - Removed unnecessary comp->funcs NULL checks
> - Moved LARB handling out of drm driver code into crtc code,
>   request LARB during component initialization
> - Updated display data path / mutex code
> - Moved initialization of driverless ddp components into the drm driver
> - Commented crtc_disable
> - Removed support for multiplanar framebuffers
> - Configure width/height of the color engine even if it is bypassed
> - Added static keyword to unexported structures and functions
> - Unlink display data path in hw_fini
> - Added static keyword to unexported structures and functions
> 
> The following patches are still needed to apply this on top of v4.4-rc1:
> 
> https://patchwork.kernel.org/patch/6825601/ ("arm64: dts: mt8173: add MT8173 display PWM driver support node"),
> https://patchwork.kernel.org/patch/7138531/ ("arm64: dts: mediatek: add xHCI & usb phy for mt8173"),
> https://patchwork.kernel.org/patch/6928651/ ("dts: mt8173: Add iommu/smi nodes for mt8173"), and
> 
> And to build:
> 
> https://patchwork.kernel.org/patch/6928621/ ("memory: mediatek: Add SMI driver"),
> 
> regards
> Philipp
> 
> CK Hu (5):
>   dt-bindings: drm/mediatek: Add Mediatek display subsystem dts binding
>   drm/mediatek: Add DRM Driver for Mediatek SoC MT8173.
>   drm/mediatek: Add DSI sub driver
>   arm64: dts: mt8173: Add display subsystem related nodes
>   arm64: dts: mt8173: Add HDMI related nodes
> 
> Jie Qiu (3):
>   drm/mediatek: Add DPI sub driver
>   drm/mediatek: Add HDMI support
>   drm/mediatek: enable hdmi output control bit
> 
> Philipp Zabel (4):
>   dt-bindings: drm/mediatek: Add Mediatek HDMI dts binding
>   clk: mediatek: make dpi0_sel and hdmi_sel not propagate rate changes
>   clk: mediatek: Add hdmi_ref HDMI PHY PLL reference clock output
>   dt-bindings: hdmi-connector: add DDC I2C bus phandle documentation
> 
>  .../bindings/display/connector/hdmi-connector.txt  |   1 +
>  .../bindings/display/mediatek/mediatek,disp.txt    | 183 +++++
>  .../bindings/display/mediatek/mediatek,dpi.txt     |  35 +
>  .../bindings/display/mediatek/mediatek,dsi.txt     |  53 ++
>  .../bindings/display/mediatek/mediatek,hdmi.txt    | 142 ++++
>  arch/arm64/boot/dts/mediatek/mt8173.dtsi           | 282 ++++++++
>  drivers/clk/mediatek/clk-mt8173.c                  |   9 +-
>  drivers/clk/mediatek/clk-mtk.h                     |   7 +-
>  drivers/gpu/drm/Kconfig                            |   2 +
>  drivers/gpu/drm/Makefile                           |   1 +
>  drivers/gpu/drm/mediatek/Kconfig                   |  22 +
>  drivers/gpu/drm/mediatek/Makefile                  |  21 +
>  drivers/gpu/drm/mediatek/mtk_cec.c                 | 245 +++++++
>  drivers/gpu/drm/mediatek/mtk_cec.h                 |  25 +
>  drivers/gpu/drm/mediatek/mtk_dpi.c                 | 683 ++++++++++++++++++
>  drivers/gpu/drm/mediatek/mtk_dpi.h                 |  80 +++
>  drivers/gpu/drm/mediatek/mtk_dpi_regs.h            | 228 ++++++
>  drivers/gpu/drm/mediatek/mtk_drm_crtc.c            | 596 ++++++++++++++++
>  drivers/gpu/drm/mediatek/mtk_drm_crtc.h            |  41 ++
>  drivers/gpu/drm/mediatek/mtk_drm_ddp.c             | 362 ++++++++++
>  drivers/gpu/drm/mediatek/mtk_drm_ddp.h             |  41 ++
>  drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.c        | 431 +++++++++++
>  drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.h        | 152 ++++
>  drivers/gpu/drm/mediatek/mtk_drm_drv.c             | 561 +++++++++++++++
>  drivers/gpu/drm/mediatek/mtk_drm_drv.h             |  58 ++
>  drivers/gpu/drm/mediatek/mtk_drm_fb.c              | 139 ++++
>  drivers/gpu/drm/mediatek/mtk_drm_fb.h              |  29 +
>  drivers/gpu/drm/mediatek/mtk_drm_gem.c             | 187 +++++
>  drivers/gpu/drm/mediatek/mtk_drm_gem.h             |  54 ++
>  drivers/gpu/drm/mediatek/mtk_drm_hdmi_drv.c        | 633 +++++++++++++++++
>  drivers/gpu/drm/mediatek/mtk_drm_plane.c           | 235 ++++++
>  drivers/gpu/drm/mediatek/mtk_drm_plane.h           |  61 ++
>  drivers/gpu/drm/mediatek/mtk_dsi.c                 | 787 +++++++++++++++++++++
>  drivers/gpu/drm/mediatek/mtk_dsi.h                 |  54 ++
>  drivers/gpu/drm/mediatek/mtk_hdmi.c                | 515 ++++++++++++++
>  drivers/gpu/drm/mediatek/mtk_hdmi.h                | 118 +++
>  drivers/gpu/drm/mediatek/mtk_hdmi_ddc_drv.c        | 362 ++++++++++
>  drivers/gpu/drm/mediatek/mtk_hdmi_hw.c             | 768 ++++++++++++++++++++
>  drivers/gpu/drm/mediatek/mtk_hdmi_hw.h             |  76 ++
>  drivers/gpu/drm/mediatek/mtk_hdmi_phy.c            | 340 +++++++++
>  drivers/gpu/drm/mediatek/mtk_hdmi_phy.h            |  20 +
>  drivers/gpu/drm/mediatek/mtk_hdmi_phy_regs.h       | 118 +++
>  drivers/gpu/drm/mediatek/mtk_hdmi_regs.h           | 222 ++++++
>  drivers/gpu/drm/mediatek/mtk_mipi_tx.c             | 377 ++++++++++
>  drivers/gpu/drm/mediatek/mtk_mipi_tx.h             |  21 +
>  include/drm/mediatek/mtk_hdmi_audio.h              | 150 ++++
>  include/dt-bindings/clock/mt8173-clk.h             |   3 +-
>  47 files changed, 9525 insertions(+), 5 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/display/mediatek/mediatek,disp.txt
>  create mode 100644 Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.txt
>  create mode 100644 Documentation/devicetree/bindings/display/mediatek/mediatek,dsi.txt
>  create mode 100644 Documentation/devicetree/bindings/display/mediatek/mediatek,hdmi.txt
>  create mode 100644 drivers/gpu/drm/mediatek/Kconfig
>  create mode 100644 drivers/gpu/drm/mediatek/Makefile
>  create mode 100644 drivers/gpu/drm/mediatek/mtk_cec.c
>  create mode 100644 drivers/gpu/drm/mediatek/mtk_cec.h
>  create mode 100644 drivers/gpu/drm/mediatek/mtk_dpi.c
>  create mode 100644 drivers/gpu/drm/mediatek/mtk_dpi.h
>  create mode 100644 drivers/gpu/drm/mediatek/mtk_dpi_regs.h
>  create mode 100644 drivers/gpu/drm/mediatek/mtk_drm_crtc.c
>  create mode 100644 drivers/gpu/drm/mediatek/mtk_drm_crtc.h
>  create mode 100644 drivers/gpu/drm/mediatek/mtk_drm_ddp.c
>  create mode 100644 drivers/gpu/drm/mediatek/mtk_drm_ddp.h
>  create mode 100644 drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.c
>  create mode 100644 drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.h
>  create mode 100644 drivers/gpu/drm/mediatek/mtk_drm_drv.c
>  create mode 100644 drivers/gpu/drm/mediatek/mtk_drm_drv.h
>  create mode 100644 drivers/gpu/drm/mediatek/mtk_drm_fb.c
>  create mode 100644 drivers/gpu/drm/mediatek/mtk_drm_fb.h
>  create mode 100644 drivers/gpu/drm/mediatek/mtk_drm_gem.c
>  create mode 100644 drivers/gpu/drm/mediatek/mtk_drm_gem.h
>  create mode 100644 drivers/gpu/drm/mediatek/mtk_drm_hdmi_drv.c
>  create mode 100644 drivers/gpu/drm/mediatek/mtk_drm_plane.c
>  create mode 100644 drivers/gpu/drm/mediatek/mtk_drm_plane.h
>  create mode 100644 drivers/gpu/drm/mediatek/mtk_dsi.c
>  create mode 100644 drivers/gpu/drm/mediatek/mtk_dsi.h
>  create mode 100644 drivers/gpu/drm/mediatek/mtk_hdmi.c
>  create mode 100644 drivers/gpu/drm/mediatek/mtk_hdmi.h
>  create mode 100644 drivers/gpu/drm/mediatek/mtk_hdmi_ddc_drv.c
>  create mode 100644 drivers/gpu/drm/mediatek/mtk_hdmi_hw.c
>  create mode 100644 drivers/gpu/drm/mediatek/mtk_hdmi_hw.h
>  create mode 100644 drivers/gpu/drm/mediatek/mtk_hdmi_phy.c
>  create mode 100644 drivers/gpu/drm/mediatek/mtk_hdmi_phy.h
>  create mode 100644 drivers/gpu/drm/mediatek/mtk_hdmi_phy_regs.h
>  create mode 100644 drivers/gpu/drm/mediatek/mtk_hdmi_regs.h
>  create mode 100644 drivers/gpu/drm/mediatek/mtk_mipi_tx.c
>  create mode 100644 drivers/gpu/drm/mediatek/mtk_mipi_tx.h
>  create mode 100644 include/drm/mediatek/mtk_hdmi_audio.h
> 
> -- 
> 2.6.2
> 

-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch



More information about the Linux-mediatek mailing list