Message ID | 20240919094212.1902073-1-treapking@chromium.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [v3] arm64: dts: mediatek: mt8183-pumpkin: add HDMI support | expand |
On Thu, 19 Sep 2024 17:41:49 +0800, Pin-yen Lin wrote: > From: Fabien Parent <fparent@baylibre.com> > > The MT8183 Pumpkin board has a micro-HDMI connector. HDMI support is > provided by an IT66121 DPI <-> HDMI bridge. > > Enable the DPI and add the node for the IT66121 bridge. > > Signed-off-by: Fabien Parent <fparent@baylibre.com> > Co-developed-by: Pin-yen Lin <treapking@chromium.org> > Signed-off-by: Pin-yen Lin <treapking@chromium.org> > Reviewed-by: Nícolas F. R. A. Prado <nfraprado@collabora.com> > > --- > > Changes in v3: > - Update commit message and fix formatting issues > - Fix the label name of vcn33 regulator > > .../boot/dts/mediatek/mt8183-pumpkin.dts | 123 ++++++++++++++++++ > 1 file changed, 123 insertions(+) > My bot found new DTB warnings on the .dts files added or changed in this series. Some warnings may be from an existing SoC .dtsi. Or perhaps the warnings are fixed by another series. Ultimately, it is up to the platform maintainer whether these warnings are acceptable or not. No need to reply unless the platform maintainer has comments. If you already ran DT checks and didn't see these error(s), then make sure dt-schema is up to date: pip3 install dtschema --upgrade New warnings running 'make CHECK_DTBS=y mediatek/mt8183-pumpkin.dtb' for 20240919094212.1902073-1-treapking@chromium.org: arch/arm64/boot/dts/mediatek/mt8183-pumpkin.dtb: dpi@14015000: power-domains: False schema does not allow [[76, 7]] from schema $id: http://devicetree.org/schemas/display/mediatek/mediatek,dpi.yaml#
On Fri, Sep 20, 2024 at 2:18 AM Rob Herring (Arm) <robh@kernel.org> wrote: > > > On Thu, 19 Sep 2024 17:41:49 +0800, Pin-yen Lin wrote: > > From: Fabien Parent <fparent@baylibre.com> > > > > The MT8183 Pumpkin board has a micro-HDMI connector. HDMI support is > > provided by an IT66121 DPI <-> HDMI bridge. > > > > Enable the DPI and add the node for the IT66121 bridge. > > > > Signed-off-by: Fabien Parent <fparent@baylibre.com> > > Co-developed-by: Pin-yen Lin <treapking@chromium.org> > > Signed-off-by: Pin-yen Lin <treapking@chromium.org> > > Reviewed-by: Nícolas F. R. A. Prado <nfraprado@collabora.com> > > > > --- > > > > Changes in v3: > > - Update commit message and fix formatting issues > > - Fix the label name of vcn33 regulator > > > > .../boot/dts/mediatek/mt8183-pumpkin.dts | 123 ++++++++++++++++++ > > 1 file changed, 123 insertions(+) > > > > > My bot found new DTB warnings on the .dts files added or changed in this > series. > > Some warnings may be from an existing SoC .dtsi. Or perhaps the warnings > are fixed by another series. Ultimately, it is up to the platform > maintainer whether these warnings are acceptable or not. No need to reply > unless the platform maintainer has comments. > > If you already ran DT checks and didn't see these error(s), then > make sure dt-schema is up to date: > > pip3 install dtschema --upgrade > > > New warnings running 'make CHECK_DTBS=y mediatek/mt8183-pumpkin.dtb' for 20240919094212.1902073-1-treapking@chromium.org: > > arch/arm64/boot/dts/mediatek/mt8183-pumpkin.dtb: dpi@14015000: power-domains: False schema does not allow [[76, 7]] > from schema $id: http://devicetree.org/schemas/display/mediatek/mediatek,dpi.yaml# This warning will be addressed by https://lore.kernel.org/all/20240919112152.2829765-2-rohiagar@chromium.org/, and it comes from the dtsi file this patch includes. Regards, Pin-yen > > > > >
On Thu, 19 Sep 2024 17:41:49 +0800, Pin-yen Lin wrote: > The MT8183 Pumpkin board has a micro-HDMI connector. HDMI support is > provided by an IT66121 DPI <-> HDMI bridge. > > Enable the DPI and add the node for the IT66121 bridge. > > Applied to v6.12-next/dts64, thanks! [1/1] arm64: dts: mediatek: mt8183-pumpkin: add HDMI support https://git.kernel.org/mediatek/c/72f3e3d6 Cheers, Angelo
diff --git a/arch/arm64/boot/dts/mediatek/mt8183-pumpkin.dts b/arch/arm64/boot/dts/mediatek/mt8183-pumpkin.dts index 1aa668c3ccf9..61a6f66914b8 100644 --- a/arch/arm64/boot/dts/mediatek/mt8183-pumpkin.dts +++ b/arch/arm64/boot/dts/mediatek/mt8183-pumpkin.dts @@ -63,6 +63,18 @@ thermistor { pulldown-ohm = <0>; io-channels = <&auxadc 0>; }; + + connector { + compatible = "hdmi-connector"; + label = "hdmi"; + type = "d"; + + port { + hdmi_connector_in: endpoint { + remote-endpoint = <&hdmi_connector_out>; + }; + }; + }; }; &auxadc { @@ -120,6 +132,43 @@ &i2c6 { pinctrl-0 = <&i2c6_pins>; status = "okay"; clock-frequency = <100000>; + #address-cells = <1>; + #size-cells = <0>; + + it66121hdmitx: hdmitx@4c { + compatible = "ite,it66121"; + reg = <0x4c>; + pinctrl-names = "default"; + pinctrl-0 = <&ite_pins>; + reset-gpios = <&pio 160 GPIO_ACTIVE_LOW>; + interrupt-parent = <&pio>; + interrupts = <4 IRQ_TYPE_LEVEL_LOW>; + vcn33-supply = <&mt6358_vcn33_reg>; + vcn18-supply = <&mt6358_vcn18_reg>; + vrf12-supply = <&mt6358_vrf12_reg>; + + ports { + #address-cells = <1>; + #size-cells = <0>; + + port@0 { + reg = <0>; + + it66121_in: endpoint { + bus-width = <12>; + remote-endpoint = <&dpi_out>; + }; + }; + + port@1 { + reg = <1>; + + hdmi_connector_out: endpoint { + remote-endpoint = <&hdmi_connector_in>; + }; + }; + }; + }; }; &keyboard { @@ -362,6 +411,67 @@ pins_clk { input-enable; }; }; + + ite_pins: ite-pins { + pins-irq { + pinmux = <PINMUX_GPIO4__FUNC_GPIO4>; + input-enable; + bias-pull-up; + }; + + pins-rst { + pinmux = <PINMUX_GPIO160__FUNC_GPIO160>; + output-high; + }; + }; + + dpi_func_pins: dpi-func-pins { + pins-dpi { + pinmux = <PINMUX_GPIO12__FUNC_I2S5_BCK>, + <PINMUX_GPIO46__FUNC_I2S5_LRCK>, + <PINMUX_GPIO47__FUNC_I2S5_DO>, + <PINMUX_GPIO13__FUNC_DBPI_D0>, + <PINMUX_GPIO14__FUNC_DBPI_D1>, + <PINMUX_GPIO15__FUNC_DBPI_D2>, + <PINMUX_GPIO16__FUNC_DBPI_D3>, + <PINMUX_GPIO17__FUNC_DBPI_D4>, + <PINMUX_GPIO18__FUNC_DBPI_D5>, + <PINMUX_GPIO19__FUNC_DBPI_D6>, + <PINMUX_GPIO20__FUNC_DBPI_D7>, + <PINMUX_GPIO21__FUNC_DBPI_D8>, + <PINMUX_GPIO22__FUNC_DBPI_D9>, + <PINMUX_GPIO23__FUNC_DBPI_D10>, + <PINMUX_GPIO24__FUNC_DBPI_D11>, + <PINMUX_GPIO25__FUNC_DBPI_HSYNC>, + <PINMUX_GPIO26__FUNC_DBPI_VSYNC>, + <PINMUX_GPIO27__FUNC_DBPI_DE>, + <PINMUX_GPIO28__FUNC_DBPI_CK>; + }; + }; + + dpi_idle_pins: dpi-idle-pins { + pins-idle { + pinmux = <PINMUX_GPIO12__FUNC_GPIO12>, + <PINMUX_GPIO46__FUNC_GPIO46>, + <PINMUX_GPIO47__FUNC_GPIO47>, + <PINMUX_GPIO13__FUNC_GPIO13>, + <PINMUX_GPIO14__FUNC_GPIO14>, + <PINMUX_GPIO15__FUNC_GPIO15>, + <PINMUX_GPIO16__FUNC_GPIO16>, + <PINMUX_GPIO17__FUNC_GPIO17>, + <PINMUX_GPIO18__FUNC_GPIO18>, + <PINMUX_GPIO19__FUNC_GPIO19>, + <PINMUX_GPIO20__FUNC_GPIO20>, + <PINMUX_GPIO21__FUNC_GPIO21>, + <PINMUX_GPIO22__FUNC_GPIO22>, + <PINMUX_GPIO23__FUNC_GPIO23>, + <PINMUX_GPIO24__FUNC_GPIO24>, + <PINMUX_GPIO25__FUNC_GPIO25>, + <PINMUX_GPIO26__FUNC_GPIO26>, + <PINMUX_GPIO27__FUNC_GPIO27>, + <PINMUX_GPIO28__FUNC_GPIO28>; + }; + }; }; &pmic { @@ -415,3 +525,16 @@ &scp { &dsi0 { status = "disabled"; }; + +&dpi0 { + pinctrl-names = "default", "sleep"; + pinctrl-0 = <&dpi_func_pins>; + pinctrl-1 = <&dpi_idle_pins>; + status = "okay"; + + port { + dpi_out: endpoint { + remote-endpoint = <&it66121_in>; + }; + }; +};