1*38ef5be6SMarek Vasut// SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*38ef5be6SMarek Vasut/* 3*38ef5be6SMarek Vasut * Device Tree Overlay for the RPi Display 2 MIPI DSI panel connected 4*38ef5be6SMarek Vasut * to J4:DSI on R-Car V4H ES3.0 Sparrow Hawk board 5*38ef5be6SMarek Vasut * 6*38ef5be6SMarek Vasut * Copyright (C) 2025 Marek Vasut <marek.vasut+renesas@mailbox.org> 7*38ef5be6SMarek Vasut */ 8*38ef5be6SMarek Vasut 9*38ef5be6SMarek Vasut/dts-v1/; 10*38ef5be6SMarek Vasut/plugin/; 11*38ef5be6SMarek Vasut 12*38ef5be6SMarek Vasut#include <dt-bindings/gpio/gpio.h> 13*38ef5be6SMarek Vasut 14*38ef5be6SMarek Vasut&{/} { 15*38ef5be6SMarek Vasut display_bl: backlight { 16*38ef5be6SMarek Vasut compatible = "pwm-backlight"; 17*38ef5be6SMarek Vasut pwms = <&mcu 0 255 0>; 18*38ef5be6SMarek Vasut }; 19*38ef5be6SMarek Vasut 20*38ef5be6SMarek Vasut reg_display: regulator-display { 21*38ef5be6SMarek Vasut compatible = "regulator-fixed"; 22*38ef5be6SMarek Vasut regulator-name = "rpi-display"; 23*38ef5be6SMarek Vasut regulator-min-microvolt = <5000000>; 24*38ef5be6SMarek Vasut regulator-max-microvolt = <5000000>; 25*38ef5be6SMarek Vasut }; 26*38ef5be6SMarek Vasut 27*38ef5be6SMarek Vasut reg_dsi_touch: regulator-dsi-touch { 28*38ef5be6SMarek Vasut compatible = "regulator-fixed"; 29*38ef5be6SMarek Vasut gpio = <&mcu 1 GPIO_ACTIVE_HIGH>; 30*38ef5be6SMarek Vasut regulator-name = "rpi-touch"; 31*38ef5be6SMarek Vasut regulator-min-microvolt = <3300000>; 32*38ef5be6SMarek Vasut regulator-max-microvolt = <3300000>; 33*38ef5be6SMarek Vasut startup-delay-us = <50000>; 34*38ef5be6SMarek Vasut enable-active-high; 35*38ef5be6SMarek Vasut }; 36*38ef5be6SMarek Vasut}; 37*38ef5be6SMarek Vasut 38*38ef5be6SMarek Vasut&i2c0_mux3 { 39*38ef5be6SMarek Vasut #address-cells = <1>; 40*38ef5be6SMarek Vasut #size-cells = <0>; 41*38ef5be6SMarek Vasut 42*38ef5be6SMarek Vasut mcu: gpio@45 { 43*38ef5be6SMarek Vasut compatible = "raspberrypi,touchscreen-panel-regulator-v2"; 44*38ef5be6SMarek Vasut reg = <0x45>; 45*38ef5be6SMarek Vasut gpio-controller; 46*38ef5be6SMarek Vasut #gpio-cells = <2>; 47*38ef5be6SMarek Vasut #pwm-cells = <3>; 48*38ef5be6SMarek Vasut }; 49*38ef5be6SMarek Vasut 50*38ef5be6SMarek Vasut touchscreen@5d { 51*38ef5be6SMarek Vasut compatible = "goodix,gt911"; 52*38ef5be6SMarek Vasut reg = <0x5d>; 53*38ef5be6SMarek Vasut AVDD28-supply = <®_dsi_touch>; 54*38ef5be6SMarek Vasut touchscreen-size-x = <720>; 55*38ef5be6SMarek Vasut touchscreen-size-y = <1280>; 56*38ef5be6SMarek Vasut }; 57*38ef5be6SMarek Vasut}; 58*38ef5be6SMarek Vasut 59*38ef5be6SMarek Vasut&dsi0 { 60*38ef5be6SMarek Vasut #address-cells = <1>; 61*38ef5be6SMarek Vasut #size-cells = <0>; 62*38ef5be6SMarek Vasut status = "okay"; 63*38ef5be6SMarek Vasut 64*38ef5be6SMarek Vasut ports { 65*38ef5be6SMarek Vasut #address-cells = <1>; 66*38ef5be6SMarek Vasut #size-cells = <0>; 67*38ef5be6SMarek Vasut 68*38ef5be6SMarek Vasut port@1 { 69*38ef5be6SMarek Vasut reg = <1>; 70*38ef5be6SMarek Vasut 71*38ef5be6SMarek Vasut dsi0_out: endpoint { 72*38ef5be6SMarek Vasut remote-endpoint = <&panel_in>; 73*38ef5be6SMarek Vasut data-lanes = <1 2>; 74*38ef5be6SMarek Vasut }; 75*38ef5be6SMarek Vasut }; 76*38ef5be6SMarek Vasut }; 77*38ef5be6SMarek Vasut 78*38ef5be6SMarek Vasut panel: panel@0 { 79*38ef5be6SMarek Vasut reg = <0>; 80*38ef5be6SMarek Vasut backlight = <&display_bl>; 81*38ef5be6SMarek Vasut power-supply = <®_display>; 82*38ef5be6SMarek Vasut reset-gpios = <&mcu 0 GPIO_ACTIVE_LOW>; 83*38ef5be6SMarek Vasut 84*38ef5be6SMarek Vasut port { 85*38ef5be6SMarek Vasut panel_in: endpoint { 86*38ef5be6SMarek Vasut remote-endpoint = <&dsi0_out>; 87*38ef5be6SMarek Vasut }; 88*38ef5be6SMarek Vasut }; 89*38ef5be6SMarek Vasut }; 90*38ef5be6SMarek Vasut}; 91