All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/2] ASoC: cs4349: Set .writeable_reg for cs4349_regmap
@ 2015-07-19  1:14 Axel Lin
  2015-07-19  1:15 ` [PATCH 2/2] ASoC: cs4349: Drop platform data support Axel Lin
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Axel Lin @ 2015-07-19  1:14 UTC (permalink / raw)
  To: Mark Brown
  Cc: Brian Austin, alsa-devel, Liam Girdwood, Paul Handrigan, Tim Howe

The first valid register index is 1 rather than 0, and the CS4349_CHIPID
is readonly. So set .writeable_reg to avoid writing to these registers.

Signed-off-by: Axel Lin <axel.lin@ingics.com>
---
 sound/soc/codecs/cs4349.c | 20 ++++++++++++--------
 1 file changed, 12 insertions(+), 8 deletions(-)

diff --git a/sound/soc/codecs/cs4349.c b/sound/soc/codecs/cs4349.c
index f4fccc6..eb55889 100644
--- a/sound/soc/codecs/cs4349.c
+++ b/sound/soc/codecs/cs4349.c
@@ -54,14 +54,17 @@ struct  cs4349_private {
 static bool cs4349_readable_register(struct device *dev, unsigned int reg)
 {
 	switch (reg) {
-	case CS4349_CHIPID:
-	case CS4349_MODE:
-	case CS4349_VMI:
-	case CS4349_MUTE:
-	case CS4349_VOLA:
-	case CS4349_VOLB:
-	case CS4349_RMPFLT:
-	case CS4349_MISC:
+	case CS4349_CHIPID ... CS4349_MISC:
+		return true;
+	default:
+		return false;
+	}
+}
+
+static bool cs4349_writeable_register(struct device *dev, unsigned int reg)
+{
+	switch (reg) {
+	case CS4349_MODE ...  CS4349_MISC:
 		return true;
 	default:
 		return false;
@@ -272,6 +275,7 @@ static const struct regmap_config cs4349_regmap = {
 	.reg_defaults		= cs4349_reg_defaults,
 	.num_reg_defaults	= ARRAY_SIZE(cs4349_reg_defaults),
 	.readable_reg		= cs4349_readable_register,
+	.writeable_reg		= cs4349_writeable_register,
 	.cache_type		= REGCACHE_RBTREE,
 };
 
-- 
2.1.0

^ permalink raw reply related	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2015-07-30 21:19 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-07-19  1:14 [PATCH 1/2] ASoC: cs4349: Set .writeable_reg for cs4349_regmap Axel Lin
2015-07-19  1:15 ` [PATCH 2/2] ASoC: cs4349: Drop platform data support Axel Lin
2015-07-20 17:52   ` Applied "ASoC: cs4349: Drop platform data support" to the asoc tree Mark Brown
2015-07-20 17:52 ` Applied "ASoC: cs4349: Set .writeable_reg for cs4349_regmap" " Mark Brown
2015-07-30 21:19 ` [PATCH 1/2] ASoC: cs4349: Set .writeable_reg for cs4349_regmap Tim Howe

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.