Web lists-archives.com

Re: I2C of sensor SOC_CAMERA


On Tue, 22 Dec 2009, Carlos Lavin wrote:

> hello. I'm developping a driver and I need develop a sensor with soc_camera
> library, well , I have a problem with the sensor because I can't read
> correctly of it, I use these instructions when I register the driver:
> static int __init ov7670_module_init(void)
> {
>     return i2c_add_driver(&ov7670_soc_i2c_driver);
> }
> and in function probe of sensor.
> ...
> if (!i2c_check_functionality(adapter, I2C_FUNC_SMBUS_BYTE_DATA))
> ...
> i2c_set_clientdata(client, priv);
> ...
> ret = soc_camera_device_register(icd);

If you're using this function, then you're using a very old kernel.

> I don't know why I can't read well of this sensor...the sensor return values
> incorrect and bad (as "fffffffb") the address I2C is correct, can someone
> help me? can be that I haven't important function in the driver or in the
> configuration board?

You should upgrade to the newest kernel, best to the Linus' git tree and 
port your driver to it. Then the most common reason for non-working I2C is 
not started master clock on the interface. I would look in that direction.

Guennadi Liakhovetski, Ph.D.
Freelance Open-Source Software Developer

video4linux-list mailing list
Unsubscribe mailto:video4linux-list-request@xxxxxxxxxx?subject=unsubscribe