Add an eDP display path for the MT8189 and use it for the panel on the
eDP connector of the Genio 520 and 720 EVKs. The pipeline is the same
OVL -> RDMA one the DSI path uses, with the output crossbar switched to
a DVO stage that feeds the eDP transmitter. The panel mode comes from
its EDID over the AUX channel.

The EVKs drive the DSI panel by default. A new device tree overlay
switches them to eDP, and is built into eDP variants of the Genio 520
and 720 device trees, with and without the UFS overlay.

Tested on a Genio 720 EVK with the eDP variant.

The device tree does not fully match the upstream bindings yet. The
Linux bindings it follows are still under review and could change, and
some of what it uses is not in any posted binding yet:

- "mediatek,mt8189-edp-dvo" is added to the DVO binding in an in-flight
  Linux series [1]. That binding also wants an input port@0, which is
  left out until the MT8189 display path is described as a graph.
- The eDP transmitter and its PHY are separate nodes linked by "phys",
  following the in-flight MT8196 eDP [2] and DisplayPort PHY [3] series.
  "mediatek,mt8189-edp-tx" and "mediatek,mt8189-edp-phy" are new
  compatibles, and mediatek,dp.yaml has no "phys" property yet.

This series depends on the Genio 520/720 DSI series [4] (and its
prerequisites) and on the MediaTek clock rate propagation series [5].

[1]: 
https://lore.kernel.org/all/[email protected]/
[2]: 
https://lore.kernel.org/all/[email protected]/
[3]: 
https://lore.kernel.org/all/[email protected]/
[4]: 
https://lore.kernel.org/u-boot/[email protected]/
[5]: 
https://lore.kernel.org/u-boot/[email protected]/

Signed-off-by: David Lechner <[email protected]>
---
David Lechner (13):
      board: mediatek: MAINTAINERS: match the Genio 520/720 files with globs
      linux: drm_dp_helper: add the definitions needed for eDP link training
      phy: add the DisplayPort PHY configuration options
      phy: mediatek: add an MT8189 eDP PHY driver
      video: mediatek: mtk_ddp: allow routing the OVL output to DVO
      video: mediatek: mtk_disp_mutex: add DVO support
      video: mediatek: add a DVO driver
      video: mediatek: build the overlay with the shared pipeline
      video: mediatek: add an eDP driver
      arm: dts: mediatek: mt8189: add the eDP display path
      arm: dts: mediatek: describe the eDP panel on the Genio 520 and 720 EVKs
      arm: dts: mediatek: add an eDP overlay for the Genio 520 and 720 EVKs
      configs: mt8189: enable the eDP display path

 arch/arm/dts/Makefile                     |   12 +
 arch/arm/dts/mt8189.dtsi                  |   48 +-
 arch/arm/dts/mt8371-genio-common-edp.dtso |   54 +
 arch/arm/dts/mt8371-genio-common.dtsi     |  134 ++
 board/mediatek/MAINTAINERS                |   11 +-
 configs/mt8189.config                     |    1 +
 drivers/phy/mediatek/Kconfig              |   10 +
 drivers/phy/mediatek/Makefile             |    1 +
 drivers/phy/mediatek/phy-mtk-dp.c         |  276 ++++
 drivers/video/mediatek/Kconfig            |   30 +-
 drivers/video/mediatek/Makefile           |    6 +-
 drivers/video/mediatek/mtk_ddp.c          |   24 +-
 drivers/video/mediatek/mtk_ddp.h          |    9 +
 drivers/video/mediatek/mtk_disp_mutex.c   |   47 +-
 drivers/video/mediatek/mtk_disp_mutex.h   |   11 +
 drivers/video/mediatek/mtk_dvo.c          |  417 +++++
 drivers/video/mediatek/mtk_dvo.h          |   33 +
 drivers/video/mediatek/mtk_edp.c          | 2385 +++++++++++++++++++++++++++++
 include/linux/drm_dp_helper.h             |   12 +
 include/phy-dp.h                          |   98 ++
 20 files changed, 3599 insertions(+), 20 deletions(-)
---
base-commit: ca1c29c01bbd03f89cd86159b2959b4e72d41aa9
change-id: 20261007-mtk-genio-720-edp-3685b2cad31b

Best regards,
--  
David Lechner <[email protected]>

Reply via email to