ASoC: wm_adsp: wm_coeff_{read|write}_control should use passed length
wm_coeff_{read|write}_control were using the control length rather than the length parameter passed to them. This is not causing any issues as the two values are currently always the same, but this needs fixed to allow future improvements. Signed-off-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com> Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
parent
7d00cd975a
commit
4f8ea6d759
|
@ -721,19 +721,19 @@ static int wm_coeff_write_control(struct wm_coeff_ctl *ctl,
|
|||
reg = ctl->alg_region.base + ctl->offset;
|
||||
reg = wm_adsp_region_to_reg(mem, reg);
|
||||
|
||||
scratch = kmemdup(buf, ctl->len, GFP_KERNEL | GFP_DMA);
|
||||
scratch = kmemdup(buf, len, GFP_KERNEL | GFP_DMA);
|
||||
if (!scratch)
|
||||
return -ENOMEM;
|
||||
|
||||
ret = regmap_raw_write(dsp->regmap, reg, scratch,
|
||||
ctl->len);
|
||||
len);
|
||||
if (ret) {
|
||||
adsp_err(dsp, "Failed to write %zu bytes to %x: %d\n",
|
||||
ctl->len, reg, ret);
|
||||
len, reg, ret);
|
||||
kfree(scratch);
|
||||
return ret;
|
||||
}
|
||||
adsp_dbg(dsp, "Wrote %zu bytes to %x\n", ctl->len, reg);
|
||||
adsp_dbg(dsp, "Wrote %zu bytes to %x\n", len, reg);
|
||||
|
||||
kfree(scratch);
|
||||
|
||||
|
@ -780,20 +780,20 @@ static int wm_coeff_read_control(struct wm_coeff_ctl *ctl,
|
|||
reg = ctl->alg_region.base + ctl->offset;
|
||||
reg = wm_adsp_region_to_reg(mem, reg);
|
||||
|
||||
scratch = kmalloc(ctl->len, GFP_KERNEL | GFP_DMA);
|
||||
scratch = kmalloc(len, GFP_KERNEL | GFP_DMA);
|
||||
if (!scratch)
|
||||
return -ENOMEM;
|
||||
|
||||
ret = regmap_raw_read(dsp->regmap, reg, scratch, ctl->len);
|
||||
ret = regmap_raw_read(dsp->regmap, reg, scratch, len);
|
||||
if (ret) {
|
||||
adsp_err(dsp, "Failed to read %zu bytes from %x: %d\n",
|
||||
ctl->len, reg, ret);
|
||||
kfree(scratch);
|
||||
return ret;
|
||||
}
|
||||
adsp_dbg(dsp, "Read %zu bytes from %x\n", ctl->len, reg);
|
||||
adsp_dbg(dsp, "Read %zu bytes from %x\n", len, reg);
|
||||
|
||||
memcpy(buf, scratch, ctl->len);
|
||||
memcpy(buf, scratch, len);
|
||||
kfree(scratch);
|
||||
|
||||
return 0;
|
||||
|
|
Loading…
Reference in New Issue