* [PATCH v3] ASoC: max98090: add shutdown callback for max98090
@ 2015-04-08 11:05 Caesar Wang
2015-04-08 17:09 ` Mark Brown
0 siblings, 1 reply; 2+ messages in thread
From: Caesar Wang @ 2015-04-08 11:05 UTC (permalink / raw)
To: Sonny Rao, Cheng-Yi Chiang, Heiko Stuebner, Mark Brown, zhengxing,
jay.xu
Cc: devicetree, dianders, dri-devel, linux-kernel, linux-rockchip,
linux-arm-kernel, Caesar Wang, Jaroslav Kysela, alsa-devel,
Takashi Iwai, Dylan Reid, Liam Girdwood, Lars-Peter Clausen,
Jarkko Nikula, Tushar Behera
To fix pop noise when shutdown,the pop noise during shutdown
is the pmic cutoff power of codec without any notice.
Signed-off-by: jay.xu <xjq@rock-chips.com>
Signed-off-by: zhengxing <zhengxing@rock-chips.com>
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
---
Changes in v3:
- modify the shutdown function before remove(..)
- fix the `Serien-cc`
Changes in v2:
- remove the dev_info(..)
- fix the comment style
- add the max98090_i2c_shutdown() in remove() fuction
sound/soc/codecs/max98090.c | 17 +++++++++++++++++
1 file changed, 17 insertions(+)
diff --git a/sound/soc/codecs/max98090.c b/sound/soc/codecs/max98090.c
index b112b1c..3e33ef2 100644
--- a/sound/soc/codecs/max98090.c
+++ b/sound/soc/codecs/max98090.c
@@ -2605,8 +2605,24 @@ err_enable:
return ret;
}
+static void max98090_i2c_shutdown(struct i2c_client *i2c)
+{
+ struct max98090_priv *max98090 = dev_get_drvdata(&i2c->dev);
+
+ /*
+ * Enable volume smoothing, disable zero cross. This will cause
+ * a quick 40ms ramp to mute on shutdown.
+ */
+ regmap_write(max98090->regmap,
+ M98090_REG_LEVEL_CONTROL, M98090_VSENN_MASK);
+ regmap_write(max98090->regmap,
+ M98090_REG_DEVICE_SHUTDOWN, 0x00);
+ msleep(40);
+}
+
static int max98090_i2c_remove(struct i2c_client *client)
{
+ max98090_i2c_shutdown(client);
snd_soc_unregister_codec(&client->dev);
return 0;
}
@@ -2696,6 +2712,7 @@ static struct i2c_driver max98090_i2c_driver = {
.acpi_match_table = ACPI_PTR(max98090_acpi_match),
},
.probe = max98090_i2c_probe,
+ .shutdown = max98090_i2c_shutdown,
.remove = max98090_i2c_remove,
.id_table = max98090_i2c_id,
};
--
1.9.1
^ permalink raw reply related [flat|nested] 2+ messages in thread* Re: [PATCH v3] ASoC: max98090: add shutdown callback for max98090
2015-04-08 11:05 [PATCH v3] ASoC: max98090: add shutdown callback for max98090 Caesar Wang
@ 2015-04-08 17:09 ` Mark Brown
0 siblings, 0 replies; 2+ messages in thread
From: Mark Brown @ 2015-04-08 17:09 UTC (permalink / raw)
To: Caesar Wang
Cc: Sonny Rao, Cheng-Yi Chiang, Heiko Stuebner, zhengxing, jay.xu,
devicetree, dianders, dri-devel, linux-kernel, linux-rockchip,
linux-arm-kernel, Jaroslav Kysela, alsa-devel, Takashi Iwai,
Dylan Reid, Liam Girdwood, Lars-Peter Clausen, Jarkko Nikula,
Tushar Behera
[-- Attachment #1: Type: text/plain, Size: 499 bytes --]
On Wed, Apr 08, 2015 at 07:05:56PM +0800, Caesar Wang wrote:
> To fix pop noise when shutdown,the pop noise during shutdown
> is the pmic cutoff power of codec without any notice.
Applied, thanks.
Please do make an effort to only send patches to relevant people -
sending people patches that aren't relevant to them adds to the volume
of mail they have to handle which can get in the way of things that need
the attention. For example I'm not sure why the dri-devel list is on
this.
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 473 bytes --]
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2015-04-08 17:09 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-04-08 11:05 [PATCH v3] ASoC: max98090: add shutdown callback for max98090 Caesar Wang
2015-04-08 17:09 ` Mark Brown
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).