• Andy Shevchenko's avatar
    gpio: pca953x: Improve bias setting · 55a9968c
    Andy Shevchenko authored
    The commit 15add068 ("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: 15add068 ("gpio: pca953x: add ->set_config implementation")
    Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
    Signed-off-by: default avatarAndy Shevchenko <andriy.shevchenko@linux.intel.com>
    Signed-off-by: default avatarBartosz Golaszewski <brgl@bgdev.pl>
    55a9968c
gpio-pca953x.c 34.5 KB