Skip to content

Commit a1d3217

Browse files
eurofunlgirdwood
authored andcommitted
SAI: fix DSP_A/B frame sync pulse
SAI can be configured for a one bclk wide frame sync pulse by setting CR4 SYWD to 0. The REG_SAI_CR4_SYWD() macro subtracts 1 from its argument which resulted in bad things happening. So use 1 as correct macro argument. Signed-off-by: Alexander Boehm <aboehm@eurofunk.com>
1 parent 0ba64e9 commit a1d3217

1 file changed

Lines changed: 2 additions & 2 deletions

File tree

src/drivers/imx/sai.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -284,15 +284,15 @@ static inline int sai_set_config(struct dai *dai, struct ipc_config_dai *common_
284284
*/
285285
val_cr2 |= REG_SAI_CR2_BCP;
286286
val_cr4 |= REG_SAI_CR4_FSE;
287-
val_cr4 |= REG_SAI_CR4_SYWD(0U);
287+
val_cr4 |= REG_SAI_CR4_SYWD(1U);
288288
break;
289289
case SOF_DAI_FMT_DSP_B:
290290
/*
291291
* Frame high, one bit for frame sync,
292292
* frame sync asserts with the first bit of the frame.
293293
*/
294294
val_cr2 |= REG_SAI_CR2_BCP;
295-
val_cr4 |= REG_SAI_CR4_SYWD(0U);
295+
val_cr4 |= REG_SAI_CR4_SYWD(1U);
296296
break;
297297
case SOF_DAI_FMT_PDM:
298298
val_cr2 |= REG_SAI_CR2_BCP;

0 commit comments

Comments
 (0)