linux/Documentation/hwmon/index.rst

199 lines
2.3 KiB
ReStructuredText
Raw Normal View History

=========================
Linux Hardware Monitoring
=========================
.. toctree::
:maxdepth: 1
hwmon-kernel-api
pmbus-core
inspur-ipsps1
submitting-patches
sysfs-interface
userspace-tools
Hardware Monitoring Kernel Drivers
==================================
.. toctree::
:maxdepth: 1
ab8500
abituguru
abituguru3
abx500
acpi_power_meter
ad7314
adc128d818
adm1021
adm1025
adm1026
adm1031
adm1177
adm1275
adm9240
ads7828
adt7410
adt7411
adt7462
adt7470
adt7475
amc6821
amd_energy
asb100
asc7621
aspeed-pwm-tacho
bcm54140
bel-pfe
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 22:28:05 +08:00
bt1-pvt
coretemp
da9052
da9055
dell-smm-hwmon
dme1737
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 13:34:40 +08:00
drivetemp
ds1621
ds620
emc1403
emc2103
emc6w201
f71805f
f71882fg
fam15h_power
ftsteutates
g760a
g762
gsc-hwmon
gl518sm
hih6130
ibmaem
ibm-cffps
ibmpowernv
ina209
ina2xx
ina3221
ir35221
ir38064
isl68137
it87
jc42
k10temp
k8temp
lineage-pem
lm25066
lm63
lm70
lm73
lm75
lm77
lm78
lm80
lm83
lm85
lm87
lm90
lm92
lm93
lm95234
lm95245
lochnagar
ltc2945
ltc2947
ltc2978
ltc2990
ltc3815
ltc4151
ltc4215
ltc4245
ltc4260
ltc4261
max16064
max16065
max1619
max16601
max1668
max197
max20730
max20751
max31722
max31730
max31785
max31790
max34440
max6639
max6642
max6650
max6697
max8688
mc13783-adc
mcp3021
menf21bmc
mlxreg-fan
nct6683
nct6775
nct7802
nct7904
npcm750-pwm-fan
nsa320
ntc_thermistor
occ
pc87360
pc87427
pcf8591
pmbus
powr1220
pxe1610
pwm-fan
raspberrypi-hwmon
sch5627
sch5636
scpi-hwmon
sht15
sht21
sht3x
shtc1
sis5595
smm665
smsc47b397
smsc47m192
smsc47m1
tc654
tc74
thmc50
tmp102
tmp103
tmp108
tmp401
tmp421
tmp513
tps40422
tps53679
twl4030-madc-hwmon
ucd9000
ucd9200
vexpress
via686a
vt1211
w83627ehf
w83627hf
w83773g
w83781d
w83791d
w83792d
w83793
w83795
w83l785ts
w83l786ng
wm831x
wm8350
xgene-hwmon
xdpe12284
zl6100
.. only:: subproject and html
Indices
=======
* :ref:`genindex`