Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 50436a47 authored by Ben Gardner's avatar Ben Gardner Committed by Greg Kroah-Hartman
Browse files

[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: default avatarBen Gardner <gardner.ben@gmail.com>
Signed-off-by: default avatarJean Delvare <khali@linux-fr.org>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
parent 5313775f
Loading
Loading
Loading
Loading
+7 −5
Original line number Original line Diff line number Diff line
@@ -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);