linux/drivers/nvme/host
Guenter Roeck 400b6a7b13 nvme: Add hardware monitoring support
nvme devices report temperature information in the controller information
(for limits) and in the smart log. Currently, the only means to retrieve
this information is the nvme command line interface, which requires
super-user privileges.

At the same time, it would be desirable to be able to use NVMe temperature
information for thermal control.

This patch adds support to read NVMe temperatures from the kernel using the
hwmon API and adds temperature zones for NVMe drives. The thermal subsystem
can use this information to set thermal policies, and userspace can access
it using libsensors and/or the "sensors" command.

Example output from the "sensors" command:

nvme0-pci-0100
Adapter: PCI adapter
Composite:    +39.0°C  (high = +85.0°C, crit = +85.0°C)
Sensor 1:     +39.0°C
Sensor 2:     +41.0°C

Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Keith Busch <kbusch@kernel.org>
2019-11-12 01:57:35 +09:00
..
core.c nvme: Add hardware monitoring support 2019-11-12 01:57:35 +09:00
fabrics.c nvme-fabrics: allow discovery subsystems accept a kato 2019-09-12 08:50:46 -07:00
fabrics.h nvme-fabrics: Add type of service (TOS) configuration 2019-08-29 12:55:01 -07:00
fault_inject.c nvme: enable to inject errors into admin commands 2019-06-21 11:15:50 +02:00
fc.c nvme: move common call to nvme_cleanup_cmd to core layer 2019-11-04 10:56:41 -07:00
hwmon.c nvme: Add hardware monitoring support 2019-11-12 01:57:35 +09:00
Kconfig nvme: Add hardware monitoring support 2019-11-12 01:57:35 +09:00
lightnvm.c lightnvm: move metadata mapping to lower level driver 2019-08-06 08:20:10 -06:00
Makefile nvme: Add hardware monitoring support 2019-11-12 01:57:35 +09:00
multipath.c nvme: Fix parsing of ANA log page 2019-11-04 10:56:42 -07:00
nvme.h nvme: Add hardware monitoring support 2019-11-12 01:57:35 +09:00
pci.c nvme-pci: Spelling s/resdicovered/rediscovered/ 2019-11-04 10:56:42 -07:00
rdma.c nvme: move common call to nvme_cleanup_cmd to core layer 2019-11-04 10:56:41 -07:00
tcp.c nvme: introduce nvme_is_aen_req function 2019-11-04 10:56:40 -07:00
trace.c nvme: trace: parse Get LBA Status command in detail 2019-08-29 12:55:01 -07:00
trace.h nvme-trace: print result and status in hex format 2019-06-21 11:12:37 +02:00