From: Bartosz Golaszewski <bartosz.golaszewski@xxxxxxxxxx> The semantics of gpiod_toggle_active_low() are just bad and in almost all cases require users to check the current state anyway. Let's replace it with something clearer and more useful. For getting this upstream: I'm thinking that I should apply patch 1/5, provide other subsystems with an immutable tag and then we can apply patch 5/5 for the next release once first four are in master. Bartosz Golaszewski (5): gpiolib: provide gpiod_set_active_[low/high]() mtd: rawnand: ingenic: use gpiod_set_active_high() mmc: slot-gpio: use gpiod_set_active_[low|high]() platform/x86: int3472/discrete: use gpiod_set_active_low() gpiolib: remove gpiod_toggle_active_low() drivers/gpio/gpiolib.c | 21 ++++++++++++++----- drivers/mmc/core/slot-gpio.c | 11 +++++----- .../mtd/nand/raw/ingenic/ingenic_nand_drv.c | 5 ++--- .../x86/intel/int3472/clk_and_regulator.c | 2 +- drivers/platform/x86/intel/int3472/led.c | 2 +- include/linux/gpio/consumer.h | 11 ++++++++-- 6 files changed, 34 insertions(+), 18 deletions(-) -- 2.39.2