[PATCHv8 3/5] OMAP: I2C: Reset support
tony at atomide.com
Fri Dec 16 12:26:10 EST 2011
* Shubhrajyoti <shubhrajyoti at ti.com> [111216 00:25]:
> Hi Benoit,
> On Friday 16 December 2011 02:21 PM, Cousson, Benoit wrote:
> > Hi Shubhro,
> > On 12/13/2011 11:55 AM, Shubhrajyoti D wrote:
> >> Under some error conditions the i2c driver may do a reset.
> >> Adding a reset field and support in the device-specific code to aid
> >> error-recovery.
> >> Signed-off-by: Shubhrajyoti D<shubhrajyoti at ti.com>
> >> ---
> >> arch/arm/plat-omap/i2c.c | 2 ++
> >> include/linux/i2c-omap.h | 1 +
> >> 2 files changed, 3 insertions(+), 0 deletions(-)
> >> diff --git a/arch/arm/plat-omap/i2c.c b/arch/arm/plat-omap/i2c.c
> >> index db071bc..6cddde2 100644
> >> --- a/arch/arm/plat-omap/i2c.c
> >> +++ b/arch/arm/plat-omap/i2c.c
> >> @@ -179,6 +179,8 @@ static inline int omap2_i2c_add_bus(int bus_id)
> >> */
> >> if (cpu_is_omap34xx())
> >> pdata->set_mpu_wkup_lat =
> >> omap_pm_set_max_mpu_wakeup_lat_compat;
> >> +
> >> + pdata->device_reset = omap_device_reset;
> > We should avoid introducing any new pdata function pointers since we
> > are in the process of removing them for DT support.
> However if the driver has to do a reset due to some error what is the
> recommended way?
> Currently we used to access the SYSC directly I am removing the same and
> introducing this function pointer.
Sounds like this sould be possible to handle with pm_runtime
calls from the driver which should end up making the right
More information about the linux-arm-kernel