mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/herbert/cryptodev-2.6.git
synced 2026-04-18 03:23:53 -04:00
hwmon: Introduce 64-bit energy attribute support
Many chips require 64-bit variables to display the accumulated energy, even more so since the energy units are micro-Joule. Add new sensor type "energy64" to support reporting the chip energy as 64-bit values. Changing the entire hardware monitoring API is not feasible, and it is only really necessary to support reading 64-bit values for the "energyX_input" attribute. For this reason, keep the API as-is and use type casts on both ends to pass 64-bit pointers when reading the accumulated energy. On the write side (which is only useful for the energyX_enable attribute), keep passing the written value as long. Reviewed-by: Chris Packham <chris.packham@alliedtelesis.co.nz> Tested-by: Chris Packham <chris.packham@alliedtelesis.co.nz> # INA780 Signed-off-by: Guenter Roeck <linux@roeck-us.net>
This commit is contained in:
@@ -159,6 +159,7 @@ It contains following fields:
|
||||
hwmon_curr Current sensor
|
||||
hwmon_power Power sensor
|
||||
hwmon_energy Energy sensor
|
||||
hwmon_energy64 Energy sensor, reported as 64-bit signed value
|
||||
hwmon_humidity Humidity sensor
|
||||
hwmon_fan Fan speed sensor
|
||||
hwmon_pwm PWM control
|
||||
@@ -288,6 +289,8 @@ Parameters:
|
||||
The sensor channel number.
|
||||
val:
|
||||
Pointer to attribute value.
|
||||
For hwmon_energy64, `'val`' is passed as `long *` but needs
|
||||
a typecast to `s64 *`.
|
||||
|
||||
Return value:
|
||||
0 on success, a negative error number otherwise.
|
||||
|
||||
Reference in New Issue
Block a user