Implements support for the Eswin eic7700 SoC pinctrl controller. Provides API to manage pinctrl for the eic7700 SoC. Integration with the Linux pinctrl subsystem for consistency and scalability.
Supported chips: Eswin eic7700 SoC. Test: Tested this patch on the Sifive HiFive Premier P550 (which uses the EIC7700 SoC), including system boot, networking, EMMC, display, and other peripherals. The drivers for these modules all use the pinctrl module, so this verifies that this pinctrl driver patch is working properly. --- Changes since V3: - Added "Reviewed-by" tag of "Krzysztof Kozlowski" - Corrected some incorrect spaces and blank lines in the YAML file. - Link: https://lore.kernel.org/all/20250514080928.385-1-luyu...@eswincomputing.com/ Changes since V2: - Added "Reviewed-by" tag of "Krzysztof Kozlowski" - Address the comments from Krzysztof Kozlowski, some commit information are modified. - Fixed some errors and warnings reported by the kernel test robot. - Modified the usage of some labels and syntax in the YAML file, as well as the usage of the dev_err_probe function, to make their application scenarios more accurate. - Link: https://lore.kernel.org/all/20250506090844.1516-1-luyu...@eswincomputing.com/ Changes since V1: - Made overall modifications to the driver structure and the DTS writing style. - Link: https://lore.kernel.org/all/20250325141311.758787-1-emil.renner.berth...@canonical.com/ Yulin Lu (2): dt-bindings: pinctrl: eswin: Document for EIC7700 SoC pinctrl: eswin: Add EIC7700 pinctrl driver .../pinctrl/eswin,eic7700-pinctrl.yaml | 156 ++++ drivers/pinctrl/Kconfig | 11 + drivers/pinctrl/Makefile | 1 + drivers/pinctrl/pinctrl-eic7700.c | 702 ++++++++++++++++++ 4 files changed, 870 insertions(+) create mode 100644 Documentation/devicetree/bindings/pinctrl/eswin,eic7700-pinctrl.yaml create mode 100644 drivers/pinctrl/pinctrl-eic7700.c -- 2.25.1