Re: [PATCH v2 5/6] hwmon: (aquacomputer_d5next) Add temperature offset control for Aquaero
From: Guenter Roeck
Date: Sun Mar 12 2023 - 13:45:47 EST
On Tue, Feb 14, 2023 at 11:02:20PM +0100, Leonard Anderweit wrote:
> Adds control over the Aquacomputer Aquaero temperature offset for all eight
> temperature sensors.
>
> Signed-off-by: Leonard Anderweit <leonard.anderweit@xxxxxxxxx>
Applied.
Thanks,
Guenter
> ---
> Documentation/hwmon/aquacomputer_d5next.rst | 4 ++--
> drivers/hwmon/aquacomputer_d5next.c | 12 ++++++++----
> 2 files changed, 10 insertions(+), 6 deletions(-)
>
> diff --git a/Documentation/hwmon/aquacomputer_d5next.rst b/Documentation/hwmon/aquacomputer_d5next.rst
> index 7d0d015b1a52..618c826093a2 100644
> --- a/Documentation/hwmon/aquacomputer_d5next.rst
> +++ b/Documentation/hwmon/aquacomputer_d5next.rst
> @@ -25,7 +25,7 @@ communicate through proprietary USB HID protocols.
>
> The Aquaero devices expose eight physical, eight virtual and four calculated
> virtual temperature sensors, as well as two flow sensors. The fans expose their
> -speed (in RPM), power, voltage and current.
> +speed (in RPM), power, voltage and current. Temperature offsets can be controlled.
>
> For the D5 Next pump, available sensors are pump and fan speed, power, voltage
> and current, as well as coolant temperature and eight virtual temp sensors. Also
> @@ -75,7 +75,7 @@ Sysfs entries
>
> ================ ==============================================================
> temp[1-20]_input Physical/virtual temperature sensors (in millidegrees Celsius)
> -temp[1-4]_offset Temperature sensor correction offset (in millidegrees Celsius)
> +temp[1-8]_offset Temperature sensor correction offset (in millidegrees Celsius)
> fan[1-8]_input Pump/fan speed (in RPM) / Flow speed (in dL/h)
> fan5_pulses Quadro flow sensor pulses
> power[1-8]_input Pump/fan power (in micro Watts)
> diff --git a/drivers/hwmon/aquacomputer_d5next.c b/drivers/hwmon/aquacomputer_d5next.c
> index eb185318098a..61c1ffcd8f3b 100644
> --- a/drivers/hwmon/aquacomputer_d5next.c
> +++ b/drivers/hwmon/aquacomputer_d5next.c
> @@ -116,6 +116,9 @@ static u8 aquaero_secondary_ctrl_report[] = {
> #define AQUAERO_FAN_SPEED_OFFSET 0x00
> static u16 aquaero_sensor_fan_offsets[] = { 0x167, 0x173, 0x17f, 0x18B };
>
> +/* Control report offsets for the Aquaero fan controllers */
> +#define AQUAERO_TEMP_CTRL_OFFSET 0xdb
> +
> /* Specs of the D5 Next pump */
> #define D5NEXT_NUM_FANS 2
> #define D5NEXT_NUM_SENSORS 1
> @@ -988,10 +991,10 @@ static const struct hwmon_channel_info *aqc_info[] = {
> HWMON_T_INPUT | HWMON_T_LABEL | HWMON_T_OFFSET,
> HWMON_T_INPUT | HWMON_T_LABEL | HWMON_T_OFFSET,
> HWMON_T_INPUT | HWMON_T_LABEL | HWMON_T_OFFSET,
> - HWMON_T_INPUT | HWMON_T_LABEL,
> - HWMON_T_INPUT | HWMON_T_LABEL,
> - HWMON_T_INPUT | HWMON_T_LABEL,
> - HWMON_T_INPUT | HWMON_T_LABEL,
> + HWMON_T_INPUT | HWMON_T_LABEL | HWMON_T_OFFSET,
> + HWMON_T_INPUT | HWMON_T_LABEL | HWMON_T_OFFSET,
> + HWMON_T_INPUT | HWMON_T_LABEL | HWMON_T_OFFSET,
> + HWMON_T_INPUT | HWMON_T_LABEL | HWMON_T_OFFSET,
> HWMON_T_INPUT | HWMON_T_LABEL,
> HWMON_T_INPUT | HWMON_T_LABEL,
> HWMON_T_INPUT | HWMON_T_LABEL,
> @@ -1295,6 +1298,7 @@ static int aqc_probe(struct hid_device *hdev, const struct hid_device_id *id)
> priv->flow_sensors_start_offset = AQUAERO_FLOW_SENSORS_START;
>
> priv->buffer_size = AQUAERO_CTRL_REPORT_SIZE;
> + priv->temp_ctrl_offset = AQUAERO_TEMP_CTRL_OFFSET;
>
> priv->temp_label = label_temp_sensors;
> priv->virtual_temp_label = label_virtual_temp_sensors;