@Sanket_Parekh I am using imx8mn with builtin M7. I personally do not use the M7 for now, but my bsp is based on the imx8mn DDR3 EVK bsp. I am not as familiar with using the M7, but it seems that EVK code is assigning SAI3, GPT1, and UART4 to M7. I see this in the imx-boot code:
+ mcu_rdc {
+ compatible = "imx8m,mcu_rdc";
+ /* rdc config when MCU starts
+ * master
+ * SDMA3p --> domain 1
+ * SDMA3b --> domian 1
+ * SDMA3_SPBA2 --> domian 1
+ * peripheral:
+ * SAI3 --> Only Domian 1 can access
+ * UART4 --> Only Domian 1 can access
+ * GPT1 --> Only Domian 1 can access
+ * memory:
+ * no MRC should be configured when GPU3D is disabled.
+ * end.
+ */
+ start-config = <
+ RDC_MDA RDC_MDA_SDMA3p DID1 0x0 0x0
+ RDC_MDA RDC_MDA_SDMA3b DID1 0x0 0x0
+ RDC_MDA RDC_MDA_SDMA3_SPBA2 DID1 0x0 0x0
+ RDC_PDAP RDC_PDAP_SAI3 PDAP_D1_ACCESS 0x0 0x0
+ RDC_PDAP RDC_PDAP_UART4 PDAP_D1_ACCESS 0x0 0x0
+ RDC_PDAP RDC_PDAP_GPT1 PDAP_D1_ACCESS 0x0 0x0
+ 0x0 0x0 0x0 0x0 0x0
+ >;
+ /* rdc config when MCU stops
+ * memory:
+ * no MRC should be configured when GPU3D is disabled.
+ * end.
+ */
+ stop-config = <
+ 0x0 0x0 0x0 0x0 0x0
+ >;
+ };
In the machine.conf, we are loading the following firmware in M7:
WKS_FILE_DEPENDS:append = " imx-m7-demos"
IMAGE_BOOT_FILES += " \
imx8mnddr3l_m7_TCM_hello_world.bin \
imx8mnddr3l_m7_TCM_rpmsg_lite_pingpong_rtos_linux_remote.bin \
imx8mnddr3l_m7_TCM_rpmsg_lite_str_echo_rtos.bin \
imx8mnddr3l_m7_TCM_sai_low_power_audio.bin \
"
It doesn't seem to me that the M7 is using SPI.