DSI to HDMI port enable in IMX8MP-verdin

Hi ,

I am having an issue that my display is not detected on HDMI port, I have enabled the required configs and dts is already enabled in imx8mp-verdin-dev.dtsi though i am facing an issue..

I have attached the logs
[ 0.117714] /soc@0/bus@32c00000/hdmi@32fd8000: Fixed dependency cycle(s) with /soc@0/bus@32c00000/display-bridge@32fc4000
[ 0.131546] /soc@0/bus@32c00000/hdmi@32fd8000: Fixed dependency cycle(s) with /native-hdmi-connector
[ 0.131784] /native-hdmi-connector: Fixed dependency cycle(s) with /soc@0/bus@32c00000/hdmi@32fd8000
[ 0.369920] imx8mp-pinctrl 30330000.pinctrl: pin MX8MP_IOMUXC_ECSPI2_MISO already requested by 30330000.pinctrl; cannot claim for 30a60000.serial
[ 0.369951] imx8mp-pinctrl 30330000.pinctrl: error -EINVAL: pin-126 (30a60000.serial)
[ 0.369971] imx8mp-pinctrl 30330000.pinctrl: error -EINVAL: could not request pin 126 (MX8MP_IOMUXC_ECSPI2_MISO) from group btuartgrp on device 30330000.pincl
[ 0.620691] /soc@0/bus@32c00000/dsi@32e60000: Fixed dependency cycle(s) with /soc@0/bus@30800000/i2c@30a50000/hdmi@48
[ 0.620824] /hdmi-connector: Fixed dependency cycle(s) with /soc@0/bus@30800000/i2c@30a50000/hdmi@48
[ 0.620991] /soc@0/bus@30800000/i2c@30a50000/hdmi@48: Fixed dependency cycle(s) with /soc@0/bus@32c00000/dsi@32e60000
[ 0.621080] /soc@0/bus@30800000/i2c@30a50000/hdmi@48: Fixed dependency cycle(s) with /hdmi-connector
[ 2.217878] systemd[1]: Hostname set to .
[ 11.765183] i2c 3-0048: deferred probe pending: lt8912: lt8912_parse_dt: Failed to get hdmi port
[ 11.765199] platform 32fd8000.hdmi: deferred probe pending: imx8mp-dw-hdmi-tx: Unable to get pixel clock
[ 11.765215] platform 32fc4000.display-bridge: deferred probe pending: imx-hdmi-pvi: could not find next bridge
[ 11.765405] imx8mp-blk-ctrl 32fc0000.blk-ctrl: sync_state() pending due to 32fc4000.display-bridge
[ 11.765427] imx8mp-blk-ctrl 32fc0000.blk-ctrl: sync_state() pending due to 32fc6000.display-controller
[ 11.765452] imx8mp-blk-ctrl 32fc0000.blk-ctrl: sync_state() pending due to 32fd8000.hdmi
[ 11.765475] imx8mp-blk-ctrl 32fc0000.blk-ctrl: sync_state() pending due to 32fdff00.phy
[ 11.765545] imx8mp-blk-ctrl 32f10000.blk-ctrl: sync_state() pending due to 381f0040.usb-phy
[ 11.765566] imx8mp-blk-ctrl 32f10000.blk-ctrl: sync_state() pending due to 382f0040.usb-phy

Hi, I’m the Toradex AI Assistant.

I might make mistakes or occasionally get you wrong. Our support team will step in if needed.


To properly help you troubleshoot your HDMI display detection issue on the Verdin iMX8M Plus, I need to understand your setup better. Could you let me know which OS and version you’re running on your device? You can use the tdx-info command to get detailed information about your hardware and software configuration. For more information about this tool, visit: Getting Device Information with Tdx-Info | Toradex Developer Center

HDMI Interface Overview

According to the Verdin iMX8M Plus V1.1 datasheet, the HDMI interface supports:

  • HDMI 2.0a up to 4K30 (3840x2160@30Hz) (1)
  • Pixel Clock from 25MHz up to 297MHz (1)
  • Digital sound support (1)
  • CEC interface (1)

Common HDMI Configuration Areas

Based on your logs showing dependency cycles and deferred probes, the issue likely involves device tree configuration. The HDMI interface on Verdin modules requires proper configuration of:

  1. Pin multiplexing - ensuring HDMI pins are correctly assigned (2)
  2. Display controller setup - configuring the LCDIF that drives HDMI (1)
  3. Clock configuration - setting up pixel clocks (1)

Device Tree Customization Process

For HDMI configuration issues, you may need to customize your device tree. The general process involves:

  1. Choose the base device tree that matches your hardware platform (3)
  2. Customize it according to your particular hardware (3)
  3. Compile the device tree source (3)
  4. Deploy the device tree to your custom OS image (3)

Once you provide your OS version and platform details, I can give you more specific guidance on resolving the HDMI detection issue and addressing the dependency cycles shown in your logs.

Best regards, Toradex AI Assistant.


Did you like my answer? :+1: :-1:

If I answered your question, please tick the “Solution” checkbox.

For follow-up questions to me, please use @ToradexAI in your post.

Hi @elgin!

Did you enable the DSI to HDMI overlay?

If you’re not familiar with overlays, you can check in this article how to modify the overlay in the userspace.

Best regards.

Thanks @lucas_az.tx I tried this overlays part which was already enabled , then tried to add it in my imx8mp-verdin-wifi-dev.dts but still it didn’t work.

  • I have enabled the required settings from .config file for DSI to HDMI, then also can you suggest what if i may miss something in .config file

below is my attached dts.

imx8mp-verdin-wifi-dev.dts (5.6 KB)

[    0.128159] /native-hdmi-connector: Fixed dependency cycle(s) with /soc@0/bus@32c00000/hdmi@32fd8000
[    0.130691] /soc@0/bus@30800000/i2c@30a50000/hdmi@48: Fixed dependency cycle(s) with /hdmi-connector
[    0.130871] /hdmi-connector: Fixed dependency cycle(s) with /soc@0/bus@30800000/i2c@30a50000/hdmi@48
[    0.576040] reg-fixed-voltage regulator-dsi-hdmi: nonexclusive access to GPIO for (default)
[    0.614851] /hdmi-connector: Fixed dependency cycle(s) with /soc@0/bus@30800000/i2c@30a50000/hdmi@48
[    0.614964] /soc@0/bus@32c00000/dsi@32e60000: Fixed dependency cycle(s) with /soc@0/bus@30800000/i2c@30a50000/hdmi@48
[    0.615138] /soc@0/bus@30800000/i2c@30a50000/hdmi@48: Fixed dependency cycle(s) with /hdmi-connector
[    0.615226] /soc@0/bus@30800000/i2c@30a50000/hdmi@48: Fixed dependency cycle(s) with /soc@0/bus@32c00000/dsi@32e60000
[   11.770130] i2c 3-0048: deferred probe pending: lt8912: lt8912_parse_dt: Failed to get hdmi port
[   11.770151] platform 32fd8000.hdmi: deferred probe pending: imx8mp-dw-hdmi-tx: Unable to get pixel clock
[   11.770171] platform 32fc4000.display-bridge: deferred probe pending: imx-hdmi-pvi: could not find next bridge
[   11.770482] imx8mp-blk-ctrl 32fc0000.blk-ctrl: sync_state() pending due to 32fd8000.hdmi

root@verdin-imx8mp-15445880:~# dmesg | grep drm
[    3.943821] systemd[1]: Starting Load Kernel Module drm...
[    4.225278] systemd[1]: modprobe@drm.service: Deactivated successfully.
[    4.226001] systemd[1]: Finished Load Kernel Module drm.
root@verdin-imx8mp-15445880:~# 



root@verdin-imx8mp-15445880:~# cat /boot/overlays.txt
fdt_overlays=verdin-imx8mp_dsi-to-hdmi_overlay.dtbo

root@verdin-imx8mp-15445880:~# ls /boot/overlays/
verdin-imx8mp_verdin-imx8mp_dsi-to-hdmi_overlay.dtbo                              verdin-imx8mp_panel-cap-touch-10inch-dsi_overlay.dtbo
verdin-imx8mp_dsi-to-lvds_panel-cap-touch-10inch-lvds_overlay.dtbo  
verdin-imx8mp_panel-cap-touch-10inch-lvds_overlay.dtbo
verdin-imx8mp_nau8822-btl_overlay.dtbo                             
verdin-imx8mp_panel-cap-touch-7inch-dsi_overlay.dtbo
verdin-imx8mp_ov5640-27mhz_overlay.dtbo                            
verdin-imx8mp_spidev_overlay.dtboverdin-imx8mp_ov5640_overlay.dtbo

root@verdin-imx8mp-15445880:~# ls /sys/class/drm/version 
.ash_history      .cache/           .ssh/             frame.raw         gstreamer-local/
root@verdin-imx8mp-15445880:~# ls /sys/class/drm/version 

@lucas_az.tx I have solved the issue, Latest kernel modules was not there which confused me :melting_face:

Hi @elgin!

I’m glad to know that you solved it.

Best regards.

1 Like