On Fri, Sep 2, 2022 at 2:42 PM Christophe Leroy <christophe.leroy@xxxxxxxxxx> wrote: > > Since commit 14e85c0e69d5 ("gpio: remove gpio_descs global array") > there is no limitation on the number of GPIOs that can be allocated > in the system since the allocation is fully dynamic. > > ARCH_NR_GPIOS is today only used in order to provide downwards > gpiobase allocation from that value, while static allocation is > performed upwards from 0. However that has the disadvantage of > limiting the number of GPIOs that can be registered in the system. > > To overcome this limitation without requiring each and every > platform to provide its 'best-guess' maximum number, rework the > allocation to allocate from 512 upwards, allowing approx 2 millions > of GPIOs. > > In the meantime, add a warning for drivers how are still doing > static allocation, so that in the future the static allocation gets > removed completely and dynamic allocation can start at base 0. > > Main changes in v2: > - Adding a patch to remove sta2x11 GPIO driver instead of modifying it > - Moving the base of dynamic allocation from 256 to 512 because there > are drivers allocating gpios as high as 400. > > Christophe Leroy (8): > gpio: aggregator: Stop using ARCH_NR_GPIOS > gpio: davinci: Stop using ARCH_NR_GPIOS > gpiolib: Warn on drivers still using static gpiobase allocation > gpiolib: Get rid of ARCH_NR_GPIOS > Documentation: gpio: Remove text about ARCH_NR_GPIOS > x86: Remove CONFIG_ARCH_NR_GPIO > arm: Remove CONFIG_ARCH_NR_GPIO > arm64: Remove CONFIG_ARCH_NR_GPIO > > Davide Ciminaghi (1): > gpio: Remove sta2x11 GPIO driver > > Documentation/driver-api/gpio/legacy.rst | 5 - > arch/arm/Kconfig | 21 -- > arch/arm/include/asm/gpio.h | 1 - > arch/arm64/Kconfig | 12 - > arch/x86/Kconfig | 5 - > drivers/gpio/Kconfig | 8 - > drivers/gpio/Makefile | 1 - > drivers/gpio/gpio-aggregator.c | 7 +- > drivers/gpio/gpio-davinci.c | 3 - > drivers/gpio/gpio-sta2x11.c | 411 ----------------------- > drivers/gpio/gpiolib.c | 13 +- > include/asm-generic/gpio.h | 55 ++- > 12 files changed, 33 insertions(+), 509 deletions(-) > delete mode 100644 drivers/gpio/gpio-sta2x11.c > > -- > 2.37.1 > I'd like to take it through the GPIO tree if we can get acks for ARM and x86? Bart