From 00b4a66c6c9f5d052ed936b08835371d75730734 Mon Sep 17 00:00:00 2001 From: Jean Delvare Date: Mon, 14 Jul 2008 22:38:32 +0200 Subject: [PATCH] --- yaml --- r: 101311 b: refs/heads/master c: dcb5c9239de8d3ff1c663e75f0f1c75bcb21ee20 h: refs/heads/master i: 101309: a9989de7bb90da80495572121a9529bacd8f1e17 101307: 1f7932fca842398c9cf1bcb684c129f9a37da183 101303: 62badbf013aca63657b71d371a1df15a2cbc05b5 101295: 38f1ad8983d0aa3251d5f755f1e190751c80ac6e 101279: c3b7c5d2a8595402abf4d6f4daffe113aee2f4cc 101247: f8eb2d6b931d5e1eafca1523f9127ab60d977db0 v: v3 --- [refs] | 2 +- trunk/drivers/i2c/busses/i2c-i801.c | 10 ++++------ 2 files changed, 5 insertions(+), 7 deletions(-) diff --git a/[refs] b/[refs] index 51fc8626dbdd..075f173191a5 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 90df2cb1c8822ef8d06a2b30627e7a810218b0dd +refs/heads/master: dcb5c9239de8d3ff1c663e75f0f1c75bcb21ee20 diff --git a/trunk/drivers/i2c/busses/i2c-i801.c b/trunk/drivers/i2c/busses/i2c-i801.c index 965905fb5d56..614c9e4ffba3 100644 --- a/trunk/drivers/i2c/busses/i2c-i801.c +++ b/trunk/drivers/i2c/busses/i2c-i801.c @@ -179,10 +179,8 @@ static int i801_transaction(int xact) } if (temp & SMBHSTSTS_BUS_ERR) { - result = -EIO; - dev_err(&I801_dev->dev, "Bus collision! SMBus may be locked " - "until next hard reset. (sorry!)\n"); - /* Clock stops and slave is stuck in mid-transmission */ + result = -EAGAIN; + dev_dbg(&I801_dev->dev, "Lost arbitration\n"); } if (temp & SMBHSTSTS_DEV_ERR) { @@ -339,8 +337,8 @@ static int i801_block_transaction_byte_by_byte(union i2c_smbus_data *data, dev_dbg(&I801_dev->dev, "Error: Failed bus transaction\n"); } else if (temp & SMBHSTSTS_BUS_ERR) { - result = -EIO; - dev_err(&I801_dev->dev, "Bus collision!\n"); + result = -EAGAIN; + dev_dbg(&I801_dev->dev, "Lost arbitration\n"); } else if (temp & SMBHSTSTS_DEV_ERR) { result = -ENXIO; dev_dbg(&I801_dev->dev, "Error: no response!\n");