Symbol: da9063
drivers/mfd/da9063-core.c
113
static int da9063_clear_fault_log(struct da9063 *da9063)
drivers/mfd/da9063-core.c
118
ret = regmap_read(da9063->regmap, DA9063_REG_FAULT_LOG, &fault_log);
drivers/mfd/da9063-core.c
120
dev_err(da9063->dev, "Cannot read FAULT_LOG.\n");
drivers/mfd/da9063-core.c
126
dev_dbg(da9063->dev,
drivers/mfd/da9063-core.c
129
dev_dbg(da9063->dev,
drivers/mfd/da9063-core.c
132
dev_dbg(da9063->dev,
drivers/mfd/da9063-core.c
135
dev_dbg(da9063->dev,
drivers/mfd/da9063-core.c
138
dev_dbg(da9063->dev,
drivers/mfd/da9063-core.c
141
dev_dbg(da9063->dev,
drivers/mfd/da9063-core.c
144
dev_dbg(da9063->dev,
drivers/mfd/da9063-core.c
147
dev_dbg(da9063->dev,
drivers/mfd/da9063-core.c
151
ret = regmap_write(da9063->regmap,
drivers/mfd/da9063-core.c
155
dev_err(da9063->dev,
drivers/mfd/da9063-core.c
161
int da9063_device_init(struct da9063 *da9063, unsigned int irq)
drivers/mfd/da9063-core.c
165
ret = da9063_clear_fault_log(da9063);
drivers/mfd/da9063-core.c
167
dev_err(da9063->dev, "Cannot clear fault log\n");
drivers/mfd/da9063-core.c
169
da9063->flags = 0;
drivers/mfd/da9063-core.c
170
da9063->irq_base = -1;
drivers/mfd/da9063-core.c
171
da9063->chip_irq = irq;
drivers/mfd/da9063-core.c
173
ret = da9063_irq_init(da9063);
drivers/mfd/da9063-core.c
175
dev_err(da9063->dev, "Cannot initialize interrupts.\n");
drivers/mfd/da9063-core.c
179
da9063->irq_base = regmap_irq_chip_get_base(da9063->regmap_irq);
drivers/mfd/da9063-core.c
181
ret = devm_mfd_add_devices(da9063->dev, PLATFORM_DEVID_NONE,
drivers/mfd/da9063-core.c
184
NULL, da9063->irq_base, NULL);
drivers/mfd/da9063-core.c
186
dev_err(da9063->dev, "Failed to add child devices\n");
drivers/mfd/da9063-core.c
190
if (da9063->type == PMIC_TYPE_DA9063) {
drivers/mfd/da9063-core.c
191
ret = devm_mfd_add_devices(da9063->dev, PLATFORM_DEVID_NONE,
drivers/mfd/da9063-core.c
193
NULL, da9063->irq_base, NULL);
drivers/mfd/da9063-core.c
195
dev_err(da9063->dev, "Failed to add child devices\n");
drivers/mfd/da9063-i2c.c
120
static int da9063_get_device_type(struct i2c_client *i2c, struct da9063 *da9063)
drivers/mfd/da9063-i2c.c
131
dev_err(da9063->dev,
drivers/mfd/da9063-i2c.c
137
dev_info(da9063->dev,
drivers/mfd/da9063-i2c.c
141
da9063->variant_code =
drivers/mfd/da9063-i2c.c
372
struct da9063 *da9063;
drivers/mfd/da9063-i2c.c
375
da9063 = devm_kzalloc(&i2c->dev, sizeof(struct da9063), GFP_KERNEL);
drivers/mfd/da9063-i2c.c
376
if (da9063 == NULL)
drivers/mfd/da9063-i2c.c
379
i2c_set_clientdata(i2c, da9063);
drivers/mfd/da9063-i2c.c
380
da9063->dev = &i2c->dev;
drivers/mfd/da9063-i2c.c
381
da9063->chip_irq = i2c->irq;
drivers/mfd/da9063-i2c.c
382
da9063->type = id->driver_data;
drivers/mfd/da9063-i2c.c
384
ret = da9063_get_device_type(i2c, da9063);
drivers/mfd/da9063-i2c.c
388
switch (da9063->type) {
drivers/mfd/da9063-i2c.c
390
switch (da9063->variant_code) {
drivers/mfd/da9063-i2c.c
418
dev_err(da9063->dev,
drivers/mfd/da9063-i2c.c
424
switch (da9063->variant_code) {
drivers/mfd/da9063-i2c.c
444
dev_err(da9063->dev,
drivers/mfd/da9063-i2c.c
450
dev_err(da9063->dev, "Chip type not supported\n");
drivers/mfd/da9063-i2c.c
454
da9063->regmap = devm_regmap_init_i2c(i2c, &da9063_regmap_config);
drivers/mfd/da9063-i2c.c
455
if (IS_ERR(da9063->regmap)) {
drivers/mfd/da9063-i2c.c
456
ret = PTR_ERR(da9063->regmap);
drivers/mfd/da9063-i2c.c
457
dev_err(da9063->dev, "Failed to allocate register map: %d\n",
drivers/mfd/da9063-i2c.c
464
ret = regmap_clear_bits(da9063->regmap, DA9063_REG_CONFIG_J,
drivers/mfd/da9063-i2c.c
467
dev_err(da9063->dev, "Failed to set Two-Wire Bus Mode.\n");
drivers/mfd/da9063-i2c.c
475
return da9063_device_init(da9063, i2c->irq);
drivers/mfd/da9063-irq.c
171
int da9063_irq_init(struct da9063 *da9063)
drivers/mfd/da9063-irq.c
176
if (!da9063->chip_irq) {
drivers/mfd/da9063-irq.c
177
dev_err(da9063->dev, "No IRQ configured\n");
drivers/mfd/da9063-irq.c
181
if (da9063->type == PMIC_TYPE_DA9063)
drivers/mfd/da9063-irq.c
186
ret = devm_regmap_add_irq_chip(da9063->dev, da9063->regmap,
drivers/mfd/da9063-irq.c
187
da9063->chip_irq,
drivers/mfd/da9063-irq.c
189
da9063->irq_base, irq_chip, &da9063->regmap_irq);
drivers/mfd/da9063-irq.c
191
dev_err(da9063->dev, "Failed to reguest IRQ %d: %d\n",
drivers/mfd/da9063-irq.c
192
da9063->chip_irq, ret);
drivers/regulator/da9063-regulator.c
1004
da9063->regmap, regl->info->sleep);
drivers/regulator/da9063-regulator.c
1011
da9063->regmap, regl->info->suspend_sleep);
drivers/regulator/da9063-regulator.c
1017
da9063->regmap, regl->info->vmon);
drivers/regulator/da9063-regulator.c
1029
config.regmap = da9063->regmap;
drivers/regulator/da9063-regulator.c
147
struct da9063 *hw;
drivers/regulator/da9063-regulator.c
736
struct da9063 *hw = regulators->regulator[0].hw;
drivers/regulator/da9063-regulator.c
836
struct da9063 *da9063 = dev_get_drvdata(pdev->dev.parent);
drivers/regulator/da9063-regulator.c
843
if (da9063->type == PMIC_TYPE_DA9063L)
drivers/regulator/da9063-regulator.c
889
struct da9063 *da9063 = dev_get_drvdata(pdev->dev.parent);
drivers/regulator/da9063-regulator.c
909
if (model->type == da9063->type)
drivers/regulator/da9063-regulator.c
914
da9063->type);
drivers/regulator/da9063-regulator.c
918
ret = regmap_read(da9063->regmap, DA9063_REG_CONFIG_H, &val);
drivers/regulator/da9063-regulator.c
982
regl->hw = da9063;
drivers/regulator/da9063-regulator.c
990
da9063->regmap, regl->info->mode);
drivers/regulator/da9063-regulator.c
997
da9063->regmap, regl->info->suspend);
drivers/rtc/rtc-da9063.c
375
struct da9063 *chip = dev_get_drvdata(pdev->dev.parent);
drivers/watchdog/da9063_wdt.c
101
ret = da9063_wdt_update_timeout(da9063, wdd->timeout);
drivers/watchdog/da9063_wdt.c
103
dev_err(da9063->dev, "Watchdog failed to start (err = %d)\n",
drivers/watchdog/da9063_wdt.c
111
struct da9063 *da9063 = watchdog_get_drvdata(wdd);
drivers/watchdog/da9063_wdt.c
114
ret = da9063_wdt_disable_timer(da9063);
drivers/watchdog/da9063_wdt.c
116
dev_alert(da9063->dev, "Watchdog failed to stop (err = %d)\n",
drivers/watchdog/da9063_wdt.c
124
struct da9063 *da9063 = watchdog_get_drvdata(wdd);
drivers/watchdog/da9063_wdt.c
134
ret = regmap_write(da9063->regmap, DA9063_REG_CONTROL_F,
drivers/watchdog/da9063_wdt.c
137
dev_alert(da9063->dev, "Failed to ping the watchdog (err = %d)\n",
drivers/watchdog/da9063_wdt.c
146
struct da9063 *da9063 = watchdog_get_drvdata(wdd);
drivers/watchdog/da9063_wdt.c
160
ret = da9063_wdt_update_timeout(da9063, timeout);
drivers/watchdog/da9063_wdt.c
163
dev_err(da9063->dev, "Failed to set watchdog timeout (err = %d)\n",
drivers/watchdog/da9063_wdt.c
174
struct da9063 *da9063 = watchdog_get_drvdata(wdd);
drivers/watchdog/da9063_wdt.c
175
struct i2c_client *client = to_i2c_client(da9063->dev);
drivers/watchdog/da9063_wdt.c
191
dev_alert(da9063->dev, "Failed to shutdown (err = %d)\n",
drivers/watchdog/da9063_wdt.c
217
struct da9063 *da9063;
drivers/watchdog/da9063_wdt.c
224
da9063 = dev_get_drvdata(dev->parent);
drivers/watchdog/da9063_wdt.c
225
if (!da9063)
drivers/watchdog/da9063_wdt.c
232
da9063->use_sw_pm = device_property_present(dev, "dlg,use-sw-pm");
drivers/watchdog/da9063_wdt.c
243
watchdog_set_drvdata(wdd, da9063);
drivers/watchdog/da9063_wdt.c
249
timeout = da9063_wdt_read_timeout(da9063);
drivers/watchdog/da9063_wdt.c
259
da9063_wdt_update_timeout(da9063, wdd->timeout);
drivers/watchdog/da9063_wdt.c
269
struct da9063 *da9063 = watchdog_get_drvdata(wdd);
drivers/watchdog/da9063_wdt.c
271
if (!da9063->use_sw_pm)
drivers/watchdog/da9063_wdt.c
283
struct da9063 *da9063 = watchdog_get_drvdata(wdd);
drivers/watchdog/da9063_wdt.c
285
if (!da9063->use_sw_pm)
drivers/watchdog/da9063_wdt.c
55
static unsigned int da9063_wdt_read_timeout(struct da9063 *da9063)
drivers/watchdog/da9063_wdt.c
59
regmap_read(da9063->regmap, DA9063_REG_CONTROL_D, &val);
drivers/watchdog/da9063_wdt.c
64
static int da9063_wdt_disable_timer(struct da9063 *da9063)
drivers/watchdog/da9063_wdt.c
66
return regmap_update_bits(da9063->regmap, DA9063_REG_CONTROL_D,
drivers/watchdog/da9063_wdt.c
72
da9063_wdt_update_timeout(struct da9063 *da9063, unsigned int timeout)
drivers/watchdog/da9063_wdt.c
85
ret = da9063_wdt_disable_timer(da9063);
drivers/watchdog/da9063_wdt.c
92
return regmap_update_bits(da9063->regmap, DA9063_REG_CONTROL_D,
drivers/watchdog/da9063_wdt.c
98
struct da9063 *da9063 = watchdog_get_drvdata(wdd);
include/linux/mfd/da9063/core.h
92
int da9063_device_init(struct da9063 *da9063, unsigned int irq);
include/linux/mfd/da9063/core.h
93
int da9063_irq_init(struct da9063 *da9063);