diff options
Diffstat (limited to 'drivers/i2c/busses/i2c-powermac.c')
| -rw-r--r-- | drivers/i2c/busses/i2c-powermac.c | 25 | 
1 files changed, 18 insertions, 7 deletions
diff --git a/drivers/i2c/busses/i2c-powermac.c b/drivers/i2c/busses/i2c-powermac.c index 1c440a70ec6..b289ec99eeb 100644 --- a/drivers/i2c/busses/i2c-powermac.c +++ b/drivers/i2c/busses/i2c-powermac.c @@ -122,9 +122,14 @@ static s32 i2c_powermac_smbus_xfer(	struct i2c_adapter*	adap,  	rc = pmac_i2c_xfer(bus, addrdir, subsize, subaddr, buf, len);  	if (rc) { -		dev_err(&adap->dev, -			"I2C transfer at 0x%02x failed, size %d, err %d\n", -			addrdir >> 1, size, rc); +		if (rc == -ENXIO) +			dev_dbg(&adap->dev, +				"I2C transfer at 0x%02x failed, size %d, " +				"err %d\n", addrdir >> 1, size, rc); +		else +			dev_err(&adap->dev, +				"I2C transfer at 0x%02x failed, size %d, " +				"err %d\n", addrdir >> 1, size, rc);  		goto bail;  	} @@ -175,10 +180,16 @@ static int i2c_powermac_master_xfer(	struct i2c_adapter *adap,  		goto bail;  	}  	rc = pmac_i2c_xfer(bus, addrdir, 0, 0, msgs->buf, msgs->len); -	if (rc < 0) -		dev_err(&adap->dev, "I2C %s 0x%02x failed, err %d\n", -			addrdir & 1 ? "read from" : "write to", addrdir >> 1, -			rc); +	if (rc < 0) { +		if (rc == -ENXIO) +			dev_dbg(&adap->dev, "I2C %s 0x%02x failed, err %d\n", +				addrdir & 1 ? "read from" : "write to", +				addrdir >> 1, rc); +		else +			dev_err(&adap->dev, "I2C %s 0x%02x failed, err %d\n", +				addrdir & 1 ? "read from" : "write to", +				addrdir >> 1, rc); +	}   bail:  	pmac_i2c_close(bus);  	return rc < 0 ? rc : 1;  |