mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [RFC 1/2] regmap: if format_write is used, declare all registers as "unreadable"
@ 2012-01-30 14:08 Wolfram Sang
  2012-01-30 14:08 ` [RFC 2/2] regmap: make use of cached entries in debugfs Wolfram Sang
  2012-01-30 16:25 ` [RFC 1/2] regmap: if format_write is used, declare all registers as "unreadable" Mark Brown
  0 siblings, 2 replies; 6+ messages in thread
From: Wolfram Sang @ 2012-01-30 14:08 UTC (permalink / raw)
  To: linux-kernel; +Cc: Mark Brown, Lars-Peter Clausen, Wolfram Sang

Using .format_write means, we have a custom function to write to the
chip, but not to read back. Also, mark registers as "not precious" and
"not volatile" which is implicit because we cannot read them. Make those
functions use 'regmap_readable' to reuse the checks done there.

Signed-off-by: Wolfram Sang <w.sang@pengutronix.de>
---
 drivers/base/regmap/regmap.c |    7 +++++--
 1 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/drivers/base/regmap/regmap.c b/drivers/base/regmap/regmap.c
index fb3c132..c7b95c3 100644
--- a/drivers/base/regmap/regmap.c
+++ b/drivers/base/regmap/regmap.c
@@ -36,6 +36,9 @@ bool regmap_readable(struct regmap *map, unsigned int reg)
 	if (map->max_register && reg > map->max_register)
 		return false;
 
+	if (map->format.format_write)
+		return false;
+
 	if (map->readable_reg)
 		return map->readable_reg(map->dev, reg);
 
@@ -44,7 +47,7 @@ bool regmap_readable(struct regmap *map, unsigned int reg)
 
 bool regmap_volatile(struct regmap *map, unsigned int reg)
 {
-	if (map->max_register && reg > map->max_register)
+	if (!regmap_readable(map, reg))
 		return false;
 
 	if (map->volatile_reg)
@@ -55,7 +58,7 @@ bool regmap_volatile(struct regmap *map, unsigned int reg)
 
 bool regmap_precious(struct regmap *map, unsigned int reg)
 {
-	if (map->max_register && reg > map->max_register)
+	if (!regmap_readable(map, reg))
 		return false;
 
 	if (map->precious_reg)
-- 
1.7.8.3


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

end of thread, other threads:[~2012-01-30 16:25 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-01-30 14:08 [RFC 1/2] regmap: if format_write is used, declare all registers as "unreadable" Wolfram Sang
2012-01-30 14:08 ` [RFC 2/2] regmap: make use of cached entries in debugfs Wolfram Sang
2012-01-30 14:56   ` Mark Brown
2012-01-30 15:34     ` Wolfram Sang
2012-01-30 16:11       ` Mark Brown
2012-01-30 16:25 ` [RFC 1/2] regmap: if format_write is used, declare all registers as "unreadable" Mark Brown

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

Powered by JetHome