Lines Matching refs:da9052
17 #include <linux/mfd/da9052/da9052.h>
18 #include <linux/mfd/da9052/reg.h>
58 static int da9052_i2c_fix(struct da9052 *da9052, unsigned char reg)
62 switch (da9052->chip_id) {
69 return regmap_read(da9052->regmap,
89 static int da9052_i2c_disable_multiwrite(struct da9052 *da9052)
93 ret = regmap_read(da9052->regmap, DA9052_CONTROL_B_REG, ®_val);
99 ret = regmap_write(da9052->regmap, DA9052_CONTROL_B_REG,
109 {"da9052", DA9052},
120 { .compatible = "dlg,da9052", .data = &da9052_i2c_id[0] },
132 struct da9052 *da9052;
135 da9052 = devm_kzalloc(&client->dev, sizeof(struct da9052), GFP_KERNEL);
136 if (!da9052)
139 da9052->dev = &client->dev;
140 da9052->chip_irq = client->irq;
141 da9052->fix_io = da9052_i2c_fix;
143 i2c_set_clientdata(client, da9052);
145 da9052->regmap = devm_regmap_init_i2c(client, &da9052_regmap_config);
146 if (IS_ERR(da9052->regmap)) {
147 ret = PTR_ERR(da9052->regmap);
153 ret = da9052_i2c_disable_multiwrite(da9052);
173 return da9052_device_init(da9052, id->driver_data);
178 struct da9052 *da9052 = i2c_get_clientdata(client);
180 da9052_device_exit(da9052);
189 .name = "da9052",