Hi Biju, Thank you for the patch. On Mon, Aug 10, 2020 at 06:49:44PM +0100, Biju Das wrote: > As per the iWave RZ/G1M schematic, the signal LVDS_PPEN controls supply > voltage for touch panel, LVDS receiver and RGB LCD panel. Add regulator > for these device nodes and remove powerdown-gpios property from > lvds-receiver node as it results in touch controller driver probe failure. > > Signed-off-by: Biju Das <biju.das.jz@xxxxxxxxxxxxxx> > --- > This patch depend on below patches > > 1) https://patchwork.kernel.org/patch/11707595/ > 2) https://patchwork.kernel.org/patch/11707593/ > > v2->v3 : Added the missing part from the patch. removal of powerdown-gpios property. > v1->v2 : Add regulator in touch panel, LVDS receiver and RGB LCD panel device nodes > (Ref: https://patchwork.kernel.org/patch/11707559/) > v1 : https://patchwork.kernel.org/patch/11705819/ > --- > arch/arm/boot/dts/iwg20d-q7-common.dtsi | 15 ++++++++++++++- > 1 file changed, 14 insertions(+), 1 deletion(-) > > diff --git a/arch/arm/boot/dts/iwg20d-q7-common.dtsi b/arch/arm/boot/dts/iwg20d-q7-common.dtsi > index ebbe1518ef8a..056f93119d8a 100644 > --- a/arch/arm/boot/dts/iwg20d-q7-common.dtsi > +++ b/arch/arm/boot/dts/iwg20d-q7-common.dtsi > @@ -57,7 +57,7 @@ > > lvds-receiver { > compatible = "ti,ds90cf384a", "lvds-decoder"; > - powerdown-gpios = <&gpio7 25 GPIO_ACTIVE_LOW>; > + vcc-supply = <&vcc_3v3_tft1>; > > ports { > #address-cells = <1>; > @@ -81,6 +81,7 @@ > panel { > compatible = "edt,etm0700g0dh6"; > backlight = <&lcd_backlight>; > + power-supply = <&vcc_3v3_tft1>; > > port { > panel_in: endpoint { > @@ -113,6 +114,17 @@ > }; > }; > > + vcc_3v3_tft1: regulator-panel { > + compatible = "regulator-fixed"; > + > + regulator-name = "Panel Vcc"; Should this be named vcc-3v3-tft1, to match the hardware ? It's not just the panel, it's also the power supply to the LVDS receiver and touch screen. > + regulator-min-microvolt = <3300000>; > + regulator-max-microvolt = <3300000>; > + enable-active-high; > + startup-delay-us = <70000>; Where does the 70ms value come from ? The time constant of the VCC_3V3 -> VCC_3V3_TFT[12] switches circuitry is 0.1ms (RC = 100kΩ * 1nF), so 0.5ms (5*RC) should be enough there. Are there other delays that need to be taken into account ? With those small issues addressed, Reviewed-by: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx> > + gpio = <&gpio7 25 GPIO_ACTIVE_HIGH>; > + }; > + > vcc_sdhi1: regulator-vcc-sdhi1 { > compatible = "regulator-fixed"; > > @@ -207,6 +219,7 @@ > reg = <0x38>; > interrupt-parent = <&gpio2>; > interrupts = <12 IRQ_TYPE_EDGE_FALLING>; > + vcc-supply = <&vcc_3v3_tft1>; > }; > }; > -- Regards, Laurent Pinchart