In case the dmic had previous been run and stopped, make sure active_buf_idx is initialized to 0 when setting up dma on start, otherwise the dma callback can return the wrong buffer. Also purge the rx_queue before freeing the slab buffers, to minimize risk of any async read request getting back a slab buffer that is freed. Signed-off-by: Mike J. Chen <mjchen@google.com> |
||
|---|---|---|
| .. | ||
| mic_privacy/intel | ||
| CMakeLists.txt | ||
| codec_shell.c | ||
| cs43l22.c | ||
| dmic_ambiq_pdm.c | ||
| dmic_mcux.c | ||
| dmic_nrfx_pdm.c | ||
| Kconfig | ||
| Kconfig.cs43l22 | ||
| Kconfig.dmic_ambiq_pdm | ||
| Kconfig.dmic_mcux | ||
| Kconfig.dmic_pdm_nrfx | ||
| Kconfig.max98091 | ||
| Kconfig.mpxxdtyy | ||
| Kconfig.pcm1681 | ||
| Kconfig.tas6422dac | ||
| Kconfig.tlv320aic3110 | ||
| Kconfig.tlv320dac | ||
| Kconfig.wm8904 | ||
| Kconfig.wm8962 | ||
| max98091.c | ||
| max98091.h | ||
| mpxxdtyy-i2s.c | ||
| mpxxdtyy.c | ||
| mpxxdtyy.h | ||
| pcm1681.c | ||
| pcm1681.h | ||
| tas6422dac.c | ||
| tas6422dac.h | ||
| tlv320aic3110.c | ||
| tlv320aic3110.h | ||
| tlv320dac310x.c | ||
| tlv320dac310x.h | ||
| wm8904.c | ||
| wm8904.h | ||
| wm8962.c | ||
| wm8962.h | ||