This prepares and enable use of HDMI2.0 modes, e.g. 4K@60Hz, on RK3228,
RK3328, RK3399 and RK356x. Support for 10-bit and/or YUV output modes is
not part of this series.
Patch 1 add hdmiphy rate validation in mode_valid so that HDMI2.0 modes
can be enabled on RK3228 and RK3328.
Patch 2-5 modify phy, current and mpll tables to match what ChromeOS and
vendor kernel use. These patches originate from old ChromeOS and vendor
kernels and have successfully been used in LibreELEC distro for the past
few years.
Patch 6 enables use of HDMI2.0 modes on RK3399 and RK356x.
Patch 7 help fix use of console at 4K resolution on RK3399.
This series may not fully depend on but was tested together with v2 of
the series "drm: bridge: dw_hdmi: Misc enable/disable, CEC and EDID
cleanup" at [1].
Changes in v2:
- Drop patches already merged
- Collect t-b tags
- Rebase on next-20240906
- Hotplug HDMI 2.0 to HDMI 1.4 scrambler issue was fixed in v2 of [1].
I have tested 4K modes on following devices:
- Asus TinkerBoard (RK3288)
- Pine64 Rock64 (RK3328)
- Radxa ROCK Pi 4 (RK3399)
- Radxa ROCK 3A (RK3568)
A copy of this series can also be found at [2].
[1] https://patchwork.freedesktop.org/series/134727/
[2] https://github.com/Kwiboo/linux-rockchip/commits/next-20240906-rk-dw-hdmi-v2/
Douglas Anderson (2):
drm/rockchip: dw_hdmi: Set cur_ctr to 0 always
drm/rockchip: dw_hdmi: Use auto-generated tables
Jonas Karlman (3):
drm/rockchip: dw_hdmi: Filter modes based on hdmiphy_clk
drm/rockchip: dw_hdmi: Enable 4K@60Hz mode on RK3399 and RK356x
drm/rockchip: Load crtc devices in preferred order
Nickey Yang (1):
drm/rockchip: dw_hdmi: Add phy_config for 594Mhz pixel clock
Yakir Yang (1):
drm/rockchip: dw_hdmi: Adjust cklvl & txlvl for RF/EMI
drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c | 162 +++++++++-----------
drivers/gpu/drm/rockchip/rockchip_drm_drv.c | 23 +++
2 files changed, 98 insertions(+), 87 deletions(-)
--
2.46.0