Hello,
I am using the i.MX8M Quad (i.MX8MQ) as the processor and running Linux kernel version 6.6.36.
I have connected a codec to the SAI1 interface, where the i.MX8MQ SAI1 is configured as master, and the codec is configured as slave.
I want the MCLK (master clock) to remain active after the module is loaded and until the device shuts down. However, currently, the MCLK only becomes active when I run "aplay" or "arecord".
I understand this behavior is due to the DAPM (Dynamic Audio Power Management) system.
My question is: Is it possible to keep the MCLK continuously active without breaking the DAPM structure?
The reason I need the MCLK to always be active is that, in slave mode, my codec uses the MCLK as the source for both the ADC and DAC clocks. Also, my codec has multiple ASI interfaces: one is connected to the i.MX8MQ, and the other is connected to a modem.
Therefore, I need the ADC and DAC clocks to always be running, so I can send and receive audio data from the modem at any time, regardless of whether an "aplay" or "arecord" is active.
Thanks in advance for your support.
Hi Salas,
“Thank you for your response. However, I cannot access the link you shared — I receive a 'You do not have sufficient privileges' message. Could you please provide the solution or summarize the key steps here in your reply?”
Best regards,
Ayşe
Hello @ayse-yilmaz
I hope you are doing very well.
Please refer to this Community post:
https://community.nxp.com/t5/iMX-and-Vybrid-Support/How-to-keep-MCLK-always-on-for-i-MX/ta-p/1296720
There is described How to keep MCLK always on for i.MX.
Best regards,
Salas.