[PATCH v6 00/12] MT8173 DRM support
Philipp Zabel
p.zabel at pengutronix.de
Wed Nov 18 09:34:08 PST 2015
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
More information about the Linux-mediatek
mailing list