[U-Boot] soft-i2c and i2c-gpio issues with at91

Matt Wood mattwood2000 at gmail.com
Fri May 22 16:35:25 CEST 2015


Hi all, I am trying to get a bitbanged i2c port working with u-boot on an
Atmel SAMA5D3 platform.  I have added DT bindings to support the I2C
drivers however when I try to select the bus on the u-boot command line I
consistently get an error in gpio-uclass:

_gpio_request_by_name_nodev: uclass_get_device_by_of_offset failed

_gpio_request_by_name_nodev: Node 'soft-i2c at 1', property 'gpios', failed to
request GPIO index 0: -19

Each driver always fails at the get_dev_by_offset routine.

I suspect some issue with the way the GPIO is defined or is not setup
correctly.  Has anyone seen this or have any advice on where to look?

This is the relevant part of the device tree:

aliases {

                i2c0 = "/soft-i2c at 1";

};


soft-i2c at 1 {

                #address-cells = <1>;

                #size-cells = <0>;

/*              compatible = "soft-i2c"; */

                compatible = "i2c-gpio";

/*              clock-frequency = <100000>; */

/*              pinctrl-names = "default";

                pinctrl-0 = <&pinctrl_soft_i2c>; */

                /* Define the proper GPIO pins */


/*


                clock-pin = <&pioA 31 0>;

                data-pin = <&pioA 30 0>; */

                gpios = <&pioA 30 0     /* SDA */

                         &pioA 31 0>;   /* SCL */


                i2c-gpio,sda-open-drain;

                i2c-gpio,scl-open-drain;

                i2c-gpio,delay-us =<3>;


        };

};


Thanks, Matt.


More information about the U-Boot mailing list