i2c: mux: Add i2c-arb-gpio-challenge 'mux' driver
The i2c-arb-gpio-challenge driver implements an I2C arbitration scheme where masters need to claim the bus with a GPIO before they can start a transaction. This should generally only be used when standard I2C multimaster isn't appropriate for some reason (errata/bugs). This driver is based on code that Simon Glass added to the i2c-s3c2410 driver in the Chrome OS kernel 3.4 tree. The current incarnation as a mux driver is as suggested by Grant Likely. See <https://patchwork.kernel.org/patch/1877311/ > for some history. Signed-off-by:Doug Anderson <dianders@chromium.org> Signed-off-by:
Simon Glass <sjg@chromium.org> Signed-off-by:
Naveen Krishna Chatradhi <ch.naveen@samsung.com> Reviewed-by:
Stephen Warren <swarren@nvidia.com> Acked-by:
Olof Johansson <olof@lixom.net> Signed-off-by:
Wolfram Sang <wsa@the-dreams.de>
Showing
- Documentation/devicetree/bindings/i2c/i2c-arb-gpio-challenge.txt 80 additions, 0 deletions...tation/devicetree/bindings/i2c/i2c-arb-gpio-challenge.txt
- drivers/i2c/muxes/Kconfig 12 additions, 0 deletionsdrivers/i2c/muxes/Kconfig
- drivers/i2c/muxes/Makefile 2 additions, 0 deletionsdrivers/i2c/muxes/Makefile
- drivers/i2c/muxes/i2c-arb-gpio-challenge.c 251 additions, 0 deletionsdrivers/i2c/muxes/i2c-arb-gpio-challenge.c
Loading
Please register or sign in to comment