Commit 866e630a authored by Leonard Anderweit's avatar Leonard Anderweit Committed by Guenter Roeck

hwmon: (aquacomputer_d5next) Add temperature offset control for Aquaero

Adds control over the Aquacomputer Aquaero temperature offset for all eight
temperature sensors.
Signed-off-by: default avatarLeonard Anderweit <leonard.anderweit@gmail.com>
Link: https://lore.kernel.org/r/20230214220221.15003-6-leonard.anderweit@gmail.comSigned-off-by: default avatarGuenter Roeck <linux@roeck-us.net>
parent 6c83ccb1
...@@ -25,7 +25,7 @@ communicate through proprietary USB HID protocols. ...@@ -25,7 +25,7 @@ communicate through proprietary USB HID protocols.
The Aquaero devices expose eight physical, eight virtual and four calculated The Aquaero devices expose eight physical, eight virtual and four calculated
virtual temperature sensors, as well as two flow sensors. The fans expose their 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 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 and current, as well as coolant temperature and eight virtual temp sensors. Also
...@@ -75,7 +75,7 @@ Sysfs entries ...@@ -75,7 +75,7 @@ Sysfs entries
================ ============================================================== ================ ==============================================================
temp[1-20]_input Physical/virtual temperature sensors (in millidegrees Celsius) 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) fan[1-8]_input Pump/fan speed (in RPM) / Flow speed (in dL/h)
fan5_pulses Quadro flow sensor pulses fan5_pulses Quadro flow sensor pulses
power[1-8]_input Pump/fan power (in micro Watts) power[1-8]_input Pump/fan power (in micro Watts)
......
...@@ -116,6 +116,9 @@ static u8 aquaero_secondary_ctrl_report[] = { ...@@ -116,6 +116,9 @@ static u8 aquaero_secondary_ctrl_report[] = {
#define AQUAERO_FAN_SPEED_OFFSET 0x00 #define AQUAERO_FAN_SPEED_OFFSET 0x00
static u16 aquaero_sensor_fan_offsets[] = { 0x167, 0x173, 0x17f, 0x18B }; 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 */ /* Specs of the D5 Next pump */
#define D5NEXT_NUM_FANS 2 #define D5NEXT_NUM_FANS 2
#define D5NEXT_NUM_SENSORS 1 #define D5NEXT_NUM_SENSORS 1
...@@ -988,10 +991,10 @@ static const struct hwmon_channel_info *aqc_info[] = { ...@@ -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_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_OFFSET,
HWMON_T_INPUT | HWMON_T_LABEL, HWMON_T_INPUT | HWMON_T_LABEL | HWMON_T_OFFSET,
HWMON_T_INPUT | HWMON_T_LABEL, HWMON_T_INPUT | HWMON_T_LABEL | HWMON_T_OFFSET,
HWMON_T_INPUT | HWMON_T_LABEL, 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_INPUT | HWMON_T_LABEL,
...@@ -1295,6 +1298,7 @@ static int aqc_probe(struct hid_device *hdev, const struct hid_device_id *id) ...@@ -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->flow_sensors_start_offset = AQUAERO_FLOW_SENSORS_START;
priv->buffer_size = AQUAERO_CTRL_REPORT_SIZE; priv->buffer_size = AQUAERO_CTRL_REPORT_SIZE;
priv->temp_ctrl_offset = AQUAERO_TEMP_CTRL_OFFSET;
priv->temp_label = label_temp_sensors; priv->temp_label = label_temp_sensors;
priv->virtual_temp_label = label_virtual_temp_sensors; priv->virtual_temp_label = label_virtual_temp_sensors;
......
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