Re: [PATCH 3/3] arm64: dts: qcom: sm6125-xiaomi-laurel-sprout: Enable MDSS and add panel
From: Dmitry Baryshkov
Date: Mon Feb 23 2026 - 21:46:59 EST
On Mon, Feb 23, 2026 at 04:24:04PM +0200, Yedaya Katsman wrote:
> Enable the MDSS nodes and add supplies and bindings for the Samsung
> S6E8FCO panel.
>
> The ldo and iovcc pins boot up with a current of 16 mA, but they work
> fine with 2mA, so I used that.
>
> Co-developed-by: Kamil Gołda <kamil.golda@xxxxxxxxxxxxxx>
> Signed-off-by: Kamil Gołda <kamil.golda@xxxxxxxxxxxxxx>
> Signed-off-by: Yedaya Katsman <yedaya.ka@xxxxxxxxx>
> ---
> .../boot/dts/qcom/sm6125-xiaomi-laurel-sprout.dts | 94 ++++++++++++++++++++++
> 1 file changed, 94 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/qcom/sm6125-xiaomi-laurel-sprout.dts b/arch/arm64/boot/dts/qcom/sm6125-xiaomi-laurel-sprout.dts
> index 994fb0412fcbdf5466f87a325c48b697a37b514b..10fd01143a644004b807fc455d2235f8e6a9737a 100644
> --- a/arch/arm64/boot/dts/qcom/sm6125-xiaomi-laurel-sprout.dts
> +++ b/arch/arm64/boot/dts/qcom/sm6125-xiaomi-laurel-sprout.dts
> @@ -82,6 +82,32 @@ key-volume-up {
> };
> };
>
> + panel_ldo_supply: panel-ldo-supply {
regulator-foo-bar-baz
> + compatible = "regulator-fixed";
> + regulator-name = "panel_ldo_supply";
Is it an actual name (e.g. from schematics)?
> + regulator-min-microvolt = <1800000>;
> + regulator-max-microvolt = <1800000>;
> + regulator-boot-on;
> +
> + enable-active-high;
> + gpio = <&tlmm 26 GPIO_ACTIVE_HIGH>;
> + pinctrl-0 = <&panel_ldo_en>;
> + pinctrl-names = "default";
> + };
> +
> + panel_iovcc_supply: panel-iovcc-supply {
> + compatible = "regulator-fixed";
> + regulator-name = "panel_iovcc_supply";
> + regulator-min-microvolt = <1800000>;
> + regulator-max-microvolt = <1800000>;
> + regulator-boot-on;
> +
> + enable-active-high;
> + gpio = <&tlmm 124 GPIO_ACTIVE_HIGH>;
> + pinctrl-0 = <&panel_iovcc_en>;
> + pinctrl-names = "default";
> + };
> +
> thermal-zones {
> rf-pa0-thermal {
> thermal-sensors = <&pm6125_adc_tm 0>;
> @@ -128,6 +154,46 @@ &hsusb_phy1 {
> status = "okay";
> };
>
> +&mdss {
> + status = "okay";
> +};
> +
> +&mdss_dsi0 {
> + vdda-supply = <&vreg_l18a>;
> +
> + pinctrl-0 = <&mdss_default>;
> + pinctrl-1 = <&mdss_sleep>;
> + pinctrl-names = "default", "sleep";
> +
> + status = "okay";
> +
> + panel@0 {
> + compatible = "samsung,s6e8fco";
> + reg = <0>;
> +
> + vddio-supply = <&vreg_l9a>;
> + ldo-supply = <&panel_ldo_supply>;
> + iovcc-supply = <&panel_iovcc_supply>;
> + reset-gpios = <&tlmm 90 GPIO_ACTIVE_LOW>;
> +
> + 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 {
> + status = "okay";
Missing vdds-supply.
> +};
> +
> &pm6125_adc {
> pinctrl-names = "default";
> pinctrl-0 = <&camera_flash_therm &emmc_ufs_therm>;
> @@ -387,6 +453,34 @@ &sdhc_2 {
>
> &tlmm {
> gpio-reserved-ranges = <22 2>, <28 6>;
> +
> + panel_ldo_en: panel-ldo-default-state {
> + pins = "gpio26";
> + function = "gpio";
> + drive-strength = <2>;
> + bias-pull-up;
> + };
> +
> + mdss_default: mdss-default-state {
> + pins = "gpio90";
> + function = "gpio";
> + drive-strength = <8>;
> + bias-disable;
> + };
> +
> + mdss_sleep: mdss-sleep-state {
> + pins = "gpio90";
> + function = "gpio";
> + drive-strength = <2>;
> + bias-pull-down;
> + };
> +
> + panel_iovcc_en: panel-iovcc-default-state {
> + pins = "gpio124";
> + function = "gpio";
> + drive-strength = <2>;
> + bias-pull-up;
> + };
> };
>
> &ufs_mem_hc {
>
> --
> 2.53.0
>
--
With best wishes
Dmitry