xref: /linux/Documentation/ABI/testing/sysfs-driver-w1_therm (revision a4eb44a6435d6d8f9e642407a4a06f65eb90ca04)
1What:		/sys/bus/w1/devices/.../alarms
2Date:		May 2020
3Contact:	Akira Shimahara <akira215corp@gmail.com>
4Description:
5		(RW) read or write TH and TL (Temperature High an Low) alarms.
6		Values shall be space separated and in the device range
7		(typical -55 degC to 125 degC), if not values will be trimmed
8		to device min/max capabilities. Values are integer as they are
9		stored in a 8bit register in the device. Lowest value is
10		automatically put to TL. Once set, alarms could be search at
11		master level, refer to Documentation/w1/w1-generic.rst for
12		detailed information
13Users:		any user space application which wants to communicate with
14		w1_term device
15
16
17What:		/sys/bus/w1/devices/.../eeprom_cmd
18Date:		May 2020
19Contact:	Akira Shimahara <akira215corp@gmail.com>
20Description:
21		(WO) writing that file will either trigger a save of the
22		device data to its embedded EEPROM, either restore data
23		embedded in device EEPROM. Be aware that devices support
24		limited EEPROM writing cycles (typical 50k)
25
26			* 'save': save device RAM to EEPROM
27			* 'restore': restore EEPROM data in device RAM
28
29Users:		any user space application which wants to communicate with
30		w1_term device
31
32
33What:		/sys/bus/w1/devices/.../ext_power
34Date:		May 2020
35Contact:	Akira Shimahara <akira215corp@gmail.com>
36Description:
37		(RO) return the power status by asking the device
38
39			* '0': device parasite powered
40			* '1': device externally powered
41			* '-xx': xx is kernel error when reading power status
42
43Users:		any user space application which wants to communicate with
44		w1_term device
45
46
47What:		/sys/bus/w1/devices/.../resolution
48Date:		May 2020
49Contact:	Akira Shimahara <akira215corp@gmail.com>
50Description:
51		(RW) get or set the device resolution (on supported devices,
52		if not, this entry is not present). Note that the resolution
53		will be changed only in device RAM, so it will be cleared when
54		power is lost. Trigger a 'save' to EEPROM command to keep
55		values after power-on. Read or write are :
56
57			* '9..14': device resolution in bit
58			  or resolution to set in bit
59			* '-xx': xx is kernel error when reading the resolution
60			* Anything else: do nothing
61
62		Some DS18B20 clones are fixed in 12-bit resolution, so the
63		actual resolution is read back from the chip and verified. Error
64		is reported if the results differ.
65Users:		any user space application which wants to communicate with
66		w1_term device
67
68
69What:		/sys/bus/w1/devices/.../temperature
70Date:		May 2020
71Contact:	Akira Shimahara <akira215corp@gmail.com>
72Description:
73		(RO) return the temperature in 1/1000 degC.
74
75			* If a bulk read has been triggered, it will directly
76			  return the temperature computed when the bulk read
77			  occurred, if available. If not yet available, nothing
78			  is returned (a debug kernel message is sent), you
79			  should retry later on.
80			* If no bulk read has been triggered, it will trigger
81			  a conversion and send the result. Note that the
82			  conversion duration depend on the resolution (if
83			  device support this feature). It takes 94ms in 9bits
84			  resolution, 750ms for 12bits.
85
86Users:		any user space application which wants to communicate with
87		w1_term device
88
89
90What:		/sys/bus/w1/devices/.../w1_slave
91Date:		May 2020
92Contact:	Akira Shimahara <akira215corp@gmail.com>
93Description:
94		(RW) return the temperature in 1/1000 degC.
95		*read*: return 2 lines with the hexa output data sent on the
96		bus, return the CRC check and temperature in 1/1000 degC
97		*write*:
98
99			* '0' : save the 2 or 3 bytes to the device EEPROM
100			  (i.e. TH, TL and config register)
101			* '9..14' : set the device resolution in RAM
102			  (if supported)
103			* Anything else: do nothing
104
105		refer to Documentation/w1/slaves/w1_therm.rst for detailed
106		information.
107Users:		any user space application which wants to communicate with
108		w1_term device
109
110
111What:		/sys/bus/w1/devices/w1_bus_masterXX/therm_bulk_read
112Date:		May 2020
113Contact:	Akira Shimahara <akira215corp@gmail.com>
114Description:
115		(RW) trigger a bulk read conversion. read the status
116
117		*read*:
118			* '-1':
119				conversion in progress on at least 1 sensor
120			* '1' :
121				conversion complete but at least one sensor
122				value has not been read yet
123			* '0' :
124				no bulk operation. Reading temperature will
125				trigger a conversion on each device
126
127		*write*:
128			'trigger': trigger a bulk read on all supporting
129			devices on the bus
130
131		Note that if a bulk read is sent but one sensor is not read
132		immediately, the next access to temperature on this device
133		will return the temperature measured at the time of issue
134		of the bulk read command (not the current temperature).
135Users:		any user space application which wants to communicate with
136		w1_term device
137
138
139What:		/sys/bus/w1/devices/.../conv_time
140Date:		July 2020
141Contact:	Ivan Zaentsev <ivan.zaentsev@wirenboard.ru>
142Description:
143		(RW) Get, set, or measure a temperature conversion time. The
144		setting remains active until a resolution change. Then it is
145		reset to default (datasheet) conversion time for a new
146		resolution.
147
148		*read*:
149			Actual conversion time in milliseconds.
150
151		*write*:
152			* '0':
153			     Set the default conversion time from the datasheet.
154			* '1':
155			     Measure and set the conversion time. Make a single
156			     temperature conversion, measure an actual value.
157			     Increase it by 20% for temperature range. A new
158			     conversion time can be obtained by reading this
159			     same attribute.
160			* other positive value:
161			     Set the conversion time in milliseconds.
162
163Users:		An application using the w1_term device
164
165
166What:		/sys/bus/w1/devices/.../features
167Date:		July 2020
168Contact:	Ivan Zaentsev <ivan.zaentsev@wirenboard.ru>
169Description:
170		(RW) Control optional driver settings.
171		Bit masks to read/write (bitwise OR):
172
173		== ============================================================
174                 1 Enable check for conversion success. If byte 6 of
175                   scratchpad memory is 0xC after conversion, and
176                   temperature reads 85.00 (powerup value) or 127.94
177                   (insufficient power) - return a conversion error.
178
179                2  Enable poll for conversion completion. Generate read cycles
180                   after the conversion start and wait for 1's. In parasite
181                   power mode this feature is not available.
182		== ============================================================
183
184		*read*:
185		    Currently selected features.
186
187		*write*:
188		    Select features.
189
190Users:		An application using the w1_term device
191