On 16/10/2025 18:16, David Heidelberg via B4 Relay wrote:
> From: Casey Connolly <[email protected]>
>
> There are two additional supplies used by the panel, both are GPIO
> controlled and are left enabled by the bootloader for continuous splash.
>
> Previously these were (incorrectly) modelled as pinctrl. Describe them
> properly so that the panel can control them.
>
> Fixes: 288ef8a42612 ("arm64: dts: sdm845: add oneplus6/6t devices")
This Fixes: is not correct, it should be the commit that first added the
panel to the DT since it was added after the initial DT.
The driver changes also need to be backported and may not apply properly
to stable kernels, so we should be careful with this.
> Signed-off-by: Casey Connolly <[email protected]>
> Co-developed-by: David Heidelberg <[email protected]>
> Signed-off-by: David Heidelberg <[email protected]>
> ---
> .../arm64/boot/dts/qcom/sdm845-oneplus-common.dtsi | 46
> +++++++++++++++++++++-
> 1 file changed, 45 insertions(+), 1 deletion(-)
>
> diff --git a/arch/arm64/boot/dts/qcom/sdm845-oneplus-common.dtsi
> b/arch/arm64/boot/dts/qcom/sdm845-oneplus-common.dtsi
> index dcfffb271fcf3..1cf03047dd7ae 100644
> --- a/arch/arm64/boot/dts/qcom/sdm845-oneplus-common.dtsi
> +++ b/arch/arm64/boot/dts/qcom/sdm845-oneplus-common.dtsi
> @@ -162,6 +162,34 @@ ts_1p8_supply: ts-1p8-regulator {
> enable-active-high;
> regulator-boot-on;
> };
> +
> + panel_vci_3v3: panel-vci-3v3-regulator {
> + compatible = "regulator-fixed";
> + regulator-name = "LCD_VCI_3V";
> +
> + regulator-min-microvolt = <3300000>;
> + regulator-max-microvolt = <3300000>;
> +
> + gpio = <&tlmm 26 GPIO_ACTIVE_HIGH>;
> + enable-active-high;
> + pinctrl-0 = <&panel_vci_default>;
> + pinctrl-names = "default";
> + regulator-boot-on;
> + };
> +
> + panel_vddi_poc_1p8: panel-vddi-poc-regulator {
> + compatible = "regulator-fixed";
> + regulator-name = "VDDI_POC";
> +
> + regulator-min-microvolt = <1800000>;
> + regulator-max-microvolt = <1800000>;
> +
> + gpio = <&tlmm 25 GPIO_ACTIVE_HIGH>;
> + enable-active-high;
> + pinctrl-0 = <&panel_poc_default>;
> + pinctrl-names = "default";
> + regulator-boot-on;
> + };
> };
>
> &adsp_pas {
> @@ -429,6 +457,8 @@ display_panel: panel@0 {
> reg = <0>;
>
> vddio-supply = <&vreg_l14a_1p88>;
> + vci-supply = <&panel_vci_3v3>;
> + poc-supply = <&panel_vddi_poc_1p8>;
>
> reset-gpios = <&tlmm 6 GPIO_ACTIVE_LOW>;
>
> @@ -803,6 +833,20 @@ hall_sensor_default: hall-sensor-default-state {
> bias-disable;
> };
>
> + panel_vci_default: vci-state {
> + pins = "gpio26";
> + function = "gpio";
> + drive-strength = <8>;
> + bias-disable;
> + };
> +
> + panel_poc_default: poc-state {
> + pins = "gpio25";
> + function = "gpio";
> + drive-strength = <8>;
> + bias-disable;
> + };
> +
> tri_state_key_default: tri-state-key-default-state {
> pins = "gpio40", "gpio42", "gpio26";
> function = "gpio";
> @@ -818,7 +862,7 @@ ts_default_pins: ts-int-state {
> };
>
> panel_reset_pins: panel-reset-state {
> - pins = "gpio6", "gpio25", "gpio26";
> + pins = "gpio6";
> function = "gpio";
> drive-strength = <8>;
> bias-disable;
>
--
// Casey (she/her)