[v3] arm64: dts: mediatek: cherry: Configure eDP and internal display

Message ID 20230816190427.2137768-1-nfraprado@collabora.com
State New
Headers
Series [v3] arm64: dts: mediatek: cherry: Configure eDP and internal display |

Commit Message

NĂ­colas F. R. A. Prado Aug. 16, 2023, 7:04 p.m. UTC
  From: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>

Add the required nodes to enable the DisplayPort interface, connected
to the Embedded DisplayPort port, where we have an internal display.

Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
[nfraprado: removed always-on, added vin-supply and enable delay]
Signed-off-by: NĂ­colas F. R. A. Prado <nfraprado@collabora.com>

---
The MediaTek DRM changes needed for MT8195 have already been queued for
v6.6 [1], so this DT patch is the last missing piece needed to get
a working display on MT8195 Tomato.

[1] https://lore.kernel.org/all/20230813152726.14802-1-chunkuang.hu@kernel.org/

Changes in v3:
- Split from "MT8195 Acer Tomato - devicetrees Part 3" series
- Removed regulator-always-on as it's no longer needed
- Added missing vin-supply and regulator-enable-delay

 .../boot/dts/mediatek/mt8195-cherry.dtsi      | 33 +++++++++++++++++++
 1 file changed, 33 insertions(+)
  

Patch

diff --git a/arch/arm64/boot/dts/mediatek/mt8195-cherry.dtsi b/arch/arm64/boot/dts/mediatek/mt8195-cherry.dtsi
index 37a3e9de90ff..dd5b89b73190 100644
--- a/arch/arm64/boot/dts/mediatek/mt8195-cherry.dtsi
+++ b/arch/arm64/boot/dts/mediatek/mt8195-cherry.dtsi
@@ -47,6 +47,19 @@  memory@40000000 {
 		reg = <0 0x40000000 0 0x80000000>;
 	};
 
+	pp3300_disp_x: regulator-pp3300-disp-x {
+		compatible = "regulator-fixed";
+		regulator-name = "pp3300_disp_x";
+		regulator-min-microvolt = <3300000>;
+		regulator-max-microvolt = <3300000>;
+		regulator-enable-ramp-delay = <2500>;
+		enable-active-high;
+		gpio = <&pio 55 GPIO_ACTIVE_HIGH>;
+		pinctrl-names = "default";
+		pinctrl-0 = <&panel_fixed_pins>;
+		vin-supply = <&pp3300_z2>;
+	};
+
 	/* system wide LDO 3.3V power rail */
 	pp3300_z5: regulator-pp3300-ldo-z5 {
 		compatible = "regulator-fixed";
@@ -217,6 +230,20 @@  port@1 {
 			reg = <1>;
 			edp_out: endpoint {
 				data-lanes = <0 1 2 3>;
+				remote-endpoint = <&panel_in>;
+			};
+		};
+	};
+
+	aux-bus {
+		panel {
+			compatible = "edp-panel";
+			power-supply = <&pp3300_disp_x>;
+			backlight = <&backlight_lcd0>;
+			port {
+				panel_in: endpoint {
+					remote-endpoint = <&edp_out>;
+				};
 			};
 		};
 	};
@@ -881,6 +908,12 @@  pins-bus {
 		};
 	};
 
+	panel_fixed_pins: panel-pwr-default-pins {
+		pins-vreg-en {
+			pinmux = <PINMUX_GPIO55__FUNC_GPIO55>;
+		};
+	};
+
 	pio_default: pio-default-pins {
 		pins-wifi-enable {
 			pinmux = <PINMUX_GPIO58__FUNC_GPIO58>;