openwrt-mirror/target/linux/d1/patches-6.1/0007-drm-sun4i-Add-support-for-D1-HDMI.patch
Zoltan HERPAI 766570d60b kernel/d1: Restore kernel files for v6.1
This is an automatically generated commit which aids following Kernel patch
history, as git will see the move and copy as a rename thus defeating the
purpose.

For the original discussion see:
https://lists.openwrt.org/pipermail/openwrt-devel/2023-October/041673.html

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2024-05-29 17:56:28 +02:00

53 lines
1.8 KiB
Diff

From 75dc74ecc1bf5e270659c6c78877053b50e6ae19 Mon Sep 17 00:00:00 2001
From: Samuel Holland <samuel@sholland.org>
Date: Wed, 30 Mar 2022 21:24:21 -0500
Subject: [PATCH 007/117] drm/sun4i: Add support for D1 HDMI
D1's HDMI controller contains some platform integration changes.
It now has no external TMDS clock. The controller also supports HDCP
without an external clock or reset.
While the maximum HDMI frequency is not explicity stated, the BSP PHY
driver provides PLL configurations only up to 297 MHz, so use that as
the max frequency.
Signed-off-by: Samuel Holland <samuel@sholland.org>
---
drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c | 11 ++++++++++-
1 file changed, 10 insertions(+), 1 deletion(-)
--- a/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c
+++ b/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c
@@ -133,7 +133,7 @@ static int sun8i_dw_hdmi_bind(struct dev
return dev_err_probe(dev, PTR_ERR(hdmi->rst_ctrl),
"Could not get ctrl reset control\n");
- hdmi->clk_tmds = devm_clk_get(dev, "tmds");
+ hdmi->clk_tmds = devm_clk_get_optional(dev, "tmds");
if (IS_ERR(hdmi->clk_tmds))
return dev_err_probe(dev, PTR_ERR(hdmi->clk_tmds),
"Couldn't get the tmds clock\n");
@@ -246,6 +246,11 @@ static const struct sun8i_dw_hdmi_quirks
.mode_valid = sun8i_dw_hdmi_mode_valid_a83t,
};
+static const struct sun8i_dw_hdmi_quirks sun20i_d1_quirks = {
+ .mode_valid = sun8i_dw_hdmi_mode_valid_a83t,
+ .use_drm_infoframe = true,
+};
+
static const struct sun8i_dw_hdmi_quirks sun50i_h6_quirks = {
.mode_valid = sun8i_dw_hdmi_mode_valid_h6,
.use_drm_infoframe = true,
@@ -257,6 +262,10 @@ static const struct of_device_id sun8i_d
.data = &sun8i_a83t_quirks,
},
{
+ .compatible = "allwinner,sun20i-d1-dw-hdmi",
+ .data = &sun20i_d1_quirks,
+ },
+ {
.compatible = "allwinner,sun50i-h6-dw-hdmi",
.data = &sun50i_h6_quirks,
},