This series of patches addresses maintainers' comments from a previous patch which supported the GPIO driver for BlueField-3 SoC: "[PATCH v1 1/1] Add driver for Mellanox BlueField-3 GPIO controller" Instead of creating v2 for that patch, I am creating a new series starting patch v1 because there are 2 drivers involved. It was suggested to follow the linux gpio standards, and separate the pin controller functionality from the gpio functionality. Instead of creating a followup v2 patch, I am creating a new series because there are 2 drivers (2 patches) involved now: 1) NVIDIA BlueField-3 GPIO driver as front end 2) NVIDIA BlueField-3 pin controller as back end Moved the FW_CONTROL_CLEAR/SET code to the pin controller so that there are 2 GPIO mux selectors: 1) default hardware functionality 2) gpio functionality where software can control the GPIO value when the direction is set to output. Removed support to the GPIO sysfs since its use is deprecated and risky. Instead, used libgpiod to test this code. 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 | 314 ++++++++++++++++++++++++++++ drivers/pinctrl/Kconfig | 9 + drivers/pinctrl/Makefile | 1 + drivers/pinctrl/pinctrl-mlxbf.c | 353 ++++++++++++++++++++++++++++++++ 6 files changed, 685 insertions(+) create mode 100644 drivers/gpio/gpio-mlxbf3.c create mode 100644 drivers/pinctrl/pinctrl-mlxbf.c -- 2.30.1