[U-Boot] [PATCH V3 3/3] dm: i2c: add i2c-gpio driver

Simon Glass sjg at chromium.org
Wed Apr 1 05:18:38 CEST 2015


On 31 March 2015 at 10:57, Przemyslaw Marczak <p.marczak at samsung.com> wrote:
> This commit adds driver model support to software emulated i2c bus driver.
> This driver supports kernel-style device tree bindings. Fdt properties in use:
> - compatible - "i2c-gpio"
> - gpios      - data and clock GPIO pin phandles
> - delay-us   - micro seconds delay between GPIOs toggle operations,
>                which is 1/4 of I2C speed clock period.
>
> Added:
> - Config: CONFIG_DM_I2C_GPIO
> - File: drivers/i2c/i2c-gpio.c
> - File: doc/device-tree-bindings/i2c/i2c-gpio.txt
>
> Driver base code is taken from: drivers/i2c/soft-i2c.c, changes:
> - use "i2c-gpio" naming
> - update comments style
> - move preprocesor macros into functions
> - add device tree support
> - add driver model i2c support
> - code cleanup,
> - add Kconfig entry
>
> Signed-off-by: Przemyslaw Marczak <p.marczak at samsung.com>
> CC: Masahiro Yamada <yamada.masahiro at socionext.com>
> Cc: Lukasz Majewski <l.majewski at samsung.com>
> Cc: Mike Frysinger <vapier at gentoo.org>
> Cc: Simon Glass <sjg at chromium.org>
> Cc: Heiko Schocher <hs at denx.de>
>
> Changes V2:
> - new file for software i2c driver: i2c-gpio.c
> - update driver naming: use of "i2c-gpio"
> - add full compatibility with the kernels device-tree "i2c-gpio" node
> - fix Kconfig entry
>
> Changes V3:
> - fix Kconfig entry
> - update file header
> - remove field "speed" from struct i2c_gpio_bus
> - move macros to functions
> - move duplicated routines into functions
> - update naming with prefix "i2c_gpio_"
> ---
>  doc/device-tree-bindings/i2c/i2c-gpio.txt |  37 ++++
>  drivers/i2c/Kconfig                       |   9 +
>  drivers/i2c/Makefile                      |   1 +
>  drivers/i2c/i2c-gpio.c                    | 345 ++++++++++++++++++++++++++++++
>  4 files changed, 392 insertions(+)
>  create mode 100644 doc/device-tree-bindings/i2c/i2c-gpio.txt
>  create mode 100644 drivers/i2c/i2c-gpio.c

Acked-by: Simon Glass <sjg at chromium.org>


More information about the U-Boot mailing list