[PATCH] ARM: aspeed: Disable UCD90160 in the Witherspoon devicetree

Andrew Jeffery andrew at aj.id.au
Fri Mar 24 12:13:22 AEDT 2017


This is a work-around for [1]. Binding the UCD9000 driver to the device (and
possibly the sequence of unbinding, poking the UCD90160 via i2cset, then
re-binding the UCD9000 driver) appears to have some negative effects.
Instrumenting the transactions with reads of the PMBus status tree lead to
the following observations under "normal" operation.

[1] https://github.com/openbmc/openbmc/issues/832

UCD9000/PMBus core sending unsupported commands:

         Jan 24 06:42:50 witherspoon kernel: ucd9000 11-0064: Device ID UCD90160|2.3.4.0000|110603
         Jan 24 06:42:50 witherspoon kernel: i2c i2c-11: Status byte indicates error: 0x3
         Jan 24 06:42:50 witherspoon kernel: i2c i2c-11: Unknown error
         Jan 24 06:42:50 witherspoon kernel: i2c i2c-11: CML status: 0x80
         Jan 24 06:42:50 witherspoon kernel: i2c i2c-11: Invalid Or Unsupported Command Received
         Jan 24 06:42:50 witherspoon kernel: i2c i2c-11: Transfer failed: -5, status was 0x3
         Jan 24 06:42:50 witherspoon kernel: i2c i2c-11: Aborting retries after 1 attempts, returning error -5

Reading the status bytes off the UCD90160 gives -EBADMSG:

         Jan 24 06:43:21 witherspoon kernel: i2c i2c-11: Error reading PMBUS_STATUS_BYTE: -74
         ...
         Jan 24 06:43:56 witherspoon kernel: i2c i2c-11: Error reading PMBUS_STATUS_CML: -74

"Other comms fault" errors:

         Jan 24 06:43:56 witherspoon kernel: i2c i2c-11: Status byte indicates error: 0x3
         Jan 24 06:43:56 witherspoon kernel: i2c i2c-11: Unknown error
         Jan 24 06:43:56 witherspoon kernel: i2c i2c-11: CML status: 0x82
         Jan 24 06:43:56 witherspoon kernel: i2c i2c-11: Other comms fault
         Jan 24 06:43:56 witherspoon kernel: i2c i2c-11: Invalid Or Unsupported Command Received
         Jan 24 06:43:56 witherspoon kernel: i2c i2c-11: Transfer failed: -5, status was 0x3
         Jan 24 06:43:56 witherspoon kernel: i2c i2c-11: Retrying transfer (attempt 1)
         Jan 24 06:43:57 witherspoon kernel: i2c i2c-11: Status byte indicates error: 0x3
         Jan 24 06:43:57 witherspoon kernel: i2c i2c-11: Unknown error
         Jan 24 06:43:57 witherspoon kernel: i2c i2c-11: CML status: 0x2
         Jan 24 06:43:57 witherspoon kernel: i2c i2c-11: Other comms fault
         Jan 24 06:43:57 witherspoon kernel: i2c i2c-11: Retrying transfer (attempt 1)
         Jan 24 06:43:59 witherspoon kernel: i2c i2c-11: Status byte indicates error: 0x3
         Jan 24 06:43:59 witherspoon kernel: i2c i2c-11: Unknown error
         Jan 24 06:43:59 witherspoon kernel: i2c i2c-11: CML status: 0x80
         Jan 24 06:43:59 witherspoon kernel: i2c i2c-11: Invalid Or Unsupported Command Received
         Jan 24 06:43:59 witherspoon kernel: i2c i2c-11: Transfer failed: -5, status was 0x3
         Jan 24 06:43:59 witherspoon kernel: i2c i2c-11: Aborting retries after 1 attempts, returning error -5

Reduce our problems by communicating with the UCD90160 as little as possible.
With the associated userspace change, the only communication will be applying
the VCS work-around.

Signed-off-by: Andrew Jeffery <andrew at aj.id.au>
---
 arch/arm/boot/dts/aspeed-bmc-opp-witherspoon.dts | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm/boot/dts/aspeed-bmc-opp-witherspoon.dts b/arch/arm/boot/dts/aspeed-bmc-opp-witherspoon.dts
index 4d26d4702a34..69d5897dbfde 100644
--- a/arch/arm/boot/dts/aspeed-bmc-opp-witherspoon.dts
+++ b/arch/arm/boot/dts/aspeed-bmc-opp-witherspoon.dts
@@ -253,6 +253,7 @@
 	};
 
 	ucd90160 at 64 {
+		status = "disabled";
 		compatible = "ti,ucd90160";
 		reg = <0x64>;
 	};
-- 
2.9.3



More information about the openbmc mailing list