Files
OpenCellular/common
Scott d5639272e2 Cr50: I2CS TPM: Added routine to write to HW fifo a word at a time
Reads of the TPM fifo by the Host are done in chunks of up to 63 bytes
at a time. The existing routine used to copy data read from the TPM
layer to the I2CS fifo operates one byte at a time. This method is
fine for single and four byte register reads. However, for larger
buffers the performace can be improved by aligning the the fifo write
pointer to be at a word boundary.

BRANCH=none
BUG=chrome-os-partner:40397
TEST=manual
Utilized test code on the host to initiate TPM fifo reads of various
lengths and added timing markers on the Cr50 to compare performance
between the existing byte at a time and the new full buffer write
funciton. Verifed that the fifo reads will still correct and compared
the time consumed copy TPM fifo data to the I2CS HW fifo.
This test processed 1910 bytes over 34 fifo reads.

Byte at a time method:
1910 bytes: 6375 uS: Avg Time = 3.233 uS per byte

Full buffer write:
1910 bytes: 3009 uS: Avg Time = 1.57 uS per byte

Change-Id: I3a47a350ab7af740a452fd115c33117b453b9611
Signed-off-by: Scott <scollyer@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/377663
Commit-Ready: Scott Collyer <scollyer@chromium.org>
Tested-by: Scott Collyer <scollyer@chromium.org>
Reviewed-by: Bill Richardson <wfrichar@chromium.org>
2016-09-05 23:22:18 -07:00
..
2016-09-05 23:22:13 -07:00
2016-09-02 04:23:49 -07:00
2015-05-19 02:46:27 +00:00
2016-02-08 13:47:49 -08:00
2016-04-27 14:04:07 -07:00
2015-09-25 09:13:34 -07:00
2014-01-14 09:19:45 +00:00
2016-03-02 13:39:47 -08:00
2016-06-03 20:14:59 -07:00
2016-07-29 10:51:22 -07:00
2014-05-17 20:14:17 +00:00
2016-05-05 19:16:50 -07:00
2016-03-21 16:35:33 -07:00
2016-08-22 23:27:24 -07:00
2015-09-24 12:46:28 -07:00