Hello, On Mon, Aug 19, 2013 at 09:19:01AM -0300, Fabio Estevam wrote: > On 08/15/2013 07:08 AM, Wolfram Sang wrote: > >On Tue, Jul 02, 2013 at 01:01:00PM -0300, Fabio Estevam wrote: > >>According to mx23 erratum 2727: > >> > >>"2727 : I2C 9th Clock Pulse (ACK) not generated when RETAIN_CLOCK set. > >> > >>Description: > >> > >>When RETAIN_CLOCK is set, the ninth clock pulse (ACK) is not generated. > >>However, the SDA line is read at the proper timing interval. If > >>RETAIN_CLOCK is cleared, the ninth clock pulse is generated. > >>Also, the HW_I2C_VERSION register incorrectly states the version is 1.2. > >>It should be 1.3. > >> > >>Workaround: > >>HW_I2C_CTRL1[ACK_MODE] has default value of 0. It should be set to 1 to > >>enable the fix for this issue." > >> > >>It has also been noticed that mx28 needs to implement this fix in order to have > >>SMBus to work properly. > >> > >>Reported-by: Christoph Baumann <cb@xxxxxxx> > >>Signed-off-by: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx> > > > >What's with this one? Bogus? Needed? Still needed after PIO rework? > > According to the mx23 erratum 2727 this patch is needed. Last time I worked with i2c stuff on mxs my impression was the mx23 erratum 2727 is non-sense. Having HW_I2C_CTRL1[ACK_MODE] set or not didn't made any difference in my tests. I suspect that the description isn't complete. So the driver does already use RETAIN_CLOCK (for the select phase) which up to know didn't made any problems on mx23 even without having ACK_MODE=1. The statement about the HW_I2C_VERSION register appears just misplaced there. So I'd vote for not taking this patch until there is a better understanding of the eventual problem. Best regards Uwe -- Pengutronix e.K. | Uwe Kleine-König | Industrial Linux Solutions | http://www.pengutronix.de/ | -- To unsubscribe from this list: send the line "unsubscribe linux-i2c" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html