diff options
author | Marius Schilder <mschilder@google.com> | 2018-01-03 22:34:27 -0800 |
---|---|---|
committer | chrome-bot <chrome-bot@chromium.org> | 2018-01-04 14:35:21 -0800 |
commit | 1c1af98e405d291606a4a862459d3acb134c9ca3 (patch) | |
tree | de1106b7053126abf393d209d37ffccd2a5db8c0 /board | |
parent | c69f4dfad51ed9ac5fb0bad3e632cbcd6a1c163f (diff) | |
download | chrome-ec-1c1af98e405d291606a4a862459d3acb134c9ca3.tar.gz |
g: fix flaky timeout check for spi transfer.
Typically this routine runs on low priority hook task.
A pre-emption by a higher priority task might be mistaken for timeout.
Double check the transfer done status after the timeout time has passed.
Also clear the TXDONE status before starting a fresh transaction to make sure
we wait for the current transaction to complete; an errand TXDONE status
at start of the transaction will pre-empt waiting for the current transaction
and return stale data.
BRANCH=none
TEST=mn50 stress test fails within minutes vs. now stable.
Main test component is higher priority console task
that does intermittent compute during usb-spi transfers.
Change-Id: Ide4390e42d3957bc45eea8160617a52dd31ed866
Reviewed-on: https://chromium-review.googlesource.com/849662
Commit-Ready: Marius Schilder <mschilder@chromium.org>
Tested-by: Marius Schilder <mschilder@chromium.org>
Reviewed-by: Marius Schilder <mschilder@chromium.org>
Reviewed-by: Nagendra Modadugu <ngm@google.com>
Reviewed-by: Nick Sanders <nsanders@chromium.org>
Reviewed-by: Vadim Bendebury <vbendeb@chromium.org>
Diffstat (limited to 'board')
0 files changed, 0 insertions, 0 deletions