Quoting myself: > I don't think your analysis is correct. My feeling is that *_detect > functions found in the client drivers should NOT return non-zero values > on "misdetections". A misdetection is not an error per se, and > obviously the i2c_detect function was written with that in mind. So I > believe that the asb100 driver, not i2c_detect, would need to be fixed. Just found the confirmation in Documentation/i2c/writing-clients: "The detect client function -------------------------- The detect client function is called by i2c_probe or i2c_detect. (...) This function should only return an error (any value != 0) if there is some reason why no more detection should be done anymore. If the detection just fails for this address, return 0." So we are simply not doing the correct thing in various clients. Thanks, Jean