Commit e83a2e44 authored by Michał Mirosław's avatar Michał Mirosław Committed by Sebastian Reichel

power: supply: core: tabularize HWMON temperature labels

Rework power_supply_hwmon_read_string() to check it's parameters.
This allows to extend it later with labels for other types of
measurements.
Signed-off-by: default avatarMichał Mirosław <mirq-linux@rere.qmqm.pl>
Signed-off-by: default avatarSebastian Reichel <sebastian.reichel@collabora.com>
parent 97ed79f4
...@@ -13,6 +13,11 @@ struct power_supply_hwmon { ...@@ -13,6 +13,11 @@ struct power_supply_hwmon {
unsigned long *props; unsigned long *props;
}; };
static const char *const ps_temp_label[] = {
"temp",
"ambient temp",
};
static int power_supply_hwmon_in_to_property(u32 attr) static int power_supply_hwmon_in_to_property(u32 attr)
{ {
switch (attr) { switch (attr) {
...@@ -180,7 +185,20 @@ static int power_supply_hwmon_read_string(struct device *dev, ...@@ -180,7 +185,20 @@ static int power_supply_hwmon_read_string(struct device *dev,
u32 attr, int channel, u32 attr, int channel,
const char **str) const char **str)
{ {
*str = channel ? "temp ambient" : "temp"; switch (type) {
case hwmon_temp:
*str = ps_temp_label[channel];
break;
default:
/* unreachable, but see:
* gcc bug #51513 [1] and clang bug #978 [2]
*
* [1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=51513
* [2] https://github.com/ClangBuiltLinux/linux/issues/978
*/
break;
}
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