Hi. I am working on a custom design that is based on ARM926EJ and AMBA
bus. OS of choice is uCLinux, patched with RTAI for RT performance. I
have to implement now I2C support, but looking at the existing driver
things seem a bit unclear for me.

Here is what I unserstood:
i2c-core.c is independent of the bus and is kernel module. This should
be working. But what about AMBA bus? Is it supported? Is this file for
support of AMBA located in 'busses' directory? What are algos files? As
I undersand, these are bus dependent. Is AMBA supported by these?

If there are not, does anyone have idea how these can be written?

How can a proper working of I2C be tested? Can some dummy I2C
peripheral be created in Linux?

Also, if you have any eperiance with I2C linux drivers, please share
it. I do not know much about these, so any links to documentation abuot
writing these drivers, or explanation how they work will be more than
helpful!

Thanks,
Drasko