Thread (9 messages) read the whole thread 9 messages, 3 authors, 2d ago

Re: [PATCH] arm64: dts: rockchip: Add DSI LCD display on rk3576-evb1

From: Heiko Stübner <heiko@sntech.de>
Date: 2026-07-29 14:47:06
Also in: linux-devicetree, linux-rockchip, lkml

Am Montag, 20. Oktober 2025, 14:31:12 Mitteleuropäische Sommerzeit schrieb Heiko Stuebner:
Am Montag, 20. Oktober 2025, 10:50:58 Mitteleuropäische Sommerzeit schrieb Alexey Charkov:
quoted
On Mon, Oct 20, 2025 at 12:31 PM Heiko Stuebner [off-list ref] wrote:
quoted
Am Montag, 20. Oktober 2025, 10:19:51 Mitteleuropäische Sommerzeit schrieb Alexey Charkov:
quoted
On Thu, Sep 25, 2025 at 12:38 AM Alexey Charkov [off-list ref] wrote:
quoted
Add support for the Rockchip W552793DBA-V10 LCD+touchscreen assembly which
comes physically attached to Rockchip RK3576 EVB1 boards.

The display part is driven by the on-chip MIPI DSI controller, and the
touchscreen is connected over I2C.

Signed-off-by: Alexey Charkov <alchark@gmail.com>
---
Note that backlight support is left out for now, as it depends on PWM
support [0] which has not yet been merged.

A workaround is simply `gpioset -c 0 13=1` to set the respective GPIO
pin high and thus to light up the display unconditionally.

[0] https://lore.kernel.org/lkml/20250602-rk3576-pwm-v2-0-a6434b0ce60c@collabora.com/ (local)
---
 arch/arm64/boot/dts/rockchip/rk3576-evb1-v10.dts | 89 ++++++++++++++++++++++++
 1 file changed, 89 insertions(+)
Hi Heiko,

Any thoughts about this one? Can we perhaps get it merged for -next?
Does the gpio-backlight work on that device?
That would make the gpioset hack unnecessary.
I've got a local patch using pwm-gpio and pwm-backlight as a stop-gap 
solution, but I don't think it's worth merging upstream, because the 
backlight is supposed to be driven by the hardware PWM on the same pin 
(not bit-banging the GPIO line). After all, Nicolas has been working on 
adding a proper hardware PWM driver for RK3576.

The display itself works without PWM support, and so does the touchscreen.
Right now, I don't think we have an actual timeline if/when Nicolas will
be able to work on the pwm again. So my idea was if we want to
integrate the baclight as you described below, to have an actual usable
display and then when the new pwm has landed switch over to that one?
With the ELCE around the corner we're nearing the year-mark here ;-)
(And I'm surprised, I remembered this pending patch)

So how about integrating your gpio-pwm backlight for the time being?

Or alternatively just going with a gpio-backlight, like the Anbernic Vita did:

        /*
         * LEDs and Backlights can be controlled as a PWM, but PWM
         * support is not yet available.
         */
        gpio_backlight: backlight {
                compatible = "gpio-backlight";
                gpios = <&gpio2 RK_PC4 GPIO_ACTIVE_HIGH>;
                pinctrl-0 = <&led_backlight_h>;
                pinctrl-names = "default";
        };

DSI without backlight is a quite black screen, which I'd call non-working
still, so would require some form of backlight.


Heiko
quoted
My temp patch goes like this:

---
  arch/arm64/boot/dts/rockchip/rk3576-evb1-v10.dts | 15 +++++++++++++++
  1 file changed, 15 insertions(+)
diff --git a/arch/arm64/boot/dts/rockchip/rk3576-evb1-v10.dts 
b/arch/arm64/boot/dts/rockchip/rk3576-evb1-v10.dts
index f20cd6f2c079..5c27fff03569 100644
--- a/arch/arm64/boot/dts/rockchip/rk3576-evb1-v10.dts
+++ b/arch/arm64/boot/dts/rockchip/rk3576-evb1-v10.dts
@@ -58,6 +58,14 @@ button-vol-up {
  		};
  	};

+	backlight: backlight {
+		compatible = "pwm-backlight";
+		brightness-levels = <20 220>;
+		default-brightness-level = <100>;
+		num-interpolated-steps = <200>;
+		pwms = <&lcd_bl_pwm 0 25000 0>;
+	};
+
  	hdmi-con {
  		compatible = "hdmi-connector";
  		type = "a";
@@ -78,6 +86,12 @@ work_led: led-0 {
  		};
  	};

+	lcd_bl_pwm: pwm {
+		#pwm-cells = <3>;
+		compatible = "pwm-gpio";
+		gpios = <&gpio0 RK_PB5 GPIO_ACTIVE_HIGH>;
+	};
+
  	vbus5v0_typec: regulator-vbus5v0-typec {
  		compatible = "regulator-fixed";
  		regulator-name = "vbus5v0_typec";
@@ -277,6 +291,7 @@ panel@0 {
  		compatible = "wanchanglong,w552793baa", "raydium,rm67200";
  		reg = <0>;

+		backlight = <&backlight>;
  		iovcc-supply = <&vcc3v3_lcd_n>;
  		reset-gpios = <&gpio3 RK_PB5 GPIO_ACTIVE_LOW>;
  		vdd-supply = <&vcc3v3_lcd_n>;



Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help