Re: [RESEND PATCH v2 2/2] arm64: dts: mediatek: mt8183-pumpkin: add HDMI support

Matthias Brugger
2024-09-02T15:44:29Z

On 19/08/2024 14:05, 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.
>
> This commit enables DPI and add the node for the IT66121 bridge.
>
> Signed-off-by: Fabien Parent <fparent@baylibre.com>
> Signed-off-by: Pin-yen Lin <treapking@chromium.org>
>

Building DTB fais with:
arch/arm64/boot/dts/mediatek/mt8183-pumpkin.dts:138.27-169.4: ERROR
(phandle_references): /soc/i2c@11005000/hdmitx@4c: Reference to non-existent
node or label "mt6358_vcn33_wifi_reg"

Please check your code before submitting.

Regards,
Matthias

> ---
>
> (no changes since v1)
>
> .../boot/dts/mediatek/mt8183-pumpkin.dts | 121 ++++++++++++++++++
> 1 file changed, 121 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/mediatek/mt8183-pumpkin.dts b/arch/arm64/boot/dts/mediatek/mt8183-pumpkin.dts
> index 1aa668c3ccf9..ecc237355b56 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,41 @@ &i2c6 {
> pinctrl-0 = <&i2c6_pins>;
> status = "okay";
> clock-frequency = <100000>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + it66121hdmitx: hdmitx@4c {
> + compatible = "ite,it66121";
> + pinctrl-names = "default";
> + pinctrl-0 = <&ite_pins>;
> + vcn33-supply = <&mt6358_vcn33_wifi_reg>;
> + vcn18-supply = <&mt6358_vcn18_reg>;
> + vrf12-supply = <&mt6358_vrf12_reg>;
> + reset-gpios = <&pio 160 GPIO_ACTIVE_LOW>;
> + interrupt-parent = <&pio>;
> + interrupts = <4 IRQ_TYPE_LEVEL_LOW>;
> + reg = <0x4c>;
> +
> + 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 +409,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 +523,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>;
> + };
> + };
> +};