[PATCH v6 00/12] MT8173 DRM support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




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.

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

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]
  Powered by Linux