Hi Fabrizio, Thank you for the patch.
On Thu, Aug 29, 2019 at 12:38:33PM +0100, Fabrizio Castro wrote: > The HiHope RZ/G2M is advertised as compatible with panel idk-1110wr > from Advantech, however the panel isn't sold alongside the board. > A new dts, adding everything that's required to get the panel to > work the HiHope RZ/G2M, is the most convenient way to support the > HiHope RZ/G2M when it's connected to the idk-1110wr. > > Signed-off-by: Fabrizio Castro <fabrizio.cas...@bp.renesas.com> > --- > v1->v2: > * added space between lvds-connector-en-gpio and curly brace > > arch/arm64/boot/dts/renesas/Makefile | 1 + > .../r8a774a1-hihope-rzg2m-ex-idk-1110wr.dts | 86 > ++++++++++++++++++++++ > 2 files changed, 87 insertions(+) > create mode 100644 > arch/arm64/boot/dts/renesas/r8a774a1-hihope-rzg2m-ex-idk-1110wr.dts > > diff --git a/arch/arm64/boot/dts/renesas/Makefile > b/arch/arm64/boot/dts/renesas/Makefile > index 42b74c2..5d94301 100644 > --- a/arch/arm64/boot/dts/renesas/Makefile > +++ b/arch/arm64/boot/dts/renesas/Makefile > @@ -1,6 +1,7 @@ > # SPDX-License-Identifier: GPL-2.0 > dtb-$(CONFIG_ARCH_R8A774A1) += r8a774a1-hihope-rzg2m.dtb > dtb-$(CONFIG_ARCH_R8A774A1) += r8a774a1-hihope-rzg2m-ex.dtb > +dtb-$(CONFIG_ARCH_R8A774A1) += r8a774a1-hihope-rzg2m-ex-idk-1110wr.dtb > dtb-$(CONFIG_ARCH_R8A774C0) += r8a774c0-cat874.dtb r8a774c0-ek874.dtb > dtb-$(CONFIG_ARCH_R8A7795) += r8a7795-salvator-x.dtb r8a7795-h3ulcb.dtb > dtb-$(CONFIG_ARCH_R8A7795) += r8a7795-h3ulcb-kf.dtb > diff --git > a/arch/arm64/boot/dts/renesas/r8a774a1-hihope-rzg2m-ex-idk-1110wr.dts > b/arch/arm64/boot/dts/renesas/r8a774a1-hihope-rzg2m-ex-idk-1110wr.dts > new file mode 100644 > index 0000000..67fe04c > --- /dev/null > +++ b/arch/arm64/boot/dts/renesas/r8a774a1-hihope-rzg2m-ex-idk-1110wr.dts > @@ -0,0 +1,86 @@ > +// SPDX-License-Identifier: GPL-2.0 > +/* > + * Device Tree Source for the HiHope RZ/G2M sub board connected to an > + * Advantech IDK-1110WR 10.1" LVDS panel > + * > + * Copyright (C) 2019 Renesas Electronics Corp. > + */ > + > +#include "r8a774a1-hihope-rzg2m-ex.dts" > + > +/ { > + backlight { > + compatible = "pwm-backlight"; > + pwms = <&pwm0 0 50000>; > + > + brightness-levels = <0 2 8 16 32 64 128 255>; > + default-brightness-level = <6>; > + }; > + > + panel-lvds { > + compatible = "advantech,idk-1110wr", "panel-lvds"; > + > + width-mm = <223>; > + height-mm = <125>; > + > + data-mapping = "jeida-24"; > + > + panel-timing { > + /* 1024x600 @60Hz */ > + clock-frequency = <51200000>; > + hactive = <1024>; > + vactive = <600>; > + hsync-len = <240>; > + hfront-porch = <40>; > + hback-porch = <40>; > + vfront-porch = <15>; > + vback-porch = <10>; > + vsync-len = <10>; > + }; > + > + port { > + panel_in: endpoint { > + remote-endpoint = <&lvds0_out>; > + }; > + }; > + }; > +}; > + > +&gpio1 { > + /* > + * When GP1_20 is LOW LVDS0 is connected to the LVDS connector > + * When GP1_20 is HIGH LVDS0 is connected to the LT8918L > + */ I knew that runtime-configurable output routing would be needed one day. While I'm not opposed to merging this patch as-is, it means that a board shipping this DT will not support the DSI output. I suppose that's not a problem as using DSI would require an external DSI panel, which would require a different DT anyway. In the general case, however, implementing support in the DU driver for output routing outside the SoC will be interesting to say the least :-) Acked-by: Laurent Pinchart <laurent.pinch...@ideasonboard.com> > + lvds-connector-en-gpio { > + gpio-hog; > + gpios = <20 GPIO_ACTIVE_HIGH>; > + output-low; > + line-name = "lvds-connector-en-gpio"; > + }; > +}; > + > +&lvds0 { > + status = "okay"; > + > + ports { > + port@1 { > + lvds0_out: endpoint { > + remote-endpoint = <&panel_in>; > + }; > + }; > + }; > +}; > + > +&pfc { > + pwm0_pins: pwm0 { > + groups = "pwm0"; > + function = "pwm0"; > + }; > +}; > + > +&pwm0 { > + pinctrl-0 = <&pwm0_pins>; > + pinctrl-names = "default"; > + > + status = "okay"; > +}; -- Regards, Laurent Pinchart