diff options
author | Phani Kumar Uppalapati <phaniu@codeaurora.org> | 2016-02-10 15:39:19 -0800 |
---|---|---|
committer | David Keitel <dkeitel@codeaurora.org> | 2016-03-25 16:02:20 -0700 |
commit | e539160232034339d062b51116ca32dbb94cae4e (patch) | |
tree | 3f806a79c6c8322b78cc5c1330a5a96ff267c0b9 /drivers/mfd/wcd9335-regmap.c | |
parent | f019a8590fd1c714df3afcf5a146f8472685967d (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.c | 6 |
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: |