All of lore.kernel.org
 help / color / mirror / Atom feed
From: Rob Herring <robh@kernel.org>
To: Chris Morgan <macroalpha82@gmail.com>
Cc: linux-pm@vger.kernel.org, linux-rockchip@lists.infradead.org,
	devicetree@vger.kernel.org, broonie@kernel.org,
	lgirdwood@gmail.com, sre@kernel.org, heiko@sntech.de,
	conor+dt@kernel.org, krzk+dt@kernel.org, lee@kernel.org,
	Chris Morgan <macromorgan@hotmail.com>
Subject: Re: [RFC 1/5] dt-bindings: mfd: ti,bq25703a: Add TI BQ25703A Charger
Date: Fri, 30 Aug 2024 11:30:42 -0500	[thread overview]
Message-ID: <20240830163042.GA319200-robh@kernel.org> (raw)
In-Reply-To: <20240829213102.448047-2-macroalpha82@gmail.com>

On Thu, Aug 29, 2024 at 04:30:58PM -0500, Chris Morgan wrote:
> From: Chris Morgan <macromorgan@hotmail.com>
> 
> Document the Texas instruments BQ25703 series of charger managers/
> buck/boost regulators.
> 
> Signed-off-by: Chris Morgan <macromorgan@hotmail.com>
> ---
>  .../devicetree/bindings/mfd/ti,bq25703a.yaml  | 143 ++++++++++++++++++
>  1 file changed, 143 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/mfd/ti,bq25703a.yaml
> 
> diff --git a/Documentation/devicetree/bindings/mfd/ti,bq25703a.yaml b/Documentation/devicetree/bindings/mfd/ti,bq25703a.yaml
> new file mode 100644
> index 000000000000..e555aa60f9ad
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/mfd/ti,bq25703a.yaml
> @@ -0,0 +1,143 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/mfd/ti,bq25703a.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: BQ25703 Charger Manager/Buck/Boost Converter

BQ25703A?

> +
> +maintainers:
> +  - Chris Morgan <macromorgan@hotmail.com>
> +
> +properties:
> +  compatible:
> +    const: ti,bq25703a
> +
> +  reg:
> +    const: 0x6b
> +    description: I2C slave address

Drop description.

> +
> +  interrupts:
> +    maxItems: 1
> +
> +  power-supplies:
> +    description:
> +      phandle of the power supply that provides input power
> +    $ref: /schemas/types.yaml#/definitions/phandle

Already has a type. You need a reference to power-supply.yaml at the 
top level and 'maxItems: 1' here.

> +
> +  ti,charge-current:
> +    description:
> +      maximum current to apply to charging the battery
> +    minimum: 0
> +    maximum: 8128000
> +    $ref: /schemas/types.yaml#/definitions/uint32

I guess this is copied from other TI parts, but really this should move 
to a property with a unit suffix. Or these shared properties moved to a 
shared schema so we aren't redefining the type multiple times.

Same for the others here.

> +
> +  ti,current-limit:
> +    description:
> +      maximum total input current allowed
> +    minimum: 50000
> +    maximum: 6400000
> +    default: 3250000
> +    $ref: /schemas/types.yaml#/definitions/uint32
> +
> +  ti,max-charge-voltage:
> +    description:
> +      maximum voltage to apply to charging the battery
> +    minimum: 1024000
> +    maximum: 19200000
> +    $ref: /schemas/types.yaml#/definitions/uint32
> +
> +  ti,minimum-sys-voltage:
> +    description:
> +      minimum system voltage while on battery power, with default value
> +      depending based on cell configuration
> +    minimum: 1024000
> +    maximum: 16128000
> +    default:
> +      enum: [3584000, 6144000, 9216000, 16128000]
> +    $ref: /schemas/types.yaml#/definitions/uint32
> +
> +  regulators:
> +    type: object
> +    additionalProperties: false
> +    description:
> +      Boost converter regulator output of bq257xx

Doesn't this apply to "usb-otg-vbus"?

Really, only one regulator, so you don't need a container node.

> +
> +    properties:
> +      "usb-otg-vbus":

Don't need quotes.

> +        type: object
> +        $ref: /schemas/regulator/regulator.yaml
> +
> +        properties:
> +          regulator-name: true
> +          regulator-min-microamp:
> +            minimum: 0
> +            maximum: 6350000
> +          regulator-max-microamp:
> +            minimum: 0
> +            maximum: 6350000
> +          regulator-min-microvolt:
> +            minimum: 4480000
> +            maximum: 20800000
> +          regulator-max-microvolt:
> +            minimum: 4480000
> +            maximum: 20800000
> +          enable-gpios:
> +            description:
> +              The BQ25703 may require both a register write and a GPIO
> +              toggle to enable the boost regulator.
> +
> +        additionalProperties: true

Nope.

> +
> +        required:
> +          - regulator-name
> +          - regulator-min-microamp
> +          - regulator-max-microamp
> +          - regulator-min-microvolt
> +          - regulator-max-microvolt
> +
> +additionalProperties: false
> +
> +required:
> +  - compatible
> +  - reg
> +  - power-supplies
> +  - ti,charge-current
> +  - ti,current-limit
> +  - ti,max-charge-voltage
> +  - ti,minimum-sys-voltage
> +
> +examples:
> +  - |
> +    #include <dt-bindings/gpio/gpio.h>
> +    #include <dt-bindings/interrupt-controller/irq.h>
> +    #include <dt-bindings/pinctrl/rockchip.h>
> +    i2c {
> +        #address-cells = <1>;
> +        #size-cells = <0>;
> +
> +        bq25703: bq25703@6b {

charger@6b

> +            compatible = "ti,bq25703a";
> +            reg = <0x6b>;
> +            interrupt-parent = <&gpio0>;
> +            interrupts = <RK_PD5 IRQ_TYPE_LEVEL_LOW>;
> +            power-supplies = <&fusb302>;
> +            ti,charge-current = <2500000>;
> +            ti,current-limit = <5000000>;
> +            ti,max-charge-voltage = <8750000>;
> +            ti,minimum-sys-voltage = <7400000>;
> +
> +            regulators {
> +                usb_otg_vbus: usb-otg-vbus {
> +                    enable-gpios = <&gpio4 RK_PA6 GPIO_ACTIVE_HIGH>;
> +                    regulator-max-microamp = <960000>;
> +                    regulator-max-microvolt = <5088000>;
> +                    regulator-min-microamp = <512000>;
> +                    regulator-min-microvolt = <4992000>;
> +                    regulator-name = "usb_otg_vbus";
> +                };
> +            };
> +        };
> +    };
> +
> +...
> -- 
> 2.34.1
> 

WARNING: multiple messages have this Message-ID (diff)
From: Rob Herring <robh@kernel.org>
To: Chris Morgan <macroalpha82@gmail.com>
Cc: linux-pm@vger.kernel.org, linux-rockchip@lists.infradead.org,
	devicetree@vger.kernel.org, broonie@kernel.org,
	lgirdwood@gmail.com, sre@kernel.org, heiko@sntech.de,
	conor+dt@kernel.org, krzk+dt@kernel.org, lee@kernel.org,
	Chris Morgan <macromorgan@hotmail.com>
Subject: Re: [RFC 1/5] dt-bindings: mfd: ti,bq25703a: Add TI BQ25703A Charger
Date: Fri, 30 Aug 2024 11:30:42 -0500	[thread overview]
Message-ID: <20240830163042.GA319200-robh@kernel.org> (raw)
In-Reply-To: <20240829213102.448047-2-macroalpha82@gmail.com>

On Thu, Aug 29, 2024 at 04:30:58PM -0500, Chris Morgan wrote:
> From: Chris Morgan <macromorgan@hotmail.com>
> 
> Document the Texas instruments BQ25703 series of charger managers/
> buck/boost regulators.
> 
> Signed-off-by: Chris Morgan <macromorgan@hotmail.com>
> ---
>  .../devicetree/bindings/mfd/ti,bq25703a.yaml  | 143 ++++++++++++++++++
>  1 file changed, 143 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/mfd/ti,bq25703a.yaml
> 
> diff --git a/Documentation/devicetree/bindings/mfd/ti,bq25703a.yaml b/Documentation/devicetree/bindings/mfd/ti,bq25703a.yaml
> new file mode 100644
> index 000000000000..e555aa60f9ad
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/mfd/ti,bq25703a.yaml
> @@ -0,0 +1,143 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/mfd/ti,bq25703a.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: BQ25703 Charger Manager/Buck/Boost Converter

BQ25703A?

> +
> +maintainers:
> +  - Chris Morgan <macromorgan@hotmail.com>
> +
> +properties:
> +  compatible:
> +    const: ti,bq25703a
> +
> +  reg:
> +    const: 0x6b
> +    description: I2C slave address

Drop description.

> +
> +  interrupts:
> +    maxItems: 1
> +
> +  power-supplies:
> +    description:
> +      phandle of the power supply that provides input power
> +    $ref: /schemas/types.yaml#/definitions/phandle

Already has a type. You need a reference to power-supply.yaml at the 
top level and 'maxItems: 1' here.

> +
> +  ti,charge-current:
> +    description:
> +      maximum current to apply to charging the battery
> +    minimum: 0
> +    maximum: 8128000
> +    $ref: /schemas/types.yaml#/definitions/uint32

I guess this is copied from other TI parts, but really this should move 
to a property with a unit suffix. Or these shared properties moved to a 
shared schema so we aren't redefining the type multiple times.

Same for the others here.

> +
> +  ti,current-limit:
> +    description:
> +      maximum total input current allowed
> +    minimum: 50000
> +    maximum: 6400000
> +    default: 3250000
> +    $ref: /schemas/types.yaml#/definitions/uint32
> +
> +  ti,max-charge-voltage:
> +    description:
> +      maximum voltage to apply to charging the battery
> +    minimum: 1024000
> +    maximum: 19200000
> +    $ref: /schemas/types.yaml#/definitions/uint32
> +
> +  ti,minimum-sys-voltage:
> +    description:
> +      minimum system voltage while on battery power, with default value
> +      depending based on cell configuration
> +    minimum: 1024000
> +    maximum: 16128000
> +    default:
> +      enum: [3584000, 6144000, 9216000, 16128000]
> +    $ref: /schemas/types.yaml#/definitions/uint32
> +
> +  regulators:
> +    type: object
> +    additionalProperties: false
> +    description:
> +      Boost converter regulator output of bq257xx

Doesn't this apply to "usb-otg-vbus"?

Really, only one regulator, so you don't need a container node.

> +
> +    properties:
> +      "usb-otg-vbus":

Don't need quotes.

> +        type: object
> +        $ref: /schemas/regulator/regulator.yaml
> +
> +        properties:
> +          regulator-name: true
> +          regulator-min-microamp:
> +            minimum: 0
> +            maximum: 6350000
> +          regulator-max-microamp:
> +            minimum: 0
> +            maximum: 6350000
> +          regulator-min-microvolt:
> +            minimum: 4480000
> +            maximum: 20800000
> +          regulator-max-microvolt:
> +            minimum: 4480000
> +            maximum: 20800000
> +          enable-gpios:
> +            description:
> +              The BQ25703 may require both a register write and a GPIO
> +              toggle to enable the boost regulator.
> +
> +        additionalProperties: true

Nope.

> +
> +        required:
> +          - regulator-name
> +          - regulator-min-microamp
> +          - regulator-max-microamp
> +          - regulator-min-microvolt
> +          - regulator-max-microvolt
> +
> +additionalProperties: false
> +
> +required:
> +  - compatible
> +  - reg
> +  - power-supplies
> +  - ti,charge-current
> +  - ti,current-limit
> +  - ti,max-charge-voltage
> +  - ti,minimum-sys-voltage
> +
> +examples:
> +  - |
> +    #include <dt-bindings/gpio/gpio.h>
> +    #include <dt-bindings/interrupt-controller/irq.h>
> +    #include <dt-bindings/pinctrl/rockchip.h>
> +    i2c {
> +        #address-cells = <1>;
> +        #size-cells = <0>;
> +
> +        bq25703: bq25703@6b {

charger@6b

> +            compatible = "ti,bq25703a";
> +            reg = <0x6b>;
> +            interrupt-parent = <&gpio0>;
> +            interrupts = <RK_PD5 IRQ_TYPE_LEVEL_LOW>;
> +            power-supplies = <&fusb302>;
> +            ti,charge-current = <2500000>;
> +            ti,current-limit = <5000000>;
> +            ti,max-charge-voltage = <8750000>;
> +            ti,minimum-sys-voltage = <7400000>;
> +
> +            regulators {
> +                usb_otg_vbus: usb-otg-vbus {
> +                    enable-gpios = <&gpio4 RK_PA6 GPIO_ACTIVE_HIGH>;
> +                    regulator-max-microamp = <960000>;
> +                    regulator-max-microvolt = <5088000>;
> +                    regulator-min-microamp = <512000>;
> +                    regulator-min-microvolt = <4992000>;
> +                    regulator-name = "usb_otg_vbus";
> +                };
> +            };
> +        };
> +    };
> +
> +...
> -- 
> 2.34.1
> 

_______________________________________________
Linux-rockchip mailing list
Linux-rockchip@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-rockchip

  reply	other threads:[~2024-08-30 16:30 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-08-29 21:30 [RFC 0/5] Add Texas Instruments BQ25703 Charger Chris Morgan
2024-08-29 21:30 ` Chris Morgan
2024-08-29 21:30 ` [RFC 1/5] dt-bindings: mfd: ti,bq25703a: Add TI BQ25703A Charger Chris Morgan
2024-08-29 21:30   ` Chris Morgan
2024-08-30 16:30   ` Rob Herring [this message]
2024-08-30 16:30     ` Rob Herring
2024-08-30 20:52     ` Chris Morgan
2024-08-30 20:52       ` Chris Morgan
2024-09-16  9:42       ` Sebastian Reichel
2024-09-16  9:42         ` Sebastian Reichel
2024-09-16  9:33     ` Sebastian Reichel
2024-09-16  9:33       ` Sebastian Reichel
2024-08-29 21:30 ` [RFC 2/5] mfd: bq257xx: Add support for BQ25703 core driver Chris Morgan
2024-08-29 21:30   ` Chris Morgan
2024-09-03 15:25   ` Lee Jones
2024-09-03 15:25     ` Lee Jones
2024-08-29 21:31 ` [RFC 3/5] power: supply: bq257xx: Add support for BQ257XX charger manager Chris Morgan
2024-08-29 21:31   ` Chris Morgan
2024-09-16 10:49   ` Sebastian Reichel
2024-09-16 10:49     ` Sebastian Reichel
2024-08-29 21:31 ` [RFC 4/5] regulator: bq257xx: Add bq257xx boost regulator driver Chris Morgan
2024-08-29 21:31   ` Chris Morgan
2024-08-29 21:31 ` [RFC 5/5] arm64: dts: rockchip: Add USB and charger to Gameforce Ace Chris Morgan
2024-08-29 21:31   ` Chris Morgan
2024-08-31 10:39   ` Krzysztof Kozlowski
2024-08-31 10:39     ` Krzysztof Kozlowski

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=20240830163042.GA319200-robh@kernel.org \
    --to=robh@kernel.org \
    --cc=broonie@kernel.org \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=heiko@sntech.de \
    --cc=krzk+dt@kernel.org \
    --cc=lee@kernel.org \
    --cc=lgirdwood@gmail.com \
    --cc=linux-pm@vger.kernel.org \
    --cc=linux-rockchip@lists.infradead.org \
    --cc=macroalpha82@gmail.com \
    --cc=macromorgan@hotmail.com \
    --cc=sre@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 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.