]> git.baikalelectronics.ru Git - kernel.git/commit
gpio: pca953x: Improve bias setting
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Thu, 23 Sep 2021 22:46:40 +0000 (01:46 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 20 Oct 2021 09:40:15 +0000 (11:40 +0200)
commit2cec2686a9e97c8526858ceb196f718e7d2a628f
tree8602c81d5b39f8a83bdc513e95b93ac81d1a3ce6
parentea5b035b16c83f928dfb8acab52f727eb0e0f1fe
gpio: pca953x: Improve bias setting

commit 55a9968c7e139209a9e93d4ca4321731bea5fc95 upstream.

The commit 09c8d214152b ("gpio: pca953x: add ->set_config implementation")
introduced support for bias setting. However this, due to being half-baked,
brought potential issues:
 - the turning bias via disabling makes the pin floating for a while;
 - once enabled, bias can't be disabled.

Fix all these by adding support for bias disabling and move the disabling
part under the corresponding conditional.

While at it, add support for default setting, since it's cheap to add.

Fixes: 09c8d214152b ("gpio: pca953x: add ->set_config implementation")
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/gpio/gpio-pca953x.c