Thanks Jimmychan for your answer.
I'm using version 4.14.98_2.0.0_ga-stable from github.com/TechNexion/linux-tn-imx.git.
The code you pointed out to me is similar to what I am using.
I see in fsl_sai.c that there is some parameters (undocummented) that can be configured in the devicetree, fsl,sai-multi-lane and fsl,dataline.
In fsl_sai_hw_params(), when fsl,sai-multi-lane is set in the devicetree, the FIFO combine mode is disabled and the DMA seems to be configured differently.
What are these parameters for exactly?
In my case, the number of channels is set to 8 and the number of slots is set to 2. fsl_sai_hw_params() correctly determines the number of pins (8/2 = 4) and correctly configures the channel mask in TCR3_TCE.
The FIFO combine mode is also enabled on FIFO writes (by software).
Like I said in my first post, I'm using speaker-test to playback 8 channels, but with the FIFO combine mode enabled, the audio samples from the different channels are distributed like illustrated bellow:

I would like to find a way to have the audio samples distributed like:

Thanks