From: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
To: Samuel Holland <samuel@sholland.org>,
Liam Girdwood <lgirdwood@gmail.com>,
Mark Brown <broonie@kernel.org>, Chen-Yu Tsai <wens@csie.org>,
Jernej Skrabec <jernej.skrabec@gmail.com>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
Rob Herring <robh+dt@kernel.org>
Cc: Maxime Ripard <mripard@kernel.org>,
devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org, linux-sunxi@lists.linux.dev
Subject: Re: [PATCH v3 1/4] regulator: dt-bindings: Add Allwinner D1 LDOs
Date: Tue, 16 Aug 2022 12:55:47 +0300 [thread overview]
Message-ID: <c4ec080a-b8b1-e3a9-c9d7-063e138c9bb8@linaro.org> (raw)
In-Reply-To: <20220815043436.20170-2-samuel@sholland.org>
On 15/08/2022 07:34, Samuel Holland wrote:
> The Allwinner D1 SoC contains two pairs of in-package LDOs. One pair is
> for general purpose use. LDOA generally powers the board's 1.8 V rail.
> LDOB generally powers the in-package DRAM, where applicable.
>
> The other pair of LDOs powers the analog power domains inside the SoC,
> including the audio codec, thermal sensor, and ADCs. These LDOs require
> a 0.9 V bandgap voltage reference. The calibration value for the voltage
> reference is stored in an eFuse, accessed via an NVMEM cell.
>
> Neither LDO control register is in its own MMIO range; instead, each
> regulator device relies on a regmap/syscon exported by its parent.
>
> Signed-off-by: Samuel Holland <samuel@sholland.org>
> ---
>
> Changes in v3:
> - Add "reg" property to bindings
> - Add "unevaluatedProperties: true" to regulator nodes
> - Minor changes to regulator node name patterns
> - Remove system-ldos example (now added in patch 3)
>
> Changes in v2:
> - Remove syscon property from bindings
> - Update binding examples to fix warnings and provide context
>
> .../allwinner,sun20i-d1-analog-ldos.yaml | 74 +++++++++++++++++++
> .../allwinner,sun20i-d1-system-ldos.yaml | 37 ++++++++++
> 2 files changed, 111 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/regulator/allwinner,sun20i-d1-analog-ldos.yaml
> create mode 100644 Documentation/devicetree/bindings/regulator/allwinner,sun20i-d1-system-ldos.yaml
>
> diff --git a/Documentation/devicetree/bindings/regulator/allwinner,sun20i-d1-analog-ldos.yaml b/Documentation/devicetree/bindings/regulator/allwinner,sun20i-d1-analog-ldos.yaml
> new file mode 100644
> index 000000000000..d6964b44ef21
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/regulator/allwinner,sun20i-d1-analog-ldos.yaml
> @@ -0,0 +1,74 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/regulator/allwinner,sun20i-d1-analog-ldos.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Allwinner D1 Analog LDOs
> +
> +description:
> + Allwinner D1 contains a set of LDOs which are designed to supply analog power
> + inside and outside the SoC. They are controlled by a register within the audio
> + codec MMIO space, but which is not part of the audio codec clock/reset domain.
> +
> +maintainers:
> + - Samuel Holland <samuel@sholland.org>
Please follow the example schema. Order is: title, maintainers, description.
> +
> +properties:
> + compatible:
> + enum:
> + - allwinner,sun20i-d1-analog-ldos
> +
> + reg:
> + maxItems: 1
> +
> + nvmem-cells:
> + items:
> + - description: NVMEM cell for the calibrated bandgap reference trim value
> +
> + nvmem-cell-names:
> + items:
> + - const: bg_trim
> +
> +patternProperties:
> + "^(a|hp)ldo$":
> + type: object
> + $ref: regulator.yaml#
> + unevaluatedProperties: false
> +
> +required:
> + - compatible
> + - reg
> + - nvmem-cells
> + - nvmem-cell-names
> +
> +unevaluatedProperties: false
> +
> +examples:
> + - |
> + audio-codec@2030000 {
> + compatible = "simple-mfd", "syscon";
This cannot be on its own. Both require device specific compatible.
> + reg = <0x2030000 0x1000>;
> + ranges;
> + #address-cells = <1>;
> + #size-cells = <1>;
> +
> + regulators@2030348 {
> + compatible = "allwinner,sun20i-d1-analog-ldos";
> + reg = <0x2030348 0x4>;
> + nvmem-cells = <&bg_trim>;
> + nvmem-cell-names = "bg_trim";
> +
> + reg_aldo: aldo {
> + regulator-min-microvolt = <1800000>;
> + regulator-max-microvolt = <1800000>;
> + };
> +
> + reg_hpldo: hpldo {
> + regulator-min-microvolt = <1800000>;
> + regulator-max-microvolt = <1800000>;
> + };
> + };
> + };
> +
> +...
> diff --git a/Documentation/devicetree/bindings/regulator/allwinner,sun20i-d1-system-ldos.yaml b/Documentation/devicetree/bindings/regulator/allwinner,sun20i-d1-system-ldos.yaml
> new file mode 100644
> index 000000000000..e3e2810fb3d7
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/regulator/allwinner,sun20i-d1-system-ldos.yaml
> @@ -0,0 +1,37 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/regulator/allwinner,sun20i-d1-system-ldos.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Allwinner D1 System LDOs
> +
> +description:
> + Allwinner D1 contains a pair of general-purpose LDOs which are designed to
> + supply power inside and outside the SoC. They are controlled by a register
> + within the system control MMIO space.
Fix order.
> +
> +maintainers:
> + - Samuel Holland <samuel@sholland.org>
> +
> +properties:
> + compatible:
> + enum:
> + - allwinner,sun20i-d1-system-ldos
> +
> + reg:
> + maxItems: 1
> +
> +patternProperties:
> + "^ldo[ab]$":
> + type: object
> + $ref: regulator.yaml#
> + unevaluatedProperties: false
> +
> +required:
> + - compatible
> + - reg
> +
> +unevaluatedProperties: false
Example please.
Best regards,
Krzysztof
WARNING: multiple messages have this Message-ID (diff)
From: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
To: Samuel Holland <samuel@sholland.org>,
Liam Girdwood <lgirdwood@gmail.com>,
Mark Brown <broonie@kernel.org>, Chen-Yu Tsai <wens@csie.org>,
Jernej Skrabec <jernej.skrabec@gmail.com>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
Rob Herring <robh+dt@kernel.org>
Cc: Maxime Ripard <mripard@kernel.org>,
devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org, linux-sunxi@lists.linux.dev
Subject: Re: [PATCH v3 1/4] regulator: dt-bindings: Add Allwinner D1 LDOs
Date: Tue, 16 Aug 2022 12:55:47 +0300 [thread overview]
Message-ID: <c4ec080a-b8b1-e3a9-c9d7-063e138c9bb8@linaro.org> (raw)
In-Reply-To: <20220815043436.20170-2-samuel@sholland.org>
On 15/08/2022 07:34, Samuel Holland wrote:
> The Allwinner D1 SoC contains two pairs of in-package LDOs. One pair is
> for general purpose use. LDOA generally powers the board's 1.8 V rail.
> LDOB generally powers the in-package DRAM, where applicable.
>
> The other pair of LDOs powers the analog power domains inside the SoC,
> including the audio codec, thermal sensor, and ADCs. These LDOs require
> a 0.9 V bandgap voltage reference. The calibration value for the voltage
> reference is stored in an eFuse, accessed via an NVMEM cell.
>
> Neither LDO control register is in its own MMIO range; instead, each
> regulator device relies on a regmap/syscon exported by its parent.
>
> Signed-off-by: Samuel Holland <samuel@sholland.org>
> ---
>
> Changes in v3:
> - Add "reg" property to bindings
> - Add "unevaluatedProperties: true" to regulator nodes
> - Minor changes to regulator node name patterns
> - Remove system-ldos example (now added in patch 3)
>
> Changes in v2:
> - Remove syscon property from bindings
> - Update binding examples to fix warnings and provide context
>
> .../allwinner,sun20i-d1-analog-ldos.yaml | 74 +++++++++++++++++++
> .../allwinner,sun20i-d1-system-ldos.yaml | 37 ++++++++++
> 2 files changed, 111 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/regulator/allwinner,sun20i-d1-analog-ldos.yaml
> create mode 100644 Documentation/devicetree/bindings/regulator/allwinner,sun20i-d1-system-ldos.yaml
>
> diff --git a/Documentation/devicetree/bindings/regulator/allwinner,sun20i-d1-analog-ldos.yaml b/Documentation/devicetree/bindings/regulator/allwinner,sun20i-d1-analog-ldos.yaml
> new file mode 100644
> index 000000000000..d6964b44ef21
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/regulator/allwinner,sun20i-d1-analog-ldos.yaml
> @@ -0,0 +1,74 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/regulator/allwinner,sun20i-d1-analog-ldos.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Allwinner D1 Analog LDOs
> +
> +description:
> + Allwinner D1 contains a set of LDOs which are designed to supply analog power
> + inside and outside the SoC. They are controlled by a register within the audio
> + codec MMIO space, but which is not part of the audio codec clock/reset domain.
> +
> +maintainers:
> + - Samuel Holland <samuel@sholland.org>
Please follow the example schema. Order is: title, maintainers, description.
> +
> +properties:
> + compatible:
> + enum:
> + - allwinner,sun20i-d1-analog-ldos
> +
> + reg:
> + maxItems: 1
> +
> + nvmem-cells:
> + items:
> + - description: NVMEM cell for the calibrated bandgap reference trim value
> +
> + nvmem-cell-names:
> + items:
> + - const: bg_trim
> +
> +patternProperties:
> + "^(a|hp)ldo$":
> + type: object
> + $ref: regulator.yaml#
> + unevaluatedProperties: false
> +
> +required:
> + - compatible
> + - reg
> + - nvmem-cells
> + - nvmem-cell-names
> +
> +unevaluatedProperties: false
> +
> +examples:
> + - |
> + audio-codec@2030000 {
> + compatible = "simple-mfd", "syscon";
This cannot be on its own. Both require device specific compatible.
> + reg = <0x2030000 0x1000>;
> + ranges;
> + #address-cells = <1>;
> + #size-cells = <1>;
> +
> + regulators@2030348 {
> + compatible = "allwinner,sun20i-d1-analog-ldos";
> + reg = <0x2030348 0x4>;
> + nvmem-cells = <&bg_trim>;
> + nvmem-cell-names = "bg_trim";
> +
> + reg_aldo: aldo {
> + regulator-min-microvolt = <1800000>;
> + regulator-max-microvolt = <1800000>;
> + };
> +
> + reg_hpldo: hpldo {
> + regulator-min-microvolt = <1800000>;
> + regulator-max-microvolt = <1800000>;
> + };
> + };
> + };
> +
> +...
> diff --git a/Documentation/devicetree/bindings/regulator/allwinner,sun20i-d1-system-ldos.yaml b/Documentation/devicetree/bindings/regulator/allwinner,sun20i-d1-system-ldos.yaml
> new file mode 100644
> index 000000000000..e3e2810fb3d7
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/regulator/allwinner,sun20i-d1-system-ldos.yaml
> @@ -0,0 +1,37 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/regulator/allwinner,sun20i-d1-system-ldos.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Allwinner D1 System LDOs
> +
> +description:
> + Allwinner D1 contains a pair of general-purpose LDOs which are designed to
> + supply power inside and outside the SoC. They are controlled by a register
> + within the system control MMIO space.
Fix order.
> +
> +maintainers:
> + - Samuel Holland <samuel@sholland.org>
> +
> +properties:
> + compatible:
> + enum:
> + - allwinner,sun20i-d1-system-ldos
> +
> + reg:
> + maxItems: 1
> +
> +patternProperties:
> + "^ldo[ab]$":
> + type: object
> + $ref: regulator.yaml#
> + unevaluatedProperties: false
> +
> +required:
> + - compatible
> + - reg
> +
> +unevaluatedProperties: false
Example please.
Best regards,
Krzysztof
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2022-08-16 9:55 UTC|newest]
Thread overview: 52+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-08-15 4:34 [PATCH v3 0/4] regulator: Add support for Allwinner D1 LDOs Samuel Holland
2022-08-15 4:34 ` Samuel Holland
2022-08-15 4:34 ` [PATCH v3 1/4] regulator: dt-bindings: Add " Samuel Holland
2022-08-15 4:34 ` Samuel Holland
2022-08-15 15:32 ` Heiko Stübner
2022-08-15 15:32 ` Heiko Stübner
2022-08-16 10:00 ` Krzysztof Kozlowski
2022-08-16 10:00 ` Krzysztof Kozlowski
2022-08-16 9:55 ` Krzysztof Kozlowski [this message]
2022-08-16 9:55 ` Krzysztof Kozlowski
2022-08-17 8:15 ` Samuel Holland
2022-08-17 8:15 ` Samuel Holland
2022-08-17 8:27 ` Krzysztof Kozlowski
2022-08-17 8:27 ` Krzysztof Kozlowski
2022-08-17 8:39 ` Samuel Holland
2022-08-17 8:39 ` Samuel Holland
2022-08-17 8:46 ` Krzysztof Kozlowski
2022-08-17 8:46 ` Krzysztof Kozlowski
2022-08-17 13:46 ` Krzysztof Kozlowski
2022-08-17 13:46 ` Krzysztof Kozlowski
2022-08-16 9:57 ` Krzysztof Kozlowski
2022-08-16 9:57 ` Krzysztof Kozlowski
2022-08-15 4:34 ` [PATCH v3 2/4] regulator: sun20i: Add support for " Samuel Holland
2022-08-15 4:34 ` Samuel Holland
2022-08-15 17:00 ` Heiko Stübner
2022-08-15 17:00 ` Heiko Stübner
2022-08-17 8:28 ` Samuel Holland
2022-08-17 8:28 ` Samuel Holland
2022-08-17 10:01 ` Heiko Stübner
2022-08-17 10:01 ` Heiko Stübner
2022-08-15 4:34 ` [PATCH v3 3/4] dt-bindings: sram: sunxi-sram: Add optional regulators child Samuel Holland
2022-08-15 4:34 ` Samuel Holland
2022-08-15 14:01 ` Rob Herring
2022-08-15 14:01 ` Rob Herring
2022-08-15 17:02 ` Heiko Stübner
2022-08-15 17:02 ` Heiko Stübner
2022-08-16 9:59 ` Krzysztof Kozlowski
2022-08-16 9:59 ` Krzysztof Kozlowski
2022-08-17 8:47 ` Samuel Holland
2022-08-17 8:47 ` Samuel Holland
2022-08-17 13:22 ` Krzysztof Kozlowski
2022-08-17 13:22 ` Krzysztof Kozlowski
2022-08-15 4:34 ` [PATCH v3 4/4] soc: sunxi: sram: Only iterate over SRAM children Samuel Holland
2022-08-15 4:34 ` Samuel Holland
2022-08-15 17:04 ` Heiko Stübner
2022-08-15 17:04 ` Heiko Stübner
2022-08-16 10:01 ` Krzysztof Kozlowski
2022-08-16 10:01 ` Krzysztof Kozlowski
2022-08-16 10:03 ` Krzysztof Kozlowski
2022-08-16 10:03 ` Krzysztof Kozlowski
2022-08-17 8:50 ` Samuel Holland
2022-08-17 8:50 ` Samuel Holland
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=c4ec080a-b8b1-e3a9-c9d7-063e138c9bb8@linaro.org \
--to=krzysztof.kozlowski@linaro.org \
--cc=broonie@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=jernej.skrabec@gmail.com \
--cc=krzysztof.kozlowski+dt@linaro.org \
--cc=lgirdwood@gmail.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-sunxi@lists.linux.dev \
--cc=mripard@kernel.org \
--cc=robh+dt@kernel.org \
--cc=samuel@sholland.org \
--cc=wens@csie.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.