(2011年09月19日 20:32), ashishj3 wrote:
--- /dev/null +++ b/drivers/mfd/da9052-i2c.c @@ -0,0 +1,142 @@ +/*
- I2C access for DA9052 PMICs.
- Copyright(c) 2011 Dialog Semiconductor Ltd.
- Author: David Dajun Chen dchen@diasemi.com
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
- */
+#include <linux/device.h> +#include <linux/input.h> +#include <linux/mfd/core.h> +#include <linux/i2c.h> +#include <linux/err.h>
+#include <linux/mfd/da9052/da9052.h> +#include <linux/mfd/da9052/reg.h>
+static int da9052_i2c_enable_multiwrite(struct da9052 *da9052) +{
- int reg_val, ret;
- ret = regmap_read(da9052->regmap, DA9052_CONTROL_B_REG, ®_val);
- if (ret < 0)
return ret;
- if (reg_val & DA9052_CONTROL_B_WRITEMODE) {
reg_val = ~DA9052_CONTROL_B_WRITEMODE;
Hi Ashish,
I think you should use reg_val &= ~DA9052_CONTROL_B_WRITEMODE; instead of just "=".
Regards, Paul