]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
power: supply: core: constify power_supply_battery_info::ocv_table
authorThomas Weißschuh <linux@weissschuh.net>
Sat, 5 Oct 2024 10:04:21 +0000 (12:04 +0200)
committerSebastian Reichel <sebastian.reichel@collabora.com>
Tue, 15 Oct 2024 20:14:12 +0000 (22:14 +0200)
The power supply core never modifies the ocv table.
Reflect this in the API, so drivers can mark their static tables as
const.

Signed-off-by: Thomas Weißschuh <linux@weissschuh.net>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Link: https://lore.kernel.org/r/20241005-power-supply-battery-const-v1-5-c1f721927048@weissschuh.net
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
drivers/power/supply/power_supply_core.c
include/linux/power_supply.h

index a01703fa83c0d90ec630782e67aa3c2c406d51dd..5aefba2ddcda12a9f24d096fa361aa8e4ce1a681 100644 (file)
@@ -777,7 +777,7 @@ int power_supply_get_battery_info(struct power_supply *psy,
                tab_len = size / (2 * sizeof(__be32));
                info->ocv_table_size[index] = tab_len;
 
-               table = info->ocv_table[index] =
+               info->ocv_table[index] = table =
                        devm_kcalloc(&psy->dev, tab_len, sizeof(*table), GFP_KERNEL);
                if (!info->ocv_table[index]) {
                        power_supply_put_battery_info(psy, info);
@@ -1093,7 +1093,7 @@ EXPORT_SYMBOL_GPL(power_supply_get_maintenance_charging_setting);
  *
  * Return: the battery capacity.
  */
-int power_supply_ocv2cap_simple(struct power_supply_battery_ocv_table *table,
+int power_supply_ocv2cap_simple(const struct power_supply_battery_ocv_table *table,
                                int table_len, int ocv)
 {
        int i, high, low;
@@ -1118,7 +1118,7 @@ int power_supply_ocv2cap_simple(struct power_supply_battery_ocv_table *table,
 }
 EXPORT_SYMBOL_GPL(power_supply_ocv2cap_simple);
 
-struct power_supply_battery_ocv_table *
+const struct power_supply_battery_ocv_table *
 power_supply_find_ocv2cap_table(struct power_supply_battery_info *info,
                                int temp, int *table_len)
 {
@@ -1149,7 +1149,7 @@ EXPORT_SYMBOL_GPL(power_supply_find_ocv2cap_table);
 int power_supply_batinfo_ocv2cap(struct power_supply_battery_info *info,
                                 int ocv, int temp)
 {
-       struct power_supply_battery_ocv_table *table;
+       const struct power_supply_battery_ocv_table *table;
        int table_len;
 
        table = power_supply_find_ocv2cap_table(info, temp, &table_len);
index 9253411c105f27177181f9b0a84285a7b24bc954..4e29ec39c18f26f3e15343e198f74e8a96613e92 100644 (file)
@@ -750,7 +750,7 @@ struct power_supply_battery_info {
        int temp_alert_max;
        int temp_min;
        int temp_max;
-       struct power_supply_battery_ocv_table *ocv_table[POWER_SUPPLY_OCV_TEMP_MAX];
+       const struct power_supply_battery_ocv_table *ocv_table[POWER_SUPPLY_OCV_TEMP_MAX];
        int ocv_table_size[POWER_SUPPLY_OCV_TEMP_MAX];
        const struct power_supply_resistance_temp_table *resist_table;
        int resist_table_size;
@@ -797,9 +797,9 @@ extern bool power_supply_battery_info_has_prop(struct power_supply_battery_info
 extern int power_supply_battery_info_get_prop(struct power_supply_battery_info *info,
                                              enum power_supply_property psp,
                                              union power_supply_propval *val);
-extern int power_supply_ocv2cap_simple(struct power_supply_battery_ocv_table *table,
+extern int power_supply_ocv2cap_simple(const struct power_supply_battery_ocv_table *table,
                                       int table_len, int ocv);
-extern struct power_supply_battery_ocv_table *
+extern const struct power_supply_battery_ocv_table *
 power_supply_find_ocv2cap_table(struct power_supply_battery_info *info,
                                int temp, int *table_len);
 extern int power_supply_batinfo_ocv2cap(struct power_supply_battery_info *info,