Subject: [PATCH v3 3/5] i2c: recovery: change input parameter to i2c_adapter for prepare/unprepare_recovery

From: [email-masked] ([email-masked])
Date: Fri, 13 Mar 2015 12:15:54 +0200

Hi Wolfram,

On 03/12/2015 01:32 PM, Alexander Sverdlin wrote:
> On 01/12/14 16:34, Grygorii Strashko wrote:
>> This patch changes type of input parameter for .prepare/unprepare_recovery()
>> callbacks from struct i2c_bus_recovery_info * to struct i2c_adapter *.
>> This allows to simplify implementation of these callbacks and avoid
>> type conversations from i2c_bus_recovery_info to i2c_adapter.
>> The i2c_bus_recovery_info can be simply retrieved from struct i2c_adapter
>> which contains pointer on it.
>>
>> CC: Sekhar Nori <[email-masked]>
>> CC: Kevin Hilman <[email-masked]>
>> CC: Santosh Shilimkar <[email-masked]>
>> CC: Murali Karicheri <[email-masked]>
>> Acked-by: Uwe Kleine-K?nig <[email-masked]>
>> Signed-off-by: Grygorii Strashko <[email-masked]>
>> ---
>>   drivers/i2c/i2c-core.c | 4 ++--
>>   include/linux/i2c.h    | 4 ++--
>>   2 files changed, 4 insertions(+), 4 deletions(-)
>>
>> diff --git a/drivers/i2c/i2c-core.c b/drivers/i2c/i2c-core.c
>> index 2f90ac6..72b6e34 100644
>> --- a/drivers/i2c/i2c-core.c
>> +++ b/drivers/i2c/i2c-core.c
>> @@ -563,7 +563,7 @@ static int i2c_generic_recovery(struct i2c_adapter *adap)
>>   	int i = 0, val = 1, ret = 0;
>>   
>>   	if (bri->prepare_recovery)
>> -		bri->prepare_recovery(bri);
>> +		bri->prepare_recovery(adap);
>>   
>>   	/*
>>   	 * By this time SCL is high, as we need to give 9 falling-rising edges
>> @@ -588,7 +588,7 @@ static int i2c_generic_recovery(struct i2c_adapter *adap)
>>   	}
>>   
>>   	if (bri->unprepare_recovery)
>> -		bri->unprepare_recovery(bri);
>> +		bri->unprepare_recovery(adap);
>>   
>>   	return ret;
>>   }
>> diff --git a/include/linux/i2c.h b/include/linux/i2c.h
>> index b556e0a..cf9380f 100644
>> --- a/include/linux/i2c.h
>> +++ b/include/linux/i2c.h
>> @@ -404,8 +404,8 @@ struct i2c_bus_recovery_info {
>>   	void (*set_scl)(struct i2c_adapter *, int val);
>>   	int (*get_sda)(struct i2c_adapter *);
>>   
>> -	void (*prepare_recovery)(struct i2c_bus_recovery_info *bri);
>> -	void (*unprepare_recovery)(struct i2c_bus_recovery_info *bri);
>> +	void (*prepare_recovery)(struct i2c_adapter *);
>> +	void (*unprepare_recovery)(struct i2c_adapter *);
>>   
>>   	/* gpio recovery */
>>   	int scl_gpio;
>>
> 
> Acked-by: Alexander Sverdlin <[email-masked]>
> 

Could I ask you to consider this patch for 4.1?
Now my I2C Davinci series is based on it and probably I2C OMAP changes
will need to be based on it too - if Felipe would agree with this of course.

regards,
-grygorii

-- 
regards,
-grygorii