Skip to content

Commit

Permalink
mfd: wm5102: Mark only extant DSP registers volatile
Browse files Browse the repository at this point in the history
Since regmap sometimes uses volatile as a proxy for readable simply
having a blanket condition can mark too many registers as readable.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
  • Loading branch information
Mark Brown authored and Samuel Ortiz committed Feb 13, 2013
1 parent 0101e53 commit 025d982
Showing 1 changed file with 7 additions and 4 deletions.
11 changes: 7 additions & 4 deletions drivers/mfd/wm5102-tables.c
Original file line number Diff line number Diff line change
Expand Up @@ -1831,9 +1831,6 @@ static bool wm5102_readable_register(struct device *dev, unsigned int reg)

static bool wm5102_volatile_register(struct device *dev, unsigned int reg)
{
if (reg > 0xffff)
return true;

switch (reg) {
case ARIZONA_SOFTWARE_RESET:
case ARIZONA_DEVICE_REVISION:
Expand Down Expand Up @@ -1878,7 +1875,13 @@ static bool wm5102_volatile_register(struct device *dev, unsigned int reg)
case ARIZONA_MIC_DETECT_3:
return true;
default:
return false;
if ((reg >= 0x100000 && reg < 0x106000) ||
(reg >= 0x180000 && reg < 0x180800) ||
(reg >= 0x190000 && reg < 0x194800) ||
(reg >= 0x1a8000 && reg < 0x1a9800))
return true;
else
return false;
}
}

Expand Down

0 comments on commit 025d982

Please sign in to comment.