IMX8MM how to playback 24bit I2S with SAI

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

IMX8MM how to playback 24bit I2S with SAI

338 Views
Brady
Contributor I

Hi,

Please help me, i am blocked on I2S 24bit playback with SAI. 

I  can say 16bit and 32bit no problem, and I try to playback 24bit via 32bit format shift 8 bits, then i have probelms. I think the confirguration should be based on there.

Brady_0-1655295612779.png

and the register could be "SAI Transmit Configuration 5 Register (TCR5)"

Then I try to change the fsl_sai.c, unfortunately do not work, the LRCLK and data gone if i change slot width to 32 and word_width to 7 or 31. 

    val_cr5 |= FSL_SAI_CR5_WNW(slot_width);
    val_cr5 |= FSL_SAI_CR5_W0W(slot_width);

    if (sai->is_lsb_first || sai->is_dsd)
        val_cr5 |= FSL_SAI_CR5_FBT(0);
    else
        val_cr5 |= FSL_SAI_CR5_FBT(word_width - 1);

 

Please help me on how to configure 8 bit shift to support 24bit. 

big big big thanks. 

0 Kudos
1 Reply

217 Views
ThKe93
Contributor II

Don't know if this topic is still active, but I had a similar issue and could solve it by changing fsl_sai.c (W0W and SYWD)

https://community.nxp.com/t5/i-MX-Processors/Integrating-audio-codec-MAX98089-on-i-MX8M-Plus/td-p/16...

 

Best regards

Thomas

0 Kudos