Commit | Line | Data |
---|---|---|
694144b2 QN |
1 | .. SPDX-License-Identifier: GPL-2.0-only |
2 | ||
3 | Kernel driver Ampere(R)'s Altra(R) SMpro hwmon | |
4 | ============================================== | |
5 | ||
6 | Supported chips: | |
7 | ||
8 | * Ampere(R) Altra(R) | |
9 | ||
c1cb98c5 | 10 | Prefix: ``smpro`` |
694144b2 | 11 | |
c1cb98c5 | 12 | Reference: `Altra SoC BMC Interface Specification` |
694144b2 QN |
13 | |
14 | Author: Thu Nguyen <thu@os.amperecomputing.com> | |
15 | ||
16 | Description | |
17 | ----------- | |
c1cb98c5 QN |
18 | The smpro-hwmon driver supports hardware monitoring for Ampere(R) Altra(R) |
19 | SoCs based on the SMpro co-processor (SMpro). The following sensor metrics | |
20 | are supported by the driver: | |
694144b2 QN |
21 | |
22 | * temperature | |
23 | * voltage | |
24 | * current | |
25 | * power | |
26 | ||
c1cb98c5 | 27 | The interface provides the registers to query the various sensors and |
694144b2 QN |
28 | their values which are then exported to userspace by this driver. |
29 | ||
30 | Usage Notes | |
31 | ----------- | |
32 | ||
c1cb98c5 | 33 | The driver creates at least two sysfs files for each sensor. |
694144b2 | 34 | |
c1cb98c5 QN |
35 | * ``<sensor_type><idx>_label`` reports the sensor label. |
36 | * ``<sensor_type><idx>_input`` returns the sensor value. | |
694144b2 | 37 | |
c1cb98c5 QN |
38 | The sysfs files are allocated in the SMpro rootfs folder, with one root |
39 | directory for each instance. | |
694144b2 | 40 | |
c1cb98c5 QN |
41 | When the SoC is turned off, the driver will fail to read registers and |
42 | return ``-ENXIO``. | |
694144b2 QN |
43 | |
44 | Sysfs entries | |
45 | ------------- | |
46 | ||
47 | The following sysfs files are supported: | |
48 | ||
49 | * Ampere(R) Altra(R): | |
50 | ||
c1cb98c5 QN |
51 | ============ ============= ====== =============================================== |
52 | Name Unit Perm Description | |
53 | ============ ============= ====== =============================================== | |
54 | temp1_input millicelsius RO SoC temperature | |
55 | temp2_input millicelsius RO Max temperature reported among SoC VRDs | |
56 | temp2_crit millicelsius RO SoC VRD HOT Threshold temperature | |
57 | temp3_input millicelsius RO Max temperature reported among DIMM VRDs | |
58 | temp4_input millicelsius RO Max temperature reported among Core VRDs | |
59 | temp5_input millicelsius RO Temperature of DIMM0 on CH0 | |
60 | temp5_crit millicelsius RO MEM HOT Threshold for all DIMMs | |
61 | temp6_input millicelsius RO Temperature of DIMM0 on CH1 | |
62 | temp6_crit millicelsius RO MEM HOT Threshold for all DIMMs | |
63 | temp7_input millicelsius RO Temperature of DIMM0 on CH2 | |
64 | temp7_crit millicelsius RO MEM HOT Threshold for all DIMMs | |
65 | temp8_input millicelsius RO Temperature of DIMM0 on CH3 | |
66 | temp8_crit millicelsius RO MEM HOT Threshold for all DIMMs | |
67 | temp9_input millicelsius RO Temperature of DIMM0 on CH4 | |
68 | temp9_crit millicelsius RO MEM HOT Threshold for all DIMMs | |
69 | temp10_input millicelsius RO Temperature of DIMM0 on CH5 | |
70 | temp10_crit millicelsius RO MEM HOT Threshold for all DIMMs | |
71 | temp11_input millicelsius RO Temperature of DIMM0 on CH6 | |
72 | temp11_crit millicelsius RO MEM HOT Threshold for all DIMMs | |
73 | temp12_input millicelsius RO Temperature of DIMM0 on CH7 | |
74 | temp12_crit millicelsius RO MEM HOT Threshold for all DIMMs | |
75 | temp13_input millicelsius RO Max temperature reported among RCA VRDs | |
76 | in0_input millivolts RO Core voltage | |
77 | in1_input millivolts RO SoC voltage | |
78 | in2_input millivolts RO DIMM VRD1 voltage | |
79 | in3_input millivolts RO DIMM VRD2 voltage | |
80 | in4_input millivolts RO RCA VRD voltage | |
81 | cur1_input milliamperes RO Core VRD current | |
82 | cur2_input milliamperes RO SoC VRD current | |
83 | cur3_input milliamperes RO DIMM VRD1 current | |
84 | cur4_input milliamperes RO DIMM VRD2 current | |
85 | cur5_input milliamperes RO RCA VRD current | |
86 | power1_input microwatts RO Core VRD power | |
87 | power2_input microwatts RO SoC VRD power | |
88 | power3_input microwatts RO DIMM VRD1 power | |
89 | power4_input microwatts RO DIMM VRD2 power | |
90 | power5_input microwatts RO RCA VRD power | |
91 | ============ ============= ====== =============================================== | |
92 | ||
93 | Example:: | |
694144b2 QN |
94 | |
95 | # cat in0_input | |
96 | 830 | |
97 | # cat temp1_input | |
98 | 37000 | |
99 | # cat curr1_input | |
100 | 9000 | |
101 | # cat power5_input | |
102 | 19500000 |