diff options
-rw-r--r-- | drivers/staging/greybus/greybus_protocols.h | 8 | ||||
-rw-r--r-- | drivers/staging/greybus/i2c.c | 33 |
2 files changed, 2 insertions, 39 deletions
diff --git a/drivers/staging/greybus/greybus_protocols.h b/drivers/staging/greybus/greybus_protocols.h index f1b5cf6..b60c7dc 100644 --- a/drivers/staging/greybus/greybus_protocols.h +++ b/drivers/staging/greybus/greybus_protocols.h @@ -495,21 +495,13 @@ struct gb_hid_input_report_request { /* Greybus i2c request types */ #define GB_I2C_TYPE_FUNCTIONALITY 0x02 -#define GB_I2C_TYPE_RETRIES 0x04 #define GB_I2C_TYPE_TRANSFER 0x05 -#define GB_I2C_RETRIES_DEFAULT 3 - /* functionality request has no payload */ struct gb_i2c_functionality_response { __le32 functionality; } __packed; -struct gb_i2c_retries_request { - __u8 retries; -} __packed; -/* retries response has no payload */ - /* * Outgoing data immediately follows the op count and ops array. * The data for each write (master -> slave) op in the array is sent diff --git a/drivers/staging/greybus/i2c.c b/drivers/staging/greybus/i2c.c index d9d483d..cb68b45 100644 --- a/drivers/staging/greybus/i2c.c +++ b/drivers/staging/greybus/i2c.c @@ -18,7 +18,6 @@ struct gb_i2c_device { struct gb_connection *connection; u32 functionality; - u8 retries; struct i2c_adapter adapter; }; @@ -49,25 +48,6 @@ static int gb_i2c_functionality_operation(struct gb_i2c_device *gb_i2c_dev) return 0; } -static int gb_i2c_retries_operation(struct gb_i2c_device *gb_i2c_dev, - u8 retries) -{ - struct device *dev = &gb_i2c_dev->connection->bundle->dev; - struct gb_i2c_retries_request request; - int ret; - - request.retries = retries; - ret = gb_operation_sync(gb_i2c_dev->connection, GB_I2C_TYPE_RETRIES, - &request, sizeof(request), NULL, 0); - if (ret) - dev_err(dev, "retries operation failed (%d)\n", ret); - else - gb_i2c_dev->retries = retries; - - return ret; -} - - /* * Map Linux i2c_msg flags into Greybus i2c transfer op flags. */ @@ -249,22 +229,14 @@ static const struct i2c_algorithm gb_i2c_algorithm = { /* * Do initial setup of the i2c device. This includes verifying we * can support it (based on the protocol version it advertises). - * If that's OK, we get and cached its functionality bits and - * set up the retry count. + * If that's OK, we get and cached its functionality bits. * * Note: gb_i2c_dev->connection is assumed to have been valid. */ static int gb_i2c_device_setup(struct gb_i2c_device *gb_i2c_dev) { - int ret; - /* Assume the functionality never changes, just get it once */ - ret = gb_i2c_functionality_operation(gb_i2c_dev); - if (ret) - return ret; - - /* Set up our default retry count */ - return gb_i2c_retries_operation(gb_i2c_dev, GB_I2C_RETRIES_DEFAULT); + return gb_i2c_functionality_operation(gb_i2c_dev); } static int gb_i2c_connection_init(struct gb_connection *connection) @@ -290,7 +262,6 @@ static int gb_i2c_connection_init(struct gb_connection *connection) adapter->class = I2C_CLASS_HWMON | I2C_CLASS_SPD; adapter->algo = &gb_i2c_algorithm; /* adapter->algo_data = what? */ - adapter->retries = gb_i2c_dev->retries; adapter->dev.parent = &connection->bundle->dev; snprintf(adapter->name, sizeof(adapter->name), "Greybus i2c adapter"); |