[i2c] I2C Bus Driver needed?

Markus Franke markus.franke at s2002.tu-chemnitz.de
Fri Apr 27 12:05:41 CEST 2007


Dear all,

I am trying to implement an I2C driver for a SoC based on an ARM1136J-S 
core. The I2C Bus is connected to the AMBA Bus via AHB2APB Bridge. There 
is an I2C Flash connected to the I2C Bus for which I want to develop a 
driver.

After reading a lot of documentation about howto implement I2C 
bus/algorithm/chip drivers, I am still a bit confused. First of all, is 
it really necessary to develop an I2C bus driver by itself? I mean, I 
have already an I2C Controller available in hardware on my SoC, which 
should handle all protocoll related stuff, right?

The driver for the I2C Flash has to go in the "chips" subdirectory, 
thats pretty clear. But when registering the I2C Flash driver to the I2C 
subsystem it should be somehow called i2c_attach_adapter(), right? I 
figured out that this function is called when adding a new adapter via 
i2c_add_adapter() to the core. So it seems to me that I really have to 
write an I2C Bus driver in order add it to the I2C subsystem, right?

It sounds maybe a bit confusing but some people told me already that an 
I2C bus driver is not needed in my case, but I still don't understand why.


Thanks for any clue,

Markus

BTW: I read already the tutorials in Linux kernel source and Greg 
Kroah-Hartmann articles on linuxjournal.com



More information about the i2c mailing list