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: Quentin Schulz <quentin.schulz@free-electrons.com> Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.co.uk>
This commit is contained in:
committed by
Sebastian Reichel
parent
ccce440956
commit
f8c91bae0c
@ -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)
|
|||||||
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;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user