diff options
author | Uwe Kleine-König <uwe@kleine-koenig.org> | 2019-07-25 22:21:36 +0200 |
---|---|---|
committer | Wolfram Sang <wsa@the-dreams.de> | 2019-08-01 14:58:31 +0200 |
commit | 33eb09a02e8d8fad976019694196eec2cc210d62 (patch) | |
tree | 362ea35b949b7499ea8875444761b098eb36112c /drivers/i2c | |
parent | 684ca71259a69c5a3019da72fe718bf983841926 (diff) | |
download | linux-33eb09a02e8d8fad976019694196eec2cc210d62.tar.gz linux-33eb09a02e8d8fad976019694196eec2cc210d62.tar.bz2 linux-33eb09a02e8d8fad976019694196eec2cc210d62.zip |
i2c: designware: make use of devm_gpiod_get_optional
There is a semantical change: if devm_gpiod_get_optional returns -ENOSYS
this is passed as error to the caller. This effectively reverts commit
d1fa74520dcd ("i2c: designware: Consider SCL GPIO optional") which
shouldn't be necessary any more since gpiod_get_optional doesn't return
-ENOSYS any more with GPIOLIB=n.
Signed-off-by: Uwe Kleine-König <uwe@kleine-koenig.org>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Acked-by: Jarkko Nikula <jarkko.nikula@linux.intel.com>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
Diffstat (limited to 'drivers/i2c')
-rw-r--r-- | drivers/i2c/busses/i2c-designware-master.c | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/drivers/i2c/busses/i2c-designware-master.c b/drivers/i2c/busses/i2c-designware-master.c index d464799e40a3..867787dade43 100644 --- a/drivers/i2c/busses/i2c-designware-master.c +++ b/drivers/i2c/busses/i2c-designware-master.c @@ -657,13 +657,10 @@ static int i2c_dw_init_recovery_info(struct dw_i2c_dev *dev) struct gpio_desc *gpio; int r; - gpio = devm_gpiod_get(dev->dev, "scl", GPIOD_OUT_HIGH); - if (IS_ERR(gpio)) { - r = PTR_ERR(gpio); - if (r == -ENOENT || r == -ENOSYS) - return 0; - return r; - } + gpio = devm_gpiod_get_optional(dev->dev, "scl", GPIOD_OUT_HIGH); + if (IS_ERR_OR_NULL(gpio)) + return PTR_ERR_OR_ZERO(gpio); + rinfo->scl_gpiod = gpio; gpio = devm_gpiod_get_optional(dev->dev, "sda", GPIOD_IN); |