Merge branch 'fix/asoc' into fix/misc
This commit is contained in:
Коммит
77a9d3eb77
|
@ -625,11 +625,10 @@ static int tlv320aic23_resume(struct platform_device *pdev)
|
|||
{
|
||||
struct snd_soc_device *socdev = platform_get_drvdata(pdev);
|
||||
struct snd_soc_codec *codec = socdev->card->codec;
|
||||
int i;
|
||||
u16 reg;
|
||||
|
||||
/* Sync reg_cache with the hardware */
|
||||
for (reg = 0; reg < ARRAY_SIZE(tlv320aic23_reg); i++) {
|
||||
for (reg = 0; reg < TLV320AIC23_RESET; reg++) {
|
||||
u16 val = tlv320aic23_read_reg_cache(codec, reg);
|
||||
tlv320aic23_write(codec, reg, val);
|
||||
}
|
||||
|
|
|
@ -973,9 +973,19 @@ static int dapm_power_widgets(struct snd_soc_codec *codec, int event)
|
|||
if (!w->power_check)
|
||||
continue;
|
||||
|
||||
power = w->power_check(w);
|
||||
if (power)
|
||||
sys_power = 1;
|
||||
/* If we're suspending then pull down all the
|
||||
* power. */
|
||||
switch (event) {
|
||||
case SND_SOC_DAPM_STREAM_SUSPEND:
|
||||
power = 0;
|
||||
break;
|
||||
|
||||
default:
|
||||
power = w->power_check(w);
|
||||
if (power)
|
||||
sys_power = 1;
|
||||
break;
|
||||
}
|
||||
|
||||
if (w->power == power)
|
||||
continue;
|
||||
|
@ -999,8 +1009,12 @@ static int dapm_power_widgets(struct snd_soc_codec *codec, int event)
|
|||
case SND_SOC_DAPM_STREAM_RESUME:
|
||||
sys_power = 1;
|
||||
break;
|
||||
case SND_SOC_DAPM_STREAM_SUSPEND:
|
||||
sys_power = 0;
|
||||
break;
|
||||
case SND_SOC_DAPM_STREAM_NOP:
|
||||
sys_power = codec->bias_level != SND_SOC_BIAS_STANDBY;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
|
Загрузка…
Ссылка в новой задаче