Hello Tim,
how may I use the av7110 I2C bus for testing purposes?
I want to change some registers int the analog module ICs.
I have got their i2c addresses but do not know how to change them
from the command prompt. It is laboriously to change the kernel
modules and reload them everytime.
Is there a way to write to them directly with a small program?
Unfortunately, not. The linuxtv.org drivers have their own internal i2c
abstraction layer -- there is no way to access the i2c bus from userspace.
AFAIK the Metzlerbros. driver use the common linux i2c kernel interface
structure. There, it should be possible to access the available i2c
busses through the /dev/i2c/ interface provided by the "i2c-dev" driver.
it's pretty easy to add a simple special-debug-device to the dvb-i2c
core, then you can pass messages from user space.Just in case you are wondering why the linuxtv.org drivers don't use the
linux i2c kernel interface: I was told that the frontends often crashed
when i2c helper drivers probed the av7110 bus to see, if a device was
present there or not. This was simply not usable in production systems,
so they decided to make an internal abstraction layer.
Please correct me if I'm wrong.
no, the main problem was that the i2c-core will probe on all i2c busses
in the system, and some graphics drivers (matrox IIRC) had a buggy i2c
implementation which did not returned before a very long timeout in case
of transmission errrors.