Verdin I2C-1 devices

we are using the Verdin iMX8M Mini module in combination with our own board. In the imx8mm-verdin.dtsi (Kernel 5.15-2.2.x) the following slaves are listed for Verdin I2C 1 (&i2c4). GPIO-Expander 0x21, DSI-to-LVDS bridge 0x2c, Current/Power Monitor 0x40, MIPI to HDMI Bridge 0x48, Touchscreen Controller 0x4a, Temperature sensor 0x4f, EEPROM display adapter 0x50, EEPROM board 0x57.

On the module (DL 1GB V1.1B) I can only find the MIPI to HDMI Bridge under 0x48. Are the other slaves intended for the carrier board?
I also find a dummy device at address 0x49 which I cannot explain.

Hi, I’m the Toradex AI Assistant. I’m in early beta, and I would appreciate your feedback.
The Toradex Support team will follow up with you shortly!

Did you like my answer?

:+1: :-1:


In the context of the Verdin iMX8M Mini module and its I2C interface, the devices you’ve listed (GPIO-Expander at 0x21, DSI-to-LVDS bridge at 0x2c, Current/Power Monitor at 0x40, MIPI to HDMI Bridge at 0x48, Touchscreen Controller at 0x4a, Temperature sensor at 0x4f, EEPROM display adapter at 0x50, EEPROM board at 0x57) are indeed typically associated with the module and its ecosystem. However, their presence and functionality depend on the specific configuration of the carrier board and any connected peripherals.

The MIPI to HDMI Bridge at address 0x48 being the only device you can find suggests that your current setup primarily supports this interface, which is consistent with the use of an HDMI adapter or display. The absence of other devices could be due to several reasons:

  1. Carrier Board Design: Not all devices are necessarily present or enabled in every carrier board design. The carrier board must be designed to support these peripherals, including the necessary pull-up resistors on the I2C lines.

  2. Peripheral Connection: Some of these devices, like the DSI-to-LVDS bridge or the Touchscreen Controller, require specific peripherals (like displays) to be connected and properly configured to be detected.

  3. Software Configuration: The device tree (DTS) files define the hardware configuration, including which I2C devices are enabled. If the device tree does not enable these devices or if there’s a mismatch in the configuration, they might not be detected.

  4. Kernel Version and Patches: Ensure that your kernel version and any applied patches are compatible with the hardware and configuration you’re using. Sometimes, specific patches or kernel versions are required to support certain hardware features.

The dummy device at address 0x49 could be a result of several factors, including but not limited to, a reserved address by a connected device that’s not properly initialized or a placeholder for future expansions. It’s also possible that this address is being probed by the system for a known device that’s not present in your setup.

To troubleshoot and ensure the visibility of other I2C devices:

  • Verify the carrier board design and ensure it supports the peripherals you’re trying to use.
  • Check the connection and configuration of any external peripherals that should be present on the I2C bus.
  • Review and, if necessary, adjust the device tree

Please, also check if these links can help you solve your problem:

Dahlia Carrier Board | Toradex Developer Center.

Are the chips placed on the module mentioned above or are the definitions placeholders for the carrier boards?

Yes, all the I2C peripherals you listed are located on the carrier boards. By default, they are in a “Disabled” status, so you can easily enable the desired peripherals by loading the corresponding Device Tree Overlay. Please note that the Verdin MX8M Mini module has no I2C devices connected to the Verdin I2C 1 (&i2c4) interface. Check your carrier board schematic to identify the devices shown under the 0x48 and 0x49 addresses.