Message ID | 20190403124019.8947-13-wsa+renesas@sang-engineering.com |
---|---|
State | Deferred |
Headers | show |
Series | i2c: core: introduce atomic transfers | expand |
On Wed, Apr 3, 2019 at 7:40 PM Wolfram Sang <wsa+renesas@sang-engineering.com> wrote: > If switching GPIOs does not sleep, then we can support atomic transfers. > > Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com> Neat and intuitive. Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Yours, Linus Walleij
On Wed, Apr 3, 2019 at 3:42 PM Wolfram Sang <wsa+renesas@sang-engineering.com> wrote: > > If switching GPIOs does not sleep, then we can support atomic transfers. > Reviewed-by Andy Shevchenko <andriy.shevchenko@linux.intel.com> > Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com> > --- > drivers/i2c/busses/i2c-gpio.c | 2 ++ > 1 file changed, 2 insertions(+) > > 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; > -- > 2.11.0 >
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;
If switching GPIOs does not sleep, then we can support atomic transfers. Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com> --- drivers/i2c/busses/i2c-gpio.c | 2 ++ 1 file changed, 2 insertions(+)