Hi all,
I using SSI as i2s-master then follow the step as below to get record data:
start playback in background ==> start record in foreground
==> end of playback ==> end of record
The record will force to end following end of playback even though I don't want to stop recording.
I have changed SSI as ssi-asynchronous mode to solve force stop record issue,
But it will get noise when recording first time.
Is there something I missed to set SSI correctly ?
已解决! 转到解答。
Hi kenny
regarding ssi i2s-master there is some limitation mentioned
in sect.61.8.1.4 I2S Mode i.MX6DQ Reference Manual
http://cache.freescale.com/files/32bit/doc/ref_manual/IMX6DQRM.pdf
When I2S modes are entered (I2S master (01) or I2S slave (10)), the following settings
are recommended:
• Sync mode (SSI_SCR[4] =1)
probably one can try other modes
Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
Hi igor,
My solution for capture is let it work as synchronous mode if not enable playback.
The SSI will work in asynchronous mode if playback & capture simultaneously,
but need to clear RXDIR and set SYN.
Thanks,
Kenny
Hi igor,
Many thanks for your kindly reply.
Indeed, it's relate to SSI_SCR[4], the noise will disappear if I modify code as below:
static int _fsl_ssi_set_dai_fmt(struct fsl_ssi_private *ssi_private,
unsigned int fmt)
{
/*if (ssi_private->cpu_dai_drv.symmetric_rates) {*/ /* Do it anyway */
/* Need to clear RXDIR when using SYNC mode */
srcr &= ~CCSR_SSI_SRCR_RXDIR;
scr |= CCSR_SSI_SCR_SYN;
/*}*/
}
But, record will fail if not enable playback in the first time.
Have a nice day!
Kenny
iisues for ssi simultaneous playback and capture may occur due to ssi limitations
described in Table 46-40. SSI Control Bits Requiring SSI to be Disabled Before Change
i.MX35 Reference Manual
http://www.freescale.com/files/dsp/doc/ref_manual/IMX35RM.pdf
also please check comments in linux/sound/soc/fsl/fsl_ssi.c
/**
* fsl_ssi_hw_params
Best regards
igor
Hi kenny
regarding ssi i2s-master there is some limitation mentioned
in sect.61.8.1.4 I2S Mode i.MX6DQ Reference Manual
http://cache.freescale.com/files/32bit/doc/ref_manual/IMX6DQRM.pdf
When I2S modes are entered (I2S master (01) or I2S slave (10)), the following settings
are recommended:
• Sync mode (SSI_SCR[4] =1)
probably one can try other modes
Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------