forked from luck/tmp_suning_uos_patched
ASoC: soc-cache: Add optional cache name member to snd_soc_cache_ops
Added an optional name member to snd_soc_cache_ops to enable more sensible diagnostic messages during cache init, exit and sync. Remove redundant newline in source code. Signed-off-by: Dimitris Papastamos <dp@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
This commit is contained in:
parent
9545cd85a6
commit
0d735eaa2c
|
@ -437,6 +437,7 @@ struct snd_soc_ops {
|
|||
|
||||
/* SoC cache ops */
|
||||
struct snd_soc_cache_ops {
|
||||
const char *name;
|
||||
enum snd_soc_compress_type id;
|
||||
int (*init)(struct snd_soc_codec *codec);
|
||||
int (*exit)(struct snd_soc_codec *codec);
|
||||
|
|
|
@ -1533,6 +1533,7 @@ static int snd_soc_flat_cache_init(struct snd_soc_codec *codec)
|
|||
static const struct snd_soc_cache_ops cache_types[] = {
|
||||
{
|
||||
.id = SND_SOC_FLAT_COMPRESSION,
|
||||
.name = "flat",
|
||||
.init = snd_soc_flat_cache_init,
|
||||
.exit = snd_soc_flat_cache_exit,
|
||||
.read = snd_soc_flat_cache_read,
|
||||
|
@ -1541,6 +1542,7 @@ static const struct snd_soc_cache_ops cache_types[] = {
|
|||
},
|
||||
{
|
||||
.id = SND_SOC_LZO_COMPRESSION,
|
||||
.name = "LZO",
|
||||
.init = snd_soc_lzo_cache_init,
|
||||
.exit = snd_soc_lzo_cache_exit,
|
||||
.read = snd_soc_lzo_cache_read,
|
||||
|
@ -1549,6 +1551,7 @@ static const struct snd_soc_cache_ops cache_types[] = {
|
|||
},
|
||||
{
|
||||
.id = SND_SOC_RBTREE_COMPRESSION,
|
||||
.name = "rbtree",
|
||||
.init = snd_soc_rbtree_cache_init,
|
||||
.exit = snd_soc_rbtree_cache_exit,
|
||||
.read = snd_soc_rbtree_cache_read,
|
||||
|
@ -1573,8 +1576,12 @@ int snd_soc_cache_init(struct snd_soc_codec *codec)
|
|||
mutex_init(&codec->cache_rw_mutex);
|
||||
codec->cache_ops = &cache_types[i];
|
||||
|
||||
if (codec->cache_ops->init)
|
||||
if (codec->cache_ops->init) {
|
||||
if (codec->cache_ops->name)
|
||||
dev_dbg(codec->dev, "Initializing %s cache for %s codec\n",
|
||||
codec->cache_ops->name, codec->name);
|
||||
return codec->cache_ops->init(codec);
|
||||
}
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
|
@ -1584,8 +1591,12 @@ int snd_soc_cache_init(struct snd_soc_codec *codec)
|
|||
*/
|
||||
int snd_soc_cache_exit(struct snd_soc_codec *codec)
|
||||
{
|
||||
if (codec->cache_ops && codec->cache_ops->exit)
|
||||
if (codec->cache_ops && codec->cache_ops->exit) {
|
||||
if (codec->cache_ops->name)
|
||||
dev_dbg(codec->dev, "Destroying %s cache for %s codec\n",
|
||||
codec->cache_ops->name, codec->name);
|
||||
return codec->cache_ops->exit(codec);
|
||||
}
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
|
@ -1657,6 +1668,9 @@ int snd_soc_cache_sync(struct snd_soc_codec *codec)
|
|||
}
|
||||
|
||||
if (codec->cache_ops && codec->cache_ops->sync) {
|
||||
if (codec->cache_ops->name)
|
||||
dev_dbg(codec->dev, "Syncing %s cache for %s codec\n",
|
||||
codec->cache_ops->name, codec->name);
|
||||
ret = codec->cache_ops->sync(codec);
|
||||
if (!ret)
|
||||
codec->cache_sync = 0;
|
||||
|
|
|
@ -1742,8 +1742,6 @@ static int snd_soc_init_codec_cache(struct snd_soc_codec *codec,
|
|||
/* override the compress_type if necessary */
|
||||
if (compress_type && codec->compress_type != compress_type)
|
||||
codec->compress_type = compress_type;
|
||||
dev_dbg(codec->dev, "Cache compress_type for %s is %d\n",
|
||||
codec->name, codec->compress_type);
|
||||
ret = snd_soc_cache_init(codec);
|
||||
if (ret < 0) {
|
||||
dev_err(codec->dev, "Failed to set cache compression type: %d\n",
|
||||
|
@ -1754,7 +1752,6 @@ static int snd_soc_init_codec_cache(struct snd_soc_codec *codec,
|
|||
return 0;
|
||||
}
|
||||
|
||||
|
||||
static void snd_soc_instantiate_card(struct snd_soc_card *card)
|
||||
{
|
||||
struct platform_device *pdev = to_platform_device(card->dev);
|
||||
|
|
Loading…
Reference in New Issue
Block a user