[PATCH] pca9539: Honor the force parameter

The pca9539 driver doesn't honor the force parameter; it always does
detection. This patch will skip detection if forced.

Signed-off-by: Ben Gardner <gardner.ben@gmail.com>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
Ben Gardner 2006-07-01 17:22:18 +02:00 committed by Greg Kroah-Hartman
parent 5313775f18
commit 50436a47c6

View File

@ -134,11 +134,13 @@ static int pca9539_detect(struct i2c_adapter *adapter, int address, int kind)
new_client->driver = &pca9539_driver; new_client->driver = &pca9539_driver;
new_client->flags = 0; new_client->flags = 0;
if (kind < 0) {
/* Detection: the pca9539 only has 8 registers (0-7). /* Detection: the pca9539 only has 8 registers (0-7).
A read of 7 should succeed, but a read of 8 should fail. */ A read of 7 should succeed, but a read of 8 should fail. */
if ((i2c_smbus_read_byte_data(new_client, 7) < 0) || if ((i2c_smbus_read_byte_data(new_client, 7) < 0) ||
(i2c_smbus_read_byte_data(new_client, 8) >= 0)) (i2c_smbus_read_byte_data(new_client, 8) >= 0))
goto exit_kfree; goto exit_kfree;
}
strlcpy(new_client->name, "pca9539", I2C_NAME_SIZE); strlcpy(new_client->name, "pca9539", I2C_NAME_SIZE);