Hi,
this is an update to the MT8173 DRM support RFC. These patches have
a build dependency on two other patches on top of v4.3-rc1:
https://patchwork.kernel.org/patch/6914941 ("iommu: Implement common IOMMU
ops for DMA mapping"), and
https://patchwork.kernel.org/patch/6928621 ("memory: mediatek: Add SMI driver").
I have changed the device tree bindings to group the display function blocks
under a display-subsystem node. I'm not happy with this organisation as the
display-subsystem node is not really a physical bus. I'd much prefer connecting
the function blocks with an of-graph, if it is acceptable for just the graph
to cost >8 KiB dtb size.
The added HDMI driver still directly accesses an undocumented register in the
apmixedsys (clock-controller) register space to set a divider of the TVDPLL.
That will be fixed as soon as I understand what this clock is connected to.
Changes since v2:
- Grouped DISP function block nodes under the display-subsystem node
- Added of-graph ports to binding documentation
- Dropped legacy framebuffer support
- Dropped plane zpos property
- Update plane->disp_size in atomic_update instead of atomic_check
- Added asynchronous commit support
- Split DSI and MIPI TX (MIPI D-PHY) drivers
- Added DPI driver
- Added HDMI driver
- Added HDMI DDC I2C master driver
- Added HDMI PHY driver
CK Hu (3):
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
Daniel Kurtz (1):
drm/mediatek: Add HDMI support
Jie Qiu (2):
drm/mediatek: Add DPI sub driver
drm/mediatek: enable hdmi output control bit
Philipp Zabel (1):
dt-bindings: drm/mediatek: Add Mediatek HDMI dts binding
.../bindings/drm/mediatek/mediatek,disp.txt| 133 +++
.../bindings/drm/mediatek/mediatek,dpi.txt | 41 +
.../bindings/drm/mediatek/mediatek,dsi.txt | 53 ++
.../bindings/drm/mediatek/mediatek,hdmi.txt| 117 +++
drivers/gpu/drm/Kconfig| 2 +
drivers/gpu/drm/Makefile | 1 +
drivers/gpu/drm/mediatek/Kconfig | 22 +
drivers/gpu/drm/mediatek/Makefile | 20 +
drivers/gpu/drm/mediatek/mtk_dpi.c | 703
drivers/gpu/drm/mediatek/mtk_dpi.h | 83 ++
drivers/gpu/drm/mediatek/mtk_dpi_regs.h| 228 ++
drivers/gpu/drm/mediatek/mtk_drm_crtc.c| 521
drivers/gpu/drm/mediatek/mtk_drm_crtc.h| 84 ++
drivers/gpu/drm/mediatek/mtk_drm_ddp.c | 218 +
drivers/gpu/drm/mediatek/mtk_drm_ddp.h | 39 +
drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.c| 373 +
drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.h| 61 ++
drivers/gpu/drm/mediatek/mtk_drm_drv.c | 546 +
drivers/gpu/drm/mediatek/mtk_drm_drv.h | 59 ++
drivers/gpu/drm/mediatek/mtk_drm_fb.c | 151
drivers/gpu/drm/mediatek/mtk_drm_fb.h | 29 +
drivers/gpu/drm/mediatek/mtk_drm_gem.c | 207 +
drivers/gpu/drm/mediatek/mtk_drm_gem.h | 56 ++
drivers/gpu/drm/mediatek/mtk_drm_hdmi_drv.c| 648 +++
drivers/gpu/drm/mediatek/mtk_drm_plane.c | 175
drivers/gpu/drm/mediatek/mtk_drm_plane.h | 38 +
drivers/gpu/drm/mediatek/mtk_dsi.c | 797 ++
drivers/gpu/drm/mediatek/mtk_dsi.h | 54 ++
drivers/gpu/drm/mediatek/mtk_hdmi.c| 521
drivers/gpu/drm/mediatek/mtk_hdmi.h| 120 +++
drivers/gpu/drm/mediatek/mtk_hdmi_ddc_drv.c| 362
drivers/gpu/drm/mediatek/mtk_hdmi_hw.c | 906 +
drivers/gpu/drm/mediatek/mtk_hdmi_hw.h | 76 ++
drivers/gpu/drm/mediatek/mtk_hdmi_phy.c| 320
drivers/gpu/drm/mediatek/mtk_hdmi_phy.h| 20 +
drivers/gpu/drm/mediatek/mtk_hdmi_regs.h | 355
drivers/gpu/drm/mediatek/mtk_mipi_tx.c | 375 +
drivers/gpu/drm/mediatek/mtk_mipi_tx.h | 21 +
include/drm/mediatek/mtk_hdmi_audio.h | 150
39 files changed, 8685 insertions(+)
create mode 100644
Documentation/devicetree/bindings/drm/mediatek/mediatek,disp.txt
create mode 100644
Documentation/devicetree/bindings/drm/mediatek/mediatek,dpi.txt
create mode 100644
Documentation/devicetree/bindings/drm/mediatek/mediatek,dsi.txt
create mode 100644
Documentation/devicetree/bindings/drm/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_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