mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-12-17 17:53:56 +08:00
docs: w1: w1_therm: Fix broken xref, mistakes, clarify text
sysfs attribute names are mixed with the same normal text terms. Use ReST to distinguish. Fix typos and mistakes. Reported-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org> Signed-off-by: Ivan Zaentsev <ivan.zaentsev@wirenboard.ru> Link: https://lore.kernel.org/r/20201008054259.5461-1-ivan.zaentsev@wirenboard.ru Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
51fbad388c
commit
78eef5d952
@ -146,7 +146,7 @@ Date: July 2020
|
|||||||
Contact: Ivan Zaentsev <ivan.zaentsev@wirenboard.ru>
|
Contact: Ivan Zaentsev <ivan.zaentsev@wirenboard.ru>
|
||||||
Description:
|
Description:
|
||||||
(RW) Control optional driver settings.
|
(RW) Control optional driver settings.
|
||||||
Bit masks to read/write (logical OR):
|
Bit masks to read/write (bitwise OR):
|
||||||
|
|
||||||
1: Enable check for conversion success. If byte 6 of
|
1: Enable check for conversion success. If byte 6 of
|
||||||
scratchpad memory is 0xC after conversion, and
|
scratchpad memory is 0xC after conversion, and
|
||||||
@ -157,7 +157,7 @@ Description:
|
|||||||
after the conversion start and wait for 1's. In parasite
|
after the conversion start and wait for 1's. In parasite
|
||||||
power mode this feature is not available.
|
power mode this feature is not available.
|
||||||
|
|
||||||
*read*: Currently selected features, bitwise OR.
|
*read*: Currently selected features.
|
||||||
*write*: Select features, bitwise OR.
|
*write*: Select features.
|
||||||
|
|
||||||
Users: An application using the w1_term device
|
Users: An application using the w1_term device
|
||||||
|
@ -27,75 +27,72 @@ W1_THERM_DS1825 0x3B
|
|||||||
W1_THERM_DS28EA00 0x42
|
W1_THERM_DS28EA00 0x42
|
||||||
==================== ====
|
==================== ====
|
||||||
|
|
||||||
Support is provided through the sysfs w1_slave file. Each open and
|
Support is provided through the sysfs entry ``w1_slave``. Each open and
|
||||||
read sequence will initiate a temperature conversion then provide two
|
read sequence will initiate a temperature conversion, then provide two
|
||||||
lines of ASCII output. The first line contains the nine hex bytes
|
lines of ASCII output. The first line contains the nine hex bytes
|
||||||
read along with a calculated crc value and YES or NO if it matched.
|
read along with a calculated crc value and YES or NO if it matched.
|
||||||
If the crc matched the returned values are retained. The second line
|
If the crc matched the returned values are retained. The second line
|
||||||
displays the retained values along with a temperature in millidegrees
|
displays the retained values along with a temperature in millidegrees
|
||||||
Centigrade after t=.
|
Centigrade after t=.
|
||||||
|
|
||||||
Alternatively, temperature can be read using temperature sysfs, it
|
Alternatively, temperature can be read using ``temperature`` sysfs, it
|
||||||
return only temperature in millidegrees Centigrade.
|
returns only the temperature in millidegrees Centigrade.
|
||||||
|
|
||||||
A bulk read of all devices on the bus could be done writing 'trigger'
|
A bulk read of all devices on the bus could be done writing ``trigger``
|
||||||
in the therm_bulk_read sysfs entry at w1_bus_master level. This will
|
to ``therm_bulk_read`` entry at w1_bus_master level. This will
|
||||||
sent the convert command on all devices on the bus, and if parasite
|
send the convert command to all devices on the bus, and if parasite
|
||||||
powered devices are detected on the bus (and strong pullup is enable
|
powered devices are detected on the bus (and strong pullup is enabled
|
||||||
in the module), it will drive the line high during the longer conversion
|
in the module), it will drive the line high during the longer conversion
|
||||||
time required by parasited powered device on the line. Reading
|
time required by parasited powered device on the line. Reading
|
||||||
therm_bulk_read will return 0 if no bulk conversion pending,
|
``therm_bulk_read`` will return 0 if no bulk conversion pending,
|
||||||
-1 if at least one sensor still in conversion, 1 if conversion is complete
|
-1 if at least one sensor still in conversion, 1 if conversion is complete
|
||||||
but at least one sensor value has not been read yet. Result temperature is
|
but at least one sensor value has not been read yet. Result temperature is
|
||||||
then accessed by reading the temperature sysfs entry of each device, which
|
then accessed by reading the ``temperature`` entry of each device, which
|
||||||
may return empty if conversion is still in progress. Note that if a bulk
|
may return empty if conversion is still in progress. Note that if a bulk
|
||||||
read is sent but one sensor is not read immediately, the next access to
|
read is sent but one sensor is not read immediately, the next access to
|
||||||
temperature on this device will return the temperature measured at the
|
``temperature`` on this device will return the temperature measured at the
|
||||||
time of issue of the bulk read command (not the current temperature).
|
time of issue of the bulk read command (not the current temperature).
|
||||||
|
|
||||||
A strong pullup will be applied during the conversion if required.
|
A strong pullup will be applied during the conversion if required.
|
||||||
|
|
||||||
``conv_time`` sysfs entry is used to get current conversion time (read), and
|
``conv_time`` is used to get current conversion time (read), and
|
||||||
adjust it (write). A temperature conversion time depends on the device type and
|
adjust it (write). A temperature conversion time depends on the device type and
|
||||||
it's current resolution. Default conversion time is set by the driver according
|
it's current resolution. Default conversion time is set by the driver according
|
||||||
to the device datasheet. A conversion time for many original device clones
|
to the device datasheet. A conversion time for many original device clones
|
||||||
deviate from datasheet specs. There are three options: 1) manually set the
|
deviate from datasheet specs. There are three options: 1) manually set the
|
||||||
correct conversion time by writing a value in milliseconds to ``conv_time``; 2)
|
correct conversion time by writing a value in milliseconds to ``conv_time``; 2)
|
||||||
auto measure and set a conversion time by writing ``1`` to
|
auto measure and set a conversion time by writing ``1`` to
|
||||||
``conv_time``; 3) use ``features`` entry to enable poll for conversion
|
``conv_time``; 3) use ``features`` to enable poll for conversion
|
||||||
completion. Options 2, 3 can't be used in parasite power mode. To get back to
|
completion. Options 2, 3 can't be used in parasite power mode. To get back to
|
||||||
the default conversion time write ``0`` to ``conv_time``.
|
the default conversion time write ``0`` to ``conv_time``.
|
||||||
|
|
||||||
Writing a value between 9 and 12 to the sysfs w1_slave file will change the
|
Writing a resolution value (in bits) to ``w1_slave`` will change the
|
||||||
precision of the sensor for the next readings. This value is in (volatile)
|
precision of the sensor for the next readings. Allowed resolutions are defined by
|
||||||
SRAM, so it is reset when the sensor gets power-cycled.
|
the sensor. Resolution is reset when the sensor gets power-cycled.
|
||||||
|
|
||||||
To store the current precision configuration into EEPROM, the value 0
|
To store the current resolution in EEPROM, write ``0`` to ``w1_slave``.
|
||||||
has to be written to the sysfs w1_slave file. Since the EEPROM has a limited
|
Since the EEPROM has a limited amount of writes (>50k), this command should be
|
||||||
amount of writes (>50k), this command should be used wisely.
|
used wisely.
|
||||||
|
|
||||||
Alternatively, resolution can be set or read (value from 9 to 12) using the
|
Alternatively, resolution can be read or written using the dedicated
|
||||||
dedicated resolution sysfs entry on each device. This sysfs entry is not present
|
``resolution`` entry on each device, if supported by the sensor.
|
||||||
for devices not supporting this feature.
|
|
||||||
|
|
||||||
Some non-genuine DS18B20 chips are
|
Some non-genuine DS18B20 chips are fixed in 12-bit mode only, so the actual
|
||||||
fixed in 12-bit mode only, so the actual resolution is read back from the chip
|
resolution is read back from the chip and verified.
|
||||||
and verified by the driver.
|
|
||||||
|
|
||||||
Note: Changing the resolution reverts the conversion time to default.
|
Note: Changing the resolution reverts the conversion time to default.
|
||||||
|
|
||||||
The write-only sysfs entry eeprom is an alternative for EEPROM operations:
|
The write-only sysfs entry ``eeprom`` is an alternative for EEPROM operations.
|
||||||
* 'save': will save device RAM to EEPROM
|
Write ``save`` to save device RAM to EEPROM. Write ``restore`` to restore EEPROM
|
||||||
* 'restore': will restore EEPROM data in device RAM.
|
data in device RAM.
|
||||||
|
|
||||||
ext_power syfs entry allow tho check the power status of each device.
|
``ext_power`` entry allows checking the power state of each device. Reads
|
||||||
* '0': device parasite powered
|
``0`` if the device is parasite powered, ``1`` if the device is externally powered.
|
||||||
* '1': device externally powered
|
|
||||||
|
|
||||||
sysfs alarms allow read or write TH and TL (Temperature High an Low) alarms.
|
Sysfs ``alarms`` allow read or write TH and TL (Temperature High an Low) alarms.
|
||||||
Values shall be space separated and in the device range (typical -55 degC
|
Values shall be space separated and in the device range (typical -55 degC
|
||||||
to 125 degC). Values are integer as they are store in a 8bit register in
|
to 125 degC). Values are integer as they are store in a 8bit register in
|
||||||
the device. Lowest value is automatically put to TL.Once set, alarms could
|
the device. Lowest value is automatically put to TL. Once set, alarms could
|
||||||
be search at master level.
|
be search at master level.
|
||||||
|
|
||||||
The module parameter strong_pullup can be set to 0 to disable the
|
The module parameter strong_pullup can be set to 0 to disable the
|
||||||
@ -119,24 +116,24 @@ The DS28EA00 provides an additional two pins for implementing a sequence
|
|||||||
detection algorithm. This feature allows you to determine the physical
|
detection algorithm. This feature allows you to determine the physical
|
||||||
location of the chip in the 1-wire bus without needing pre-existing
|
location of the chip in the 1-wire bus without needing pre-existing
|
||||||
knowledge of the bus ordering. Support is provided through the sysfs
|
knowledge of the bus ordering. Support is provided through the sysfs
|
||||||
w1_seq file. The file will contain a single line with an integer value
|
``w1_seq``. The file will contain a single line with an integer value
|
||||||
representing the device index in the bus starting at 0.
|
representing the device index in the bus starting at 0.
|
||||||
|
|
||||||
``features`` sysfs entry controls optional driver settings per device.
|
``features`` sysfs entry controls optional driver settings per device.
|
||||||
Insufficient power in parasite mode, line noise and insufficient conversion time
|
Insufficient power in parasite mode, line noise and insufficient conversion
|
||||||
may lead to conversion failure. Original DS18B20 and some clones allow for
|
time may lead to conversion failure. Original DS18B20 and some clones allow for
|
||||||
detection of invalid conversion. Write bit mask ``1`` to ``features`` to enable
|
detection of invalid conversion. Write bit mask ``1`` to ``features`` to enable
|
||||||
checking the conversion success. If byte 6 of scratchpad memory is 0xC after
|
checking the conversion success. If byte 6 of scratchpad memory is 0xC after
|
||||||
conversion and temperature reads 85.00 (powerup value) or 127.94 (insufficient
|
conversion and temperature reads 85.00 (powerup value) or 127.94 (insufficient
|
||||||
power), the driver returns a conversion error. Bit mask ``2`` enables poll for
|
power), the driver returns a conversion error. Bit mask ``2`` enables poll for
|
||||||
conversion completion (normal power only) by generating read cycles on the bus
|
conversion completion (normal power only) by generating read cycles on the bus
|
||||||
after conversion starts. In parasite power mode this feature is not available.
|
after conversion starts. In parasite power mode this feature is not available.
|
||||||
Feature bit masks may be combined (OR). See accompanying sysfs documentation:
|
Feature bit masks may be combined (OR). More details in
|
||||||
:ref:`Documentation/w1/slaves/w1_therm.rst <w1_therm>`
|
Documentation/ABI/testing/sysfs-driver-w1_therm
|
||||||
|
|
||||||
GX20MH01 device shares family number 0x28 with DS18*20. The device is generally
|
GX20MH01 device shares family number 0x28 with DS18*20. The device is generally
|
||||||
compatible with DS18B20. Added are lowest 2^-5, 2^-6 temperature bits in Config
|
compatible with DS18B20. Added are lowest 2\ :sup:`-5`, 2\ :sup:`-6` temperature
|
||||||
register; R2 bit in Config register enabling 13 and 14 bit resolutions. The
|
bits in Config register; R2 bit in Config register enabling 13 and 14 bit
|
||||||
device is powered up in 14-bit resolution mode. The conversion times specified
|
resolutions. The device is powered up in 14-bit resolution mode. The conversion
|
||||||
in the datasheet are too low and have to be increased. The device supports
|
times specified in the datasheet are too low and have to be increased. The
|
||||||
driver features ``1`` and ``2``.
|
device supports driver features ``1`` and ``2``.
|
||||||
|
Loading…
Reference in New Issue
Block a user