diff options
author | Thomas VanSelus <tvanselus@xes-inc.com> | 2017-12-22 19:51:23 +0300 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2018-01-09 19:03:57 +0300 |
commit | 066ed427125eccaab5c0e56cce85d0cff4ee82a4 (patch) | |
tree | 4ef94b124cc2a03a698407a366c3618a5a6dad3b /drivers/android/binder.c | |
parent | 2fa065fde217a39987f8931cb800e511fa5178e4 (diff) | |
download | linux-066ed427125eccaab5c0e56cce85d0cff4ee82a4.tar.xz |
misc: ds1682: Ignore update-in-progress ETC reads
The Elapsed Time Counter (ETC) registers are not buffered for reading.
If a 250ms tick occurs while data is being read out, the result can be
a combination of old and new values. This can occur at the byte level
(giving a time in the future) or the individual bit level (giving a
time in the past). We catch both these cases by reading until we get
two equal or consecutive values. After five unsuccessful attempts we
give up.
Signed-off-by: Thomas VanSelus <tvanselus@xes-inc.com>
Signed-off-by: Aaron Sierra <asierra@xes-inc.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/android/binder.c')
0 files changed, 0 insertions, 0 deletions