diff options
author | Nick Bofferding <bofferdn@us.ibm.com> | 2019-04-12 14:45:14 -0500 |
---|---|---|
committer | Daniel M. Crowell <dcrowell@us.ibm.com> | 2019-04-17 15:51:00 -0500 |
commit | cf29aa3e9203d94386ddc092c7141ac4660c646f (patch) | |
tree | e9e52511dba73f6228f393053df5668213b6c262 /src/usr/diag | |
parent | 1654f76c7fd26c0a96d0ed5286c997c6393bd8d5 (diff) | |
download | talos-hostboot-cf29aa3e9203d94386ddc092c7141ac4660c646f.tar.gz talos-hostboot-cf29aa3e9203d94386ddc092c7141ac4660c646f.zip |
Fix UCD invalid command error for 0 byte block read SMBus requests
If a UCD device had a legitimate 0-sized reponse to a block read request,
this set off a bug in the code where the i2c driver would issue a 0 byte
read request without a start, stop, or address bit, which causes the i2c
engine to throw a command invalid error. This commit fixes the logic so that
in that condition, the driver either skips the offending read (for cases where
a PEC byte follows), or completes the transaction with a stop bit (for
no PEC byte case)
Change-Id: I64011b4e540120c8547fa3ca84a4dd68f45b479a
CQ: SW462736
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/75940
Reviewed-by: Ilya Smirnov <ismirno@us.ibm.com>
Reviewed-by: Matthew Raybuck <matthew.raybuck@ibm.com>
Reviewed-by: Michael Baiocchi <mbaiocch@us.ibm.com>
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com>
Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com>
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/usr/diag')
0 files changed, 0 insertions, 0 deletions