diff options
author | Mark Brown <broonie@linaro.org> | 2014-05-14 07:52:32 -0400 |
---|---|---|
committer | Mark Brown <broonie@linaro.org> | 2014-05-14 07:52:32 -0400 |
commit | 0d1203f29199a1d754bd1ca335c3dc6b14be160b (patch) | |
tree | 9c9140dade5a0b9bd60404f06dcce5120365586c | |
parent | 34e0a1e1563809a07371f44c6e4c3e216dc8684d (diff) | |
parent | ce85a4d726ecd286f933d4eedf01c5acb4f47a38 (diff) |
Merge remote-tracking branch 'asoc/fix/dapm' into asoc-linus
-rw-r--r-- | sound/soc/soc-dapm.c | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/sound/soc/soc-dapm.c b/sound/soc/soc-dapm.c index c8a780d0d057..6d6ceee447d5 100644 --- a/sound/soc/soc-dapm.c +++ b/sound/soc/soc-dapm.c | |||
@@ -254,7 +254,6 @@ static int dapm_kcontrol_data_alloc(struct snd_soc_dapm_widget *widget, | |||
254 | static void dapm_kcontrol_free(struct snd_kcontrol *kctl) | 254 | static void dapm_kcontrol_free(struct snd_kcontrol *kctl) |
255 | { | 255 | { |
256 | struct dapm_kcontrol_data *data = snd_kcontrol_chip(kctl); | 256 | struct dapm_kcontrol_data *data = snd_kcontrol_chip(kctl); |
257 | kfree(data->widget); | ||
258 | kfree(data->wlist); | 257 | kfree(data->wlist); |
259 | kfree(data); | 258 | kfree(data); |
260 | } | 259 | } |
@@ -1613,8 +1612,11 @@ static void dapm_pre_sequence_async(void *data, async_cookie_t cookie) | |||
1613 | "ASoC: Failed to turn on bias: %d\n", ret); | 1612 | "ASoC: Failed to turn on bias: %d\n", ret); |
1614 | } | 1613 | } |
1615 | 1614 | ||
1616 | /* Prepare for a STADDBY->ON or ON->STANDBY transition */ | 1615 | /* Prepare for a transition to ON or away from ON */ |
1617 | if (d->bias_level != d->target_bias_level) { | 1616 | if ((d->target_bias_level == SND_SOC_BIAS_ON && |
1617 | d->bias_level != SND_SOC_BIAS_ON) || | ||
1618 | (d->target_bias_level != SND_SOC_BIAS_ON && | ||
1619 | d->bias_level == SND_SOC_BIAS_ON)) { | ||
1618 | ret = snd_soc_dapm_set_bias_level(d, SND_SOC_BIAS_PREPARE); | 1620 | ret = snd_soc_dapm_set_bias_level(d, SND_SOC_BIAS_PREPARE); |
1619 | if (ret != 0) | 1621 | if (ret != 0) |
1620 | dev_err(d->dev, | 1622 | dev_err(d->dev, |
@@ -3476,8 +3478,11 @@ void snd_soc_dapm_connect_dai_link_widgets(struct snd_soc_card *card) | |||
3476 | cpu_dai = rtd->cpu_dai; | 3478 | cpu_dai = rtd->cpu_dai; |
3477 | codec_dai = rtd->codec_dai; | 3479 | codec_dai = rtd->codec_dai; |
3478 | 3480 | ||
3479 | /* dynamic FE links have no fixed DAI mapping */ | 3481 | /* |
3480 | if (rtd->dai_link->dynamic) | 3482 | * dynamic FE links have no fixed DAI mapping. |
3483 | * CODEC<->CODEC links have no direct connection. | ||
3484 | */ | ||
3485 | if (rtd->dai_link->dynamic || rtd->dai_link->params) | ||
3481 | continue; | 3486 | continue; |
3482 | 3487 | ||
3483 | /* there is no point in connecting BE DAI links with dummies */ | 3488 | /* there is no point in connecting BE DAI links with dummies */ |