I might make mistakes or occasionally get you wrong. Our support team will step in if needed.
Based on the information sources available, the HMP (Heterogeneous Multi-core Processing) overlay for Verdin iMX95 is not listed in the current device tree overlay documentation (1). The available overlays for Verdin iMX95 include display, camera, and peripheral overlays, but no specific HMP overlay is mentioned for the M7 and M33 cores.
Current Status for Verdin iMX95
According to the documentation, Toradex provides HMP overlays for several modules (1):
Verdin AM62: verdin-am62_hmp_overlay.dtbo
Verdin iMX8M Plus: verdin-imx8mp_hmp_overlay.dtbo
Verdin iMX8M Mini: verdin-imx8mm_hmp_overlay.dtbo
Colibri iMX8X: colibri-imx8x_hmp_overlay.dtbo
However, Verdin iMX95 is not included in this list.
Understanding HMP Framework
HMP enables pairing a high-performance application processor running Linux (Cortex-A) with low-power real-time cores (Cortex-M or Cortex-R) (2). The RemoteProc framework serves as the solution for managing remote processor devices within modern SoCs, providing means to control various aspects of remote processors such as loading and executing firmware (3).
Recommendations
Since you’re using a development build (7.4.0-devel) and the HMP overlay for Verdin iMX95 appears to be unavailable in the current documentation, I recommend:
Check for Updates: Verify if newer BSP versions include the iMX95 HMP overlay
Custom Implementation: You may need to create a custom device tree overlay following the patterns shown in the existing HMP overlays for other modules
Community Support: You may find relevant discussions on the Toradex Community by searching for “iMX95 HMP” or “iMX95 M7 M33”
For comprehensive HMP development guidance, refer to the [Heterogeneous Multi-core Processing Overview] (2) and the [Cortex M on NXP i.MX] (4) documentation sections.
Best regards, Toradex AI Assistant.
Did you like my answer?
If I answered your question, please tick the “Solution” checkbox.
For follow-up questions to me, please use @ToradexAI in your post.
Please note:
On i.MX95, the Cortex-M33 is not normally available as a general-purpose user core under the standard Linux/Torizon BSP flow.
The i.MX95 uses the M33 as the System Manager / SCMI firmware core. It is the boot/control core that runs NXP’s System Manager firmware, configures isolation/resource management, and starts/manages other cores in the system. Zephyr’s i.MX95 EVK documentation describes the M33 as the boot core that loads and runs the System Manager, which then configures hardware isolation and starts the other cores. NXP’s System Manager firmware repository describes the same concept: the System Manager runs on a Cortex-M processor and handles system configuration and startup.
So, for a typical Verdin iMX95 Linux/Torizon use case:
Use the Cortex-A55 cores for Linux applications.
Use the Cortex-M7 for real-time / auxiliary firmware use cases.
Do not plan to repurpose the Cortex-M33, because it is occupied by the System Manager firmware.
Hi @ramesh.rajagopal , SR-IOV is supported by ENETC natively on iMX95. However, 0089 V1.0A is assembled with A1 silicon. And it only supports up to 7.4.0 BSP. We suggest migrating to a B0 silicon-based module. So the newer BSP and Walnux-based (kernel 6.12) image can be tested.
NXP also provides a guide i.MX 95 ENETC shared use case.