mbox series

[0/4] ASoC: qcom: fixes for Qualcomm codecs and q6apm

Message ID 20220126113549.8853-1-srinivas.kandagatla@linaro.org (mailing list archive)
Headers show
Series ASoC: qcom: fixes for Qualcomm codecs and q6apm | expand

Message

Srinivas Kandagatla Jan. 26, 2022, 11:35 a.m. UTC
Hi Mark,

Some recent testing found few issues with wcd938x and lpass-tx codec drivers.
WCD938x was accessing array out of boundaries resulting in corruption and
system crashes along with not handling kcontrol put return values correctly
and rx-macro had incorrect sidetone registers offsets. One final fix in q6apm
to add a check if graph started before stopping it.


Thanks,
srini

Srinivas Kandagatla (4):
  ASoC: codecs: wcd938x: fix incorrect used of portid
  ASoC: codecs: lpass-rx-macro: fix sidetone register offsets
  ASoC: codecs: wcd938x: fix return value of mixer put function
  ASoC: qdsp6: q6apm-dai: only stop graphs that are started

 sound/soc/codecs/lpass-rx-macro.c |  8 ++++----
 sound/soc/codecs/wcd938x.c        | 31 +++++++++++++++++--------------
 sound/soc/qcom/qdsp6/q6apm-dai.c  |  7 +++++--
 3 files changed, 26 insertions(+), 20 deletions(-)

Comments

Mark Brown Jan. 26, 2022, 1:29 p.m. UTC | #1
On Wed, Jan 26, 2022 at 11:35:45AM +0000, Srinivas Kandagatla wrote:

> Some recent testing found few issues with wcd938x and lpass-tx codec drivers.
> WCD938x was accessing array out of boundaries resulting in corruption and
> system crashes along with not handling kcontrol put return values correctly
> and rx-macro had incorrect sidetone registers offsets. One final fix in q6apm
> to add a check if graph started before stopping it.

You probably want to run the new mixer kselftest on these devices,
including with the patch I posted the other day testing out of bounds
writes.  It doesn't cover change notifications yet, you might want to
set up some automation for that for whenever someone gets round to
adding coverage.
Srinivas Kandagatla Jan. 27, 2022, 10:20 a.m. UTC | #2
Thanks Mark,

On 26/01/2022 13:29, Mark Brown wrote:
> On Wed, Jan 26, 2022 at 11:35:45AM +0000, Srinivas Kandagatla wrote:
> 
>> Some recent testing found few issues with wcd938x and lpass-tx codec drivers.
>> WCD938x was accessing array out of boundaries resulting in corruption and
>> system crashes along with not handling kcontrol put return values correctly
>> and rx-macro had incorrect sidetone registers offsets. One final fix in q6apm
>> to add a check if graph started before stopping it.
> 
> You probably want to run the new mixer kselftest on these devices,

Yes, this is really good test indeed already found few issues with 
existing mixers. I will test this on all the Qualcomm boards and get 
back with some fixes.

I also made some improvements to the mixer test to not keep writing new 
values to controls that have returned -EPERM in cases like where put 
callback is NULL, In my case I have a Impedance value read only control 
whose value range is MAX_INT.

--srini

> including with the patch I posted the other day testing out of bounds
> writes.  It doesn't cover change notifications yet, you might want to
> set up some automation for that for whenever someone gets round to
> adding coverage.
Mark Brown Jan. 28, 2022, 3:58 p.m. UTC | #3
On Wed, 26 Jan 2022 11:35:45 +0000, Srinivas Kandagatla wrote:
> Some recent testing found few issues with wcd938x and lpass-tx codec drivers.
> WCD938x was accessing array out of boundaries resulting in corruption and
> system crashes along with not handling kcontrol put return values correctly
> and rx-macro had incorrect sidetone registers offsets. One final fix in q6apm
> to add a check if graph started before stopping it.
> 
> 
> [...]

Applied to

   https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-linus

Thanks!

[1/4] ASoC: codecs: wcd938x: fix incorrect used of portid
      commit: c5c1546a654f613e291a7c5d6f3660fc1eb6d0c7
[2/4] ASoC: codecs: lpass-rx-macro: fix sidetone register offsets
      commit: fca041a3ab70a099a6d5519ecb689b6279bd04f3
[3/4] ASoC: codecs: wcd938x: fix return value of mixer put function
      commit: bd2347fd67d8da0fa76296507cc556da0a233bcb
[4/4] ASoC: qdsp6: q6apm-dai: only stop graphs that are started
      commit: 8f2e5c65ec7534cce6d315fccf2c3aef023f68f0

All being well this means that it will be integrated into the linux-next
tree (usually sometime in the next 24 hours) and sent to Linus during
the next merge window (or sooner if it is a bug fix), however if
problems are discovered then the patch may be dropped or reverted.

You may get further e-mails resulting from automated or manual testing
and review of the tree, please engage with people reporting problems and
send followup patches addressing any issues that are reported if needed.

If any updates are required or you are submitting further changes they
should be sent as incremental updates against current git, existing
patches will not be replaced.

Please add any relevant lists and maintainers to the CCs when replying
to this mail.

Thanks,
Mark