On Sun, Jun 05, 2011 at 02:19:15PM +0530, Avinash.H.M. wrote: > On Fri, May 20, 2011 at 09:16:24PM +0530, Avinash.H.M wrote: > > The sequence of _ocp_softreset doesn't work for i2c. The i2c module has a > > special sequence to reset the module. The sequence is > > - Disable the I2C. > > - Write to SOFTRESET bit. > > - Enable the I2C. > > - Poll on the RESETDONE bit. > > The sequence is implemented as a function and the i2c_class is updated with > > the correct 'reset' pointer. omap_hwmod_softreset function is implemented > > which triggers the softreset by writing into sysconfig register. On following > > this sequence, i2c module resets properly and timeouts are not seen. > > > > Cc: Rajendra Nayak <rnayak@xxxxxx> > > Cc: Paul Walmsley <paul@xxxxxxxxx> > > Cc: Benoit Cousson <b-cousson@xxxxxx> > > Cc: Kevin Hilman <khilman@xxxxxx> > > Signed-off-by: Avinash.H.M <avinashhm@xxxxxx> > > --- > > Hi Kevin, Paul , > > Ping .. could you please review this. Hi Paul , I recently observed that the sequence we are following to reset i2c in omap2, 3 is also applicable for omap4. On checking the the omap4 TRM sequence , i confirmed this. The reason why there were no timeouts seen in omap4 was, because of the 'HWMOD_INIT_NO_RESET' flag in the omap4 i2c hwmods. Because of these flags, hwmod wasn't really attempting to reset i2c in omap4 and hence no timeouts were seen. I ll extend the patch to omap4 and send out new patch, also fixing comments from Tomi. I ll send out v5 and you can review directly v5. thanks , - Avinash > > thanks , > > - Avinash > -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html