[alsa-devel] [PATCH] ASoC: dapm: Don't use async I/O

Mark Brown broonie at kernel.org
Tue Dec 16 18:08:18 CET 2014


The only user of the async I/O support in ASoC is SPI which was using it to
avoid needless context thrashing and minimise controller runtime PM bounces.
The SPI framework has now been enhanced so that even normal spi_sync() calls
won't suffer these effects so we don't need to handle this in ASoC and in
fact it can be more efficient not to since we don't need to set up and tear
down the buffers needed to manage asynchronous I/O.

The async completions that DAPM does are left in place so drivers can use
them, they are very cheap if there is no asynchronous work queued.

Signed-off-by: Mark Brown <broonie at kernel.org>
---
 sound/soc/soc-dapm.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/sound/soc/soc-dapm.c b/sound/soc/soc-dapm.c
index c5136bb1f982..fe06b028130f 100644
--- a/sound/soc/soc-dapm.c
+++ b/sound/soc/soc-dapm.c
@@ -517,8 +517,8 @@ static int soc_dapm_update_bits(struct snd_soc_dapm_context *dapm,
 {
 	if (!dapm->component)
 		return -EIO;
-	return snd_soc_component_update_bits_async(dapm->component, reg,
-		mask, value);
+	return snd_soc_component_update_bits(dapm->component, reg,
+					     mask, value);
 }
 
 static int soc_dapm_test_bits(struct snd_soc_dapm_context *dapm,
-- 
2.1.3



More information about the Alsa-devel mailing list