[PATCH 00/13] rockchip: Enable 4K@60Hz mode on RK3228, RK3328, RK3399 and RK356x

Jonas Karlman
2024-06-15T17:14:48Z

This prepares and enable use of HDMI2.0 modes, e.g. 4K@60Hz, on RK3228,
RK3328, RK3399 and RK356x.

Patch 1-3 fixes some issues to help support use of high-resolution modes.

Patch 4 fixes reading of EDID on RK3328 when using a forced mode.

Patch 5-7 adds hdmiphy rate validation in mode_valid so that HDMI2.0
modes can be enabled on RK3228 and RK3328.

Patch 8-11 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 12 enables use of HDMI2.0 modes on RK3399 and RK356x.

Patch 13 help fix use of console at 4K resolution on RK3399.

This series may not fully depend on but was only tested together with
the series "drm: bridge: dw_hdmi: Misc enable/disable, CEC and EDID
cleanup" at [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-20240531-rk-dw-hdmi-v1/

Alex Bee (1):
drm/rockchip: vop: Allow 4096px width scaling

Douglas Anderson (2):
drm/rockchip: dw_hdmi: Set cur_ctr to 0 always
drm/rockchip: dw_hdmi: Use auto-generated tables

Jonas Karlman (8):
arm64: dts: rockchip: Increase VOP clk rate on RK3328
clk: rockchip: Set parent rate for DCLK_VOP clock on RK3228
drm/rockchip: dw_hdmi: Fix reading EDID when using a forced mode
drm/rockchip: dw_hdmi: Allow High TMDS Bit Rates
drm/rockchip: dw_hdmi: Add max_tmds_clock validation
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

arch/arm64/boot/dts/rockchip/rk3328.dtsi | 4 +-
drivers/clk/rockchip/clk-rk3228.c | 2 +-
drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c | 173 ++++++++++----------
drivers/gpu/drm/rockchip/rockchip_drm_drv.c | 23 +++
drivers/gpu/drm/rockchip/rockchip_drm_vop.c | 4 +-
5 files changed, 116 insertions(+), 90 deletions(-)

--
2.45.2