Age | Commit message (Collapse) | Author |
|
Previously update pointer in mix function according to dma callback,
which is not accurate for the callback maybe triggerred very late, that
cause the read pointer and write pointer point to same period, then
there is noise in output.
So get pointer directly from dma driver to avoid such issue.
Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
Reviewed-by: Peng Zhang <peng.zhang_8@nxp.com>
|
|
Previously doing mixing in softirq, the mixing causing too much
time ( period size is 512 sample, the time is about 2.5ms), so
move the mixing to workqueue to reduce irq loading
Use 4 period instead of pingpong buffer for leverage instant loading.
Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
Reviewed-by: Peng Zhang <peng.zhang_8@nxp.com>
|
|
ESAI mixer is for mixing the data from clients. There is
a ping-pong buffer in the mixer for storing the mixed data.
The period size is same as the period size in client (unit is
sample number).
Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
Reviewed-by: Peng Zhang <peng.zhang_8@nxp.com>
|