On 1 November 2012 20:11, Mark Brown broonie@opensource.wolfsonmicro.com wrote:
On Wed, Oct 31, 2012 at 04:50:50PM +0800, Dong Aisheng wrote:
On 31 October 2012 07:07, Fabio Estevam festevam@gmail.com wrote:
* write data to saif data register to trigger
* the transfer.
* For 24-bit format the 32-bit FIFO register stores
* only one channel, so we need to write twice. */ __raw_writel(0, saif->base + SAIF_DATA);
__raw_writel(0, saif->base + SAIF_DATA);
This probably could a workaround for the customer, but i'm not sure Mark could accept it since the code is a bit confusing. (Mark, what's your suggestion on this?)
I'm not really concerned about the code, the comment is fairly clear except that it'd be good to mention that this is safe for data sizes other than 24 bit. It's certainly really much more confusing than the existing code and if it works better that's obviously good!
If you're fine with it, i'm also ok. This probably is a suitable solution for now since finding out the strange IC behavior of this issue may need much longer time without IC people's help and it's still not on the plan.
Fabio, You can update the patch with Mark's suggestion and resend it.
Regards Dong Aisheng