From: Mark Brown <broonie@opensource.wolfsonmicro.com>
To: Takashi Iwai <tiwai@suse.de>
Cc: alsa-devel@alsa-project.org,
Mark Brown <broonie@opensource.wolfsonmicro.com>,
Timur Tabi <timur@freescale.com>
Subject: [PATCH 8/8] ASoC: Disable automatic volume control in the CS4270 sound driver
Date: Thu, 30 Oct 2008 15:58:29 +0000 [thread overview]
Message-ID: <1225382309-1827-8-git-send-email-broonie@opensource.wolfsonmicro.com> (raw)
In-Reply-To: <1225382309-1827-7-git-send-email-broonie@opensource.wolfsonmicro.com>
From: Timur Tabi <timur@freescale.com>
Disable the automatic volume control feature of the CS4270 audio codec. This
feature, which is enabled by default, causes volume change commands to be
delayed. Sometimes the volume change happens after playback is started.
Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
---
sound/soc/codecs/cs4270.c | 13 +++++++++++++
1 files changed, 13 insertions(+), 0 deletions(-)
diff --git a/sound/soc/codecs/cs4270.c b/sound/soc/codecs/cs4270.c
index 0bbd945..0ff476d 100644
--- a/sound/soc/codecs/cs4270.c
+++ b/sound/soc/codecs/cs4270.c
@@ -450,6 +450,19 @@ static int cs4270_hw_params(struct snd_pcm_substream *substream,
return ret;
}
+ /* Disable automatic volume control. It's enabled by default, and
+ * it causes volume change commands to be delayed, sometimes until
+ * after playback has started.
+ */
+
+ reg = cs4270_read_reg_cache(codec, CS4270_TRANS);
+ reg &= ~(CS4270_TRANS_SOFT | CS4270_TRANS_ZERO);
+ ret = cs4270_i2c_write(codec, CS4270_TRANS, reg);
+ if (ret < 0) {
+ printk(KERN_ERR "I2C write failed\n");
+ return ret;
+ }
+
/* Thaw and power-up the codec */
ret = snd_soc_write(codec, CS4270_PWRCTL, 0);
--
1.5.6.5
next prev parent reply other threads:[~2008-10-30 15:58 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-10-30 15:57 [PATCH 0/8] ASoC updates for next Mark Brown
2008-10-30 15:58 ` [PATCH 1/8] ASoC: Allow setting codec register with debugfs filesystem Mark Brown
2008-10-30 15:58 ` [PATCH 2/8] ASoC: Fix handling of DAPM suspend work Mark Brown
2008-10-30 15:58 ` [PATCH 3/8] ASoC: Convert core to use standard debug print macros Mark Brown
2008-10-30 15:58 ` [PATCH 4/8] ASoC: Remove DAPM restriction on mixer control name lengths Mark Brown
2008-10-30 15:58 ` [PATCH 5/8] ASoC: Add PXA SSP support Mark Brown
2008-10-30 15:58 ` [PATCH 6/8] ASoC: Do a warm reset after cold when resetting the WM9713 Mark Brown
2008-10-30 15:58 ` [PATCH 7/8] ASoC: Use finer grained dependencies in SND_SOC_ALL_CODECS Mark Brown
2008-10-30 15:58 ` Mark Brown [this message]
2008-10-30 16:22 ` [PATCH 0/8] ASoC updates for next Takashi Iwai
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1225382309-1827-8-git-send-email-broonie@opensource.wolfsonmicro.com \
--to=broonie@opensource.wolfsonmicro.com \
--cc=alsa-devel@alsa-project.org \
--cc=timur@freescale.com \
--cc=tiwai@suse.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox