4 Mar
2009
4 Mar
'09
9:39 p.m.
On Wed, Mar 04, 2009 at 08:33:52PM +0000, Mark Brown wrote:
In pxa_ssp_set_dai_fmt(), don't modify the SSP registers in case the stream is already running. With that patch applied, loop-thru tests like 'acrecord -f cd | aplay -f cd' succeed.
- /* we can only change the settings if the port is not in use */
- if (ssp_read_reg(ssp, SSCR0) & SSCR0_SSE)
return 0;
I'd expect an error to be reported here - if we needed to change the settings and can't things could go wrong. Ideally it'd check to see if the DAI format was being changed and only error if it was.
In my tests, pxa_ssp_set_dai_fmt() was simply called twice, once for the input, once for the ouput. Hence I believed a silent exit in such a case fine. Does 'arecord -f cd | aplay -f cd' work for you?
Daniel