linux_dsm_epyc7002/Documentation/hwmon/index.rst
Serge Semin 87976ce282 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 07:59:45 -07:00

198 lines
2.3 KiB
ReStructuredText

=========================
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
bel-pfe
bt1-pvt
coretemp
da9052
da9055
dell-smm-hwmon
dme1737
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`