From: Rob Herring <robh@kernel.org>
To: Andreas Kemnade <andreas@kemnade.info>
Cc: lee.jones@linaro.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org, b.galvani@gmail.com,
stefan@agner.ch
Subject: Re: [PATCH] dt-bindings: mfd: Convert rn5t618 to json-schema
Date: Tue, 15 Sep 2020 11:11:52 -0600 [thread overview]
Message-ID: <20200915171152.GA2124960@bogus> (raw)
In-Reply-To: <20200908201303.17271-1-andreas@kemnade.info>
On Tue, Sep 08, 2020 at 10:13:03PM +0200, Andreas Kemnade wrote:
> Convert the RN5T618 binding to DT schema format. Also
> clearly state which regulators are available.
>
> Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> ---
> I have noted myself here as maintainer because I wrote most of the
> code of the several subdevices, although not of the .txt-binding.
> Due to its .txt-format history BSD license was not added.
> I happily ignored the "does MAINTAINERS need updating" thing
> from checkpatch.pl, I do not know whether that PMIC should
> have a separate entry there.
>
> .../bindings/mfd/ricoh,rn5t618.yaml | 113 ++++++++++++++++++
> .../devicetree/bindings/mfd/rn5t618.txt | 52 --------
> 2 files changed, 113 insertions(+), 52 deletions(-)
> create mode 100644 Documentation/devicetree/bindings/mfd/ricoh,rn5t618.yaml
> delete mode 100644 Documentation/devicetree/bindings/mfd/rn5t618.txt
>
> diff --git a/Documentation/devicetree/bindings/mfd/ricoh,rn5t618.yaml b/Documentation/devicetree/bindings/mfd/ricoh,rn5t618.yaml
> new file mode 100644
> index 000000000000..9596dde7a69a
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/mfd/ricoh,rn5t618.yaml
> @@ -0,0 +1,113 @@
> +# SPDX-License-Identifier: GPL-2.0
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/mfd/ricoh,rn5t618.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Ricoh RN5T567/RN5T618/RC5T619 PMIC
> +
> +maintainers:
> + - Andreas Kemnade <andreas@kemnade.info>
> +
> +description: |
> + Ricoh RN5T567/RN5T618/RC5T619 is a power management IC family which
> + integrates 3 to 5 step-down DCDC converters, 7 to 10 low-dropout regulators,
> + GPIOs, and a watchdog timer. It can be controlled through an I2C interface.
> + The RN5T618/RC5T619 provides additionally a Li-ion battery charger,
> + fuel gauge, and an ADC.
> + The RC5T619 additionnally includes USB charger detection and an RTC.
> +
> +allOf:
> + - if:
> + properties:
> + compatible:
> + contains:
> + const: ricoh,rn5t567
> + then:
> + properties:
> + regulators:
> + patternProperties:
> + "^(DCDC[1-4]|LDO[1-5]|LDORTC[12])$":
> + $ref: ../regulator/regulator.yaml
> + additionalProperties: false
> + - if:
> + properties:
> + compatible:
> + contains:
> + const: ricoh,rn5t618
> + then:
> + properties:
> + regulators:
> + patternProperties:
> + "^(DCDC[1-3]|LDO[1-5]|LDORTC[12])$":
> + $ref: ../regulator/regulator.yaml
> + additionalProperties: false
> + - if:
> + properties:
> + compatible:
> + contains:
> + const: ricoh,rc5t619
> + then:
> + properties:
> + regulators:
> + patternProperties:
> + "^(DCDC[1-5]|LDO[1-9]|LDO10|LDORTC[12])$":
> + $ref: ../regulator/regulator.yaml
> + additionalProperties: false
I prefer under 'regulators' below, you have all possible regulator
names:
patternProperties:
"^(DCDC[1-5]|LDO[1-9]|LDO10|LDORTC[12])$":
$ref: ../regulator/regulator.yaml
and then above you just need to restrict the possible names:
regulators:
propertyNames:
pattern: "^(DCDC[1-3]|LDO[1-5]|LDORTC[12])$"
(propertyNames schema is applied to all an object's properties and you
don't need additionalProperties here.)
> +properties:
> + compatible:
> + enum:
> + - ricoh,rn5t567
> + - ricoh,rn5t618
> + - ricoh,rc5t619
> +
> + reg:
> + maxItems: 1
> +
> + interrupts:
> + maxItems: 1
> + description: |
> + See Documentation/devicetree/bindings/interrupt-controller/interrupts.txt
Drop the description.
> +
> + system-power-controller:
> + type: boolean
> + description: |
> + See Documentation/devicetree/bindings/power/power-controller.txt
> +
> + regulators:
> + type: object
> +
> +additionalProperties: false
> +
> +required:
> + - compatible
> + - reg
> +
> +examples:
> + - |
> + #include <dt-bindings/interrupt-controller/irq.h>
> + i2c {
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + pmic@32 {
> + compatible = "ricoh,rn5t618";
> + reg = <0x32>;
> + interrupt-parent = <&gpio5>;
> + interrupts = <11 IRQ_TYPE_EDGE_FALLING>;
> + system-power-controller;
> +
> + regulators {
> + DCDC1 {
> + regulator-min-microvolt = <1050000>;
> + regulator-max-microvolt = <1050000>;
> + };
> +
> + DCDC2 {
> + regulator-min-microvolt = <1175000>;
> + regulator-max-microvolt = <1175000>;
> + };
> + };
> + };
> + };
> diff --git a/Documentation/devicetree/bindings/mfd/rn5t618.txt b/Documentation/devicetree/bindings/mfd/rn5t618.txt
> deleted file mode 100644
> index 16778ea00dbc..000000000000
> --- a/Documentation/devicetree/bindings/mfd/rn5t618.txt
> +++ /dev/null
> @@ -1,52 +0,0 @@
> -* Ricoh RN5T567/RN5T618 PMIC
> -
> -Ricoh RN5T567/RN5T618/RC5T619 is a power management IC family which
> -integrates 3 to 5 step-down DCDC converters, 7 to 10 low-dropout regulators,
> -GPIOs, and a watchdog timer. It can be controlled through an I2C interface.
> -The RN5T618/RC5T619 provides additionally a Li-ion battery charger,
> -fuel gauge, and an ADC.
> -The RC5T619 additionnally includes USB charger detection and an RTC.
> -
> -Required properties:
> - - compatible: must be one of
> - "ricoh,rn5t567"
> - "ricoh,rn5t618"
> - "ricoh,rc5t619"
> - - reg: the I2C slave address of the device
> -
> -Optional properties:
> - - interrupts: interrupt mapping for IRQ
> - See Documentation/devicetree/bindings/interrupt-controller/interrupts.txt
> - - system-power-controller:
> - See Documentation/devicetree/bindings/power/power-controller.txt
> -
> -Sub-nodes:
> - - regulators: the node is required if the regulator functionality is
> - needed. The valid regulator names are: DCDC1, DCDC2, DCDC3, DCDC4
> - (RN5T567/RC5T619), LDO1, LDO2, LDO3, LDO4, LDO5, LDO6, LDO7, LDO8,
> - LDO9, LDO10, LDORTC1 and LDORTC2.
> - LDO7-10 are specific to RC5T619.
> - The common bindings for each individual regulator can be found in:
> - Documentation/devicetree/bindings/regulator/regulator.txt
> -
> -Example:
> -
> - pmic@32 {
> - compatible = "ricoh,rn5t618";
> - reg = <0x32>;
> - interrupt-parent = <&gpio5>;
> - interrupts = <11 IRQ_TYPE_EDGE_FALLING>;
> - system-power-controller;
> -
> - regulators {
> - DCDC1 {
> - regulator-min-microvolt = <1050000>;
> - regulator-max-microvolt = <1050000>;
> - };
> -
> - DCDC2 {
> - regulator-min-microvolt = <1175000>;
> - regulator-max-microvolt = <1175000>;
> - };
> - };
> - };
> --
> 2.20.1
>
next prev parent reply other threads:[~2020-09-15 17:15 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-09-08 20:13 [PATCH] dt-bindings: mfd: Convert rn5t618 to json-schema Andreas Kemnade
2020-09-15 17:11 ` Rob Herring [this message]
2020-09-15 19:49 ` Andreas Kemnade
2020-09-15 22:55 ` Rob Herring
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=20200915171152.GA2124960@bogus \
--to=robh@kernel.org \
--cc=andreas@kemnade.info \
--cc=b.galvani@gmail.com \
--cc=devicetree@vger.kernel.org \
--cc=lee.jones@linaro.org \
--cc=linux-kernel@vger.kernel.org \
--cc=stefan@agner.ch \
/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.