Commit 0d735eaa authored by Dimitris Papastamos's avatar Dimitris Papastamos Committed by Mark Brown

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: default avatarDimitris Papastamos <dp@opensource.wolfsonmicro.com>
Acked-by: default avatarLiam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: default avatarMark Brown <broonie@opensource.wolfsonmicro.com>
parent 9545cd85
...@@ -437,6 +437,7 @@ struct snd_soc_ops { ...@@ -437,6 +437,7 @@ struct snd_soc_ops {
/* SoC cache ops */ /* SoC cache ops */
struct snd_soc_cache_ops { struct snd_soc_cache_ops {
const char *name;
enum snd_soc_compress_type id; enum snd_soc_compress_type id;
int (*init)(struct snd_soc_codec *codec); int (*init)(struct snd_soc_codec *codec);
int (*exit)(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) ...@@ -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[] = { static const struct snd_soc_cache_ops cache_types[] = {
{ {
.id = SND_SOC_FLAT_COMPRESSION, .id = SND_SOC_FLAT_COMPRESSION,
.name = "flat",
.init = snd_soc_flat_cache_init, .init = snd_soc_flat_cache_init,
.exit = snd_soc_flat_cache_exit, .exit = snd_soc_flat_cache_exit,
.read = snd_soc_flat_cache_read, .read = snd_soc_flat_cache_read,
...@@ -1541,6 +1542,7 @@ static const struct snd_soc_cache_ops cache_types[] = { ...@@ -1541,6 +1542,7 @@ static const struct snd_soc_cache_ops cache_types[] = {
}, },
{ {
.id = SND_SOC_LZO_COMPRESSION, .id = SND_SOC_LZO_COMPRESSION,
.name = "LZO",
.init = snd_soc_lzo_cache_init, .init = snd_soc_lzo_cache_init,
.exit = snd_soc_lzo_cache_exit, .exit = snd_soc_lzo_cache_exit,
.read = snd_soc_lzo_cache_read, .read = snd_soc_lzo_cache_read,
...@@ -1549,6 +1551,7 @@ static const struct snd_soc_cache_ops cache_types[] = { ...@@ -1549,6 +1551,7 @@ static const struct snd_soc_cache_ops cache_types[] = {
}, },
{ {
.id = SND_SOC_RBTREE_COMPRESSION, .id = SND_SOC_RBTREE_COMPRESSION,
.name = "rbtree",
.init = snd_soc_rbtree_cache_init, .init = snd_soc_rbtree_cache_init,
.exit = snd_soc_rbtree_cache_exit, .exit = snd_soc_rbtree_cache_exit,
.read = snd_soc_rbtree_cache_read, .read = snd_soc_rbtree_cache_read,
...@@ -1573,8 +1576,12 @@ int snd_soc_cache_init(struct snd_soc_codec *codec) ...@@ -1573,8 +1576,12 @@ int snd_soc_cache_init(struct snd_soc_codec *codec)
mutex_init(&codec->cache_rw_mutex); mutex_init(&codec->cache_rw_mutex);
codec->cache_ops = &cache_types[i]; 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 codec->cache_ops->init(codec);
}
return -EINVAL; return -EINVAL;
} }
...@@ -1584,8 +1591,12 @@ int snd_soc_cache_init(struct snd_soc_codec *codec) ...@@ -1584,8 +1591,12 @@ int snd_soc_cache_init(struct snd_soc_codec *codec)
*/ */
int snd_soc_cache_exit(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 codec->cache_ops->exit(codec);
}
return -EINVAL; return -EINVAL;
} }
...@@ -1657,6 +1668,9 @@ int snd_soc_cache_sync(struct snd_soc_codec *codec) ...@@ -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 && 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); ret = codec->cache_ops->sync(codec);
if (!ret) if (!ret)
codec->cache_sync = 0; codec->cache_sync = 0;
......
...@@ -1742,8 +1742,6 @@ static int snd_soc_init_codec_cache(struct snd_soc_codec *codec, ...@@ -1742,8 +1742,6 @@ static int snd_soc_init_codec_cache(struct snd_soc_codec *codec,
/* override the compress_type if necessary */ /* override the compress_type if necessary */
if (compress_type && codec->compress_type != compress_type) if (compress_type && codec->compress_type != 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); ret = snd_soc_cache_init(codec);
if (ret < 0) { if (ret < 0) {
dev_err(codec->dev, "Failed to set cache compression type: %d\n", 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, ...@@ -1754,7 +1752,6 @@ static int snd_soc_init_codec_cache(struct snd_soc_codec *codec,
return 0; return 0;
} }
static void snd_soc_instantiate_card(struct snd_soc_card *card) static void snd_soc_instantiate_card(struct snd_soc_card *card)
{ {
struct platform_device *pdev = to_platform_device(card->dev); struct platform_device *pdev = to_platform_device(card->dev);
......
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