There are some unfortunate cases where the DT representation of the device and the Linux internal representation differs. Such drivers for devices are forced to implement a custom function to avoid the core code 'devprop_gpiochip_set_names' to be executed since in any other case every gpiochip inside will got repeated names through its internal gpiochip banks. To avoid this antipattern this changes are introduced trying to adapt core 'devprop_gpiochip_set_names' to get a correct behaviour for every single situation. This series introduces a new 'offset' field in the gpiochip structure that can be used for those unfortunate drivers that must define multiple gpiochips per device. Drivers affected by this situation are also updated. These are 'gpio-mt7621' and 'gpio-brcmstb'. Motivation for this series available at [0]. Thanks in advance for your feedback. Best regards, Sergio Paracuellos Changes in v4: - Add comma in warning message for clarity. - Collect Gregory Fong Reviewed-by for PATCH 1/3. Changes in v3: - Reflow a string literal to be on one line in PATCH 1/3. - reflow commit messages PATCH 2/3 and PATCH 3/3 to occupy a little bit more available space per line. Changes in v2: - Address Gregory Fong comments in v1 of the series [1]. - Collect Andy Shevchenko Reviewed-by for the series. - Collect Gregory Fong Acked-by for PATCH 3/3. [0]: https://lkml.org/lkml/2021/6/26/198 [1]: https://lkml.org/lkml/2021/7/8/47 Sergio Paracuellos (3): gpiolib: convert 'devprop_gpiochip_set_names' to support multiple gpiochip banks per device gpio: mt7621: support gpio-line-names property gpio: brcmstb: remove custom 'brcmstb_gpio_set_names' drivers/gpio/gpio-brcmstb.c | 45 +------------------------------------ drivers/gpio/gpio-mt7621.c | 1 + drivers/gpio/gpiolib.c | 32 +++++++++++++++++++++----- include/linux/gpio/driver.h | 4 ++++ 4 files changed, 33 insertions(+), 49 deletions(-) -- 2.25.1