Hi Ben, > scx200_acb debug log cleanup. > if (!len && rw == I2C_SMBUS_READ) { > - dev_warn(&adapter->dev, "zero length read\n"); > + dev_dbg(&adapter->dev, "zero length read\n"); > return -EINVAL; > } It just happened to me that this test is bogus. len == 0 && rw == I2C_SMBUS_READ is perfectly valid according to the SMBus specification. It's a "quick command" with data (1 bit) == 1. I never saw it used in practice, and everyone seems to agree that this is a weirdness in SMBus' specification (using the read/write bit as data in this specific case) but it's still valid. > if (len && !buffer) { > - dev_warn(&adapter->dev, "nonzero length but no buffer\n"); > + dev_dbg(&adapter->dev, "nonzero length but no buffer\n"); > return -EFAULT; > } I think that the whole block should be enclosed by #ifdef DEBUG/#endif, as this error condition is simply not supposed to happen. -- Jean Delvare