Some sunxi SoCs have in-package regulators controlled by a register in
the system control MMIO block. Allow a child node for these regulators
in addition to SRAM child nodes.
Signed-off-by: Samuel Holland <samuel@sholland.org>
---
Changes in v3:
- Require the regulators node to have a unit address
- Reference the regulator schema from the SRAM controller schema
- Move the system LDOs example to the SRAM controller schema
- Reorder the patches so the example passes validation
Changes in v2:
- New patch for v2
.../allwinner,sun4i-a10-system-control.yaml | 29 +++++++++++++++++++
1 file changed, 29 insertions(+)
diff --git a/Documentation/devicetree/bindings/sram/allwinner,sun4i-a10-system-control.yaml b/Documentation/devicetree/bindings/sram/allwinner,sun4i-a10-system-control.yaml
index d64c1b28fb61..915ca85c3f10 100644
--- a/Documentation/devicetree/bindings/sram/allwinner,sun4i-a10-system-control.yaml
+++ b/Documentation/devicetree/bindings/sram/allwinner,sun4i-a10-system-control.yaml
@@ -56,6 +56,10 @@ properties:
ranges: true
patternProperties:
+ "^regulators@[0-9a-f]+$":
+ $ref: /schemas/regulator/allwinner,sun20i-d1-system-ldos.yaml#
+ unevaluatedProperties: false
+
"^sram@[a-z0-9]+":
type: object
@@ -130,3 +134,28 @@ examples:
};
};
};
+
+ - |
+ syscon@3000000 {
+ compatible = "allwinner,sun20i-d1-system-control";
+ reg = <0x3000000 0x1000>;
+ ranges;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ regulators@3000150 {
+ compatible = "allwinner,sun20i-d1-system-ldos";
+ reg = <0x3000150 0x4>;
+
+ reg_ldoa: ldoa {
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ };
+
+ reg_ldob: ldob {
+ regulator-name = "vcc-dram";
+ regulator-min-microvolt = <1500000>;
+ regulator-max-microvolt = <1500000>;
+ };
+ };
+ };
--
2.35.1
On 15/08/2022 07:34, Samuel Holland wrote:
> Some sunxi SoCs have in-package regulators controlled by a register in
> the system control MMIO block. Allow a child node for these regulators
> in addition to SRAM child nodes.
>
> Signed-off-by: Samuel Holland <samuel@sholland.org>
> ---
>
> Changes in v3:
> - Require the regulators node to have a unit address
> - Reference the regulator schema from the SRAM controller schema
> - Move the system LDOs example to the SRAM controller schema
> - Reorder the patches so the example passes validation
>
> Changes in v2:
> - New patch for v2
>
> .../allwinner,sun4i-a10-system-control.yaml | 29 +++++++++++++++++++
> 1 file changed, 29 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/sram/allwinner,sun4i-a10-system-control.yaml b/Documentation/devicetree/bindings/sram/allwinner,sun4i-a10-system-control.yaml
> index d64c1b28fb61..915ca85c3f10 100644
> --- a/Documentation/devicetree/bindings/sram/allwinner,sun4i-a10-system-control.yaml
> +++ b/Documentation/devicetree/bindings/sram/allwinner,sun4i-a10-system-control.yaml
> @@ -56,6 +56,10 @@ properties:
> ranges: true
>
> patternProperties:
> + "^regulators@[0-9a-f]+$":
> + $ref: /schemas/regulator/allwinner,sun20i-d1-system-ldos.yaml#
> + unevaluatedProperties: false
unevaluatedProperties is not needed. Your other schema does not allow
anything else here.
> +
> "^sram@[a-z0-9]+":
> type: object
>
> @@ -130,3 +134,28 @@ examples:
> };
> };
> };
> +
> + - |
> + syscon@3000000 {
> + compatible = "allwinner,sun20i-d1-system-control";
Your other example uses simple-mfd, syscon... A bit confusing.
> + reg = <0x3000000 0x1000>;
> + ranges;
> + #address-cells = <1>;
> + #size-cells = <1>;
> +
> + regulators@3000150 {
> + compatible = "allwinner,sun20i-d1-system-ldos";
> + reg = <0x3000150 0x4>;
> +
> + reg_ldoa: ldoa {
> + regulator-min-microvolt = <1800000>;
> + regulator-max-microvolt = <1800000>;
> + };
> +
> + reg_ldob: ldob {
> + regulator-name = "vcc-dram";
> + regulator-min-microvolt = <1500000>;
> + regulator-max-microvolt = <1500000>;
> + };
> + };
> + };
Best regards,
Krzysztof
On 8/16/22 4:59 AM, Krzysztof Kozlowski wrote: > On 15/08/2022 07:34, Samuel Holland wrote: >> Some sunxi SoCs have in-package regulators controlled by a register in >> the system control MMIO block. Allow a child node for these regulators >> in addition to SRAM child nodes. >> >> Signed-off-by: Samuel Holland <samuel@sholland.org> >> --- >> >> Changes in v3: >> - Require the regulators node to have a unit address >> - Reference the regulator schema from the SRAM controller schema >> - Move the system LDOs example to the SRAM controller schema >> - Reorder the patches so the example passes validation >> >> Changes in v2: >> - New patch for v2 >> >> .../allwinner,sun4i-a10-system-control.yaml | 29 +++++++++++++++++++ >> 1 file changed, 29 insertions(+) >> >> diff --git a/Documentation/devicetree/bindings/sram/allwinner,sun4i-a10-system-control.yaml b/Documentation/devicetree/bindings/sram/allwinner,sun4i-a10-system-control.yaml >> index d64c1b28fb61..915ca85c3f10 100644 >> --- a/Documentation/devicetree/bindings/sram/allwinner,sun4i-a10-system-control.yaml >> +++ b/Documentation/devicetree/bindings/sram/allwinner,sun4i-a10-system-control.yaml >> @@ -56,6 +56,10 @@ properties: >> ranges: true >> >> patternProperties: >> + "^regulators@[0-9a-f]+$": >> + $ref: /schemas/regulator/allwinner,sun20i-d1-system-ldos.yaml# >> + unevaluatedProperties: false > > unevaluatedProperties is not needed. Your other schema does not allow > anything else here. I can remove it. I added it because it looks like the dt-schema tools use it as an indicator that the matched properties are child nodes[1]. Maybe that is not relevant here? Regards, Samuel [1]: https://github.com/devicetree-org/dt-schema/commit/b12b3737cabc
On 17/08/2022 11:47, Samuel Holland wrote: > On 8/16/22 4:59 AM, Krzysztof Kozlowski wrote: >> On 15/08/2022 07:34, Samuel Holland wrote: >>> Some sunxi SoCs have in-package regulators controlled by a register in >>> the system control MMIO block. Allow a child node for these regulators >>> in addition to SRAM child nodes. >>> >>> Signed-off-by: Samuel Holland <samuel@sholland.org> >>> --- >>> >>> Changes in v3: >>> - Require the regulators node to have a unit address >>> - Reference the regulator schema from the SRAM controller schema >>> - Move the system LDOs example to the SRAM controller schema >>> - Reorder the patches so the example passes validation >>> >>> Changes in v2: >>> - New patch for v2 >>> >>> .../allwinner,sun4i-a10-system-control.yaml | 29 +++++++++++++++++++ >>> 1 file changed, 29 insertions(+) >>> >>> diff --git a/Documentation/devicetree/bindings/sram/allwinner,sun4i-a10-system-control.yaml b/Documentation/devicetree/bindings/sram/allwinner,sun4i-a10-system-control.yaml >>> index d64c1b28fb61..915ca85c3f10 100644 >>> --- a/Documentation/devicetree/bindings/sram/allwinner,sun4i-a10-system-control.yaml >>> +++ b/Documentation/devicetree/bindings/sram/allwinner,sun4i-a10-system-control.yaml >>> @@ -56,6 +56,10 @@ properties: >>> ranges: true >>> >>> patternProperties: >>> + "^regulators@[0-9a-f]+$": >>> + $ref: /schemas/regulator/allwinner,sun20i-d1-system-ldos.yaml# >>> + unevaluatedProperties: false >> >> unevaluatedProperties is not needed. Your other schema does not allow >> anything else here. > > I can remove it. I added it because it looks like the dt-schema tools use it as > an indicator that the matched properties are child nodes[1]. Maybe that is not > relevant here? It is not relevant here as the other schema does not allow anything else. Best regards, Krzysztof
On Sun, 14 Aug 2022 23:34:34 -0500, Samuel Holland wrote: > Some sunxi SoCs have in-package regulators controlled by a register in > the system control MMIO block. Allow a child node for these regulators > in addition to SRAM child nodes. > > Signed-off-by: Samuel Holland <samuel@sholland.org> > --- > > Changes in v3: > - Require the regulators node to have a unit address > - Reference the regulator schema from the SRAM controller schema > - Move the system LDOs example to the SRAM controller schema > - Reorder the patches so the example passes validation > > Changes in v2: > - New patch for v2 > > .../allwinner,sun4i-a10-system-control.yaml | 29 +++++++++++++++++++ > 1 file changed, 29 insertions(+) > My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check' on your patch (DT_CHECKER_FLAGS is new in v5.13): yamllint warnings/errors: dtschema/dtc warnings/errors: Documentation/devicetree/bindings/sram/allwinner,sun4i-a10-system-control.example.dtb:0:0: /example-1/syscon@3000000: failed to match any schema with compatible: ['allwinner,sun20i-d1-system-control'] doc reference errors (make refcheckdocs): See https://patchwork.ozlabs.org/patch/ This check can fail if there are any dependencies. The base for a patch series is generally the most recent rc1. If you already ran 'make dt_binding_check' and didn't see the above error(s), then make sure 'yamllint' is installed and dt-schema is up to date: pip3 install dtschema --upgrade Please check and re-submit.
Am Montag, 15. August 2022, 16:01:47 CEST schrieb Rob Herring: > On Sun, 14 Aug 2022 23:34:34 -0500, Samuel Holland wrote: > > Some sunxi SoCs have in-package regulators controlled by a register in > > the system control MMIO block. Allow a child node for these regulators > > in addition to SRAM child nodes. > > > > Signed-off-by: Samuel Holland <samuel@sholland.org> > > --- > > > > Changes in v3: > > - Require the regulators node to have a unit address > > - Reference the regulator schema from the SRAM controller schema > > - Move the system LDOs example to the SRAM controller schema > > - Reorder the patches so the example passes validation > > > > Changes in v2: > > - New patch for v2 > > > > .../allwinner,sun4i-a10-system-control.yaml | 29 +++++++++++++++++++ > > 1 file changed, 29 insertions(+) > > > > My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check' > on your patch (DT_CHECKER_FLAGS is new in v5.13): > > yamllint warnings/errors: > > dtschema/dtc warnings/errors: > Documentation/devicetree/bindings/sram/allwinner,sun4i-a10-system-control.example.dtb:0:0: /example-1/syscon@3000000: failed to match any schema with compatible: ['allwinner,sun20i-d1-system-control'] This got added in "dt-bindings: sram: sunxi-sram: Add D1 compatible string" ( https://lore.kernel.org/r/20220815041248.53268-3-samuel@sholland.org ) > > doc reference errors (make refcheckdocs): > > See https://patchwork.ozlabs.org/patch/ > > This check can fail if there are any dependencies. The base for a patch > series is generally the most recent rc1. > > If you already ran 'make dt_binding_check' and didn't see the above > error(s), then make sure 'yamllint' is installed and dt-schema is up to > date: > > pip3 install dtschema --upgrade > > Please check and re-submit. > > > _______________________________________________ > linux-arm-kernel mailing list > linux-arm-kernel@lists.infradead.org > http://lists.infradead.org/mailman/listinfo/linux-arm-kernel >
© 2016 - 2026 Red Hat, Inc.