Commit fdcc4a03 authored by Subhransu S. Prusty's avatar Subhransu S. Prusty Committed by Mark Brown

ASoC: mfld-compress: implement .power callback

.power callback is required to invoked for compressed audio as well to turn
on/off sst, so invoke them
Signed-off-by: default avatarSubhransu S. Prusty <subhransu.s.prusty@intel.com>
Signed-off-by: default avatarVinod Koul <vinod.koul@intel.com>
Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent 5794b7ec
...@@ -67,8 +67,11 @@ static int sst_platform_compr_open(struct snd_compr_stream *cstream) ...@@ -67,8 +67,11 @@ static int sst_platform_compr_open(struct snd_compr_stream *cstream)
goto out_ops; goto out_ops;
} }
stream->compr_ops = sst->compr_ops; stream->compr_ops = sst->compr_ops;
stream->id = 0; stream->id = 0;
/* Turn on LPE */
sst->compr_ops->power(sst->dev, true);
sst_set_stream_status(stream, SST_PLATFORM_INIT); sst_set_stream_status(stream, SST_PLATFORM_INIT);
runtime->private_data = stream; runtime->private_data = stream;
return 0; return 0;
...@@ -83,6 +86,9 @@ static int sst_platform_compr_free(struct snd_compr_stream *cstream) ...@@ -83,6 +86,9 @@ static int sst_platform_compr_free(struct snd_compr_stream *cstream)
int ret_val = 0, str_id; int ret_val = 0, str_id;
stream = cstream->runtime->private_data; stream = cstream->runtime->private_data;
/* Turn off LPE */
sst->compr_ops->power(sst->dev, false);
/*need to check*/ /*need to check*/
str_id = stream->id; str_id = stream->id;
if (str_id) if (str_id)
......
...@@ -117,6 +117,7 @@ struct compress_sst_ops { ...@@ -117,6 +117,7 @@ struct compress_sst_ops {
int (*get_codec_caps)(struct snd_compr_codec_caps *codec); int (*get_codec_caps)(struct snd_compr_codec_caps *codec);
int (*set_metadata)(struct device *dev, unsigned int str_id, int (*set_metadata)(struct device *dev, unsigned int str_id,
struct snd_compr_metadata *mdata); struct snd_compr_metadata *mdata);
int (*power)(struct device *dev, bool state);
}; };
struct sst_ops { struct sst_ops {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment