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

Nícolas F. R. A. Prado posted 1 patch 1 year, 1 month ago
.../boot/dts/mediatek/mt8195-cherry.dtsi      | 33 +++++++++++++++++++
1 file changed, 33 insertions(+)
[PATCH v3] arm64: dts: mediatek: cherry: Configure eDP and internal display
Posted by Nícolas F. R. A. Prado 1 year, 1 month ago
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(+)

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>;
-- 
2.41.0

Re: [PATCH v3] arm64: dts: mediatek: cherry: Configure eDP and internal display
Posted by Chen-Yu Tsai 1 year, 1 month ago
On Thu, Aug 17, 2023 at 3:04 AM Nícolas F. R. A. Prado
<nfraprado@collabora.com> wrote:
>
> 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>

Reviewed-by: Chen-Yu Tsai <wenst@chromium.org>
Tested-by: Chen-Yu Tsai <wenst@chromium.org>

> ---
> 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

The platform thermal patch from that series hasn't been merged either?

> - 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(+)
>
> 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>;
> --
> 2.41.0
>
Re: [PATCH v3] arm64: dts: mediatek: cherry: Configure eDP and internal display
Posted by Nícolas F. R. A. Prado 1 year, 1 month ago
On Thu, Aug 17, 2023 at 05:19:22PM +0800, Chen-Yu Tsai wrote:
> On Thu, Aug 17, 2023 at 3:04 AM Nícolas F. R. A. Prado
> <nfraprado@collabora.com> wrote:
> >
> > 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>
> 
> Reviewed-by: Chen-Yu Tsai <wenst@chromium.org>
> Tested-by: Chen-Yu Tsai <wenst@chromium.org>
> 
> > ---
> > 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
> 
> The platform thermal patch from that series hasn't been merged either?

Yes, indeed. But given that the DRM series was just merged and this became the
last missing piece to make MT8195-Tomato an actually usable chromebook upstream,
I thought it made sense to split this patch so it can be prioritized for the
v6.6 merge window.

But I'll also send a new version for the thermal patch.

Thanks,
Nícolas