aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorXiubo Li <lixiubo@cmss.chinamobile.com>2015-12-09 00:09:07 -0500
committerMark Brown <broonie@kernel.org>2015-12-09 15:39:22 -0500
commit8b7663de6e2bfe3c40e1846e1c4625f33d138757 (patch)
treec1d2d4992ebebac2822215af7e75d81e1dcc457c
parent2fd6902ed7587c302611906b5151f6a7efeb2c63 (diff)
regmap: cache: Add 64-bit mode support
Since the mmio has support the 64-bit has been supported for the 64-bit platform, so should the regcache core too. Signed-off-by: Xiubo Li <lixiubo@cmss.chinamobile.com> Signed-off-by: Mark Brown <broonie@kernel.org>
-rw-r--r--drivers/base/regmap/regcache.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/drivers/base/regmap/regcache.c b/drivers/base/regmap/regcache.c
index 3cb8c59a5ff6..1c0210aa2573 100644
--- a/drivers/base/regmap/regcache.c
+++ b/drivers/base/regmap/regcache.c
@@ -551,6 +551,14 @@ bool regcache_set_val(struct regmap *map, void *base, unsigned int idx,
551 cache[idx] = val; 551 cache[idx] = val;
552 break; 552 break;
553 } 553 }
554#ifdef CONFIG_64BIT
555 case 8: {
556 u64 *cache = base;
557
558 cache[idx] = val;
559 break;
560 }
561#endif
554 default: 562 default:
555 BUG(); 563 BUG();
556 } 564 }
@@ -584,6 +592,13 @@ unsigned int regcache_get_val(struct regmap *map, const void *base,
584 592
585 return cache[idx]; 593 return cache[idx];
586 } 594 }
595#ifdef CONFIG_64BIT
596 case 8: {
597 const u64 *cache = base;
598
599 return cache[idx];
600 }
601#endif
587 default: 602 default:
588 BUG(); 603 BUG();
589 } 604 }