From: Christophe Leroy <christophe.leroy@csgroup.eu>
To: Linus Walleij <linus.walleij@linaro.org>,
Bartosz Golaszewski <brgl@bgdev.pl>,
Geert Uytterhoeven <geert+renesas@glider.be>,
Keerthy <j-keerthy@ti.com>, Russell King <linux@armlinux.org.uk>,
Arnd Bergmann <arnd@arndb.de>, Jonathan Corbet <corbet@lwn.net>,
Thomas Gleixner <tglx@linutronix.de>,
Ingo Molnar <mingo@redhat.com>, Borislav Petkov <bp@alien8.de>,
Dave Hansen <dave.hansen@linux.intel.com>,
"H. Peter Anvin" <hpa@zytor.com>,
Catalin Marinas <catalin.marinas@arm.com>,
Will Deacon <will@kernel.org>,
Davide Ciminaghi <ciminaghi@gnudd.com>
Cc: Christophe Leroy <christophe.leroy@csgroup.eu>,
linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org,
linux-arm-kernel@lists.infradead.org, linux-arch@vger.kernel.org,
linux-doc@vger.kernel.org, x86@kernel.org
Subject: [PATCH v2 0/9] gpio: Get rid of ARCH_NR_GPIOS (v2)
Date: Fri, 2 Sep 2022 14:42:00 +0200 [thread overview]
Message-ID: <cover.1662116601.git.christophe.leroy@csgroup.eu> (raw)
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
next reply other threads:[~2022-09-02 14:55 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-09-02 12:42 Christophe Leroy [this message]
2022-09-02 12:42 ` [PATCH v2 1/9] gpio: Remove sta2x11 GPIO driver Christophe Leroy
2022-09-02 12:42 ` [PATCH v2 2/9] gpio: aggregator: Stop using ARCH_NR_GPIOS Christophe Leroy
2022-09-02 12:42 ` [PATCH v2 3/9] gpio: davinci: " Christophe Leroy
2022-09-02 12:42 ` [PATCH v2 4/9] gpiolib: Warn on drivers still using static gpiobase allocation Christophe Leroy
2022-09-02 12:42 ` [PATCH v2 5/9] gpiolib: Get rid of ARCH_NR_GPIOS Christophe Leroy
2022-09-02 14:58 ` Andy Shevchenko
2022-09-02 15:22 ` Christophe Leroy
2022-09-02 12:42 ` [PATCH v2 6/9] Documentation: gpio: Remove text about ARCH_NR_GPIOS Christophe Leroy
2022-09-02 12:42 ` [PATCH v2 7/9] x86: Remove CONFIG_ARCH_NR_GPIO Christophe Leroy
2022-10-17 9:16 ` Thomas Gleixner
2022-09-02 12:42 ` [PATCH v2 8/9] arm: " Christophe Leroy
2022-09-02 12:42 ` [PATCH v2 9/9] arm64: " Christophe Leroy
2022-09-07 9:58 ` [PATCH v2 0/9] gpio: Get rid of ARCH_NR_GPIOS (v2) Bartosz Golaszewski
2022-09-07 10:14 ` Arnd Bergmann
2022-09-14 12:38 ` Linus Walleij
2022-09-14 13:02 ` Andy Shevchenko
2022-09-14 13:03 ` Arnd Bergmann
2022-10-14 14:13 ` Christophe Leroy
2022-10-14 14:22 ` Bartosz Golaszewski
2022-10-17 9:04 ` Bartosz Golaszewski
2022-10-17 9:06 ` Linus Walleij
2022-10-17 12:11 ` Andy Shevchenko
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=cover.1662116601.git.christophe.leroy@csgroup.eu \
--to=christophe.leroy@csgroup.eu \
--cc=arnd@arndb.de \
--cc=bp@alien8.de \
--cc=brgl@bgdev.pl \
--cc=catalin.marinas@arm.com \
--cc=ciminaghi@gnudd.com \
--cc=corbet@lwn.net \
--cc=dave.hansen@linux.intel.com \
--cc=geert+renesas@glider.be \
--cc=hpa@zytor.com \
--cc=j-keerthy@ti.com \
--cc=linus.walleij@linaro.org \
--cc=linux-arch@vger.kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-gpio@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux@armlinux.org.uk \
--cc=mingo@redhat.com \
--cc=tglx@linutronix.de \
--cc=will@kernel.org \
--cc=x86@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).