PM regression in next

Kuninori Morimoto kuninori.morimoto.gx at renesas.com
Mon Jan 15 16:38:33 PST 2018


Hi Mark, Tony

> From tony Mon Sep 17 00:00:00 2001
> From: Tony Lindgren <tony at atomide.com>
> Date: Fri, 12 Jan 2018 10:24:36 -0800
> Subject: [PATCH] ASoC: Fix twl4030 and 6040 regression by adding back read
>  and write
> 
> Commit 3bb0f7c31b1a ("ASoC: don't use snd_soc_write/read on twl4030")
> caused regressions for both twl4030 and twl6040 as it assumes the
> ASoC driver is using regmap. As a side effect, this also causes a
> considerable increase in idle power consumption omap3 boards using
> twl4030 as the PMIC.
> 
> This is because the removal of read and write function pointers
> causes some of the ASoC IO functions to not do anything. For example,
> snd_soc_register_card() calls snd_soc_dapm_new_widgets() that calls
> snd_soc_codec_drv_read() that now does nothing.
> 
> A long term solution suggested by Mark Brown <broonie at kernel.org>
> is to make the twl drivers use regmap by adding a call to
> snd_soc_codec_set_regmap(). This however needs more consideration
> as currently the driver internal reads do caching and we would have
> both regmap access and internal read/write access accessing the same
> hardware registers.
> 
> So to fix the regression, let's just do a partial revert adding back
> the read and write function pointers. Note that other non-regmap
> ASoC drivers may need similar patches.
> 
> Fixes: 3bb0f7c31b1a ("ASoC: don't use snd_soc_write/read on twl4030")
> Fixes: 93a00c467fe9 ("ASoC: don't use snd_soc_write/read on twl6040")
> Cc: Kuninori Morimoto <kuninori.morimoto.gx at renesas.com>
> Cc: Peter Ujfalusi <peter.ujfalusi at ti.com>
> Signed-off-by: Tony Lindgren <tony at atomide.com>
> ---

Acked-by: Kuninori Morimoto <kuninori.morimoto.gx at renesas.com>

Mark
I think all other driver needs .read/.write back.
I will post it.
And .read/.write is supported on codec driver side only now,
so, we need it to component side too.
I will post it too.

Best regards
---
Kuninori Morimoto



More information about the linux-arm-kernel mailing list