BCM2835 I2C - probe not called

Stephen Warren swarren at wwwdotorg.org
Tue Oct 29 23:33:39 EDT 2013


On 10/29/2013 09:43 AM, Florian Meier wrote:
> Hi,
> I still have not managed to use the I2C driver of the BCM2835. My
> device tree includes

Which kernel are you using?

> &i2c1 {
> status = "okay";
> clock-frequency = <100000>;
> 
> wm8731: wm8731 at 1a {
> compatible = "wlf,wm8731";
> reg = <0x1a>;
> };
> };
> 
> However, the I2C probe is not called.

The I2C controller's drivers' probe(), or the WM8731 driver's probe()?

> Apparently, the i2c_new_device
> is not called. Other platforms (e.g. omap) use
> of_i2c_register_devices, but the bcm2835 I2C driver does not seem to
> use it. Should this call be included in the I2C driver or is there
> another way?

At least in the upstream kernel, this is handled by the I2C core;
bcm2835_i2c_probe() -> i2c_add_adapter() -> i2c_register_adapter() ->
of_i2c_register_devices().



More information about the linux-rpi-kernel mailing list