Lines Matching defs:charger

2 // Battery charger driver for TI's tps65217
8 * Battery charger driver for TI's tps65217
45 static int tps65217_config_charger(struct tps65217_charger *charger)
54 * is not recommended to do so. In sleep mode, the charger continues
56 * values. Therefore, the charger would get the wrong temperature
67 ret = tps65217_clear_bits(charger->tps, TPS65217_REG_CHGCONFIG1,
71 dev_err(charger->dev,
79 static int tps65217_enable_charging(struct tps65217_charger *charger)
83 /* charger already enabled */
84 if (charger->online)
87 dev_dbg(charger->dev, "%s: enable charging\n", __func__);
88 ret = tps65217_set_bits(charger->tps, TPS65217_REG_CHGCONFIG1,
93 dev_err(charger->dev,
99 charger->online = 1;
108 struct tps65217_charger *charger = power_supply_get_drvdata(psy);
111 val->intval = charger->online;
120 struct tps65217_charger *charger = dev;
122 charger->prev_online = charger->online;
124 ret = tps65217_reg_read(charger->tps, TPS65217_REG_STATUS, &val);
126 dev_err(charger->dev, "%s: Error in reading reg 0x%x\n",
131 dev_dbg(charger->dev, "%s: 0x%x\n", __func__, val);
133 /* check for charger status bit */
135 ret = tps65217_enable_charging(charger);
137 dev_err(charger->dev,
138 "failed to enable charger: %d\n", ret);
142 charger->online = 0;
145 if (charger->prev_online != charger->online)
146 power_supply_changed(charger->psy);
148 ret = tps65217_reg_read(charger->tps, TPS65217_REG_CHGCONFIG0, &val);
150 dev_err(charger->dev, "%s: Error in reading reg 0x%x\n",
156 dev_dbg(charger->dev, "%s: charger is charging\n", __func__);
158 dev_dbg(charger->dev,
159 "%s: charger is NOT charging\n", __func__);
177 .name = "tps65217-charger",
187 struct tps65217_charger *charger;
194 charger = devm_kzalloc(&pdev->dev, sizeof(*charger), GFP_KERNEL);
195 if (!charger)
198 platform_set_drvdata(pdev, charger);
199 charger->tps = tps;
200 charger->dev = &pdev->dev;
203 cfg.drv_data = charger;
205 charger->psy = devm_power_supply_register(&pdev->dev,
208 if (IS_ERR(charger->psy)) {
210 return PTR_ERR(charger->psy);
216 ret = tps65217_config_charger(charger);
218 dev_err(charger->dev, "charger config failed, err %d\n", ret);
225 charger, "ktps65217charger");
228 dev_err(charger->dev,
233 charger->poll_task = poll_task;
237 /* Create IRQ threads for charger interrupts */
241 IRQF_ONESHOT, "tps65217-charger",
242 charger);
244 dev_err(charger->dev,
251 tps65217_charger_irq(-1, charger);
259 struct tps65217_charger *charger = platform_get_drvdata(pdev);
261 if (charger->poll_task)
262 kthread_stop(charger->poll_task);
268 { .compatible = "ti,tps65217-charger", },
277 .name = "tps65217-charger",
286 MODULE_DESCRIPTION("TPS65217 battery charger driver");