aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMark Brown <broonie@opensource.wolfsonmicro.com>2013-02-21 18:01:54 +0000
committerMark Brown <broonie@opensource.wolfsonmicro.com>2013-03-04 10:30:27 +0800
commit66baf407571662f7e2a22dd0764cbe279559446c (patch)
treea6eb3af5c0766c8ef9b105e885ae874b9806f515
parent6dbe51c251a327e012439c4772097a13df43c5b8 (diff)
downloadkernel_goldelico_gta04-66baf407571662f7e2a22dd0764cbe279559446c.zip
kernel_goldelico_gta04-66baf407571662f7e2a22dd0764cbe279559446c.tar.gz
kernel_goldelico_gta04-66baf407571662f7e2a22dd0764cbe279559446c.tar.bz2
regmap: rbtree: Don't bother checking for noop updates
If we're updating a value in place it's more work to read the value and compare the value with what we're about to set than it is to just write the value into the cache; there are no further operations after writing in the code even though there's an early return here. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
-rw-r--r--drivers/base/regmap/regcache-rbtree.c5
1 files changed, 0 insertions, 5 deletions
diff --git a/drivers/base/regmap/regcache-rbtree.c b/drivers/base/regmap/regcache-rbtree.c
index e6732cf..3f21c6a 100644
--- a/drivers/base/regmap/regcache-rbtree.c
+++ b/drivers/base/regmap/regcache-rbtree.c
@@ -302,7 +302,6 @@ static int regcache_rbtree_write(struct regmap *map, unsigned int reg,
struct regcache_rbtree_ctx *rbtree_ctx;
struct regcache_rbtree_node *rbnode, *rbnode_tmp;
struct rb_node *node;
- unsigned int val;
unsigned int reg_tmp;
unsigned int pos;
int i;
@@ -315,10 +314,6 @@ static int regcache_rbtree_write(struct regmap *map, unsigned int reg,
rbnode = regcache_rbtree_lookup(map, reg);
if (rbnode) {
reg_tmp = (reg - rbnode->base_reg) / map->reg_stride;
- val = regcache_rbtree_get_register(rbnode, reg_tmp,
- map->cache_word_size);
- if (val == value)
- return 0;
regcache_rbtree_set_register(rbnode, reg_tmp, value,
map->cache_word_size);
} else {