[PATCH v1 0/8] Add ADC, eMMC and VGA pinctrl for StarFive JHB100 SoC

From: Changhuang Liang

Date: Sat Oct 17 2026 - 06:00:37 EST


The JHB100 SoC has 13 pinctrl domains - sys0, sys0h, sys1, sys2, per0, per1,
per2, per2pok, per3, adc0, adc1, emmc, and vga.

Series [1] completed the submission of the first 9 domains; the current series
provides pinctrl implementation support for the remaining parts.

[1]: https://lore.kernel.org/all/20260910100357.130134-1-changhuang.liang@xxxxxxxxxxxxxxxx/

This part of the pinctrl has some special aspects:
1. adc0 and adc1 have different function select configurations.
2. Both adc0 and adc1 require 1 clock and 2 resets.
3. emmc only supports the input-debounce-ns pin configuration.
4. The drive-strength supported by adc0, adc1, and vga has 8 selectable values.

Changhuang Liang (8):
dt-bindings: pinctrl: Add starfive,jhb100-adc0-pinctrl
pinctrl: starfive: Add StarFive JHB100 adc0 controller driver
dt-bindings: pinctrl: Add starfive,jhb100-adc1-pinctrl
pinctrl: starfive: Add StarFive JHB100 adc1 controller driver
dt-bindings: pinctrl: Add starfive,jhb100-emmc-pinctrl
pinctrl: starfive: Add StarFive JHB100 emmc controller driver
dt-bindings: pinctrl: Add starfive,jhb100-vga-pinctrl
pinctrl: starfive: Add StarFive JHB100 vga controller driver

.../pinctrl/starfive,jhb100-adc0-pinctrl.yaml | 168 ++++++++++++++++++
.../pinctrl/starfive,jhb100-adc1-pinctrl.yaml | 168 ++++++++++++++++++
.../pinctrl/starfive,jhb100-emmc-pinctrl.yaml | 129 ++++++++++++++
.../pinctrl/starfive,jhb100-vga-pinctrl.yaml | 163 +++++++++++++++++
drivers/pinctrl/starfive/Kconfig | 44 +++++
drivers/pinctrl/starfive/Makefile | 4 +
.../starfive/pinctrl-starfive-jhb100-adc0.c | 85 +++++++++
.../starfive/pinctrl-starfive-jhb100-adc1.c | 85 +++++++++
.../starfive/pinctrl-starfive-jhb100-emmc.c | 77 ++++++++
.../starfive/pinctrl-starfive-jhb100-vga.c | 86 +++++++++
10 files changed, 1009 insertions(+)
create mode 100644 Documentation/devicetree/bindings/pinctrl/starfive,jhb100-adc0-pinctrl.yaml
create mode 100644 Documentation/devicetree/bindings/pinctrl/starfive,jhb100-adc1-pinctrl.yaml
create mode 100644 Documentation/devicetree/bindings/pinctrl/starfive,jhb100-emmc-pinctrl.yaml
create mode 100644 Documentation/devicetree/bindings/pinctrl/starfive,jhb100-vga-pinctrl.yaml
create mode 100644 drivers/pinctrl/starfive/pinctrl-starfive-jhb100-adc0.c
create mode 100644 drivers/pinctrl/starfive/pinctrl-starfive-jhb100-adc1.c
create mode 100644 drivers/pinctrl/starfive/pinctrl-starfive-jhb100-emmc.c
create mode 100644 drivers/pinctrl/starfive/pinctrl-starfive-jhb100-vga.c

--
2.25.1