[PATCH v3 0/2] Add NVIDIA BlueField-3 GPIO driver and pin controller

From: Asmaa Mnebhi
Date: Fri Feb 10 2023 - 10:40:01 EST


This series of patches creates a pin controller driver and GPIO
driver for NVIDIA BlueField-3 SoC.
The first patch creates a GPIO driver for handling interrupts and
allowing the change of direction and value of a GPIO if needed.
The second patch creates a pin controller driver for allowing a
select number of GPIO pins to be manipulated from userspace or
the kernel.

The BlueField-3 SoC gpio-mlxbf3.c driver handles different hardware registers
and logic that from gpio-mlxbf.c and gpio-mlxbf2.c.
For that reason, we have separate drivers for each generation.

Changes from v2->v3:
Addressed the following comments from maintainers:
- bgpio_init can handle direction_input and direction_output
- Update pinctrl Kconfig to select GPIO_MLXBF3
- remove unnecessary #includes from gpio-mlxbf3.c and pinctrl-mlxbf.c

Asmaa Mnebhi (2):
Support NVIDIA BlueField-3 GPIO controller
Support NVIDIA BlueField-3 pinctrl driver

drivers/gpio/Kconfig | 7 +
drivers/gpio/Makefile | 1 +
drivers/gpio/gpio-mlxbf3.c | 262 ++++++++++++++++++++++++
drivers/pinctrl/Kconfig | 10 +
drivers/pinctrl/Makefile | 1 +
drivers/pinctrl/pinctrl-mlxbf.c | 341 ++++++++++++++++++++++++++++++++
6 files changed, 622 insertions(+)
create mode 100644 drivers/gpio/gpio-mlxbf3.c
create mode 100644 drivers/pinctrl/pinctrl-mlxbf.c

--
2.30.1