dev_err(tplg->dev,
"ASoC: could not create values for %s\n",
ec->hdr.name);
- kfree(se);
goto err_denum;
}
/* fall through */
dev_err(tplg->dev,
"ASoC: could not create texts for %s\n",
ec->hdr.name);
- kfree(se);
goto err_denum;
}
break;
dev_err(tplg->dev,
"ASoC: invalid enum control type %d for %s\n",
ec->hdr.ops.info, ec->hdr.name);
- kfree(se);
goto err_denum;
}
err = soc_tplg_kcontrol_bind_io(&ec->hdr, &kc, tplg);
if (err) {
soc_control_err(tplg, &ec->hdr, ec->hdr.name);
- kfree(se);
goto err_denum;
}
if (err < 0) {
dev_err(tplg->dev, "ASoC: failed to init %s\n",
ec->hdr.name);
- kfree(se);
goto err_denum;
}
if (err < 0) {
dev_err(tplg->dev, "ASoC: could not add kcontrol %s\n",
ec->hdr.name);
- kfree(se);
goto err_denum;
}
list_add(&se->dobj.list, &tplg->comp->dobj_list);
}
+ return 0;
+
err_denum:
+ kfree(se);
return err;
}