2019-04-17 12:46:29 +03:00
=========================
Linux Hardware Monitoring
=========================
.. toctree ::
:maxdepth: 1
2019-04-22 14:14:55 +03:00
hwmon-kernel-api
pmbus-core
2019-09-25 16:17:15 +03:00
inspur-ipsps1
2019-04-22 14:14:55 +03:00
submitting-patches
sysfs-interface
userspace-tools
2019-04-17 12:46:29 +03:00
Hardware Monitoring Kernel Drivers
==================================
.. toctree ::
:maxdepth: 1
2019-04-22 14:14:55 +03:00
abituguru
abituguru3
acpi_power_meter
ad7314
adc128d818
adm1021
adm1025
adm1026
adm1031
2020-01-14 14:21:57 +03:00
adm1177
2020-08-12 17:20:50 +03:00
adm1266
2019-04-22 14:14:55 +03:00
adm1275
adm9240
ads7828
adt7410
adt7411
adt7462
adt7470
adt7475
2021-01-07 22:40:14 +03:00
aht10
2019-04-22 14:14:55 +03:00
amc6821
hwmon: add driver for Aquacomputer D5 Next
This driver exposes hardware sensors of the Aquacomputer D5 Next
watercooling pump, which communicates through a proprietary USB HID
protocol.
Available sensors are pump and fan speed, power, voltage and current, as
well as coolant temperature. Also available through debugfs are the serial
number, firmware version and power-on count.
Attaching a fan is optional and allows it to be controlled using
temperature curves directly from the pump. If it's not connected,
the fan-related sensors will report zeroes.
The pump can be configured either through software or via its physical
interface. Configuring the pump through this driver is not implemented,
as it seems to require sending it a complete configuration. That
includes addressable RGB LEDs, for which there is no standard sysfs
interface. Thus, that task is better suited for userspace tools.
This driver has been tested on x86_64, both in-kernel and as a module.
Signed-off-by: Aleksa Savic <savicaleksa83@gmail.com>
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2021-08-28 08:26:28 +03:00
aquacomputer_d5next
2019-04-22 14:14:55 +03:00
asb100
asc7621
aspeed-pwm-tacho
2022-01-24 04:56:44 +03:00
asus_ec_sensors
2021-11-16 23:57:43 +03:00
asus_wmi_ec_sensors
hwmon: (asus_wmi_sensors) Support X370 Asus WMI.
Provides a Linux kernel module "asus_wmi_sensors" that provides sensor
readouts via ASUS' WMI interface present in the UEFI of
X370/X470/B450/X399 Ryzen motherboards.
Supported motherboards:
* ROG CROSSHAIR VI HERO,
* PRIME X399-A,
* PRIME X470-PRO,
* ROG CROSSHAIR VI EXTREME,
* ROG CROSSHAIR VI HERO (WI-FI AC),
* ROG CROSSHAIR VII HERO,
* ROG CROSSHAIR VII HERO (WI-FI),
* ROG STRIX B450-E GAMING,
* ROG STRIX B450-F GAMING,
* ROG STRIX B450-I GAMING,
* ROG STRIX X399-E GAMING,
* ROG STRIX X470-F GAMING,
* ROG STRIX X470-I GAMING,
* ROG ZENITH EXTREME,
* ROG ZENITH EXTREME ALPHA.
Co-developed-by: Ed Brindley <kernel@maidavale.org>
Signed-off-by: Ed Brindley <kernel@maidavale.org>
Signed-off-by: Denis Pauk <pauk.denis@gmail.com>
[groeck: Squashed:
"hwmon: Fix warnings in asus_wmi_sensors.rst documetation."]
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2021-11-16 23:57:44 +03:00
asus_wmi_sensors
2020-04-20 21:21:13 +03:00
bcm54140
2019-10-29 21:20:54 +03:00
bel-pfe
2021-03-17 07:02:31 +03:00
bpa-rs600
hwmon: Add Baikal-T1 PVT sensor driver
Baikal-T1 SoC provides an embedded process, voltage and temperature
sensor to monitor an internal SoC environment (chip temperature, supply
voltage and process monitor) and on time detect critical situations,
which may cause the system instability and even damages. The IP-block
is based on the Analog Bits PVT sensor, but is equipped with a
dedicated control wrapper, which provides a MMIO registers-based access
to the sensor core functionality (APB3-bus based) and exposes an
additional functions like thresholds/data ready interrupts, its status
and masks, measurements timeout. All of these is used to create a hwmon
driver being added to the kernel by this commit.
The driver implements support for the hardware monitoring capabilities
of Baikal-T1 process, voltage and temperature sensors. PVT IP-core
consists of one temperature and four voltage sensors, each of which is
implemented as a dedicated hwmon channel config.
The driver can optionally provide the hwmon alarms for each sensor the
PVT controller supports. The alarms functionality is made compile-time
configurable due to the hardware interface implementation peculiarity,
which is connected with an ability to convert data from only one sensor
at a time. Additional limitation is that the controller performs the
thresholds checking synchronously with the data conversion procedure.
Due to these limitations in order to have the hwmon alarms
automatically detected the driver code must switch from one sensor to
another, read converted data and manually check the threshold status
bits. Depending on the measurements timeout settings this design may
cause additional burden on the system performance. By default if the
alarms kernel config is disabled the data conversion is performed by
the driver on demand when read operation is requested via corresponding
_input-file.
Co-developed-by: Maxim Kaurkin <maxim.kaurkin@baikalelectronics.ru>
Signed-off-by: Maxim Kaurkin <maxim.kaurkin@baikalelectronics.ru>
Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru>
Cc: Alexey Malahov <Alexey.Malahov@baikalelectronics.ru>
Cc: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Rob Herring <robh+dt@kernel.org>
Cc: linux-mips@vger.kernel.org
Cc: devicetree@vger.kernel.org
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2020-05-28 17:28:05 +03:00
bt1-pvt
2019-04-22 14:14:55 +03:00
coretemp
2020-06-26 08:59:36 +03:00
corsair-cpro
2020-10-27 16:17:10 +03:00
corsair-psu
2019-04-22 14:14:55 +03:00
da9052
da9055
2019-11-22 13:15:19 +03:00
dell-smm-hwmon
2019-04-22 14:14:55 +03:00
dme1737
2021-06-07 13:34:29 +03:00
dps920ab
hwmon: Driver for disk and solid state drives with temperature sensors
Reading the temperature of ATA drives has been supported for years
by userspace tools such as smarttools or hddtemp. The downside of
such tools is that they need to run with super-user privilege, that
the temperatures are not reported by standard tools such as 'sensors'
or 'libsensors', and that drive temperatures are not available for use
in the kernel's thermal subsystem.
This driver solves this problem by adding support for reading the
temperature of ATA drives from the kernel using the hwmon API and
by adding a temperature zone for each drive.
With this driver, the hard disk temperature can be read using the
unprivileged 'sensors' application:
$ sensors drivetemp-scsi-1-0
drivetemp-scsi-1-0
Adapter: SCSI adapter
temp1: +23.0°C
or directly from sysfs:
$ grep . /sys/class/hwmon/hwmon9/{name,temp1_input}
/sys/class/hwmon/hwmon9/name:drivetemp
/sys/class/hwmon/hwmon9/temp1_input:23000
If the drive supports SCT transport and reports temperature limits,
those are reported as well.
drivetemp-scsi-0-0
Adapter: SCSI adapter
temp1: +27.0°C (low = +0.0°C, high = +60.0°C)
(crit low = -41.0°C, crit = +85.0°C)
(lowest = +23.0°C, highest = +34.0°C)
The driver attempts to use SCT Command Transport to read the drive
temperature. If the SCT Command Transport feature set is not available,
or if it does not report the drive temperature, drive temperatures may
be readable through SMART attributes. Since SMART attributes are not well
defined, this method is only used as fallback mechanism.
Cc: Chris Healy <cphealy@gmail.com>
Cc: Linus Walleij <linus.walleij@linaro.org>
Cc: Martin K. Petersen <martin.petersen@oracle.com>
Cc: Bart Van Assche <bvanassche@acm.org>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Tested-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2019-11-29 08:34:40 +03:00
drivetemp
2019-04-22 14:14:55 +03:00
ds1621
ds620
emc1403
emc2103
emc6w201
f71805f
f71882fg
fam15h_power
hwmon: Add driver for fsp-3y PSUs and PDUs
This patch adds support for these devices:
- YH-5151E - the PDU
- YM-2151E - the PSU
The device datasheet says that the devices support PMBus 1.2, but in my
testing, a lot of the commands aren't supported and if they are, they
sometimes behave strangely or inconsistently. For example, writes to the
PAGE command requires using PEC, otherwise the write won't work and the
page won't switch, even though, the standard says that PEC is optional.
On the other hand, writes to SMBALERT don't require PEC. Because of
this, the driver is mostly reverse engineered with the help of a tool
called pmbus_peek written by David Brownell (and later adopted by my
colleague Jan Kundrát).
The device also has some sort of a timing issue when switching pages,
which is explained further in the code.
Because of this, the driver support is limited. It exposes only the
values that have been tested to work correctly.
Signed-off-by: Václav Kubernát <kubernat@cesnet.cz>
Link: https://lore.kernel.org/r/20210414080019.3530794-1-kubernat@cesnet.cz
[groeck: Fixed up "missing braces around initializer" from 0-day]
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2021-04-14 11:00:17 +03:00
fsp-3y
2019-04-22 14:14:55 +03:00
ftsteutates
g760a
g762
2020-05-15 20:57:08 +03:00
gsc-hwmon
2019-04-22 14:14:55 +03:00
gl518sm
hih6130
ibmaem
ibm-cffps
ibmpowernv
ina209
ina2xx
2021-11-02 08:27:54 +03:00
ina238
2019-04-22 14:14:55 +03:00
ina3221
2020-09-21 09:17:51 +03:00
intel-m10-bmc-hwmon
2019-04-22 14:14:55 +03:00
ir35221
ir38064
2021-03-01 06:59:54 +03:00
ir36021
2019-04-22 14:14:55 +03:00
isl68137
it87
jc42
k10temp
k8temp
lineage-pem
lm25066
lm63
lm70
lm73
lm75
lm77
lm78
lm80
lm83
lm85
lm87
lm90
lm92
lm93
lm95234
lm95245
lochnagar
2020-12-03 10:11:53 +03:00
ltc2992
2019-04-22 14:14:55 +03:00
ltc2945
2019-10-21 18:41:14 +03:00
ltc2947
2019-04-22 14:14:55 +03:00
ltc2978
ltc2990
ltc3815
ltc4151
ltc4215
ltc4245
ltc4260
ltc4261
2020-11-23 21:56:58 +03:00
max127
2021-04-19 13:12:51 +03:00
max15301
2019-04-22 14:14:55 +03:00
max16064
max16065
max1619
2019-12-14 17:37:31 +03:00
max16601
2019-04-22 14:14:55 +03:00
max1668
max197
2019-12-06 07:26:24 +03:00
max20730
2019-04-22 14:14:55 +03:00
max20751
max31722
2019-11-23 22:11:26 +03:00
max31730
2019-04-22 14:14:55 +03:00
max31785
max31790
max34440
2021-09-13 16:40:15 +03:00
max6620
2019-04-22 14:14:55 +03:00
max6639
max6642
max6650
max6697
max8688
mc13783-adc
mcp3021
menf21bmc
mlxreg-fan
2021-05-21 20:22:18 +03:00
mp2888
2020-10-27 12:51:11 +03:00
mp2975
2021-12-09 07:48:54 +03:00
mp5023
2019-04-22 14:14:55 +03:00
nct6683
nct6775
nct7802
nct7904
npcm750-pwm-fan
nsa320
ntc_thermistor
hwmon: add driver for NZXT Kraken X42/X52/X62/X72
These are "all-in-one" CPU liquid coolers that can be monitored and
controlled through a proprietary USB HID protocol.
While the models have differently sized radiators and come with varying
numbers of fans, they are all indistinguishable at the software level.
The driver exposes fan/pump speeds and coolant temperature through the
standard hwmon sysfs interface.
Fan and pump control, while supported by the devices, are not currently
exposed. The firmware accepts up to 61 trip points per channel
(fan/pump), but the same set of trip temperatures has to be maintained
for both; with pwmX_auto_point_Y_temp attributes, users would need to
maintain this invariant themselves.
Instead, fan and pump control, as well as LED control (which the device
also supports for 9 addressable RGB LEDs on the CPU water block) are
left for existing and already mature user-space tools, which can still
be used alongside the driver, thanks to hidraw. A link to one, which I
also maintain, is provided in the documentation.
The implementation is based on USB traffic analysis. It has been
runtime tested on x86_64, both as a built-in driver and as a module.
Signed-off-by: Jonas Malaco <jonas@protocubo.io>
Link: https://lore.kernel.org/r/20210319045544.416138-1-jonas@protocubo.io
[groeck: Removed unnecessary spinlock.h include]
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2021-03-19 07:55:44 +03:00
nzxt-kraken2
2021-10-31 06:30:58 +03:00
nzxt-smart2
2019-04-22 14:14:55 +03:00
occ
pc87360
pc87427
pcf8591
2021-06-09 12:32:09 +03:00
pim4328
2022-02-21 12:42:06 +03:00
pli1209bc
2020-12-02 09:11:04 +03:00
pm6764tr
2022-02-08 18:36:38 +03:00
peci-cputemp
peci-dimmtemp
2019-04-22 14:14:55 +03:00
pmbus
powr1220
2019-07-22 14:07:45 +03:00
pxe1610
2019-04-22 14:14:55 +03:00
pwm-fan
2020-12-02 05:59:00 +03:00
q54sj108a2
2019-04-22 14:14:55 +03:00
raspberrypi-hwmon
2021-07-26 16:36:14 +03:00
sbrmi
2020-12-12 00:54:26 +03:00
sbtsi_temp
2019-04-22 14:14:55 +03:00
sch5627
sch5636
scpi-hwmon
sht15
sht21
sht3x
2021-05-24 17:20:38 +03:00
sht4x
2019-04-22 14:14:55 +03:00
shtc1
sis5595
2020-09-15 00:43:36 +03:00
sl28cpld
2019-04-22 14:14:55 +03:00
smm665
smsc47b397
smsc47m192
smsc47m1
2020-09-09 17:10:45 +03:00
sparx5-temp
2021-02-18 14:52:49 +03:00
stpddc60
2022-01-24 15:10:06 +03:00
sy7636a-hwmon
2019-04-22 14:14:55 +03:00
tc654
tc74
thmc50
tmp102
tmp103
tmp108
tmp401
tmp421
2022-02-23 01:36:10 +03:00
tmp464
2019-11-13 01:30:01 +03:00
tmp513
2021-01-21 16:44:33 +03:00
tps23861
2019-04-22 14:14:55 +03:00
tps40422
2020-02-01 19:24:47 +03:00
tps53679
2019-04-22 14:14:55 +03:00
twl4030-madc-hwmon
ucd9000
ucd9200
vexpress
via686a
vt1211
w83627ehf
w83627hf
w83773g
w83781d
w83791d
w83792d
w83793
w83795
w83l785ts
w83l786ng
wm831x
wm8350
xgene-hwmon
2020-01-13 18:08:41 +03:00
xdpe12284
2019-04-22 14:14:55 +03:00
zl6100
2019-04-17 12:46:29 +03:00
.. only :: subproject and html
Indices
=======
* :ref: `genindex`