diff options
author | Wolfram Sang <wsa+renesas@sang-engineering.com> | 2019-04-03 15:40:19 +0300 |
---|---|---|
committer | Wolfram Sang <wsa@the-dreams.de> | 2019-04-16 14:08:17 +0300 |
commit | e155e38830194f59fe26310421bba70f875cab25 (patch) | |
tree | e65d7f5dd8be0ab2a1ad570a032c8b5988399db3 | |
parent | 8927fbf481248954ca1fc5e652171936b94905ac (diff) | |
download | linux-e155e38830194f59fe26310421bba70f875cab25.tar.xz |
i2c: gpio: flag atomic capability if possible
If switching GPIOs does not sleep, then we can support atomic transfers.
Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Reviewed-by Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
-rw-r--r-- | drivers/i2c/busses/i2c-gpio.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/i2c/busses/i2c-gpio.c b/drivers/i2c/busses/i2c-gpio.c index bba5c4627de3..9684a0ac2a6d 100644 --- a/drivers/i2c/busses/i2c-gpio.c +++ b/drivers/i2c/busses/i2c-gpio.c @@ -413,6 +413,8 @@ static int i2c_gpio_probe(struct platform_device *pdev) if (gpiod_cansleep(priv->sda) || gpiod_cansleep(priv->scl)) dev_warn(dev, "Slow GPIO pins might wreak havoc into I2C/SMBus bus timing"); + else + bit_data->can_do_atomic = true; bit_data->setsda = i2c_gpio_setsda_val; bit_data->setscl = i2c_gpio_setscl_val; |