OpenCloudOS-Kernel/drivers/base/regmap
Lars-Peter Clausen 61cddc57dc regmap: Fix cache defaults initialization from raw cache defaults
Currently registers with a value of 0 are ignored when initializing the register
defaults from raw defaults. This worked in the past, because registers without a
explicit default were assumed to have a default value of 0. This was changed in
commit b03622a8 ("regmap: Ensure rbtree syncs registers set to zero properly").
As a result registers, which have a raw default value of 0 are now assumed to
have no default. This again can result in unnecessary writes when syncing the
cache. It will also result in unnecessary reads for e.g. the first update
operation. In the case where readback is not possible this will even let the
update operation fail, if the register has not been written to before.

So this patch removes the check. Instead it adds a check to ignore raw defaults
for registers which are volatile, since those registers are not cached.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Cc: stable@vger.kernel.org
2012-02-15 08:31:32 -08:00
..
Kconfig regmap: Add a reusable irq_chip for regmap based interrupt controllers 2011-11-08 11:29:48 +00:00
Makefile regmap: Remove indexed cache type 2011-11-20 20:56:34 +00:00
internal.h regmap: Remove indexed cache type 2011-11-20 20:56:34 +00:00
regcache-lzo.c regmap: Do not call regcache_exit from regcache_lzo_init error path 2011-11-15 19:22:59 +00:00
regcache-rbtree.c regmap: Fix rbtreee build when not using debugfs 2011-11-22 11:43:01 +00:00
regcache.c regmap: Fix cache defaults initialization from raw cache defaults 2012-02-15 08:31:32 -08:00
regmap-debugfs.c regmap: Include the last register in debugfs output 2011-09-05 10:58:31 -07:00
regmap-i2c.c regmap: Remove redundant owner field from the bus type struct 2011-09-05 10:57:04 -07:00
regmap-irq.c regmap: Add irq_base accessor to regmap_irq 2011-12-05 16:13:31 +00:00
regmap-spi.c Merge branch 'for-linus' of git://opensource.wolfsonmicro.com/regmap 2011-10-25 13:57:45 +02:00
regmap.c regmap: Reset cache status when reinitialsing the cache 2012-01-20 13:49:30 +00:00