Skip to content

Commit ce20d5b

Browse files
t-8chsre
authored andcommitted
power: supply: core: constify power_supply_battery_info::ocv_table
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>
1 parent 840683c commit ce20d5b

2 files changed

Lines changed: 7 additions & 7 deletions

File tree

drivers/power/supply/power_supply_core.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -777,7 +777,7 @@ int power_supply_get_battery_info(struct power_supply *psy,
777777
tab_len = size / (2 * sizeof(__be32));
778778
info->ocv_table_size[index] = tab_len;
779779

780-
table = info->ocv_table[index] =
780+
info->ocv_table[index] = table =
781781
devm_kcalloc(&psy->dev, tab_len, sizeof(*table), GFP_KERNEL);
782782
if (!info->ocv_table[index]) {
783783
power_supply_put_battery_info(psy, info);
@@ -1093,7 +1093,7 @@ EXPORT_SYMBOL_GPL(power_supply_get_maintenance_charging_setting);
10931093
*
10941094
* Return: the battery capacity.
10951095
*/
1096-
int power_supply_ocv2cap_simple(struct power_supply_battery_ocv_table *table,
1096+
int power_supply_ocv2cap_simple(const struct power_supply_battery_ocv_table *table,
10971097
int table_len, int ocv)
10981098
{
10991099
int i, high, low;
@@ -1118,7 +1118,7 @@ int power_supply_ocv2cap_simple(struct power_supply_battery_ocv_table *table,
11181118
}
11191119
EXPORT_SYMBOL_GPL(power_supply_ocv2cap_simple);
11201120

1121-
struct power_supply_battery_ocv_table *
1121+
const struct power_supply_battery_ocv_table *
11221122
power_supply_find_ocv2cap_table(struct power_supply_battery_info *info,
11231123
int temp, int *table_len)
11241124
{
@@ -1149,7 +1149,7 @@ EXPORT_SYMBOL_GPL(power_supply_find_ocv2cap_table);
11491149
int power_supply_batinfo_ocv2cap(struct power_supply_battery_info *info,
11501150
int ocv, int temp)
11511151
{
1152-
struct power_supply_battery_ocv_table *table;
1152+
const struct power_supply_battery_ocv_table *table;
11531153
int table_len;
11541154

11551155
table = power_supply_find_ocv2cap_table(info, temp, &table_len);

include/linux/power_supply.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -750,7 +750,7 @@ struct power_supply_battery_info {
750750
int temp_alert_max;
751751
int temp_min;
752752
int temp_max;
753-
struct power_supply_battery_ocv_table *ocv_table[POWER_SUPPLY_OCV_TEMP_MAX];
753+
const struct power_supply_battery_ocv_table *ocv_table[POWER_SUPPLY_OCV_TEMP_MAX];
754754
int ocv_table_size[POWER_SUPPLY_OCV_TEMP_MAX];
755755
const struct power_supply_resistance_temp_table *resist_table;
756756
int resist_table_size;
@@ -797,9 +797,9 @@ extern bool power_supply_battery_info_has_prop(struct power_supply_battery_info
797797
extern int power_supply_battery_info_get_prop(struct power_supply_battery_info *info,
798798
enum power_supply_property psp,
799799
union power_supply_propval *val);
800-
extern int power_supply_ocv2cap_simple(struct power_supply_battery_ocv_table *table,
800+
extern int power_supply_ocv2cap_simple(const struct power_supply_battery_ocv_table *table,
801801
int table_len, int ocv);
802-
extern struct power_supply_battery_ocv_table *
802+
extern const struct power_supply_battery_ocv_table *
803803
power_supply_find_ocv2cap_table(struct power_supply_battery_info *info,
804804
int temp, int *table_len);
805805
extern int power_supply_batinfo_ocv2cap(struct power_supply_battery_info *info,

0 commit comments

Comments
 (0)