Commit cc3202f5 authored by Vladimir Zapolskiy's avatar Vladimir Zapolskiy Committed by Mark Brown

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: default avatarVladimir Zapolskiy <vzapolskiy@gmail.com>
Acked-by: default avatarLiam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: default avatarMark Brown <broonie@opensource.wolfsonmicro.com>
parent 5898dd9e
...@@ -18,6 +18,18 @@ struct uda134x_platform_data { ...@@ -18,6 +18,18 @@ struct uda134x_platform_data {
struct l3_pins l3; struct l3_pins l3;
void (*power) (int); void (*power) (int);
int model; int model;
/*
ALSA SOC usually puts the device in standby mode when it's not used
for sometime. If you unset is_powered_on_standby the driver will
turn off the ADC/DAC when this callback is invoked and turn it back
on when needed. Unfortunately this will result in a very light bump
(it can be audible only with good earphones). If this bothers you
set is_powered_on_standby, you will have slightly higher power
consumption. Please note that sending the L3 command for ADC is
enough to make the bump, so it doesn't make difference if you
completely take off power from the codec.
*/
int is_powered_on_standby;
#define UDA134X_UDA1340 1 #define UDA134X_UDA1340 1
#define UDA134X_UDA1341 2 #define UDA134X_UDA1341 2
#define UDA134X_UDA1344 3 #define UDA134X_UDA1344 3
......
...@@ -28,19 +28,6 @@ ...@@ -28,19 +28,6 @@
#include "uda134x.h" #include "uda134x.h"
#define POWER_OFF_ON_STANDBY 1
/*
ALSA SOC usually puts the device in standby mode when it's not used
for sometime. If you define POWER_OFF_ON_STANDBY the driver will
turn off the ADC/DAC when this callback is invoked and turn it back
on when needed. Unfortunately this will result in a very light bump
(it can be audible only with good earphones). If this bothers you
just comment this line, you will have slightly higher power
consumption . Please note that sending the L3 command for ADC is
enough to make the bump, so it doesn't make difference if you
completely take off power from the codec.
*/
#define UDA134X_RATES SNDRV_PCM_RATE_8000_48000 #define UDA134X_RATES SNDRV_PCM_RATE_8000_48000
#define UDA134X_FORMATS (SNDRV_PCM_FMTBIT_S8 | SNDRV_PCM_FMTBIT_S16_LE | \ #define UDA134X_FORMATS (SNDRV_PCM_FMTBIT_S8 | SNDRV_PCM_FMTBIT_S16_LE | \
SNDRV_PCM_FMTBIT_S18_3LE | SNDRV_PCM_FMTBIT_S20_3LE) SNDRV_PCM_FMTBIT_S18_3LE | SNDRV_PCM_FMTBIT_S20_3LE)
...@@ -531,9 +518,11 @@ static int uda134x_soc_probe(struct platform_device *pdev) ...@@ -531,9 +518,11 @@ static int uda134x_soc_probe(struct platform_device *pdev)
codec->num_dai = 1; codec->num_dai = 1;
codec->read = uda134x_read_reg_cache; codec->read = uda134x_read_reg_cache;
codec->write = uda134x_write; codec->write = uda134x_write;
#ifdef POWER_OFF_ON_STANDBY
codec->set_bias_level = uda134x_set_bias_level; if (!pd->is_powered_on_standby) {
#endif codec->set_bias_level = uda134x_set_bias_level;
}
INIT_LIST_HEAD(&codec->dapm_widgets); INIT_LIST_HEAD(&codec->dapm_widgets);
INIT_LIST_HEAD(&codec->dapm_paths); INIT_LIST_HEAD(&codec->dapm_paths);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment