aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVladimir Zapolskiy <vzapolskiy@gmail.com>2010-06-24 09:38:50 -0400
committerMark Brown <broonie@opensource.wolfsonmicro.com>2010-06-25 07:29:01 -0400
commitcc3202f5da3c81a99c5f3a605df527da7a77eed3 (patch)
tree6a403bacab904beea885f14f4c1ce8864316f579
parent5898dd9ebd158d9fd3c197fc640d0c104bef39a5 (diff)
ASoC: uda134x: replace a macro with a value in platform struct.
This change wipes out a hardcoded macro, which enables codec bias level control. Now is_powered_on_standby value shall be used instead. Signed-off-by: Vladimir Zapolskiy <vzapolskiy@gmail.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
-rw-r--r--include/sound/uda134x.h12
-rw-r--r--sound/soc/codecs/uda134x.c21
2 files changed, 17 insertions, 16 deletions
diff --git a/include/sound/uda134x.h b/include/sound/uda134x.h
index 509efb05017..e475659bd3b 100644
--- a/include/sound/uda134x.h
+++ b/include/sound/uda134x.h
@@ -18,6 +18,18 @@ struct uda134x_platform_data {
18 struct l3_pins l3; 18 struct l3_pins l3;
19 void (*power) (int); 19 void (*power) (int);
20 int model; 20 int model;
21 /*
22 ALSA SOC usually puts the device in standby mode when it's not used
23 for sometime. If you unset is_powered_on_standby the driver will
24 turn off the ADC/DAC when this callback is invoked and turn it back
25 on when needed. Unfortunately this will result in a very light bump
26 (it can be audible only with good earphones). If this bothers you
27 set is_powered_on_standby, you will have slightly higher power
28 consumption. Please note that sending the L3 command for ADC is
29 enough to make the bump, so it doesn't make difference if you
30 completely take off power from the codec.
31 */
32 int is_powered_on_standby;
21#define UDA134X_UDA1340 1 33#define UDA134X_UDA1340 1
22#define UDA134X_UDA1341 2 34#define UDA134X_UDA1341 2
23#define UDA134X_UDA1344 3 35#define UDA134X_UDA1344 3
diff --git a/sound/soc/codecs/uda134x.c b/sound/soc/codecs/uda134x.c
index 28aac53c97b..30cf2f9d329 100644
--- a/sound/soc/codecs/uda134x.c
+++ b/sound/soc/codecs/uda134x.c
@@ -28,19 +28,6 @@
28#include "uda134x.h" 28#include "uda134x.h"
29 29
30 30
31#define POWER_OFF_ON_STANDBY 1
32/*
33 ALSA SOC usually puts the device in standby mode when it's not used
34 for sometime. If you define POWER_OFF_ON_STANDBY the driver will
35 turn off the ADC/DAC when this callback is invoked and turn it back
36 on when needed. Unfortunately this will result in a very light bump
37 (it can be audible only with good earphones). If this bothers you
38 just comment this line, you will have slightly higher power
39 consumption . Please note that sending the L3 command for ADC is
40 enough to make the bump, so it doesn't make difference if you
41 completely take off power from the codec.
42 */
43
44#define UDA134X_RATES SNDRV_PCM_RATE_8000_48000 31#define UDA134X_RATES SNDRV_PCM_RATE_8000_48000
45#define UDA134X_FORMATS (SNDRV_PCM_FMTBIT_S8 | SNDRV_PCM_FMTBIT_S16_LE | \ 32#define UDA134X_FORMATS (SNDRV_PCM_FMTBIT_S8 | SNDRV_PCM_FMTBIT_S16_LE | \
46 SNDRV_PCM_FMTBIT_S18_3LE | SNDRV_PCM_FMTBIT_S20_3LE) 33 SNDRV_PCM_FMTBIT_S18_3LE | SNDRV_PCM_FMTBIT_S20_3LE)
@@ -531,9 +518,11 @@ static int uda134x_soc_probe(struct platform_device *pdev)
531 codec->num_dai = 1; 518 codec->num_dai = 1;
532 codec->read = uda134x_read_reg_cache; 519 codec->read = uda134x_read_reg_cache;
533 codec->write = uda134x_write; 520 codec->write = uda134x_write;
534#ifdef POWER_OFF_ON_STANDBY 521
535 codec->set_bias_level = uda134x_set_bias_level; 522 if (!pd->is_powered_on_standby) {
536#endif 523 codec->set_bias_level = uda134x_set_bias_level;
524 }
525
537 INIT_LIST_HEAD(&codec->dapm_widgets); 526 INIT_LIST_HEAD(&codec->dapm_widgets);
538 INIT_LIST_HEAD(&codec->dapm_paths); 527 INIT_LIST_HEAD(&codec->dapm_paths);
539 528