Re: [PATCH] ARM: dts: imx6: skov: add pwm-regulator to control the panel's VCOM

From: Shawn Guo
Date: Sat Jun 11 2022 - 05:31:17 EST


On Tue, May 17, 2022 at 09:18:14AM +0200, Ulrich Ölmann wrote:
> Skov's i.MX6 based boards come in different flavors which have different panels
> attached. For optimal contrast experience each panel type needs an individual
> common voltage (VCOM) to drive its TFT backplane. The latter is generated by an
> LCD bias supply IC controlled by a pwm as input signal. Introduce a pwm-
> regulator to describe this hardware property and parameterize it appropriately
> for the different boards.
>
> Signed-off-by: Ulrich Ölmann <u.oelmann@xxxxxxxxxxxxxx>
> ---
> arch/arm/boot/dts/imx6q-skov-reve-mi1010ait-1cp1.dts | 6 ++++++
> arch/arm/boot/dts/imx6qdl-skov-cpu.dtsi | 10 ++++++++++
> 2 files changed, 16 insertions(+)
>
> diff --git a/arch/arm/boot/dts/imx6q-skov-reve-mi1010ait-1cp1.dts b/arch/arm/boot/dts/imx6q-skov-reve-mi1010ait-1cp1.dts
> index 7f1f19b74bfa..a3f247c722b4 100644
> --- a/arch/arm/boot/dts/imx6q-skov-reve-mi1010ait-1cp1.dts
> +++ b/arch/arm/boot/dts/imx6q-skov-reve-mi1010ait-1cp1.dts
> @@ -125,3 +125,9 @@ MX6QDL_PAD_EIM_D23__GPIO3_IO23 0x1b0b0
> >;
> };
> };
> +
> +&reg_tft_vcom {
> + regulator-min-microvolt = <3160000>;
> + regulator-max-microvolt = <3160000>;
> + voltage-table = <3160000 73>;
> +};
> diff --git a/arch/arm/boot/dts/imx6qdl-skov-cpu.dtsi b/arch/arm/boot/dts/imx6qdl-skov-cpu.dtsi
> index 77a91a97e6cf..3def1b621c8e 100644
> --- a/arch/arm/boot/dts/imx6qdl-skov-cpu.dtsi
> +++ b/arch/arm/boot/dts/imx6qdl-skov-cpu.dtsi
> @@ -149,6 +149,16 @@ reg_can2_stby: regulator-can2-stby {
> gpio = <&gpio4 11 GPIO_ACTIVE_LOW>;
> };
>
> + reg_tft_vcom: regulator-tft-vcom {
> + compatible = "pwm-regulator";
> + pwms = <&pwm3 0 20000 0>;
> + regulator-name = "tft_vcom";
> + regulator-min-microvolt = <3600000>;
> + regulator-max-microvolt = <3600000>;
> + regulator-always-on;

You want it to be unmanaged and always-on?

Shawn

> + voltage-table = <3600000 26>;
> + };
> +
> reg_vcc_mmc: regulator-vcc-mmc {
> compatible = "regulator-fixed";
> pinctrl-names = "default";
> --
> 2.30.2
>