ASoC: blackfin: use samples to set silence
The third parameter for snd_pcm_format_set_silence needs the number of samples instead of sample bytes. Signed-off-by: Scott Jiang <scott.jiang.linux@gmail.com> Signed-off-by: Mark Brown <broonie@linaro.org> Cc: stable@vger.kernel.org
This commit is contained in:
parent
7171511eae
commit
30443408fd
|
@ -290,19 +290,19 @@ static int bf5xx_pcm_silence(struct snd_pcm_substream *substream,
|
|||
unsigned int sample_size = runtime->sample_bits / 8;
|
||||
void *buf = runtime->dma_area;
|
||||
struct bf5xx_i2s_pcm_data *dma_data;
|
||||
unsigned int offset, size;
|
||||
unsigned int offset, samples;
|
||||
|
||||
dma_data = snd_soc_dai_get_dma_data(rtd->cpu_dai, substream);
|
||||
|
||||
if (dma_data->tdm_mode) {
|
||||
offset = pos * 8 * sample_size;
|
||||
size = count * 8 * sample_size;
|
||||
samples = count * 8;
|
||||
} else {
|
||||
offset = frames_to_bytes(runtime, pos);
|
||||
size = frames_to_bytes(runtime, count);
|
||||
samples = count * runtime->channels;
|
||||
}
|
||||
|
||||
snd_pcm_format_set_silence(runtime->format, buf + offset, size);
|
||||
snd_pcm_format_set_silence(runtime->format, buf + offset, samples);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue