[PATCH v8 00/13] MT8173 DRM support
Philipp Zabel
p.zabel at pengutronix.de
Mon Jan 4 09:36:32 PST 2016
Hi,
this MT8173 DRM update changes the clock bindings once more, as the MIPI_TX
D-PHY and the HDMI PHY have internal PLLs that are better abstracted using
the common clock framework. The clock outputs of the PHY modules are routed
to the respective encoders, in the HDMI case by way of the TOP clock module.
I'd like it if Michael or Stephen could take a look at the clock patches and
maybe give an Ack or a Nope for this to be merged through the DRM tree.
Various other issues have been fixed, for more details see the individual
patches.
Some changes since v7:
- Added PLL reference input clocks and output clocks to the MIPI TX D-PHY and
HDMI PHY nodes
- Added HS input clocks to the MIPI DSI encoder nodes
- Dropped the hdmitx_dig_cts clock from the TOP dividers, it is not a child
of tvdpll_445p5m anyway. This clock signal really is provided by the HDMI PHY
- Added "power-domains" properties to all nodes in the MM domain
- Documented the merge and split function block bindings
- Merged Daniel's wait for exclusive fences on incoming framebuffers
using reservation_object_wait_timeout_rcu in .atomic_complete() into
the DRM driver patch. This allowed to drop the drm/atomic-helper
wait_for_fences export patch again.
- Added missing atomic destroy_state callbacks, cleaned up reset callbacks
- Added a pending_planes flag to mtk_crtc so we can atomically update the
plane configuration
- Fixed OD ddp_comp function setup
- Separated enabling MIPI TX phy output from enabling the PLL (via CCF),
this allows to keep the pixel clock running separately from the encoder
output when disabling the crtc, to wait for the last vblank.
- Fixed mtk_dpi_power_on reference counting
- Fill ELD info in the HDMI driver, for future audio support.
- Renamed the MT8173 specific HDMI PHY driver, as MT2701 has a different PHY.
- Update iommus binding to v7 IOMMU patches.
The following patches are needed to cleanly apply the device tree changes on
top of v4.4-rc1:
61aee9342514 ("arm64: dts: mt8173: add MT8173 display PWM driver support node")
from https://github.com/mbgg/linux-mediatek.git v4.4-next/arm64
https://patchwork.kernel.org/patch/7880431/ ("dts: mt8173: Add iommu/smi nodes for mt8173")
And to build:
https://patchwork.kernel.org/patch/7880301/ ("dt-bindings: mediatek: Add smi dts binding")
https://patchwork.kernel.org/patch/7880321/ ("memory: mediatek: Add SMI driver")
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 (5):
dt-bindings: drm/mediatek: Add Mediatek HDMI dts binding
clk: mediatek: make dpi0_sel propagate rate changes
clk: mediatek: Add hdmi_ref HDMI PHY PLL reference clock output
dt-bindings: hdmi-connector: add DDC I2C bus phandle documentation
clk: mediatek: remove hdmitx_dig_cts from TOP clocks
.../bindings/display/connector/hdmi-connector.txt | 1 +
.../bindings/display/mediatek/mediatek,disp.txt | 203 +++++
.../bindings/display/mediatek/mediatek,dpi.txt | 35 +
.../bindings/display/mediatek/mediatek,dsi.txt | 60 ++
.../bindings/display/mediatek/mediatek,hdmi.txt | 148 ++++
arch/arm64/boot/dts/mediatek/mt8173.dtsi | 312 ++++++++
drivers/clk/mediatek/clk-mt8173.c | 8 +-
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 | 22 +
drivers/gpu/drm/mediatek/mtk_cec.c | 245 ++++++
drivers/gpu/drm/mediatek/mtk_cec.h | 25 +
drivers/gpu/drm/mediatek/mtk_disp_ovl.c | 301 ++++++++
drivers/gpu/drm/mediatek/mtk_dpi.c | 737 ++++++++++++++++++
drivers/gpu/drm/mediatek/mtk_dpi.h | 84 ++
drivers/gpu/drm/mediatek/mtk_dpi_regs.h | 228 ++++++
drivers/gpu/drm/mediatek/mtk_drm_crtc.c | 603 +++++++++++++++
drivers/gpu/drm/mediatek/mtk_drm_crtc.h | 32 +
drivers/gpu/drm/mediatek/mtk_drm_ddp.c | 355 +++++++++
drivers/gpu/drm/mediatek/mtk_drm_ddp.h | 41 +
drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.c | 275 +++++++
drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.h | 148 ++++
drivers/gpu/drm/mediatek/mtk_drm_drv.c | 581 ++++++++++++++
drivers/gpu/drm/mediatek/mtk_drm_drv.h | 55 ++
drivers/gpu/drm/mediatek/mtk_drm_fb.c | 165 ++++
drivers/gpu/drm/mediatek/mtk_drm_fb.h | 29 +
drivers/gpu/drm/mediatek/mtk_drm_gem.c | 227 ++++++
drivers/gpu/drm/mediatek/mtk_drm_gem.h | 55 ++
drivers/gpu/drm/mediatek/mtk_drm_hdmi_drv.c | 610 +++++++++++++++
drivers/gpu/drm/mediatek/mtk_drm_plane.c | 242 ++++++
drivers/gpu/drm/mediatek/mtk_drm_plane.h | 59 ++
drivers/gpu/drm/mediatek/mtk_dsi.c | 847 +++++++++++++++++++++
drivers/gpu/drm/mediatek/mtk_dsi.h | 58 ++
drivers/gpu/drm/mediatek/mtk_hdmi.c | 482 ++++++++++++
drivers/gpu/drm/mediatek/mtk_hdmi.h | 231 ++++++
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_regs.h | 222 ++++++
drivers/gpu/drm/mediatek/mtk_mipi_tx.c | 487 ++++++++++++
drivers/gpu/drm/mediatek/mtk_mt8173_hdmi_phy.c | 506 ++++++++++++
include/dt-bindings/clock/mt8173-clk.h | 3 +-
44 files changed, 9955 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_disp_ovl.c
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_regs.h
create mode 100644 drivers/gpu/drm/mediatek/mtk_mipi_tx.c
create mode 100644 drivers/gpu/drm/mediatek/mtk_mt8173_hdmi_phy.c
--
2.6.2
More information about the Linux-mediatek
mailing list