Some of the for_each_*() macros use the very similar piece of code that may be deduplicated (by introducing a new helper macro in patch 1). On top of that the implementation of the low-level for_each_hwgpio_in_range() looks too verbose. Try to simplify it (patches 2 and 3). Changelog v2: - added kernel-doc for a new helper (Bart) - added two more patches Andy Shevchenko (3): gpiolib: Deduplicate some code in for_each_requested_gpio_in_range() gpiolib: Simplify implementation of for_each_hwgpio_in_range() gpiolib: Switch to use for_each_if() helper include/linux/gpio/driver.h | 36 +++++++++++++++++++++--------------- 1 file changed, 21 insertions(+), 15 deletions(-) -- 2.43.0.rc1.1336.g36b5255a03ac