Re: [PATCH v4 05/21] dt-bindings: pinctrl: Add starfive,jhb100-sys0h-pinctrl
From: Changhuang Liang
Date: Thu Aug 06 2026 - 02:43:13 EST
Hi, Rob
Thanks for the review.
> On Sat, Aug 01, 2026 at 12:26:55AM -0700, Changhuang Liang wrote:
> > Add pinctrl bindings for StarFive JHB100 SoC System-0 host(sys0h)
> > pinctrl controller.
> >
> > Signed-off-by: Changhuang Liang <changhuang.liang@xxxxxxxxxxxxxxxx>
> > ---
> > .../starfive,jhb100-sys0h-pinctrl.yaml | 162
> ++++++++++++++++++
> > .../pinctrl/starfive,jhb100-pinctrl.h | 14 ++
> > 2 files changed, 176 insertions(+)
> > create mode 100644
> > Documentation/devicetree/bindings/pinctrl/starfive,jhb100-sys0h-pinctr
> > l.yaml
> >
> > diff --git
> > a/Documentation/devicetree/bindings/pinctrl/starfive,jhb100-sys0h-pinc
> > trl.yaml
> > b/Documentation/devicetree/bindings/pinctrl/starfive,jhb100-sys0h-pinc
> > trl.yaml
> > new file mode 100644
> > index 000000000000..80acc64834df
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/pinctrl/starfive,jhb100-sys0h-
> > +++ pinctrl.yaml
> > @@ -0,0 +1,162 @@
> > +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause %YAML 1.2
> > +---
> > +$id:
> > +http://devicetree.org/schemas/pinctrl/starfive,jhb100-sys0h-pinctrl.y
> > +aml#
> > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > +
> > +title: StarFive JHB100 System-0 Host Pin Controller
> > +
> > +description: |
> > + Pinctrl bindings for JHB100 RISC-V SoC from StarFive Technology Ltd.
> > +
> > + The JHB100 SoC has 13 pinctrl domains - sys0, sys0h, sys1, sys2,
> > + per0, per1, per2, per2pok, per3, adc0, adc1, emmc, and vga.
>
> These all look about the same other than 'function' values. I don't think it's
> worth splitting just for that. I just put all the function values in and just
> document which ones go with which compatible.
>
> If there are more differences I missed, then perhaps the split makes sense.
> Maybe it's 2 or 3 different ones?
I've organized the differences based on the current series:
1. 'function' values
2. bias-pull-up
- per0, per1: support two types
- type: boolean
- enum: [600, 900, 1200, 2000]
- Other domains: support only one type
- type: boolean
3. power-source:
- sys2, per0, per1:
- enum: [1800, 3300]
- per2, per3:
- enum: [1800, 2500, 3300]
- Other domains: not supported
4. drive-open-drain and drive-push-pull
- Supported only on per0 and per1
After re-checking, I noticed that I mistakenly added these two properties under sys2 as well. I'll remove them in the next version.
Based on these differences, do you have any further suggestions?
Also, if we later introduce ADC0, ADC1, eMMC, and VGA domains, there will be additional differences to consider.
Best Regards,
Changhuang