Kyösti Mälkki (kyosti.malkki@gmail.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/2703
-gerrit
commit fe98c8a51a5a1a9cd28cb3cd9f8270288793e488 Author: Kyösti Mälkki kyosti.malkki@gmail.com Date: Tue Mar 12 00:18:13 2013 +0200
Fix SMBus parser
If no SMBus device responds to an address (a NAK condition), the parser state machine did not log the transaction immediately. Once it did log it, the transaction already contained a different SMbus address.
Bad output: 03ac.03b0 .H.. [0000:fff87a30] i801-smbus: 50 byte_data 02 => 08 0000.0000 .... [0000:fff87a01] i801-smbus: 52 byte_data 02 => 00 (TIMEOUT) 04bb.04be .H.. [0000:fff87a30] i801-smbus: 52 byte_data 02 => 08
Correct output: 03ac.03b0 .H.. [0000:fff87a30] i801-smbus: 50 byte_data 02 => 08 0465.0466 .H.. [0000:fff87a18] i801-smbus: 51 byte_data 02 => xx (TIMEOUT) 04bb.04be .H.. [0000:fff87a30] i801-smbus: 52 byte_data 02 => 08
Change-Id: I1ba5be04e7c16267c657bc612220adf9ea6e5673 Signed-off-by: Kyösti Mälkki kyosti.malkki@gmail.com --- SerialICE/simba/smbus_host.lua | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/SerialICE/simba/smbus_host.lua b/SerialICE/simba/smbus_host.lua index 161bc42..1da4b0c 100644 --- a/SerialICE/simba/smbus_host.lua +++ b/SerialICE/simba/smbus_host.lua @@ -275,9 +275,9 @@ local function host_change_state(f, prev_state, new_state) host_jump(f, HOST_ACTIVE) end
--- elseif smbus.state(f, HOST_FAIL) then --- dump_transaction(f, f.host.action) --- host_jump(f, HOST_ACTIVE) + elseif smbus.state(f, HOST_FAIL) then + dump_transaction(f, f.host.action) + host_jump(f, HOST_ACTIVE) end
end