mirror of
https://github.com/torvalds/linux.git
synced 2026-10-07 05:31:08 -04:00
hwmon: (gsc) add 16bit pre-scaled voltage mode
add a 16-bit pre-scaled voltage mode to adc and clarify that existing pre-scaled mode is 24bit. Signed-off-by: Tim Harvey <[email protected]> Reviewed-by: Guenter Roeck <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Guenter Roeck <[email protected]>
This commit is contained in:
1 parent
a37881dead
commit
a4872f7a4b
2 files changed
+7
-4
No files matched your search
@@ -159,7 +159,7 @@ gsc_hwmon_read(struct device *dev, enum hwmon_sensor_types type, u32 attr,
|
||||
return -EOPNOTSUPP;
|
||||
}
|
||||
|
||||
sz = (ch->mode == mode_voltage) ? 3 : 2;
|
||||
sz = (ch->mode == mode_voltage_24bit) ? 3 : 2;
|
||||
ret = regmap_bulk_read(hwmon->regmap, ch->reg, buf, sz);
|
||||
if (ret)
|
||||
return ret;
|
||||
@@ -186,7 +186,8 @@ gsc_hwmon_read(struct device *dev, enum hwmon_sensor_types type, u32 attr,
|
||||
/* adjust by uV offset */
|
||||
tmp += ch->mvoffset;
|
||||
break;
|
||||
case mode_voltage:
|
||||
case mode_voltage_24bit:
|
||||
case mode_voltage_16bit:
|
||||
/* no adjustment needed */
|
||||
break;
|
||||
}
|
||||
@@ -336,7 +337,8 @@ static int gsc_hwmon_probe(struct platform_device *pdev)
|
||||
HWMON_T_LABEL;
|
||||
i_temp++;
|
||||
break;
|
||||
case mode_voltage:
|
||||
case mode_voltage_24bit:
|
||||
case mode_voltage_16bit:
|
||||
case mode_voltage_raw:
|
||||
if (i_in == GSC_HWMON_MAX_IN_CH) {
|
||||
dev_err(gsc->dev, "too many input channels\n");
|
||||
|
||||
@@ -4,8 +4,9 @@
|
||||
|
||||
enum gsc_hwmon_mode {
|
||||
mode_temperature,
|
||||
mode_voltage,
|
||||
mode_voltage_24bit,
|
||||
mode_voltage_raw,
|
||||
mode_voltage_16bit,
|
||||
mode_max,
|
||||
};
|
||||
|
||||
|
||||
Reference in new issue
Block a user