aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMark Brown <broonie@opensource.wolfsonmicro.com>2011-01-26 15:53:50 -0500
committerMark Brown <broonie@opensource.wolfsonmicro.com>2011-01-27 06:57:01 -0500
commitaaee8ef146111566e1c607bdf368d73fb966be2e (patch)
treea39aafeb67efa57acf7673bd53e4a92269682a06
parent6f8ab4ac292f81b9246ddf363bf1c6a2fc7a0629 (diff)
ASoC: Make cache status available via debugfs
Could just as well live in sysfs but sysfs doesn't have the simple value export helpers debugfs does. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
-rw-r--r--include/sound/soc.h4
-rw-r--r--sound/soc/soc-core.c5
2 files changed, 7 insertions, 2 deletions
diff --git a/include/sound/soc.h b/include/sound/soc.h
index 7e8cf4f318a9..64856d656f15 100644
--- a/include/sound/soc.h
+++ b/include/sound/soc.h
@@ -493,14 +493,14 @@ struct snd_soc_codec {
493 struct snd_ac97 *ac97; /* for ad-hoc ac97 devices */ 493 struct snd_ac97 *ac97; /* for ad-hoc ac97 devices */
494 unsigned int active; 494 unsigned int active;
495 unsigned int cache_bypass:1; /* Suppress access to the cache */ 495 unsigned int cache_bypass:1; /* Suppress access to the cache */
496 unsigned int cache_only:1; /* Suppress writes to hardware */
497 unsigned int cache_sync:1; /* Cache needs to be synced to hardware */
498 unsigned int suspended:1; /* Codec is in suspend PM state */ 496 unsigned int suspended:1; /* Codec is in suspend PM state */
499 unsigned int probed:1; /* Codec has been probed */ 497 unsigned int probed:1; /* Codec has been probed */
500 unsigned int ac97_registered:1; /* Codec has been AC97 registered */ 498 unsigned int ac97_registered:1; /* Codec has been AC97 registered */
501 unsigned int ac97_created:1; /* Codec has been created by SoC */ 499 unsigned int ac97_created:1; /* Codec has been created by SoC */
502 unsigned int sysfs_registered:1; /* codec has been sysfs registered */ 500 unsigned int sysfs_registered:1; /* codec has been sysfs registered */
503 unsigned int cache_init:1; /* codec cache has been initialized */ 501 unsigned int cache_init:1; /* codec cache has been initialized */
502 u32 cache_only; /* Suppress writes to hardware */
503 u32 cache_sync; /* Cache needs to be synced to hardware */
504 504
505 /* codec IO */ 505 /* codec IO */
506 void *control_data; /* codec control (i2c/3wire) data */ 506 void *control_data; /* codec control (i2c/3wire) data */
diff --git a/sound/soc/soc-core.c b/sound/soc/soc-core.c
index 5dffc7a469c0..8af47f7a8fcb 100644
--- a/sound/soc/soc-core.c
+++ b/sound/soc/soc-core.c
@@ -235,6 +235,11 @@ static void soc_init_codec_debugfs(struct snd_soc_codec *codec)
235 return; 235 return;
236 } 236 }
237 237
238 debugfs_create_bool("cache_sync", 0444, codec->debugfs_codec_root,
239 &codec->cache_sync);
240 debugfs_create_bool("cache_only", 0444, codec->debugfs_codec_root,
241 &codec->cache_only);
242
238 codec->debugfs_reg = debugfs_create_file("codec_reg", 0644, 243 codec->debugfs_reg = debugfs_create_file("codec_reg", 0644,
239 codec->debugfs_codec_root, 244 codec->debugfs_codec_root,
240 codec, &codec_reg_fops); 245 codec, &codec_reg_fops);