xref: /linux/Documentation/ABI/testing/sysfs-class-hwmon (revision 320fefa9e2edc67011e235ea1d50f0d00ddfe004)
1What:		/sys/class/hwmon/hwmonX/name
2Description:
3		The chip name.
4		This should be a short, lowercase string, not containing
5		whitespace, dashes, or the wildcard character '*'.
6		This attribute represents the chip name. It is the only
7		mandatory attribute.
8		I2C devices get this attribute created automatically.
9
10		RO
11
12What:		/sys/class/hwmon/hwmonX/label
13Description:
14		A descriptive label that allows to uniquely identify a
15		device within the system.
16		The contents of the label are free-form.
17
18		RO
19
20What:		/sys/class/hwmon/hwmonX/update_interval
21Description:
22		The interval at which the chip will update readings.
23		Unit: millisecond
24
25		RW
26
27		Some devices have a variable update rate or interval.
28		This attribute can be used to change it to the desired value.
29
30What:		/sys/class/hwmon/hwmonX/inY_min
31Description:
32		Voltage min value.
33
34		Unit: millivolt
35
36		RW
37
38What:		/sys/class/hwmon/hwmonX/inY_lcrit
39Description:
40		Voltage critical min value.
41
42		Unit: millivolt
43
44		RW
45
46		If voltage drops to or below this limit, the system may
47		take drastic action such as power down or reset. At the very
48		least, it should report a fault.
49
50What:		/sys/class/hwmon/hwmonX/inY_max
51Description:
52		Voltage max value.
53
54		Unit: millivolt
55
56		RW
57
58What:		/sys/class/hwmon/hwmonX/inY_crit
59Description:
60		Voltage critical max value.
61
62		Unit: millivolt
63
64		RW
65
66		If voltage reaches or exceeds this limit, the system may
67		take drastic action such as power down or reset. At the very
68		least, it should report a fault.
69
70What:		/sys/class/hwmon/hwmonX/inY_input
71Description:
72		Voltage input value.
73
74		Unit: millivolt
75
76		RO
77
78		Voltage measured on the chip pin.
79
80		Actual voltage depends on the scaling resistors on the
81		motherboard, as recommended in the chip datasheet.
82
83		This varies by chip and by motherboard.
84		Because of this variation, values are generally NOT scaled
85		by the chip driver, and must be done by the application.
86		However, some drivers (notably lm87 and via686a)
87		do scale, because of internal resistors built into a chip.
88		These drivers will output the actual voltage. Rule of
89		thumb: drivers should report the voltage values at the
90		"pins" of the chip.
91
92What:		/sys/class/hwmon/hwmonX/inY_average
93Description:
94		Average voltage
95
96		Unit: millivolt
97
98		RO
99
100What:		/sys/class/hwmon/hwmonX/inY_lowest
101Description:
102		Historical minimum voltage
103
104		Unit: millivolt
105
106		RO
107
108What:		/sys/class/hwmon/hwmonX/inY_highest
109Description:
110		Historical maximum voltage
111
112		Unit: millivolt
113
114		RO
115
116What:		/sys/class/hwmon/hwmonX/inY_reset_history
117Description:
118		Reset inX_lowest and inX_highest
119
120		WO
121
122What:		/sys/class/hwmon/hwmonX/in_reset_history
123Description:
124		Reset inX_lowest and inX_highest for all sensors
125
126		WO
127
128What:		/sys/class/hwmon/hwmonX/inY_label
129Description:
130		Suggested voltage channel label.
131
132		Text string
133
134		Should only be created if the driver has hints about what
135		this voltage channel is being used for, and user-space
136		doesn't. In all other cases, the label is provided by
137		user-space.
138
139		RO
140
141What:		/sys/class/hwmon/hwmonX/inY_enable
142Description:
143		Enable or disable the sensors.
144
145		When disabled the sensor read will return -ENODATA.
146
147		- 1: Enable
148		- 0: Disable
149
150		RW
151
152What:		/sys/class/hwmon/hwmonX/cpuY_vid
153Description:
154		CPU core reference voltage.
155
156		Unit: millivolt
157
158		RO
159
160		Not always correct.
161
162What:		/sys/class/hwmon/hwmonX/vrm
163Description:
164		Voltage Regulator Module version number.
165
166		RW (but changing it should no more be necessary)
167
168		Originally the VRM standard version multiplied by 10, but now
169		an arbitrary number, as not all standards have a version
170		number.
171
172		Affects the way the driver calculates the CPU core reference
173		voltage from the vid pins.
174
175What:		/sys/class/hwmon/hwmonX/inY_rated_min
176Description:
177		Minimum rated voltage.
178
179		Unit: millivolt
180
181		RO
182
183What:		/sys/class/hwmon/hwmonX/inY_rated_max
184Description:
185		Maximum rated voltage.
186
187		Unit: millivolt
188
189		RO
190
191What:		/sys/class/hwmon/hwmonX/fanY_min
192Description:
193		Fan minimum value
194
195		Unit: revolution/min (RPM)
196
197		RW
198
199What:		/sys/class/hwmon/hwmonX/fanY_max
200Description:
201		Fan maximum value
202
203		Unit: revolution/min (RPM)
204
205		Only rarely supported by the hardware.
206		RW
207
208What:		/sys/class/hwmon/hwmonX/fanY_input
209Description:
210		Fan input value.
211
212		Unit: revolution/min (RPM)
213
214		RO
215
216What:		/sys/class/hwmon/hwmonX/fanY_div
217Description:
218		Fan divisor.
219
220		Integer value in powers of two (1, 2, 4, 8, 16, 32, 64, 128).
221
222		RW
223
224		Some chips only support values 1, 2, 4 and 8.
225		Note that this is actually an internal clock divisor, which
226		affects the measurable speed range, not the read value.
227
228What:		/sys/class/hwmon/hwmonX/fanY_pulses
229Description:
230		Number of tachometer pulses per fan revolution.
231
232		Integer value, typically between 1 and 4.
233
234		RW
235
236		This value is a characteristic of the fan connected to the
237		device's input, so it has to be set in accordance with the fan
238		model.
239
240		Should only be created if the chip has a register to configure
241		the number of pulses. In the absence of such a register (and
242		thus attribute) the value assumed by all devices is 2 pulses
243		per fan revolution.
244
245What:		/sys/class/hwmon/hwmonX/fanY_target
246Description:
247		Desired fan speed
248
249		Unit: revolution/min (RPM)
250
251		RW
252
253		Only makes sense if the chip supports closed-loop fan speed
254		control based on the measured fan speed.
255
256What:		/sys/class/hwmon/hwmonX/fanY_label
257Description:
258		Suggested fan channel label.
259
260		Text string
261
262		Should only be created if the driver has hints about what
263		this fan channel is being used for, and user-space doesn't.
264		In all other cases, the label is provided by user-space.
265
266		RO
267
268What:		/sys/class/hwmon/hwmonX/fanY_enable
269Description:
270		Enable or disable the sensors.
271
272		When disabled the sensor read will return -ENODATA.
273
274		- 1: Enable
275		- 0: Disable
276
277		RW
278
279What:		/sys/class/hwmon/hwmonX/pwmY
280Description:
281		Pulse width modulation fan control.
282
283		Integer value in the range 0 to 255
284
285		RW
286
287		255 is max or 100%.
288
289What:		/sys/class/hwmon/hwmonX/pwmY_enable
290Description:
291		Fan speed control method:
292
293		- 0: no fan speed control (i.e. fan at full speed)
294		- 1: manual fan speed control enabled (using `pwmY`)
295		- 2+: automatic fan speed control enabled
296
297		Check individual chip documentation files for automatic mode
298		details.
299
300		RW
301
302What:		/sys/class/hwmon/hwmonX/pwmY_mode
303Description:
304		- 0: DC mode (direct current)
305		- 1: PWM mode (pulse-width modulation)
306
307		RW
308
309What:		/sys/class/hwmon/hwmonX/pwmY_freq
310Description:
311		Base PWM frequency in Hz.
312
313		Only possibly available when pwmN_mode is PWM, but not always
314		present even then.
315
316		RW
317
318What:		/sys/class/hwmon/hwmonX/pwmY_auto_channels_temp
319Description:
320		Select which temperature channels affect this PWM output in
321		auto mode.
322
323		Bitfield, 1 is temp1, 2 is temp2, 4 is temp3 etc...
324		Which values are possible depend on the chip used.
325
326		RW
327
328What:		/sys/class/hwmon/hwmonX/pwmY_auto_pointZ_pwm
329What:		/sys/class/hwmon/hwmonX/pwmY_auto_pointZ_temp
330What:		/sys/class/hwmon/hwmonX/pwmY_auto_pointZ_temp_hyst
331Description:
332		Define the PWM vs temperature curve.
333
334		Number of trip points is chip-dependent. Use this for chips
335		which associate trip points to PWM output channels.
336
337		RW
338
339What:		/sys/class/hwmon/hwmonX/tempY_auto_pointZ_pwm
340What:		/sys/class/hwmon/hwmonX/tempY_auto_pointZ_temp
341What:		/sys/class/hwmon/hwmonX/tempY_auto_pointZ_temp_hyst
342Description:
343		Define the PWM vs temperature curve.
344
345		Number of trip points is chip-dependent. Use this for chips
346		which associate trip points to temperature channels.
347
348		RW
349
350What:		/sys/class/hwmon/hwmonX/tempY_type
351Description:
352		Sensor type selection.
353
354		Integers 1 to 6
355
356		RW
357
358		- 1: CPU embedded diode
359		- 2: 3904 transistor
360		- 3: thermal diode
361		- 4: thermistor
362		- 5: AMD AMDSI
363		- 6: Intel PECI
364
365		Not all types are supported by all chips
366
367What:		/sys/class/hwmon/hwmonX/tempY_max
368Description:
369		Temperature max value.
370
371		Unit: millidegree Celsius (or millivolt, see below)
372
373		RW
374
375What:		/sys/class/hwmon/hwmonX/tempY_min
376Description:
377		Temperature min value.
378
379		Unit: millidegree Celsius
380
381		RW
382
383What:		/sys/class/hwmon/hwmonX/tempY_max_hyst
384Description:
385		Temperature hysteresis value for max limit.
386
387		Unit: millidegree Celsius
388
389		Must be reported as an absolute temperature, NOT a delta
390		from the max value.
391
392		RW
393
394What:		/sys/class/hwmon/hwmonX/tempY_min_hyst
395Description:
396		Temperature hysteresis value for min limit.
397		Unit: millidegree Celsius
398
399		Must be reported as an absolute temperature, NOT a delta
400		from the min value.
401
402		RW
403
404What:		/sys/class/hwmon/hwmonX/tempY_input
405Description:
406		Temperature input value.
407
408		Unit: millidegree Celsius
409
410		RO
411
412What:		/sys/class/hwmon/hwmonX/tempY_crit
413Description:
414		Temperature critical max value, typically greater than
415		corresponding temp_max values.
416
417		Unit: millidegree Celsius
418
419		RW
420
421What:		/sys/class/hwmon/hwmonX/tempY_crit_alarm
422Description:
423		Critical high temperature alarm flag.
424
425		- 0: OK
426		- 1: temperature has reached tempY_crit
427
428		RW
429
430		Contrary to regular alarm flags which clear themselves
431		automatically when read, this one sticks until cleared by
432		the user. This is done by writing 0 to the file. Writing
433		other values is unsupported.
434
435What:		/sys/class/hwmon/hwmonX/tempY_crit_hyst
436Description:
437		Temperature hysteresis value for critical limit.
438
439		Unit: millidegree Celsius
440
441		Must be reported as an absolute temperature, NOT a delta
442		from the critical value.
443
444		RW
445
446What:		/sys/class/hwmon/hwmonX/tempY_emergency
447Description:
448		Temperature emergency max value, for chips supporting more than
449		two upper temperature limits. Must be equal or greater than
450		corresponding temp_crit values.
451
452		Unit: millidegree Celsius
453
454		RW
455
456What:		/sys/class/hwmon/hwmonX/tempY_emergency_hyst
457Description:
458		Temperature hysteresis value for emergency limit.
459
460		Unit: millidegree Celsius
461
462		Must be reported as an absolute temperature, NOT a delta
463		from the emergency value.
464
465		RW
466
467What:		/sys/class/hwmon/hwmonX/tempY_lcrit
468Description:
469		Temperature critical min value, typically lower than
470		corresponding temp_min values.
471
472		Unit: millidegree Celsius
473
474		RW
475
476What:		/sys/class/hwmon/hwmonX/tempY_lcrit_hyst
477Description:
478		Temperature hysteresis value for critical min limit.
479
480		Unit: millidegree Celsius
481
482		Must be reported as an absolute temperature, NOT a delta
483		from the critical min value.
484
485		RW
486
487What:		/sys/class/hwmon/hwmonX/tempY_offset
488Description:
489		Temperature offset which is added to the temperature reading
490		by the chip.
491
492		Unit: millidegree Celsius
493
494		Read/Write value.
495
496What:		/sys/class/hwmon/hwmonX/tempY_label
497Description:
498		Suggested temperature channel label.
499
500		Text string
501
502		Should only be created if the driver has hints about what
503		this temperature channel is being used for, and user-space
504		doesn't. In all other cases, the label is provided by
505		user-space.
506
507		RO
508
509What:		/sys/class/hwmon/hwmonX/tempY_lowest
510Description:
511		Historical minimum temperature
512
513		Unit: millidegree Celsius
514
515		RO
516
517What:		/sys/class/hwmon/hwmonX/tempY_highest
518Description:
519		Historical maximum temperature
520
521		Unit: millidegree Celsius
522
523		RO
524
525What:		/sys/class/hwmon/hwmonX/tempY_reset_history
526Description:
527		Reset temp_lowest and temp_highest
528
529		WO
530
531What:		/sys/class/hwmon/hwmonX/temp_reset_history
532Description:
533		Reset temp_lowest and temp_highest for all sensors
534
535		WO
536
537What:		/sys/class/hwmon/hwmonX/tempY_enable
538Description:
539		Enable or disable the sensors.
540
541		When disabled the sensor read will return -ENODATA.
542
543		- 1: Enable
544		- 0: Disable
545
546		RW
547
548What:		/sys/class/hwmon/hwmonX/tempY_rated_min
549Description:
550		Minimum rated temperature.
551
552		Unit: millidegree Celsius
553
554		RO
555
556What:		/sys/class/hwmon/hwmonX/tempY_rated_max
557Description:
558		Maximum rated temperature.
559
560		Unit: millidegree Celsius
561
562		RO
563
564What:		/sys/class/hwmon/hwmonX/currY_max
565Description:
566		Current max value
567
568		Unit: milliampere
569
570		RW
571
572What:		/sys/class/hwmon/hwmonX/currY_min
573Description:
574		Current min value.
575
576		Unit: milliampere
577
578		RW
579
580What:		/sys/class/hwmon/hwmonX/currY_lcrit
581Description:
582		Current critical low value
583
584		Unit: milliampere
585
586		RW
587
588What:		/sys/class/hwmon/hwmonX/currY_crit
589Description:
590		Current critical high value.
591
592		Unit: milliampere
593
594		RW
595
596What:		/sys/class/hwmon/hwmonX/currY_input
597Description:
598		Current input value
599
600		Unit: milliampere
601
602		RO
603
604What:		/sys/class/hwmon/hwmonX/currY_average
605Description:
606		Average current use
607
608		Unit: milliampere
609
610		RO
611
612What:		/sys/class/hwmon/hwmonX/currY_lowest
613Description:
614		Historical minimum current
615
616		Unit: milliampere
617
618		RO
619
620What:		/sys/class/hwmon/hwmonX/currY_highest
621Description:
622		Historical maximum current
623		Unit: milliampere
624		RO
625
626What:		/sys/class/hwmon/hwmonX/currY_reset_history
627Description:
628		Reset currX_lowest and currX_highest
629
630		WO
631
632What:		/sys/class/hwmon/hwmonX/curr_reset_history
633Description:
634		Reset currX_lowest and currX_highest for all sensors
635
636		WO
637
638What:		/sys/class/hwmon/hwmonX/currY_enable
639Description:
640		Enable or disable the sensors.
641
642		When disabled the sensor read will return -ENODATA.
643
644		- 1: Enable
645		- 0: Disable
646
647		RW
648
649What:		/sys/class/hwmon/hwmonX/currY_rated_min
650Description:
651		Minimum rated current.
652
653		Unit: milliampere
654
655		RO
656
657What:		/sys/class/hwmon/hwmonX/currY_rated_max
658Description:
659		Maximum rated current.
660
661		Unit: milliampere
662
663		RO
664
665What:		/sys/class/hwmon/hwmonX/powerY_average
666Description:
667		Average power use
668
669		Unit: microWatt
670
671		RO
672
673What:		/sys/class/hwmon/hwmonX/powerY_average_interval
674Description:
675		Power use averaging interval.  A poll
676		notification is sent to this file if the
677		hardware changes the averaging interval.
678
679		Unit: milliseconds
680
681		RW
682
683What:		/sys/class/hwmon/hwmonX/powerY_average_interval_max
684Description:
685		Maximum power use averaging interval
686
687		Unit: milliseconds
688
689		RO
690
691What:		/sys/class/hwmon/hwmonX/powerY_average_interval_min
692Description:
693		Minimum power use averaging interval
694
695		Unit: milliseconds
696
697		RO
698
699What:		/sys/class/hwmon/hwmonX/powerY_average_highest
700Description:
701		Historical average maximum power use
702
703		Unit: microWatt
704
705		RO
706
707What:		/sys/class/hwmon/hwmonX/powerY_average_lowest
708Description:
709		Historical average minimum power use
710
711		Unit: microWatt
712
713		RO
714
715What:		/sys/class/hwmon/hwmonX/powerY_average_max
716Description:
717		A poll notification is sent to
718		`powerY_average` when power use
719		rises above this value.
720
721		Unit: microWatt
722
723		RW
724
725What:		/sys/class/hwmon/hwmonX/powerY_average_min
726Description:
727		A poll notification is sent to
728		`powerY_average` when power use
729		sinks below this value.
730
731		Unit: microWatt
732
733		RW
734
735What:		/sys/class/hwmon/hwmonX/powerY_input
736Description:
737		Instantaneous power use
738
739		Unit: microWatt
740
741		RO
742
743What:		/sys/class/hwmon/hwmonX/powerY_input_highest
744Description:
745		Historical maximum power use
746
747		Unit: microWatt
748
749		RO
750
751What:		/sys/class/hwmon/hwmonX/powerY_input_lowest
752Description:
753		Historical minimum power use
754
755		Unit: microWatt
756
757		RO
758
759What:		/sys/class/hwmon/hwmonX/powerY_reset_history
760Description:
761		Reset input_highest, input_lowest,
762		average_highest and average_lowest.
763
764		WO
765
766What:		/sys/class/hwmon/hwmonX/powerY_accuracy
767Description:
768		Accuracy of the power meter.
769
770		Unit: Percent
771
772		RO
773
774What:		/sys/class/hwmon/hwmonX/powerY_cap
775Description:
776		If power use rises above this limit, the
777		system should take action to reduce power use.
778		A poll notification is sent to this file if the
779		cap is changed by the hardware.  The `*_cap`
780		files only appear if the cap is known to be
781		enforced by hardware.
782
783		Unit: microWatt
784
785		RW
786
787What:		/sys/class/hwmon/hwmonX/powerY_cap_hyst
788Description:
789		Margin of hysteresis built around capping and
790		notification.
791
792		Unit: microWatt
793
794		RW
795
796What:		/sys/class/hwmon/hwmonX/powerY_cap_max
797Description:
798		Maximum cap that can be set.
799
800		Unit: microWatt
801
802		RO
803
804What:		/sys/class/hwmon/hwmonX/powerY_cap_min
805Description:
806		Minimum cap that can be set.
807
808		Unit: microWatt
809
810		RO
811
812What:		/sys/class/hwmon/hwmonX/powerY_max
813Description:
814		Maximum power.
815
816		Unit: microWatt
817
818		RW
819
820What:		/sys/class/hwmon/hwmonX/powerY_crit
821Description:
822		Critical maximum power.
823
824		If power rises to or above this limit, the
825		system is expected take drastic action to reduce
826		power consumption, such as a system shutdown or
827		a forced powerdown of some devices.
828
829		Unit: microWatt
830
831		RW
832
833What:		/sys/class/hwmon/hwmonX/powerY_enable
834Description:
835		Enable or disable the sensors.
836
837		When disabled the sensor read will return
838		-ENODATA.
839
840		- 1: Enable
841		- 0: Disable
842
843		RW
844
845What:		/sys/class/hwmon/hwmonX/powerY_rated_min
846Description:
847		Minimum rated power.
848
849		Unit: microWatt
850
851		RO
852
853What:		/sys/class/hwmon/hwmonX/powerY_rated_max
854Description:
855		Maximum rated power.
856
857		Unit: microWatt
858
859		RO
860
861What:		/sys/class/hwmon/hwmonX/energyY_input
862Description:
863		Cumulative energy use
864
865		Unit: microJoule
866
867		RO
868
869What:		/sys/class/hwmon/hwmonX/energyY_enable
870Description:
871		Enable or disable the sensors.
872
873		When disabled the sensor read will return
874		-ENODATA.
875
876		- 1: Enable
877		- 0: Disable
878
879		RW
880
881What:		/sys/class/hwmon/hwmonX/humidityY_input
882Description:
883		Humidity
884
885		Unit: milli-percent (per cent mille, pcm)
886
887		RO
888
889
890What:		/sys/class/hwmon/hwmonX/humidityY_enable
891Description:
892		Enable or disable the sensors
893
894		When disabled the sensor read will return
895		-ENODATA.
896
897		- 1: Enable
898		- 0: Disable
899
900		RW
901
902What:		/sys/class/hwmon/hwmonX/humidityY_rated_min
903Description:
904		Minimum rated humidity.
905
906		Unit: milli-percent (per cent mille, pcm)
907
908		RO
909
910What:		/sys/class/hwmon/hwmonX/humidityY_rated_max
911Description:
912		Maximum rated humidity.
913
914		Unit: milli-percent (per cent mille, pcm)
915
916		RO
917
918
919What:		/sys/class/hwmon/hwmonX/intrusionY_alarm
920Description:
921		Chassis intrusion detection
922
923		- 0: OK
924		- 1: intrusion detected
925
926		RW
927
928		Contrary to regular alarm flags which clear themselves
929		automatically when read, this one sticks until cleared by
930		the user. This is done by writing 0 to the file. Writing
931		other values is unsupported.
932
933What:		/sys/class/hwmon/hwmonX/intrusionY_beep
934Description:
935		Chassis intrusion beep
936
937		- 0: disable
938		- 1: enable
939
940		RW
941
942What:		/sys/class/hwmon/hwmonX/device/pec
943Description:
944		PEC support on I2C devices
945
946		- 0, off, n: disable
947		- 1, on, y: enable
948
949		RW
950