[PATCH 3/3] arm64: dts: qcom: sm7225-fairphone-fp4: Enable display and GPU

From: Luca Weiss
Date: Fri Jan 05 2024 - 09:31:41 EST


Add the description for the display panel found on this phone and remove
the simple-framebuffer that was in place until now. Unfortunately the
LCDB module on PM6150L isn't yet supported upstream so we need to use a
dummy regulator-fixed in the meantime.

And with this done we can also enable the GPU.

Signed-off-by: Luca Weiss <luca.weiss@xxxxxxxxxxxxx>
---
arch/arm64/boot/dts/qcom/sm7225-fairphone-fp4.dts | 62 +++++++++++++++++++----
1 file changed, 53 insertions(+), 9 deletions(-)

diff --git a/arch/arm64/boot/dts/qcom/sm7225-fairphone-fp4.dts b/arch/arm64/boot/dts/qcom/sm7225-fairphone-fp4.dts
index ade619805519..8eb376f2db46 100644
--- a/arch/arm64/boot/dts/qcom/sm7225-fairphone-fp4.dts
+++ b/arch/arm64/boot/dts/qcom/sm7225-fairphone-fp4.dts
@@ -45,15 +45,6 @@ chosen {
ranges;

stdout-path = "serial0:115200n8";
-
- framebuffer0: framebuffer@a000000 {
- compatible = "simple-framebuffer";
- reg = <0 0xa0000000 0 (2340 * 1080 * 4)>;
- width = <1080>;
- height = <2340>;
- stride = <(1080 * 4)>;
- format = "a8r8g8b8";
- };
};

gpio-keys {
@@ -68,6 +59,14 @@ key-volume-up {
};
};

+ /* Dummy regulator until PM6150L has LCDB VSP/VSN support */
+ lcdb_dummy: regulator-lcdb-dummy {
+ compatible = "regulator-fixed";
+ regulator-name = "lcdb_dummy";
+ regulator-min-microvolt = <5500000>;
+ regulator-max-microvolt = <5500000>;
+ };
+
reserved-memory {
/*
* The rmtfs memory region in downstream is 'dynamically allocated'
@@ -365,6 +364,10 @@ &cdsp {
status = "okay";
};

+&gmu {
+ status = "okay";
+};
+
&gpi_dma0 {
status = "okay";
};
@@ -373,6 +376,10 @@ &gpi_dma1 {
status = "okay";
};

+&gpu {
+ status = "okay";
+};
+
&i2c0 {
clock-frequency = <400000>;
status = "okay";
@@ -404,6 +411,43 @@ &ipa {
status = "okay";
};

+&mdss {
+ status = "okay";
+};
+
+&mdss_dsi0 {
+ vdda-supply = <&vreg_l22a>;
+ status = "okay";
+
+ panel@0 {
+ compatible = "fairphone,fp4-hx83112a-djn", "himax,hx83112a";
+ reg = <0>;
+
+ backlight = <&pm6150l_wled>;
+ reset-gpios = <&pm6150l_gpios 9 GPIO_ACTIVE_LOW>;
+
+ vdd1-supply = <&vreg_l1e>;
+ vsn-supply = <&lcdb_dummy>;
+ vsp-supply = <&lcdb_dummy>;
+
+ port {
+ panel_in: endpoint {
+ remote-endpoint = <&mdss_dsi0_out>;
+ };
+ };
+ };
+};
+
+&mdss_dsi0_out {
+ data-lanes = <0 1 2 3>;
+ remote-endpoint = <&panel_in>;
+};
+
+&mdss_dsi0_phy {
+ vdds-supply = <&vreg_l18a>;
+ status = "okay";
+};
+
&mpss {
firmware-name = "qcom/sm7225/fairphone4/modem.mdt";
status = "okay";

--
2.43.0