Hi All, V2 of this patch adding display engine and timing controller support for the H616 and related SoCs, and enabling LCD output for the RG35XX series of handheld gaming devices using this SoC. V2 updates with feedback and Acks from the previous v1, with changes largely improving consistency of DT compatible and fallback strings, and removing the temporary GPIO switched backlight from v1 in favour of waiting for proper PWM support.
Regards, Ryan Original blurb below: The H616 series of SoCs has an LCD timing controller as part of its display pipeline, capable of outputting to an LCD display, as well as HDMI and (depending on the SoC) composite TV signals. The pins are not exposed on all die variants, but the H700 variant is exposes RGB and LVDS pins. Building on the DE33 display engine patches on the list (https://lore.kernel.org/linux-sunxi/20250216085432.6373-2-r...@testtoast.com), this patch series: - adds the required device tree configuration for the display pipeline to the H616 (bus, display engine, mixer and timing controller) - adds a quirk to the sun4i TCON driver for the Allwinner R40 (compatible with the H616/H618/H700/T507) - describes the H616 RGB and LVDS GPIO pins - adds the required pipeline endpoints to the device tree for the Anbernic RG35XX devices featuring this SoC - adds LCD panel description, and required power supply configuration for the panel, backlight and GPIO pins for the RG35XX Thanks to Jernej Skrabec for the initial out-of-tree patch for the T507. Regards, Ryan Chris Morgan (1): dt-bindings: allwinner: add H616 DE33 bus binding Jernej Skrabec (1): drm/sun4i: tcon: add support for R40 Ryan Walklin (10): dt-bindings: allwinner: Add TCON_TOP_LCD clock defines dt-bindings: display: sun4i: Add compatible strings for H616 DE dt-bindings: display: sun4i: Add compatible strings for H616 TCON TOP dt-bindings: display: sun4i: add allwinner R40 and H616 tcon compatible strings dt-bindings: sram: sunxi-sram: Add H616 SRAM C compatible drm: sun4i: add compatible for h616 display engine arm64: dts: allwinner: h616: add display engine, bus and mixer nodes arm64: dts: allwinner: h616: Add LCD timing controller nodes arm64: dts: allwinner: h616: add LCD and LVDS pins arm64: dts: allwinner: rg35xx: Enable LCD output .../bus/allwinner,sun50i-a64-de2.yaml | 7 +- .../allwinner,sun4i-a10-display-engine.yaml | 1 + .../display/allwinner,sun4i-a10-tcon.yaml | 10 + .../display/allwinner,sun8i-r40-tcon-top.yaml | 13 +- .../allwinner,sun4i-a10-system-control.yaml | 4 +- .../arm64/boot/dts/allwinner/sun50i-h616.dtsi | 225 ++++++++++++++++++ .../sun50i-h700-anbernic-rg35xx-2024.dts | 56 +++++ drivers/gpu/drm/sun4i/sun4i_drv.c | 1 + drivers/gpu/drm/sun4i/sun4i_tcon.c | 9 + include/dt-bindings/clock/sun8i-tcon-top.h | 2 + 10 files changed, 319 insertions(+), 9 deletions(-) -- 2.50.1