diff options
author | Robert Coulson <rob.coulson@gmail.com> | 2013-06-10 21:46:03 -0400 |
---|---|---|
committer | Guenter Roeck <linux@roeck-us.net> | 2013-06-27 13:31:40 -0400 |
commit | 87438c2c5483a7ab445c14a8855fd309ae79b4e6 (patch) | |
tree | 2fe80cc638d3af84fe5f3456351e1253cbfe3b7c /Documentation/hwmon | |
parent | 260f81ffc1b9f09dde355caa09e4b312756666f0 (diff) |
hwmon: (ds1621) Update documentation
Replace some written information with tables to improve readability
and to simplify adding newer devices in the future.
Signed-off-by: Robert Coulson <rob.coulson@gmail.com>
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Diffstat (limited to 'Documentation/hwmon')
-rw-r--r-- | Documentation/hwmon/ds1621 | 80 |
1 files changed, 50 insertions, 30 deletions
diff --git a/Documentation/hwmon/ds1621 b/Documentation/hwmon/ds1621 index c0817f7934e4..896cdc972ca8 100644 --- a/Documentation/hwmon/ds1621 +++ b/Documentation/hwmon/ds1621 | |||
@@ -73,37 +73,57 @@ any of the limits have ever been met or exceeded since last power-up or | |||
73 | reset. Be aware: When testing, it showed that the status of Tout can change | 73 | reset. Be aware: When testing, it showed that the status of Tout can change |
74 | with neither of the alarms set. | 74 | with neither of the alarms set. |
75 | 75 | ||
76 | Temperature conversion of the DS1621 takes up to 1000ms; internal access to | ||
77 | non-volatile registers may last for 10ms or below. | ||
78 | |||
79 | The DS1625 is pin compatible and functionally equivalent with the DS1621, | ||
80 | but the DS1621 is meant to replace it. The DS1631, DS1721, and DS1731 are | ||
81 | also pin compatible with the DS1621, but provide multi-resolution support. | ||
82 | |||
83 | Since there is no version or vendor identification register, there is | 76 | Since there is no version or vendor identification register, there is |
84 | no unique identification for these devices. Therefore, explicit device | 77 | no unique identification for these devices. Therefore, explicit device |
85 | instantiation is required for correct device identification and functionality. | 78 | instantiation is required for correct device identification and functionality |
86 | 79 | (one device per address in this address range: 0x48..0x4f). | |
87 | And, for correct identification and operation, each device must be | ||
88 | explicitly instantiated, one device per address, in this address | ||
89 | range: 0x48..0x4f. | ||
90 | 80 | ||
91 | The DS1721 is pin compatible with the DS1621, has an accuracy of +/- 1.0 | 81 | The DS1625 is pin compatible and functionally equivalent with the DS1621, |
92 | degree Celsius (from -10 to +85 degrees), a minimum/maximum alarm default | 82 | but the DS1621 is meant to replace it. The DS1631, DS1721, and DS1731 are |
93 | setting of 75 and 80 degrees, and a maximum conversion time of 750ms. | 83 | also pin compatible with the DS1621 and provide multi-resolution support. |
94 | 84 | ||
95 | In addition, the DS1721 supports four resolution settings from 9 to 12 bits | 85 | Additionally, the DS1721 data sheet says the temperature flags (THF and TLF) |
96 | (defined in degrees C per LSB: 0.5, 0.25, 0.125, and 0.0625, respectively), | 86 | are used internally, however, these flags do get set and cleared as the actual |
97 | that are set at device power on to the highest resolution: 12-bits. | 87 | temperature crosses the min or max settings (which by default are set to 75 |
98 | 88 | and 80 degrees respectively). | |
99 | One additional note about the ds1721 is that although the data sheet says | 89 | |
100 | the temperature flags (THF and TLF) are used internally, these flags do | 90 | Temperature Conversion: |
101 | get set and cleared as the actual temperature crosses the min or max settings. | 91 | ----------------------- |
102 | 92 | DS1621 - 750ms (older devices may take up to 1000ms) | |
103 | The DS1631 and DS1731 are pin compatible with the DS1621 and feature compatible | 93 | DS1625 - 500ms |
104 | with the DS1721. However, the DS1631 accuracy is +/- 0.5 degree Celsius (from 0 | 94 | DS1631 - 93ms..750ms for 9..12 bits resolution, respectively. |
105 | to +70 degrees), while the DS1731 accuracy is +/-1 degree Celsius (from -10 to | 95 | DS1721 - 93ms..750ms for 9..12 bits resolution, respectively. |
106 | +85 degrees). | 96 | DS1731 - 93ms..750ms for 9..12 bits resolution, respectively. |
97 | |||
98 | Note: | ||
99 | On the DS1621, internal access to non-volatile registers may last for 10ms | ||
100 | or less (unverified on the other devices). | ||
101 | |||
102 | Temperature Accuracy: | ||
103 | --------------------- | ||
104 | DS1621: +/- 0.5 degree Celsius (from 0 to +70 degrees) | ||
105 | DS1625: +/- 0.5 degree Celsius (from 0 to +70 degrees) | ||
106 | DS1631: +/- 0.5 degree Celsius (from 0 to +70 degrees) | ||
107 | DS1721: +/- 1.0 degree Celsius (from -10 to +85 degrees) | ||
108 | DS1731: +/- 1.0 degree Celsius (from -10 to +85 degrees) | ||
109 | |||
110 | Note: | ||
111 | Please refer to the device datasheets for accuracy at other temperatures. | ||
112 | |||
113 | Temperature Resolution: | ||
114 | ----------------------- | ||
115 | As mentioned above, the DS1631, DS1721, and DS1731 provide multi-resolution | ||
116 | support, which is achieved via the R0 and R1 config register bits, where: | ||
117 | |||
118 | R0..R1 | ||
119 | ------ | ||
120 | 0 0 => 9 bits, 0.5 degrees Celcius | ||
121 | 1 0 => 10 bits, 0.25 degrees Celcius | ||
122 | 0 1 => 11 bits, 0.125 degrees Celcius | ||
123 | 1 1 => 12 bits, 0.0625 degrees Celcius | ||
124 | |||
125 | Note: | ||
126 | At initial device power-on, the default resolution is set to 12-bits. | ||
107 | 127 | ||
108 | The resolution mode for the DS1631, DS1721, or DS1731 can be changed from | 128 | The resolution mode for the DS1631, DS1721, or DS1731 can be changed from |
109 | userspace, via the device 'update_interval' sysfs attribute. This attribute | 129 | userspace, via the device 'update_interval' sysfs attribute. This attribute |
@@ -112,12 +132,12 @@ values defined in the datasheet as follows: | |||
112 | 132 | ||
113 | Resolution Conversion Time Input Range | 133 | Resolution Conversion Time Input Range |
114 | (C/LSB) (msec) (msec) | 134 | (C/LSB) (msec) (msec) |
115 | -------------------------------------------- | 135 | ------------------------------------------------ |
116 | 0.5 93.75 0....94 | 136 | 0.5 93.75 0....94 |
117 | 0.25 187.5 95...187 | 137 | 0.25 187.5 95...187 |
118 | 0.125 375 188..375 | 138 | 0.125 375 188..375 |
119 | 0.0625 750 376..infinity | 139 | 0.0625 750 376..infinity |
120 | -------------------------------------- | 140 | ------------------------------------------------ |
121 | 141 | ||
122 | The following examples show how the 'update_interval' attribute can be | 142 | The following examples show how the 'update_interval' attribute can be |
123 | used to change the conversion time: | 143 | used to change the conversion time: |