i.MX95 EVK (19x19) – No M7 output when running FlexSPI octal polling example Hello NXP Support Team, I am working with an i.MX95 19x19 LPDDR5 EVK and would like some guidance on running an M7 FlexSPI example on real hardware. Setup and current status Board: i.MX95 19x19 LPDDR5 EVK Yocto: latest BSP (Linux 6.12.34, BSP 2.2.0) Boot media: WIC image flashed to hardware Cores: M33 (SM): runs correctly A55 (Linux): boots and runs correctly M7: works when using the default power-mode-switch example Using the standard Yocto WIC image, the following M7 firmware runs as expected: imx95-19x19-evk_m7_TCM_power_mode_switch.bin What I attempted I wanted to try the MCUXpresso SDK M7 example: FlexSPI Octal Polling Transfer (CM7): https://mcuxpresso.nxp.com/mcuxsdk/latest/html/examples/driver_examples/flexspi/octal/polling_transfer/readme.html To test this on hardware, I replaced the default M7 binary in the Yocto deploy directory: ```` cp flexspi_octal_polling_transfer_cm7.bin \ build-imx95evk/tmp/deploy/images/imx95evk/mcore-demos/imx95-19x19-evk_m7_TCM_power_mode_switch.bin ``` I then rebuilt the WIC image and flashed it to the board. Observed behavior M33 and A55 still boot and run correctly No output on the M7 UART No visible indication that the M7 example is running Questions Is this approach of replacing the M7 binary in the Yocto WIC image valid for running an M7 SDK example? Does the FlexSPI Octal Polling Transfer example require: A specific memory placement (e.g., OCRAM vs TCM)? A specific boot or power configuration that differs from the power mode switch example? Is additional configuration needed in Yocto or device tree to support this example? What is the recommended way to flash and run an M7 SDK example on i.MX95 EVK when no debug probe is available? Are there known limitations or prerequisites for running FlexSPI examples on i.MX95 when Linux and M33 are also active? Any guidance on the correct and supported flow for running M7 standalone examples on i.MX95 alongside Linux would be greatly appreciated. Thank you for your support. Re: i.MX95 EVK (19x19) – No M7 output when running FlexSPI octal polling example Thanks for the reply, I have updated the build-imx95evk/tmp/work/imx95evk-poky-linux/imx-system-manager/2025q4/git/configs/mx95evk.cfg and rebuilt and tried booting from the new wic image. I still don't see anything on the M7 UART terminal (I can see SM output and Linux booting on other two terminals) Is my approach of loading the M7 binary correct? Best Regards Sami Re: i.MX95 EVK (19x19) – No M7 output when running FlexSPI octal polling example Hi @s153022
The previous modifications are based on rpmsg variant. You need to modify configs/mx95evk.cfg if you are not using rpmsg variant. Best Regards, Zhiming Re: i.MX95 EVK (19x19) – No M7 output when running FlexSPI octal polling example Thanks for your reply. I have updated the following configuration file: build-imx95evk/tmp/work/imx95evk-poky-linux/imx-system-manager/2025q4/git/configs/other/mx95evkrpmsg.cfg. I have also copied flexspi_octal_polling_transfer_cm7.bin and overwritten the following three files: tmp/work/imx95evk-poky-linux/imx-boot/1.0/git/iMX95/m7_image.bin tmp/deploy/images/imx95evk/imx-boot-tools/imx95-19x19-evk_m7_TCM_power_mode_switch.bin tmp/deploy/images/imx95evk/mcore-demos/imx95-19x19-evk_m7_TCM_power_mode_switch.bin After that, I rebuilt the WIC image using: bitbake fsl-image-full When booting from the SD card. I can see the System Manager and Linux booting on two terminals. However , there is no output from the M7 on the third terminal. Best Regards Re: i.MX95 EVK (19x19) – No M7 output when running FlexSPI octal polling example Hi @s153022
You need to move FLEXSPI1 from A55 to M7 in system manager.
Here is mofications based on i.MX95EVK rpmsg variant in imx-sm.
diff --git a/configs/other/mx95evkrpmsg.cfg b/configs/other/mx95evkrpmsg.cfg
index 079a887..9c01028 100755
--- a/configs/other/mx95evkrpmsg.cfg
+++ b/configs/other/mx95evkrpmsg.cfg
@@ -440,12 +440,26 @@ SYSCTR_RD READONLY
TSTMR2 OWNER
V2X_SHE1 OWNER
WDOG5 OWNER
+FLEXSPI1 OWNER
# Pins
# LPUART3 pins
PIN_GPIO_IO14 OWNER
PIN_GPIO_IO15 OWNER
+PIN_XSPI1_DATA0 OWNER
+PIN_XSPI1_DATA1 OWNER
+PIN_XSPI1_DATA2 OWNER
+PIN_XSPI1_DATA3 OWNER
+PIN_XSPI1_DATA4 OWNER
+PIN_XSPI1_DATA5 OWNER
+PIN_XSPI1_DATA6 OWNER
+PIN_XSPI1_DATA7 OWNER
+PIN_XSPI1_DQS OWNER
+PIN_XSPI1_SCLK OWNER
+PIN_XSPI1_SS0_B OWNER
+PIN_XSPI1_SS1_B OWNER
+
# SAI3 pins
PIN_GPIO_IO16 OWNER
@@ -473,6 +487,7 @@ PIN_I2C2_SCL OWNER
PIN_I2C2_SDA OWNER
# Memory
+FLEXSPI1_MEM EXEC, begin=0x000000000, end=0x0FFFFFFFF
M7MIX DATA, begin=0x020380000, end=0x02047FFFF
M7MIX DATA, begin=0x04A060000, end=0x04A09FFFF
DDR EXEC, begin=0x080000000, end=0x089FFFFFF
@@ -730,7 +745,7 @@ EDMA3_CH60_61 OWNER
EDMA3_CH62_63 OWNER
FLEXIO1 OWNER
FLEXIO2 OWNER
-FLEXSPI1 OWNER
+// FLEXSPI1 OWNER
FSB READONLY
GIC OWNER
GPIO2 OWNER
@@ -994,22 +1009,22 @@ PIN_SD3_DATA2 OWNER
PIN_SD3_DATA3 OWNER
PIN_UART1_RXD OWNER, test
PIN_UART1_TXD OWNER
-PIN_XSPI1_DATA0 OWNER
-PIN_XSPI1_DATA1 OWNER
-PIN_XSPI1_DATA2 OWNER
-PIN_XSPI1_DATA3 OWNER
-PIN_XSPI1_DATA4 OWNER
-PIN_XSPI1_DATA5 OWNER
-PIN_XSPI1_DATA6 OWNER
-PIN_XSPI1_DATA7 OWNER
-PIN_XSPI1_DQS OWNER
-PIN_XSPI1_SCLK OWNER
-PIN_XSPI1_SS0_B OWNER
-PIN_XSPI1_SS1_B OWNER
+// PIN_XSPI1_DATA0 OWNER
+// PIN_XSPI1_DATA1 OWNER
+// PIN_XSPI1_DATA2 OWNER
+// PIN_XSPI1_DATA3 OWNER
+// PIN_XSPI1_DATA4 OWNER
+// PIN_XSPI1_DATA5 OWNER
+// PIN_XSPI1_DATA6 OWNER
+// PIN_XSPI1_DATA7 OWNER
+// PIN_XSPI1_DQS OWNER
+// PIN_XSPI1_SCLK OWNER
+// PIN_XSPI1_SS0_B OWNER
+// PIN_XSPI1_SS1_B OWNER
# Memory
-FLEXSPI1_MEM EXEC, begin=0x000000000, end=0x0FFFFFFFF
+// FLEXSPI1_MEM EXEC, begin=0x000000000, end=0x0FFFFFFFF
OCRAM_C EXEC, begin=0x001000000, end=0x001017FFF
OCRAM EXEC, begin=0x0204C0000, size=96K
GPU DATA, begin=0x04D900000, end=0x04DD7FFFF
查看全文