Message ID | 1417448047-15236-4-git-send-email-grygorii.strashko@ti.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Mon, Dec 01, 2014 at 05:34:05PM +0200, 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 <nsekhar@ti.com> > CC: Kevin Hilman <khilman@deeprootsystems.com> > CC: Santosh Shilimkar <ssantosh@kernel.org> > CC: Murali Karicheri <m-karicheri2@ti.com> > Acked-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> > Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com> Ah, bus recovery, I need to have a closer look on this one. Scheduled for 3.20.
Hi Wolfram, On 12/04/2014 08:29 PM, Wolfram Sang wrote: > On Mon, Dec 01, 2014 at 05:34:05PM +0200, 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 <nsekhar@ti.com> >> CC: Kevin Hilman <khilman@deeprootsystems.com> >> CC: Santosh Shilimkar <ssantosh@kernel.org> >> CC: Murali Karicheri <m-karicheri2@ti.com> >> Acked-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> >> Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com> > > Ah, bus recovery, I need to have a closer look on this one. Scheduled > for 3.20. > Unfortunately, it looks like you've missed these patches :( I'm going to resend them if you agree. regards, -grygorii
Hi! 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 <nsekhar@ti.com> > CC: Kevin Hilman <khilman@deeprootsystems.com> > CC: Santosh Shilimkar <ssantosh@kernel.org> > CC: Murali Karicheri <m-karicheri2@ti.com> > Acked-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> > Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com> > --- > 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 <alexander.sverdlin@nokia.com>
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 <nsekhar@ti.com> >> CC: Kevin Hilman <khilman@deeprootsystems.com> >> CC: Santosh Shilimkar <ssantosh@kernel.org> >> CC: Murali Karicheri <m-karicheri2@ti.com> >> Acked-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> >> Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com> >> --- >> 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 <alexander.sverdlin@nokia.com> > 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
Hi, On Fri, Mar 13, 2015 at 12:15:54PM +0200, Grygorii.Strashko@linaro.org wrote: > 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 <nsekhar@ti.com> > >> CC: Kevin Hilman <khilman@deeprootsystems.com> > >> CC: Santosh Shilimkar <ssantosh@kernel.org> > >> CC: Murali Karicheri <m-karicheri2@ti.com> > >> Acked-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> > >> Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com> > >> --- > >> 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 <alexander.sverdlin@nokia.com> > > > > 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. I can easily fix my i2c-omap series for this, but I need confirmation that this is what's going to get merged.
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;