Re: [PATCH] mfd: wm8994: declare dc servo register for wm8958 as volatile

Charles Keepax
2014-08-13T12:32:34Z

On Wed, Aug 13, 2014 at 12:13:38PM +0100, Charles Keepax wrote:
> On Wed, Aug 13, 2014 at 11:46:25AM +0100, Nikesh Oswal wrote:
> > DC Servo register 57h holds the DC offset value after the hardware has
> > completed the DC Servo Correction, so declare this register as volatile
> > because it is changed by the hardware.
> >
> > Signed-off-by: Nikesh Oswal <nikesh@opensource.wolfsonmicro.com>
> > ---
> > drivers/mfd/wm8994-regmap.c | 1 +
> > include/linux/mfd/wm8994/registers.h | 1 +
> > 2 files changed, 2 insertions(+)
> >
> > diff --git a/drivers/mfd/wm8994-regmap.c b/drivers/mfd/wm8994-regmap.c
> > index 2fbce9c..e775565 100644
> > --- a/drivers/mfd/wm8994-regmap.c
> > +++ b/drivers/mfd/wm8994-regmap.c
> > @@ -1169,6 +1169,7 @@ static bool wm8958_volatile_register(struct device *dev, unsigned int reg)
> > case WM8958_FW_MINOR_0:
> > case WM8958_FW_PATCH_1:
> > case WM8958_FW_PATCH_0:
> > + case WM8958_DC_SERVO:
>
> I think you can just use the WM8994_DC_SERVO_4 define the
> register is called DC Servo (4) in the datasheet.
>
> Also would it be worth adding DC_SERVO_1 and DC_SERVO_READBACK as
> they are being treated as volatile on 8994 and look identical in
> the datasheet.

Sorry missed the call to wm8994_volatile_register ignore this
second comment here.

Thanks,
Charles