diff mbox series

[v8,08/10] power: supply: add battery parameters

Message ID 48f250bf6928929f60764c4334c60611b46233c4.1585902279.git.matti.vaittinen@fi.rohmeurope.com (mailing list archive)
State New, archived
Headers show
Series Support ROHM BD99954 charger IC | expand

Commit Message

Vaittinen, Matti April 3, 2020, 8:47 a.m. UTC
Add parsing of new device-tree battery bindings.

     - trickle-charge-current-microamp
     - precharge-upper-limit-microvolt
     - re-charge-voltage-microvolt
     - over-voltage-threshold-microvolt

Signed-off-by: Matti Vaittinen <matti.vaittinen@fi.rohmeurope.com>
---

No changes since v7

 drivers/power/supply/power_supply_core.c | 8 ++++++++
 include/linux/power_supply.h             | 4 ++++
 2 files changed, 12 insertions(+)

Comments

Sebastian Reichel April 5, 2020, 3:35 a.m. UTC | #1
Hi,

On Fri, Apr 03, 2020 at 11:47:43AM +0300, Matti Vaittinen wrote:
> Add parsing of new device-tree battery bindings.
> 
>      - trickle-charge-current-microamp
>      - precharge-upper-limit-microvolt
>      - re-charge-voltage-microvolt
>      - over-voltage-threshold-microvolt
> 
> Signed-off-by: Matti Vaittinen <matti.vaittinen@fi.rohmeurope.com>

Reviewed-by: Sebastian Reichel <sebastian.reichel@collabora.com>

-- Sebastian

> ---
> No changes since v7
> 
>  drivers/power/supply/power_supply_core.c | 8 ++++++++
>  include/linux/power_supply.h             | 4 ++++
>  2 files changed, 12 insertions(+)
> 
> diff --git a/drivers/power/supply/power_supply_core.c b/drivers/power/supply/power_supply_core.c
> index 1a9a9fae73d3..02b37fe6061c 100644
> --- a/drivers/power/supply/power_supply_core.c
> +++ b/drivers/power/supply/power_supply_core.c
> @@ -620,10 +620,18 @@ int power_supply_get_battery_info(struct power_supply *psy,
>  			     &info->voltage_min_design_uv);
>  	of_property_read_u32(battery_np, "voltage-max-design-microvolt",
>  			     &info->voltage_max_design_uv);
> +	of_property_read_u32(battery_np, "trickle-charge-current-microamp",
> +			     &info->tricklecharge_current_ua);
>  	of_property_read_u32(battery_np, "precharge-current-microamp",
>  			     &info->precharge_current_ua);
> +	of_property_read_u32(battery_np, "precharge-upper-limit-microvolt",
> +			     &info->precharge_voltage_max_uv);
>  	of_property_read_u32(battery_np, "charge-term-current-microamp",
>  			     &info->charge_term_current_ua);
> +	of_property_read_u32(battery_np, "re-charge-voltage-microvolt",
> +			     &info->charge_restart_voltage_uv);
> +	of_property_read_u32(battery_np, "over-voltage-threshold-microvolt",
> +			     &info->overvoltage_limit_uv);
>  	of_property_read_u32(battery_np, "constant-charge-current-max-microamp",
>  			     &info->constant_charge_current_max_ua);
>  	of_property_read_u32(battery_np, "constant-charge-voltage-max-microvolt",
> diff --git a/include/linux/power_supply.h b/include/linux/power_supply.h
> index dcd5a71e6c67..d01322d1ab52 100644
> --- a/include/linux/power_supply.h
> +++ b/include/linux/power_supply.h
> @@ -346,8 +346,12 @@ struct power_supply_battery_info {
>  	int charge_full_design_uah;	    /* microAmp-hours */
>  	int voltage_min_design_uv;	    /* microVolts */
>  	int voltage_max_design_uv;	    /* microVolts */
> +	int tricklecharge_current_ua;	    /* microAmps */
>  	int precharge_current_ua;	    /* microAmps */
> +	int precharge_voltage_max_uv;	    /* microVolts */
>  	int charge_term_current_ua;	    /* microAmps */
> +	int charge_restart_voltage_uv;	    /* microVolts */
> +	int overvoltage_limit_uv;	    /* microVolts */
>  	int constant_charge_current_max_ua; /* microAmps */
>  	int constant_charge_voltage_max_uv; /* microVolts */
>  	int factory_internal_resistance_uohm;   /* microOhms */
> -- 
> 2.21.0
> 
> 
> -- 
> Matti Vaittinen, Linux device drivers
> ROHM Semiconductors, Finland SWDC
> Kiviharjunlenkki 1E
> 90220 OULU
> FINLAND
> 
> ~~~ "I don't think so," said Rene Descartes. Just then he vanished ~~~
> Simon says - in Latin please.
> ~~~ "non cogito me" dixit Rene Descarte, deinde evanescavit ~~~
> Thanks to Simon Glass for the translation =]
diff mbox series

Patch

diff --git a/drivers/power/supply/power_supply_core.c b/drivers/power/supply/power_supply_core.c
index 1a9a9fae73d3..02b37fe6061c 100644
--- a/drivers/power/supply/power_supply_core.c
+++ b/drivers/power/supply/power_supply_core.c
@@ -620,10 +620,18 @@  int power_supply_get_battery_info(struct power_supply *psy,
 			     &info->voltage_min_design_uv);
 	of_property_read_u32(battery_np, "voltage-max-design-microvolt",
 			     &info->voltage_max_design_uv);
+	of_property_read_u32(battery_np, "trickle-charge-current-microamp",
+			     &info->tricklecharge_current_ua);
 	of_property_read_u32(battery_np, "precharge-current-microamp",
 			     &info->precharge_current_ua);
+	of_property_read_u32(battery_np, "precharge-upper-limit-microvolt",
+			     &info->precharge_voltage_max_uv);
 	of_property_read_u32(battery_np, "charge-term-current-microamp",
 			     &info->charge_term_current_ua);
+	of_property_read_u32(battery_np, "re-charge-voltage-microvolt",
+			     &info->charge_restart_voltage_uv);
+	of_property_read_u32(battery_np, "over-voltage-threshold-microvolt",
+			     &info->overvoltage_limit_uv);
 	of_property_read_u32(battery_np, "constant-charge-current-max-microamp",
 			     &info->constant_charge_current_max_ua);
 	of_property_read_u32(battery_np, "constant-charge-voltage-max-microvolt",
diff --git a/include/linux/power_supply.h b/include/linux/power_supply.h
index dcd5a71e6c67..d01322d1ab52 100644
--- a/include/linux/power_supply.h
+++ b/include/linux/power_supply.h
@@ -346,8 +346,12 @@  struct power_supply_battery_info {
 	int charge_full_design_uah;	    /* microAmp-hours */
 	int voltage_min_design_uv;	    /* microVolts */
 	int voltage_max_design_uv;	    /* microVolts */
+	int tricklecharge_current_ua;	    /* microAmps */
 	int precharge_current_ua;	    /* microAmps */
+	int precharge_voltage_max_uv;	    /* microVolts */
 	int charge_term_current_ua;	    /* microAmps */
+	int charge_restart_voltage_uv;	    /* microVolts */
+	int overvoltage_limit_uv;	    /* microVolts */
 	int constant_charge_current_max_ua; /* microAmps */
 	int constant_charge_voltage_max_uv; /* microVolts */
 	int factory_internal_resistance_uohm;   /* microOhms */