Lines Matching +full:boost +full:- +full:converter

1 // SPDX-License-Identifier: GPL-2.0
84 * generally only awake when VIN is powered or when its boost converter is
95 ret = regmap_read(ip5xxx->regmap, reg, val); in ip5xxx_read()
97 ip5xxx->initialized = false; in ip5xxx_read()
107 ret = regmap_update_bits(ip5xxx->regmap, reg, mask, val); in ip5xxx_update_bits()
109 ip5xxx->initialized = false; in ip5xxx_update_bits()
119 if (ip5xxx->initialized) in ip5xxx_initialize()
164 ip5xxx->initialized = true; in ip5xxx_initialize()
165 dev_dbg(psy->dev.parent, "Initialized after power on\n"); in ip5xxx_initialize()
210 return -EINVAL; in ip5xxx_battery_get_status()
240 return -EINVAL; in ip5xxx_battery_get_charge_type()
287 return -EINVAL; in ip5xxx_battery_get_voltage_max()
326 return ip5xxx_battery_get_status(ip5xxx, &val->intval); in ip5xxx_battery_get_property()
329 return ip5xxx_battery_get_charge_type(ip5xxx, &val->intval); in ip5xxx_battery_get_property()
332 return ip5xxx_battery_get_health(ip5xxx, &val->intval); in ip5xxx_battery_get_property()
335 return ip5xxx_battery_get_voltage_max(ip5xxx, &val->intval); in ip5xxx_battery_get_property()
341 val->intval = 2600000 + DIV_ROUND_CLOSEST(raw * 26855, 100); in ip5xxx_battery_get_property()
348 val->intval = 2600000 + DIV_ROUND_CLOSEST(raw * 26855, 100); in ip5xxx_battery_get_property()
355 val->intval = DIV_ROUND_CLOSEST(raw * 149197, 200); in ip5xxx_battery_get_property()
364 val->intval = 100000 * rval; in ip5xxx_battery_get_property()
368 val->intval = 100000 * 0x1f; in ip5xxx_battery_get_property()
381 val->intval = vmax + 14000 * (rval >> 1); in ip5xxx_battery_get_property()
389 val->intval = vmax + 14000 * 3; in ip5xxx_battery_get_property()
393 return -EINVAL; in ip5xxx_battery_get_property()
413 return -EINVAL; in ip5xxx_battery_set_voltage_max()
444 switch (val->intval) { in ip5xxx_battery_set_property()
453 return -EINVAL; in ip5xxx_battery_set_property()
459 return ip5xxx_battery_set_voltage_max(ip5xxx, val->intval); in ip5xxx_battery_set_property()
462 rval = val->intval / 100000; in ip5xxx_battery_set_property()
471 rval = ((val->intval - vmax) / 14000) << 1; in ip5xxx_battery_set_property()
476 return -EINVAL; in ip5xxx_battery_set_property()
490 .name = "ip5xxx-battery",
522 val->intval = !!(rval & IP5XXX_SYS_CTL0_BOOST_EN); in ip5xxx_boost_get_property()
531 val->intval = 4530000 + 100000 * (rval >> 2); in ip5xxx_boost_get_property()
535 return -EINVAL; in ip5xxx_boost_get_property()
553 rval = val->intval ? IP5XXX_SYS_CTL0_BOOST_EN : 0; in ip5xxx_boost_set_property()
558 rval = ((val->intval - 4530000) / 100000) << 2; in ip5xxx_boost_set_property()
563 return -EINVAL; in ip5xxx_boost_set_property()
574 .name = "ip5xxx-boost",
592 struct device *dev = &client->dev; in ip5xxx_power_probe()
598 return -ENOMEM; in ip5xxx_power_probe()
600 ip5xxx->regmap = devm_regmap_init_i2c(client, &ip5xxx_regmap_config); in ip5xxx_power_probe()
601 if (IS_ERR(ip5xxx->regmap)) in ip5xxx_power_probe()
602 return PTR_ERR(ip5xxx->regmap); in ip5xxx_power_probe()
604 psy_cfg.of_node = dev->of_node; in ip5xxx_power_probe()
630 .name = "ip5xxx-power",