diff --git a/arch/arm64/boot/dts/freescale/imx95-19x19-verdin-evk.dts b/arch/arm64/boot/dts/freescale/imx95-19x19-verdin-evk.dts index 606dbea5e5f93204db58812b634142b7057fd331..85a42d04dad84ad2ba40dcdd8428a971e83ed023 100644 --- a/arch/arm64/boot/dts/freescale/imx95-19x19-verdin-evk.dts +++ b/arch/arm64/boot/dts/freescale/imx95-19x19-verdin-evk.dts @@ -8,6 +8,7 @@ #include <dt-bindings/usb/pd.h> #include "imx95.dtsi" +#include "imx95-19x19-verdin-graphics.dtsi" #define FALLING_EDGE 1 #define RISING_EDGE 2 diff --git a/arch/arm64/boot/dts/freescale/imx95-19x19-verdin-graphics.dtsi b/arch/arm64/boot/dts/freescale/imx95-19x19-verdin-graphics.dtsi new file mode 100644 index 0000000000000000000000000000000000000000..614fed31ce9e991ca184dc9d13613d13c0cf7ff8 --- /dev/null +++ b/arch/arm64/boot/dts/freescale/imx95-19x19-verdin-graphics.dtsi @@ -0,0 +1,131 @@ +/ { + hdmi-connector { + compatible = "hdmi-connector"; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_pwm_3_dsi_hpd_gpio>; + ddc-i2c-bus = <&lpi2c2>; + /* Verdin PWM_3_DSI/PWM_3_DSI_LVDS (SODIMM 19) GPIO_IO12 */ + hpd-gpios = <&gpio2 12 GPIO_ACTIVE_HIGH>; + label = "hdmi"; + type = "a"; + + port { + hdmi_connector_in: endpoint { + remote-endpoint = <<8912b_out>; + }; + }; + }; +}; + +&displaymix_irqsteer { + status = "okay"; +}; + +&display_pixel_link { + status = "okay"; +}; + +&dpu { + assigned-clocks = <&scmi_clk IMX95_CLK_DISP1PIX>, + <&scmi_clk IMX95_CLK_VIDEOPLL1_VCO>, + <&scmi_clk IMX95_CLK_VIDEOPLL1>; + assigned-clock-parents = <&scmi_clk IMX95_CLK_VIDEOPLL1>; + assigned-clock-rates = <0>, <4008000000>, <445333334>; + status = "okay"; +}; + +&gpu_blk_ctrl { + status = "okay"; +}; + +&gpu { + status = "okay"; +}; + +&lpi2c2 { + #address-cells = <1>; + #size-cells = <0>; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_lpi2c2>; + clock-frequency = <100000>; + status = "okay"; +}; + +&lpi2c7 { + #address-cells = <1>; + #size-cells = <0>; + clock-frequency = <400000>; + status = "okay"; + + hdmi@48 { + compatible = "lontium,lt8912b"; + reg = <0x48>; + pinctrl-names = "default"; + reset-gpios = <&i2c7_pcal6524 9 GPIO_ACTIVE_LOW>; + status = "okay"; + ports { + #address-cells = <1>; + #size-cells = <0>; + + port@0 { + reg = <0>; + + lt8912b_to_dsi: endpoint { + data-lanes = <1 2 3 4>; + remote-endpoint = <&dsi_to_lt8912b>; + }; + }; + + port@1 { + reg = <1>; + + lt8912b_out: endpoint { + remote-endpoint = <&hdmi_connector_in>; + }; + }; + }; + }; +}; + +&mipi_dsi { + status = "okay"; + + ports { + #address-cells = <1>; + #size-cells = <0>; + + port@1 { + reg = <1>; + + dsi_to_lt8912b: endpoint { + remote-endpoint = <<8912b_to_dsi>; + }; + }; + }; +}; + +&pixel_interleaver { + #address-cells = <1>; + #size-cells = <0>; + status = "okay"; + + channel@0 { + reg = <0>; + status = "okay"; + }; +}; + +&scmi_iomuxc { + pinctrl_lpi2c2: lpi2c2grp { + fsl,pins = < + IMX95_PAD_I2C2_SCL__AONMIX_TOP_LPI2C2_SCL 0x40000b9e + IMX95_PAD_I2C2_SDA__AONMIX_TOP_LPI2C2_SDA 0x40000b9e + >; + }; + + pinctrl_pwm_3_dsi_hpd_gpio: dsihpdgrp { + fsl,pins = < + IMX95_PAD_GPIO_IO12__GPIO2_IO_BIT12 0x31e + >; + }; +};