[PATCH 0/2] Initial support for Synopsys DW HDMI QP TX Controller

From: Cristian Ciocaltea
Date: Wed Jul 31 2024 - 22:47:26 EST


The Synopsys DesignWare HDMI 2.1 Quad-Pixel (QP) TX Controller IP can
found on the Rockchip RK3588 SoC family and supports the following
features, among others:

* Fixed Rate Link (FRL)
* Display Stream Compression (DSC)
* 4K@120Hz and 8K@60Hz video modes
* Variable Refresh Rate (VRR) including Quick Media Switching (QMS)
* Fast Vactive (FVA)
* Multi-stream audio
* Enhanced Audio Return Channel (EARC)

This patch series provides just the basic support, i.e. RGB output up to
4K@60Hz, without audio, CEC or any HDMI 2.1 related functionality.

Please note it is a reworked version of [1], which relied on a
commonized dw-hdmi approach. Since the overall consensus was to handle
it as an entirely new IP, I dropped all references and dependencies to
the existing dw-hdmi driver code.

This has been submitted as a separate patchset, as suggested by Neil;
the Rockchip platform specific glue code enabling HDMI output for RK3588
will be send as v2 of the initial patch series [2].

Some additional changes worth mentioning:
* Making use of the new bridge HDMI helpers indicated by Dmitry
* Dropped connector creation to ensure driver does only support
DRM_BRIDGE_ATTACH_NO_CONNECTOR
* Updated I2C segment handling to properly handle connected DVI displays
(reported and fixed by Heiko)

[1]: https://lore.kernel.org/lkml/20240601-b4-rk3588-bridge-upstream-v1-13-f6203753232b@xxxxxxxxxxxxx/
[2]: https://lore.kernel.org/lkml/20240601-b4-rk3588-bridge-upstream-v1-0-f6203753232b@xxxxxxxxxxxxx/

Signed-off-by: Cristian Ciocaltea <cristian.ciocaltea@xxxxxxxxxxxxx>
---
Cristian Ciocaltea (2):
dt-bindings: display: bridge: Add schema for Synopsys DW HDMI QP TX IP
drm/bridge: synopsys: Add DW HDMI QP TX Controller driver

.../display/bridge/synopsys,dw-hdmi-qp.yaml | 66 ++
drivers/gpu/drm/bridge/synopsys/Kconfig | 8 +
drivers/gpu/drm/bridge/synopsys/Makefile | 2 +
drivers/gpu/drm/bridge/synopsys/dw-hdmi-qp.c | 748 ++++++++++++++++++
drivers/gpu/drm/bridge/synopsys/dw-hdmi-qp.h | 834 +++++++++++++++++++++
include/drm/bridge/dw_hdmi_qp.h | 37 +
6 files changed, 1695 insertions(+)
---
base-commit: 8400291e289ee6b2bf9779ff1c83a291501f017b
change-id: 20240801-dw-hdmi-qp-tx-943992731570