Support the BlueField-3 SoC GPIO driver for handling interrupts and providing the option to change the direction and value of a GPIO. Support the BlueField-3 SoC pin controller driver for allowing a select number of GPIO pins to be manipulated from userspace or the kernel. The gpio-mlxbf3.c driver handles hardware registers and logic that are different from gpio-mlxbf.c and gpio-mlxbf2.c. For that reason, we have separate drivers for each generation. Changes from v4->v5: gpio-mlxbf3.c: - Update Kconfig dependency in gpio - remove version.h header - use irq_hw_number_t - release lock in mlxbf3_gpio_irq_set_type - add IRQCHIP_IMMUTABLE and GPIOCHIP_IRQ_RESOURCE_HELPERS - remove npins property to use ngpios instead - Assign handle_bad_irq() in probe - Use handle_edge_irq instead pinctrl-mlxbf3.c: - change the driver name to pinctrl-mlxbf3 - alignment cleanup - use PINCTRL_PINFUNCTION - use pinctrl_add_gpio_ranges - use devm_platform_ioremap_resource Asmaa Mnebhi (2): gpio: gpio-mlxbf3: Add gpio driver support pinctrl: pinctrl-mlxbf: Add pinctrl driver support drivers/gpio/Kconfig | 13 ++ drivers/gpio/Makefile | 1 + drivers/gpio/gpio-mlxbf3.c | 245 ++++++++++++++++++++++++ drivers/pinctrl/Kconfig | 13 ++ drivers/pinctrl/Makefile | 1 + drivers/pinctrl/pinctrl-mlxbf3.c | 318 +++++++++++++++++++++++++++++++ 6 files changed, 591 insertions(+) create mode 100644 drivers/gpio/gpio-mlxbf3.c create mode 100644 drivers/pinctrl/pinctrl-mlxbf3.c -- 2.30.1