summaryrefslogtreecommitdiff
path: root/drivers/mfd/wcd9335-regmap.c
diff options
context:
space:
mode:
authorPhani Kumar Uppalapati <phaniu@codeaurora.org>2016-02-10 15:39:19 -0800
committerDavid Keitel <dkeitel@codeaurora.org>2016-03-25 16:02:20 -0700
commite539160232034339d062b51116ca32dbb94cae4e (patch)
tree3f806a79c6c8322b78cc5c1330a5a96ff267c0b9 /drivers/mfd/wcd9335-regmap.c
parentf019a8590fd1c714df3afcf5a146f8472685967d (diff)
driver: mfd: Mark RCO calibration registers are volatile
RCO calibration codec registers are read only and they can be modified at any time during codec operation. Mark them as volatile so that reads to these registers always happen from hardware instead of cache. CRs-Fixed: 974785 Change-Id: I1fb66ca19d0889aa7e21f433f8722af7b527705c Signed-off-by: Phani Kumar Uppalapati <phaniu@codeaurora.org>
Diffstat (limited to 'drivers/mfd/wcd9335-regmap.c')
-rw-r--r--drivers/mfd/wcd9335-regmap.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/mfd/wcd9335-regmap.c b/drivers/mfd/wcd9335-regmap.c
index 80495d6e5610..851156f0e34b 100644
--- a/drivers/mfd/wcd9335-regmap.c
+++ b/drivers/mfd/wcd9335-regmap.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2015, The Linux Foundation. All rights reserved.
+ * Copyright (c) 2015-2016, The Linux Foundation. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 and
@@ -1532,6 +1532,10 @@ static bool wcd9335_is_volatile_register(struct device *dev, unsigned int reg)
reg <= WCD9335_CPE_SS_OUTBOX2_ACK)
return true;
+ if (reg >= WCD9335_RCO_CAL_OUT_1 &&
+ reg <= WCD9335_RCO_CAL_OUT_5)
+ return true;
+
switch (reg) {
case WCD9335_CPE_SS_INBOX1_TRG:
case WCD9335_CPE_SS_INBOX2_TRG: