ASoC: rt5514: Add the sanity checks of the buffer related address

The patch add the sanity checks of the buffer related address to make sure
the addresses are valid.

Signed-off-by: Oder Chiou <oder_chiou@realtek.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
oder_chiou@realtek.com 2017-07-31 13:47:42 +08:00 committed by Mark Brown
parent c2bf252536
commit 818010dac0
1 changed files with 6 additions and 1 deletions

View File

@ -173,9 +173,14 @@ static irqreturn_t rt5514_spi_irq(int irq, void *data)
rt5514_dsp->buf_rp = buf[0] | buf[1] << 8 | buf[2] << 16 |
buf[3] << 24;
if (rt5514_dsp->buf_rp % 8)
rt5514_dsp->buf_rp = (rt5514_dsp->buf_rp / 8) * 8;
rt5514_dsp->buf_size = rt5514_dsp->buf_limit - rt5514_dsp->buf_base;
schedule_delayed_work(&rt5514_dsp->copy_work, 0);
if (rt5514_dsp->buf_base && rt5514_dsp->buf_limit &&
rt5514_dsp->buf_rp && rt5514_dsp->buf_size)
schedule_delayed_work(&rt5514_dsp->copy_work, 0);
return IRQ_HANDLED;
}