I am working with the imx8m plus. I need to create a M7 program that uses SAI3 and configure Linux to ignore that SAI. I can run the SAI example interrupt_transfer program directly from u-boot (boards/evkmimx8mp/driver_examples/sai/interrupt_transfer) using:
load mmc 0 007E0000 sai_interrupt_transfer.bin
bootaux 007E0000
After I run bootaux I can use a logic analyzer to see the SAI TX_DATA0 output and TX_BCLK output. The TX_BCLK output runs continuously as expected.
However, after I start Linux then either the M7 program or Linux will just stop/hang and the TX_BCLK signal stops. I have configured the Linux device tree to disable sai3 and I disabled the pin iomuxes for the pins I am watching. So, besides disabling those two items in the device tree is there anything else I need to disable. Could it be a conflict between the M7 and A53 cores related to the audio master clock or SAI root clock? How would I configure or troubleshoot this?