diff --git a/Documentation/devicetree/bindings/power/supply/battery.txt b/Documentation/devicetree/bindings/power/supply/battery.txt index 4d1100bede1b76..c5fddff2df8264 100644 --- a/Documentation/devicetree/bindings/power/supply/battery.txt +++ b/Documentation/devicetree/bindings/power/supply/battery.txt @@ -4,9 +4,10 @@ Required Properties: - compatible: Must be "fixed-battery" Optional Properties: - - terminal-microvolt: dead battery voltage - - design-microwatt-hours: battery design energy - - design-microamp-hours: battery design capacity + - voltage-min-design-microvolt: drained battery voltage + - voltage-max-design-microvolt: charged battery voltage + - energy-full-design-microwatt-hours: battery design energy + - charge-full-design-microamp-hours: battery design capacity Batteries must be referenced by chargers and/or fuel-gauges using a phandle. The phandle's property should be named @@ -16,9 +17,10 @@ Example: bat: battery { compatible = "fixed-battery"; - terminal-microvolt = <3700000>; - design-microwatt-hours = <5290000>; - design-microamp-hours = <1430000>; + voltage-min-design-microvolt = <3200000>; + voltage-max-design-microvolt = <4200000>; + energy-full-design-microwatt-hours = <5290000>; + charge-full-design-microamp-hours = <1430000>; }; charger: charger@0 { diff --git a/drivers/power/supply/bq27xxx_battery.c b/drivers/power/supply/bq27xxx_battery.c index b7b1b337fb9d2f..9deb85d27964f3 100644 --- a/drivers/power/supply/bq27xxx_battery.c +++ b/drivers/power/supply/bq27xxx_battery.c @@ -681,17 +681,17 @@ static int bq27xxx_battery_set_config(struct bq27xxx_device_info *di, if (ret < 0) return ret; - if (info->design_current_uah != -EINVAL - && info->design_energy_uwh != -EINVAL) { + if (info->charge_full_design_uah != -EINVAL + && info->energy_full_design_uwh != -EINVAL) { ret |= bq27xxx_battery_update_dm_setting(di, BQ27XXX_DM_DESIGN_CAP, - info->design_current_uah / 1000); + info->charge_full_design_uah / 1000); ret |= bq27xxx_battery_update_dm_setting(di, BQ27XXX_DM_DESIGN_ENERGY, - info->design_energy_uwh / 1000); + info->energy_full_design_uwh / 1000); } - if (info->terminal_voltage_uv != -EINVAL) + if (info->voltage_min_design_uv != -EINVAL) ret |= bq27xxx_battery_update_dm_setting(di, BQ27XXX_DM_TERMINATE_VOLTAGE, - info->terminal_voltage_uv / 1000); + info->voltage_min_design_uv / 1000); if (ret) { dev_info(di->dev, "updating NVM settings\n"); @@ -974,38 +974,38 @@ void bq27xxx_battery_settings(struct bq27xxx_device_info *di) if (power_supply_get_battery_info(di->bat, &info) < 0) goto out; - if (info.design_energy_uwh != info.design_current_uah) { - if (info.design_energy_uwh == -EINVAL) + if (info.energy_full_design_uwh != info.charge_full_design_uah) { + if (info.energy_full_design_uwh == -EINVAL) dev_warn(di->dev, "missing battery:design-microwatt-hours\n"); - else if (info.design_current_uah == -EINVAL) + else if (info.charge_full_design_uah == -EINVAL) dev_warn(di->dev, "missing battery:design-microamp-hours\n"); } - if (info.design_energy_uwh > 0x7fff * 1000) { + if (info.energy_full_design_uwh > 0x7fff * 1000) { dev_err(di->dev, "invalid battery:design-microwatt-hours %d\n", - info.design_energy_uwh); - info.design_energy_uwh = -EINVAL; + info.energy_full_design_uwh); + info.energy_full_design_uwh = -EINVAL; } - if (info.design_current_uah > 0x7fff * 1000) { + if (info.charge_full_design_uah > 0x7fff * 1000) { dev_err(di->dev, "invalid battery:design-microamp-hours %d\n", - info.design_current_uah); - info.design_current_uah = -EINVAL; + info.charge_full_design_uah); + info.charge_full_design_uah = -EINVAL; } - if ((info.terminal_voltage_uv < BQ27XXX_TERM_V_MIN * 1000 - || info.terminal_voltage_uv > BQ27XXX_TERM_V_MAX * 1000) - && info.terminal_voltage_uv != -EINVAL) { + if ((info.voltage_min_design_uv < BQ27XXX_TERM_V_MIN * 1000 + || info.voltage_min_design_uv > BQ27XXX_TERM_V_MAX * 1000) + && info.voltage_min_design_uv != -EINVAL) { dev_err(di->dev, "invalid battery:terminal-microvolt %d\n", - info.terminal_voltage_uv); - info.terminal_voltage_uv = -EINVAL; + info.voltage_min_design_uv); + info.voltage_min_design_uv = -EINVAL; } - if ((info.design_energy_uwh == -EINVAL - || info.design_current_uah == -EINVAL) - && info.terminal_voltage_uv == -EINVAL) + if ((info.energy_full_design_uwh == -EINVAL + || info.charge_full_design_uah == -EINVAL) + && info.voltage_min_design_uv == -EINVAL) goto out; bq27xxx_battery_set_config(di, &info);