ANDROID: ASoC: Compress: Check and set pcm_new driver op

Check and set if pcm_new driver op is initialized by the driver.
This allows the compress offload drivers to register mixer
controls.

Bug: 161413837
Change-Id: If54fa36cf19cbca7239d6e3e30455472e9a173d8
Signed-off-by: Ravi Kumar Alamanda <ralama@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Signed-off-by: Meng Wang <mwang@codeaurora.org>
(cherry picked from commit 7ffe0db0148acf460812cc2a8b98fdd46642f1b9)
Signed-off-by: Will McVicker <willmcvicker@google.com>
This commit is contained in:
Ravi Kumar Alamanda
2013-11-25 10:38:40 -08:00
committed by Will McVicker
parent 3de5a8021e
commit f35f6c6746

View File

@@ -1006,8 +1006,21 @@ int snd_soc_new_compress(struct snd_soc_pcm_runtime *rtd, int num)
rtd->compr = compr;
compr->private_data = rtd;
for_each_rtdcom(rtd, rtdcom) {
component = rtdcom->component;
if (component->driver->pcm_new) {
ret = component->driver->pcm_new(rtd);
if (ret < 0) {
pr_err("asoc: compress pcm constructor failed\n");
goto compr_err;
}
}
}
dev_info(rtd->card->dev, "Compress ASoC: %s <-> %s mapping ok\n",
codec_dai->name, cpu_dai->name);
return ret;
compr_err: