From: Changhuang Liang <changhuang.liang@starfivetech.com>
To: Linus Walleij <linusw@kernel.org>, Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>,
Emil Renner Berthing <kernel@esmil.dk>,
Paul Walmsley <pjw@kernel.org>, Albert Ou <aou@eecs.berkeley.edu>,
Palmer Dabbelt <palmer@dabbelt.com>,
Alexandre Ghiti <alex@ghiti.fr>,
Philipp Zabel <p.zabel@pengutronix.de>,
Bartosz Golaszewski <brgl@kernel.org>
Cc: linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org,
devicetree@vger.kernel.org, linux-riscv@lists.infradead.org,
Lianfeng Ouyang <lianfeng.ouyang@starfivetech.com>,
Changhuang Liang <changhuang.liang@starfivetech.com>
Subject: [PATCH v4 00/21] Add basic pinctrl drivers for JHB100 SoC
Date: Sat, 1 Aug 2026 00:26:50 -0700 [thread overview]
Message-ID: <20260801072711.153217-1-changhuang.liang@starfivetech.com> (raw)
The JHB100 SoC has 13 pinctrl domains - sys0, sys0h, sys1, sys2, per0, per1,
per2, per2pok, per3, adc0, adc1, emmc, and vga.
In the current series, we will only add the following pinctrl:
- sys0, sys0h, sys1, sys2
- per0, per1, per2, per2pok, per3
The remaining pinctrl will be implemented in future series.
This series depends on the series:
https://lore.kernel.org/all/20260508053632.818548-1-changhuang.liang@starfivetech.com/
Change since v3:
PATCH 3/5/7/9/11/13/15/17/19:
- Restrict input-debounce-ns to a maximum of 10,485,680.
PATCH 9/11/13/15/19/21:
- Change power-source to set the actual voltage in millivolts.
PATCH 19:
- Add support for an option to set 2500 mV.
PATCH 4:
- Use GPIO_GENERIC to register the GPIO controller.
- Acquire sfp->lock with raw_spinlock_irqsave guard.
- Implement the .gpio_request_enable and .gpio_set_direction
callbacks for struct pinmux_ops。
- Add reset_control_assert on driver unload.
- Convert the pincfg structure to an enum array.
- Simplify the calculation of the number of GPIOs in a GPIO bank.
- Remove check_pinctrl_layouts() to improve code readability.
PATCH 4/6/8/10/12/14/16/18/20:
- Add const qualifiers to struct config_reg_layout_desc
and struct starfive_pinctrl_regs.
v3: https://lore.kernel.org/all/20260603055347.66845-1-changhuang.liang@starfivetech.com/
v2: https://lore.kernel.org/all/20260514111218.94519-1-changhuang.liang@starfivetech.com/
v1: https://lore.kernel.org/all/20260424111330.702272-1-changhuang.liang@starfivetech.com/
Changhuang Liang (21):
dt-bindings: pincfg-node: Add property 'input-debounce-ns'
pinctrl: pinconf-generic: Add property 'input-debounce-ns'
dt-bindings: pinctrl: Add starfive,jhb100-sys0-pinctrl
pinctrl: starfive: Add StarFive JHB100 sys0 controller driver
dt-bindings: pinctrl: Add starfive,jhb100-sys0h-pinctrl
pinctrl: starfive: Add StarFive JHB100 sys0h controller driver
dt-bindings: pinctrl: Add starfive,jhb100-sys1-pinctrl
pinctrl: starfive: Add StarFive JHB100 sys1 controller driver
dt-bindings: pinctrl: Add starfive,jhb100-sys2-pinctrl
pinctrl: starfive: Add StarFive JHB100 sys2 controller driver
dt-bindings: pinctrl: Add starfive,jhb100-per0-pinctrl
pinctrl: starfive: Add StarFive JHB100 per0 controller driver
dt-bindings: pinctrl: Add starfive,jhb100-per1-pinctrl
pinctrl: starfive: Add StarFive JHB100 per1 controller driver
dt-bindings: pinctrl: Add starfive,jhb100-per2-pinctrl
pinctrl: starfive: Add StarFive JHB100 per2 controller driver
dt-bindings: pinctrl: Add starfive,jhb100-per2pok-pinctrl
pinctrl: starfive: Add StarFive JHB100 per2pok controller driver
dt-bindings: pinctrl: Add starfive,jhb100-per3-pinctrl
pinctrl: starfive: Add StarFive JHB100 per3 controller driver
riscv: dts: starfive: jhb100: Add pinctrl nodes
.../bindings/pinctrl/pincfg-node.yaml | 11 +
.../pinctrl/starfive,jhb100-per0-pinctrl.yaml | 180 ++
.../pinctrl/starfive,jhb100-per1-pinctrl.yaml | 179 ++
.../pinctrl/starfive,jhb100-per2-pinctrl.yaml | 168 ++
.../starfive,jhb100-per2pok-pinctrl.yaml | 162 ++
.../pinctrl/starfive,jhb100-per3-pinctrl.yaml | 166 ++
.../pinctrl/starfive,jhb100-sys0-pinctrl.yaml | 164 ++
.../starfive,jhb100-sys0h-pinctrl.yaml | 162 ++
.../pinctrl/starfive,jhb100-sys1-pinctrl.yaml | 164 ++
.../pinctrl/starfive,jhb100-sys2-pinctrl.yaml | 170 ++
MAINTAINERS | 9 +
arch/riscv/boot/dts/starfive/jhb100-evb1.dts | 3 +
.../boot/dts/starfive/jhb100-pinctrl.dtsi | 23 +
arch/riscv/boot/dts/starfive/jhb100.dtsi | 110 ++
drivers/pinctrl/pinconf-generic.c | 2 +
drivers/pinctrl/starfive/Kconfig | 108 ++
drivers/pinctrl/starfive/Makefile | 11 +
.../starfive/pinctrl-starfive-jhb100-per0.c | 153 ++
.../starfive/pinctrl-starfive-jhb100-per1.c | 163 ++
.../starfive/pinctrl-starfive-jhb100-per2.c | 124 ++
.../pinctrl-starfive-jhb100-per2pok.c | 96 ++
.../starfive/pinctrl-starfive-jhb100-per3.c | 118 ++
.../starfive/pinctrl-starfive-jhb100-sys0.c | 119 ++
.../starfive/pinctrl-starfive-jhb100-sys0h.c | 96 ++
.../starfive/pinctrl-starfive-jhb100-sys1.c | 92 ++
.../starfive/pinctrl-starfive-jhb100-sys2.c | 132 ++
.../starfive/pinctrl-starfive-jhb100.c | 1456 +++++++++++++++++
.../starfive/pinctrl-starfive-jhb100.h | 159 ++
.../pinctrl/starfive,jhb100-pinctrl.h | 247 +++
include/linux/pinctrl/pinconf-generic.h | 5 +
30 files changed, 4752 insertions(+)
create mode 100644 Documentation/devicetree/bindings/pinctrl/starfive,jhb100-per0-pinctrl.yaml
create mode 100644 Documentation/devicetree/bindings/pinctrl/starfive,jhb100-per1-pinctrl.yaml
create mode 100644 Documentation/devicetree/bindings/pinctrl/starfive,jhb100-per2-pinctrl.yaml
create mode 100644 Documentation/devicetree/bindings/pinctrl/starfive,jhb100-per2pok-pinctrl.yaml
create mode 100644 Documentation/devicetree/bindings/pinctrl/starfive,jhb100-per3-pinctrl.yaml
create mode 100644 Documentation/devicetree/bindings/pinctrl/starfive,jhb100-sys0-pinctrl.yaml
create mode 100644 Documentation/devicetree/bindings/pinctrl/starfive,jhb100-sys0h-pinctrl.yaml
create mode 100644 Documentation/devicetree/bindings/pinctrl/starfive,jhb100-sys1-pinctrl.yaml
create mode 100644 Documentation/devicetree/bindings/pinctrl/starfive,jhb100-sys2-pinctrl.yaml
create mode 100644 arch/riscv/boot/dts/starfive/jhb100-pinctrl.dtsi
create mode 100644 drivers/pinctrl/starfive/pinctrl-starfive-jhb100-per0.c
create mode 100644 drivers/pinctrl/starfive/pinctrl-starfive-jhb100-per1.c
create mode 100644 drivers/pinctrl/starfive/pinctrl-starfive-jhb100-per2.c
create mode 100644 drivers/pinctrl/starfive/pinctrl-starfive-jhb100-per2pok.c
create mode 100644 drivers/pinctrl/starfive/pinctrl-starfive-jhb100-per3.c
create mode 100644 drivers/pinctrl/starfive/pinctrl-starfive-jhb100-sys0.c
create mode 100644 drivers/pinctrl/starfive/pinctrl-starfive-jhb100-sys0h.c
create mode 100644 drivers/pinctrl/starfive/pinctrl-starfive-jhb100-sys1.c
create mode 100644 drivers/pinctrl/starfive/pinctrl-starfive-jhb100-sys2.c
create mode 100644 drivers/pinctrl/starfive/pinctrl-starfive-jhb100.c
create mode 100644 drivers/pinctrl/starfive/pinctrl-starfive-jhb100.h
create mode 100644 include/dt-bindings/pinctrl/starfive,jhb100-pinctrl.h
--
2.25.1
next reply other threads:[~2026-08-01 14:03 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-01 7:26 Changhuang Liang [this message]
2026-08-01 7:26 ` [PATCH v4 01/21] dt-bindings: pincfg-node: Add property 'input-debounce-ns' Changhuang Liang
2026-08-03 14:13 ` Rob Herring
2026-08-04 1:12 ` Changhuang Liang
2026-08-01 7:26 ` [PATCH v4 02/21] pinctrl: pinconf-generic: " Changhuang Liang
2026-08-01 7:26 ` [PATCH v4 03/21] dt-bindings: pinctrl: Add starfive,jhb100-sys0-pinctrl Changhuang Liang
2026-08-01 7:26 ` [PATCH v4 04/21] pinctrl: starfive: Add StarFive JHB100 sys0 controller driver Changhuang Liang
2026-08-02 22:23 ` Uwe Kleine-König
2026-08-04 1:09 ` Changhuang Liang
2026-08-03 15:28 ` Philipp Zabel
2026-08-04 1:21 ` Changhuang Liang
2026-08-04 20:30 ` Linus Walleij
2026-08-01 7:26 ` [PATCH v4 05/21] dt-bindings: pinctrl: Add starfive,jhb100-sys0h-pinctrl Changhuang Liang
2026-08-05 21:30 ` Rob Herring
2026-08-06 6:27 ` Changhuang Liang
2026-08-01 7:26 ` [PATCH v4 06/21] pinctrl: starfive: Add StarFive JHB100 sys0h controller driver Changhuang Liang
2026-08-01 7:26 ` [PATCH v4 07/21] dt-bindings: pinctrl: Add starfive,jhb100-sys1-pinctrl Changhuang Liang
2026-08-01 7:26 ` [PATCH v4 08/21] pinctrl: starfive: Add StarFive JHB100 sys1 controller driver Changhuang Liang
2026-08-01 7:26 ` [PATCH v4 09/21] dt-bindings: pinctrl: Add starfive,jhb100-sys2-pinctrl Changhuang Liang
2026-08-01 7:27 ` [PATCH v4 10/21] pinctrl: starfive: Add StarFive JHB100 sys2 controller driver Changhuang Liang
2026-08-01 7:27 ` [PATCH v4 11/21] dt-bindings: pinctrl: Add starfive,jhb100-per0-pinctrl Changhuang Liang
2026-08-01 7:27 ` [PATCH v4 12/21] pinctrl: starfive: Add StarFive JHB100 per0 controller driver Changhuang Liang
2026-08-01 7:27 ` [PATCH v4 13/21] dt-bindings: pinctrl: Add starfive,jhb100-per1-pinctrl Changhuang Liang
2026-08-01 7:27 ` [PATCH v4 14/21] pinctrl: starfive: Add StarFive JHB100 per1 controller driver Changhuang Liang
2026-08-01 7:27 ` [PATCH v4 15/21] dt-bindings: pinctrl: Add starfive,jhb100-per2-pinctrl Changhuang Liang
2026-08-01 7:27 ` [PATCH v4 16/21] pinctrl: starfive: Add StarFive JHB100 per2 controller driver Changhuang Liang
2026-08-01 7:27 ` [PATCH v4 17/21] dt-bindings: pinctrl: Add starfive,jhb100-per2pok-pinctrl Changhuang Liang
2026-08-01 7:27 ` [PATCH v4 18/21] pinctrl: starfive: Add StarFive JHB100 per2pok controller driver Changhuang Liang
2026-08-01 7:27 ` [PATCH v4 19/21] dt-bindings: pinctrl: Add starfive,jhb100-per3-pinctrl Changhuang Liang
2026-08-01 7:27 ` [PATCH v4 20/21] pinctrl: starfive: Add StarFive JHB100 per3 controller driver Changhuang Liang
2026-08-01 7:27 ` [PATCH v4 21/21] riscv: dts: starfive: jhb100: Add pinctrl nodes Changhuang Liang
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260801072711.153217-1-changhuang.liang@starfivetech.com \
--to=changhuang.liang@starfivetech.com \
--cc=alex@ghiti.fr \
--cc=aou@eecs.berkeley.edu \
--cc=brgl@kernel.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=kernel@esmil.dk \
--cc=krzk+dt@kernel.org \
--cc=lianfeng.ouyang@starfivetech.com \
--cc=linusw@kernel.org \
--cc=linux-gpio@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-riscv@lists.infradead.org \
--cc=p.zabel@pengutronix.de \
--cc=palmer@dabbelt.com \
--cc=pjw@kernel.org \
--cc=robh@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox