Merge tag 'hardening-v6.7-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/kees...
[linux-2.6-microblaze.git] / Documentation / hwmon / aquacomputer_d5next.rst
1 .. SPDX-License-Identifier: GPL-2.0-or-later
2
3 Kernel driver aquacomputer-d5next
4 =================================
5
6 Supported devices:
7
8 * Aquacomputer Aquaero 5/6 fan controllers
9 * Aquacomputer D5 Next watercooling pump
10 * Aquacomputer Farbwerk RGB controller
11 * Aquacomputer Farbwerk 360 RGB controller
12 * Aquacomputer Octo fan controller
13 * Aquacomputer Quadro fan controller
14 * Aquacomputer High Flow Next sensor
15 * Aquacomputer Leakshield leak prevention system
16 * Aquacomputer Aquastream XT watercooling pump
17 * Aquacomputer Aquastream Ultimate watercooling pump
18 * Aquacomputer Poweradjust 3 fan controller
19 * Aquacomputer High Flow USB flow meter
20 * Aquacomputer MPS Flow devices
21
22 Author: Aleksa Savic
23
24 Description
25 -----------
26
27 This driver exposes hardware sensors of listed Aquacomputer devices, which
28 communicate through proprietary USB HID protocols.
29
30 The Aquaero devices expose eight physical, eight virtual and four calculated
31 virtual temperature sensors, as well as two flow sensors. The fans expose their
32 speed (in RPM), power, voltage and current. Temperature offsets and fan speeds
33 can be controlled.
34
35 For the D5 Next pump, available sensors are pump and fan speed, power, voltage
36 and current, as well as coolant temperature and eight virtual temp sensors. Also
37 available through debugfs are the serial number, firmware version and power-on
38 count. Attaching a fan to it is optional and allows it to be controlled using
39 temperature curves directly from the pump. If it's not connected, the fan-related
40 sensors will report zeroes.
41
42 The pump can be configured either through software or via its physical
43 interface. Configuring the pump through this driver is not implemented, as it
44 seems to require sending it a complete configuration. That includes addressable
45 RGB LEDs, for which there is no standard sysfs interface. Thus, that task is
46 better suited for userspace tools.
47
48 The Octo exposes four physical and sixteen virtual temperature sensors, as well as
49 eight PWM controllable fans, along with their speed (in RPM), power, voltage and
50 current.
51
52 The Quadro exposes four physical and sixteen virtual temperature sensors, a flow
53 sensor and four PWM controllable fans, along with their speed (in RPM), power,
54 voltage and current. Flow sensor pulses are also available.
55
56 The Farbwerk and Farbwerk 360 expose four temperature sensors. Additionally,
57 sixteen virtual temperature sensors of the Farbwerk 360 are exposed.
58
59 The High Flow Next exposes +5V voltages, water quality, conductivity and flow readings.
60 A temperature sensor can be connected to it, in which case it provides its reading
61 and an estimation of the dissipated/absorbed power in the liquid cooling loop.
62
63 The Leakshield exposes two temperature sensors and coolant pressure (current, min, max and
64 target readings). It also exposes the estimated reservoir volume and how much of it is
65 filled with coolant. Pump RPM and flow can be set to enhance on-device calculations,
66 but this is not yet implemented here.
67
68 The Aquastream XT pump exposes temperature readings for the coolant, external sensor
69 and fan IC. It also exposes pump and fan speeds (in RPM), voltages, as well as pump
70 current.
71
72 The Aquastream Ultimate pump exposes coolant temp and an external temp sensor, along
73 with speed, power, voltage and current of both the pump and optionally connected fan.
74 It also exposes pressure and flow speed readings.
75
76 The Poweradjust 3 controller exposes a single external temperature sensor.
77
78 The High Flow USB exposes an internal and external temperature sensor, and a flow meter.
79
80 The MPS Flow devices expose the same entries as the High Flow USB because they have
81 the same USB product ID and report sensors equivalently.
82
83 Depending on the device, not all sysfs and debugfs entries will be available.
84 Writing to virtual temperature sensors is not currently supported.
85
86 Usage notes
87 -----------
88
89 The devices communicate via HID reports. The driver is loaded automatically by
90 the kernel and supports hotswapping.
91
92 Sysfs entries
93 -------------
94
95 ================ ==============================================================
96 temp[1-20]_input Physical/virtual temperature sensors (in millidegrees Celsius)
97 temp[1-8]_offset Temperature sensor correction offset (in millidegrees Celsius)
98 fan[1-8]_input   Pump/fan speed (in RPM) / Flow speed (in dL/h)
99 fan1_min         Minimal fan speed (in RPM)
100 fan1_max         Maximal fan speed (in RPM)
101 fan1_target      Target fan speed (in RPM)
102 fan5_pulses      Quadro flow sensor pulses
103 power[1-8]_input Pump/fan power (in micro Watts)
104 in[0-7]_input    Pump/fan voltage (in milli Volts)
105 curr[1-8]_input  Pump/fan current (in milli Amperes)
106 pwm[1-8]         Fan PWM (0 - 255)
107 ================ ==============================================================
108
109 Debugfs entries
110 ---------------
111
112 ================ =================================================
113 serial_number    Serial number of the device
114 firmware_version Version of installed firmware
115 power_cycles     Count of how many times the device was powered on
116 ================ =================================================