From: Ryan Walklin <ryan@testtoast.com>
To: Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>, Chen-Yu Tsai <wens@csie.org>,
Jernej Skrabec <jernej.skrabec@gmail.com>,
Samuel Holland <samuel@sholland.org>
Cc: Andre Przywara <andre.przywara@arm.com>,
Chris Morgan <macroalpha82@gmail.com>,
Hironori KIKUCHI <kikuchan98@gmail.com>,
Philippe Simons <simons.philippe@gmail.com>,
linux-sunxi@lists.linux.dev, devicetree@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
Ryan Walklin <ryan@testtoast.com>
Subject: [PATCH 4/8] drm/sun4i: tcon: Add support for R40 LCD
Date: Sun, 16 Feb 2025 22:27:11 +1300 [thread overview]
Message-ID: <20250216092827.15444-5-ryan@testtoast.com> (raw)
In-Reply-To: <20250216092827.15444-1-ryan@testtoast.com>
From: Jernej Skrabec <jernej.skrabec@gmail.com>
The Allwinner H616 and related SOCs have an LCD timing controller
(TCON) which is compatible with the R40 SOC's controller and existing
sun4i driver. The H616 does not expose this controller but the H700 and
T507 (based on the same die) do. The controller supports LVDS and RGB
output.
Add quirks and compatible string to cover these SOCs.
Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Signed-off-by: Ryan Walklin <ryan@testtoast.com>
---
drivers/gpu/drm/sun4i/sun4i_tcon.c | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/drivers/gpu/drm/sun4i/sun4i_tcon.c b/drivers/gpu/drm/sun4i/sun4i_tcon.c
index 4cd3a07daf6e4..d364e814fde26 100644
--- a/drivers/gpu/drm/sun4i/sun4i_tcon.c
+++ b/drivers/gpu/drm/sun4i/sun4i_tcon.c
@@ -1528,6 +1528,14 @@ static const struct sun4i_tcon_quirks sun8i_a83t_tv_quirks = {
.has_channel_1 = true,
};
+static const struct sun4i_tcon_quirks sun8i_r40_lcd_quirks = {
+ .supports_lvds = true,
+ .has_channel_0 = true,
+ .set_mux = sun8i_r40_tcon_tv_set_mux,
+ .dclk_min_div = 1,
+ .setup_lvds_phy = sun6i_tcon_setup_lvds_phy,
+};
+
static const struct sun4i_tcon_quirks sun8i_r40_tv_quirks = {
.has_channel_1 = true,
.polarity_in_ch0 = true,
@@ -1569,6 +1577,7 @@ const struct of_device_id sun4i_tcon_of_table[] = {
{ .compatible = "allwinner,sun8i-a33-tcon", .data = &sun8i_a33_quirks },
{ .compatible = "allwinner,sun8i-a83t-tcon-lcd", .data = &sun8i_a83t_lcd_quirks },
{ .compatible = "allwinner,sun8i-a83t-tcon-tv", .data = &sun8i_a83t_tv_quirks },
+ { .compatible = "allwinner,sun8i-r40-tcon-lcd", .data = &sun8i_r40_lcd_quirks },
{ .compatible = "allwinner,sun8i-r40-tcon-tv", .data = &sun8i_r40_tv_quirks },
{ .compatible = "allwinner,sun8i-v3s-tcon", .data = &sun8i_v3s_quirks },
{ .compatible = "allwinner,sun9i-a80-tcon-lcd", .data = &sun9i_a80_tcon_lcd_quirks },
--
2.48.1
next prev parent reply other threads:[~2025-02-16 9:51 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-02-16 9:27 [PATCH 0/8] arm64: dts: allwinner: h616: add LCD timing controller and display engine support Ryan Walklin
2025-02-16 9:27 ` [PATCH 1/8] bus: sun50i: add DE33 compatible string to the DE2 bus driver Ryan Walklin
2025-02-22 9:35 ` Jernej Škrabec
2025-02-22 23:38 ` Ryan Walklin
2025-02-16 9:27 ` [PATCH 2/8] arm64: dts: allwinner: h616: add display engine, bus and mixer nodes Ryan Walklin
2025-02-24 18:00 ` Andre Przywara
2025-02-16 9:27 ` [PATCH 3/8] dt-bindings: allwinner: Add TCON_TOP and TCON_LCD clock/reset defines Ryan Walklin
2025-02-19 23:11 ` Rob Herring (Arm)
2025-02-16 9:27 ` Ryan Walklin [this message]
2025-02-16 9:27 ` [PATCH 5/8] arm64: dts: allwinner: h616: Add TCON nodes to H616 DTSI Ryan Walklin
2025-02-22 9:45 ` Jernej Škrabec
2025-02-22 23:39 ` Ryan Walklin
2025-02-16 9:27 ` [PATCH 6/8] arm64: dts: allwinner: h616: add LCD, LVDS and PWM pins Ryan Walklin
2025-02-22 9:48 ` Jernej Škrabec
2025-02-22 23:40 ` Ryan Walklin
2025-02-16 9:27 ` [PATCH 7/8] arm64: dts: allwinner: rg35xx: Enable LCD output Ryan Walklin
2025-02-22 9:46 ` Jernej Škrabec
2025-02-16 9:27 ` [PATCH 8/8] arm64: dts: allwinner: rg35xx: Add GPIO backlight control Ryan Walklin
2025-02-17 8:13 ` Philippe Simons
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250216092827.15444-5-ryan@testtoast.com \
--to=ryan@testtoast.com \
--cc=andre.przywara@arm.com \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=jernej.skrabec@gmail.com \
--cc=kikuchan98@gmail.com \
--cc=krzk+dt@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-sunxi@lists.linux.dev \
--cc=macroalpha82@gmail.com \
--cc=robh@kernel.org \
--cc=samuel@sholland.org \
--cc=simons.philippe@gmail.com \
--cc=wens@csie.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).