diff options
author | Enrico Scholz <enrico.scholz@sigma-chemnitz.de> | 2016-08-03 16:14:53 +0200 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2018-04-12 09:20:17 +0200 |
commit | 0369cc0f922f7c795a9d9dafc0904b8aa81c2c9c (patch) | |
tree | 23662950c599993f6852e0c585f3da617c7d5638 | |
parent | 13ce6c24f0b5217bb9f787b0ddd82a8eceb8894a (diff) | |
download | barebox-0369cc0f922f7c795a9d9dafc0904b8aa81c2c9c.tar.gz barebox-0369cc0f922f7c795a9d9dafc0904b8aa81c2c9c.tar.xz |
mfd: da9063: use da906x_reg_update()
Use the previously added da906x_reg_update() function.
NOTE: patch depends on another patchset ("da9063: reset watchdog
timer"),
Signed-off-by: Enrico Scholz <enrico.scholz@sigma-chemnitz.de>
Tested-by: Stefan Christ <s.christ@phytec.de>
Signed-off-by: Christian Hemp <c.hemp@phytec.de>
-rw-r--r-- | drivers/mfd/da9063.c | 11 |
1 files changed, 2 insertions, 9 deletions
diff --git a/drivers/mfd/da9063.c b/drivers/mfd/da9063.c index 68b0723b61..4f09bd384e 100644 --- a/drivers/mfd/da9063.c +++ b/drivers/mfd/da9063.c @@ -111,7 +111,6 @@ static int da9063_watchdog_set_timeout(struct watchdog *wd, unsigned timeout) struct device_d *dev = priv->dev; unsigned int scale = 0; int ret; - u8 val; if (timeout > 131) return -EINVAL; @@ -132,14 +131,8 @@ static int da9063_watchdog_set_timeout(struct watchdog *wd, unsigned timeout) scale++; /* scale 0 disables the WD */ } - ret = i2c_read_reg(priv->client, DA9063_REG_CONTROL_D, &val, 1); - if (ret < 0) - return ret; - - val &= ~DA9063_TWDSCALE_MASK; - val |= scale; - - ret = i2c_write_reg(priv->client, DA9063_REG_CONTROL_D, &val, 1); + ret = da906x_reg_update(priv, DA9063_REG_CONTROL_D, + DA9063_TWDSCALE_MASK, scale); if (ret < 0) return ret; |