Commit f8c91bae authored by Quentin Schulz's avatar Quentin Schulz Committed by Sebastian Reichel

power: supply: axp20x_battery: add support for DT battery

This adds support in X-Powers AXP20X and AXP22X battery driver for a
fixed battery in DT.

It will take the minimum supported voltage by the battery as defined in
the battery DT node and set the V_OFF register to this value, telling
the system to shut down if the supplied power is below this value.
Signed-off-by: default avatarQuentin Schulz <quentin.schulz@free-electrons.com>
Signed-off-by: default avatarSebastian Reichel <sebastian.reichel@collabora.co.uk>
parent ccce4409
...@@ -433,6 +433,7 @@ static int axp20x_power_probe(struct platform_device *pdev) ...@@ -433,6 +433,7 @@ static int axp20x_power_probe(struct platform_device *pdev)
{ {
struct axp20x_batt_ps *axp20x_batt; struct axp20x_batt_ps *axp20x_batt;
struct power_supply_config psy_cfg = {}; struct power_supply_config psy_cfg = {};
struct power_supply_battery_info info;
if (!of_device_is_available(pdev->dev.of_node)) if (!of_device_is_available(pdev->dev.of_node))
return -ENODEV; return -ENODEV;
...@@ -484,6 +485,15 @@ static int axp20x_power_probe(struct platform_device *pdev) ...@@ -484,6 +485,15 @@ static int axp20x_power_probe(struct platform_device *pdev)
return PTR_ERR(axp20x_batt->batt); return PTR_ERR(axp20x_batt->batt);
} }
if (!power_supply_get_battery_info(axp20x_batt->batt, &info)) {
int vmin = info.voltage_min_design_uv;
if (vmin > 0 && axp20x_set_voltage_min_design(axp20x_batt,
vmin))
dev_err(&pdev->dev,
"couldn't set voltage_min_design\n");
}
return 0; return 0;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment