ARM64: dts: rk3399-android: change i2s2 bclk to 128fs for hdmi
[firefly-linux-kernel-4.4.55.git] / sound / soc / soc-topology.c
index 8d7ec80af51b499738dc2032356896a08144078a..70396d3f64728bad98d7f5a665ebfb66351bfdf9 100644 (file)
@@ -531,7 +531,7 @@ static int soc_tplg_kcontrol_bind_io(struct snd_soc_tplg_ctl_hdr *hdr,
                /* TLV bytes controls need standard kcontrol info handler,
                 * TLV callback and extended put/get handlers.
                 */
-               k->info = snd_soc_bytes_info;
+               k->info = snd_soc_bytes_info_ext;
                k->tlv.c = snd_soc_bytes_tlv_callback;
 
                ext_ops = tplg->bytes_ext_ops;
@@ -1484,6 +1484,7 @@ widget:
        if (widget == NULL) {
                dev_err(tplg->dev, "ASoC: failed to create widget %s controls\n",
                        w->name);
+               ret = -ENOMEM;
                goto hdr_err;
        }
 
@@ -1805,6 +1806,7 @@ void snd_soc_tplg_widget_remove_all(struct snd_soc_dapm_context *dapm,
                snd_soc_tplg_widget_remove(w);
                snd_soc_dapm_free_widget(w);
        }
+       snd_soc_dapm_reset_cache(dapm);
 }
 EXPORT_SYMBOL_GPL(snd_soc_tplg_widget_remove_all);