On Mon, Mar 30, 2009 at 11:26:31AM +0200, Guennadi Liakhovetski wrote: > Hi Darius, > > On Mon, 30 Mar 2009, Darius Augulis wrote: > > > I tested your driver on i.MXL with OV7670 and MT9V111 cameras. I confirm it > > works. > > Thanks for testing! > > > In otherside, my driver is also tested with OV7670, MT9V111, OV7720 cameras, > > PCF8575 expander and NT7651 LCD controller. All these devices work connected > > to i.MXL. > > If you have problems on MX3 only with single device, it may be caused by > > some specific conditions. > > I don't know it is good idea to replace one driver by another, because we > > don't know where is the problem exactly. > > Of course would be fine to watch your I2C bus with oscilloscope. So you > > could see what is wrong. > > IMO we should find what is wrong in my driver, to have good working driver > > for all MXC SoC's. > > If we replace it by your driver, we miss lot of ML comments fixed and > > probably we will receive errors and problems in some different situation. > > Well, I have been able to get your driver to at least pass the > initialisation with mt9t031 (other parts are missing yet for a complete > test). For that I used this silly patch: > > diff --git a/drivers/i2c/busses/i2c-imx.c b/drivers/i2c/busses/i2c-imx.c > index 3296380..46e1033 100644 > --- a/drivers/i2c/busses/i2c-imx.c > +++ b/drivers/i2c/busses/i2c-imx.c > @@ -371,6 +371,8 @@ static int i2c_imx_xfer(struct i2c_adapter *adapter, > if (result) > goto fail0; > > + msleep(2); > + > /* Start I2C transfer */ > i2c_imx_start(i2c_imx); > > As you understand, this cannot be the final fix. We have to understand why > a delay is needed there and how long it actually has to be... > Have you checked the value of disable_delay in Darius' driver or tried to increase it? BTW I just realized that the handling of disable_delay in Darius' driver is wrong. This should be a per device variable. Sascha -- Pengutronix e.K. | | Industrial Linux Solutions | http://www.pengutronix.de/ | Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | -- 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