dt-bindings: power: supply: expect specific type for monitored-battery

Message ID 20221028231255.565363-1-krzysztof.kozlowski@linaro.org
State New
Headers
Series dt-bindings: power: supply: expect specific type for monitored-battery |

Commit Message

Krzysztof Kozlowski Oct. 28, 2022, 11:12 p.m. UTC
  Core schema does not define type of monitored-battery, so the schemas
are expected to reference proper type.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
 Documentation/devicetree/bindings/power/supply/bq27xxx.yaml    | 2 +-
 .../devicetree/bindings/power/supply/ingenic,battery.yaml      | 1 +
 .../devicetree/bindings/power/supply/rohm,bd99954.yaml         | 1 +
 .../devicetree/bindings/power/supply/sc2731-charger.yaml       | 2 +-
 Documentation/devicetree/bindings/power/supply/sc27xx-fg.yaml  | 3 ++-
 5 files changed, 6 insertions(+), 3 deletions(-)
  

Comments

Rob Herring Oct. 31, 2022, 7:26 p.m. UTC | #1
On Fri, Oct 28, 2022 at 07:12:55PM -0400, Krzysztof Kozlowski wrote:
> Core schema does not define type of monitored-battery, so the schemas
> are expected to reference proper type.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> ---
>  Documentation/devicetree/bindings/power/supply/bq27xxx.yaml    | 2 +-
>  .../devicetree/bindings/power/supply/ingenic,battery.yaml      | 1 +
>  .../devicetree/bindings/power/supply/rohm,bd99954.yaml         | 1 +
>  .../devicetree/bindings/power/supply/sc2731-charger.yaml       | 2 +-
>  Documentation/devicetree/bindings/power/supply/sc27xx-fg.yaml  | 3 ++-
>  5 files changed, 6 insertions(+), 3 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/power/supply/bq27xxx.yaml b/Documentation/devicetree/bindings/power/supply/bq27xxx.yaml
> index 65fc6049efc1..b04c86ed0f58 100644
> --- a/Documentation/devicetree/bindings/power/supply/bq27xxx.yaml
> +++ b/Documentation/devicetree/bindings/power/supply/bq27xxx.yaml
> @@ -59,6 +59,7 @@ properties:
>      description: integer, I2C address of the fuel gauge.
>  
>    monitored-battery:
> +    $ref: /schemas/types.yaml#/definitions/phandle
>      description: |
>         phandle of battery characteristics node.
>         The fuel gauge uses the following battery properties:
> @@ -66,7 +67,6 @@ properties:
>         - charge-full-design-microamp-hours
>         - voltage-min-design-microvolt
>         Both or neither of the *-full-design-*-hours properties must be set.
> -       See Documentation/devicetree/bindings/power/supply/battery.yaml
>  
>    power-supplies: true
>  
> diff --git a/Documentation/devicetree/bindings/power/supply/ingenic,battery.yaml b/Documentation/devicetree/bindings/power/supply/ingenic,battery.yaml
> index 46527038bf22..8bdacc30e9d8 100644
> --- a/Documentation/devicetree/bindings/power/supply/ingenic,battery.yaml
> +++ b/Documentation/devicetree/bindings/power/supply/ingenic,battery.yaml
> @@ -27,6 +27,7 @@ properties:
>      const: battery
>  
>    monitored-battery:
> +    $ref: /schemas/types.yaml#/definitions/phandle

We should not have a type definition multiple times for the same 
property. We need to add a common schema defining the type instead.

Rob
  
Sebastian Reichel Oct. 31, 2022, 10:56 p.m. UTC | #2
Hi,

On Mon, Oct 31, 2022 at 02:26:17PM -0500, Rob Herring wrote:
> On Fri, Oct 28, 2022 at 07:12:55PM -0400, Krzysztof Kozlowski wrote:
> > Core schema does not define type of monitored-battery, so the schemas
> > are expected to reference proper type.
> > 
> > Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> > ---
> >  Documentation/devicetree/bindings/power/supply/bq27xxx.yaml    | 2 +-
> >  .../devicetree/bindings/power/supply/ingenic,battery.yaml      | 1 +
> >  .../devicetree/bindings/power/supply/rohm,bd99954.yaml         | 1 +
> >  .../devicetree/bindings/power/supply/sc2731-charger.yaml       | 2 +-
> >  Documentation/devicetree/bindings/power/supply/sc27xx-fg.yaml  | 3 ++-
> >  5 files changed, 6 insertions(+), 3 deletions(-)
> > 
> > diff --git a/Documentation/devicetree/bindings/power/supply/bq27xxx.yaml b/Documentation/devicetree/bindings/power/supply/bq27xxx.yaml
> > index 65fc6049efc1..b04c86ed0f58 100644
> > --- a/Documentation/devicetree/bindings/power/supply/bq27xxx.yaml
> > +++ b/Documentation/devicetree/bindings/power/supply/bq27xxx.yaml
> > @@ -59,6 +59,7 @@ properties:
> >      description: integer, I2C address of the fuel gauge.
> >  
> >    monitored-battery:
> > +    $ref: /schemas/types.yaml#/definitions/phandle
> >      description: |
> >         phandle of battery characteristics node.
> >         The fuel gauge uses the following battery properties:
> > @@ -66,7 +67,6 @@ properties:
> >         - charge-full-design-microamp-hours
> >         - voltage-min-design-microvolt
> >         Both or neither of the *-full-design-*-hours properties must be set.
> > -       See Documentation/devicetree/bindings/power/supply/battery.yaml
> >  
> >    power-supplies: true
> >  
> > diff --git a/Documentation/devicetree/bindings/power/supply/ingenic,battery.yaml b/Documentation/devicetree/bindings/power/supply/ingenic,battery.yaml
> > index 46527038bf22..8bdacc30e9d8 100644
> > --- a/Documentation/devicetree/bindings/power/supply/ingenic,battery.yaml
> > +++ b/Documentation/devicetree/bindings/power/supply/ingenic,battery.yaml
> > @@ -27,6 +27,7 @@ properties:
> >      const: battery
> >  
> >    monitored-battery:
> > +    $ref: /schemas/types.yaml#/definitions/phandle
> 
> We should not have a type definition multiple times for the same 
> property. We need to add a common schema defining the type instead.

I suppose monitored-battery should become part of
Documentation/devicetree/bindings/power/supply/power-supply.yaml

-- Sebastian
  
Krzysztof Kozlowski Nov. 2, 2022, 5:45 p.m. UTC | #3
On 31/10/2022 18:56, Sebastian Reichel wrote:
> Hi,
> 
> On Mon, Oct 31, 2022 at 02:26:17PM -0500, Rob Herring wrote:
>> On Fri, Oct 28, 2022 at 07:12:55PM -0400, Krzysztof Kozlowski wrote:
>>> Core schema does not define type of monitored-battery, so the schemas
>>> are expected to reference proper type.
>>>
>>> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
>>> ---
>>>  Documentation/devicetree/bindings/power/supply/bq27xxx.yaml    | 2 +-
>>>  .../devicetree/bindings/power/supply/ingenic,battery.yaml      | 1 +
>>>  .../devicetree/bindings/power/supply/rohm,bd99954.yaml         | 1 +
>>>  .../devicetree/bindings/power/supply/sc2731-charger.yaml       | 2 +-
>>>  Documentation/devicetree/bindings/power/supply/sc27xx-fg.yaml  | 3 ++-
>>>  5 files changed, 6 insertions(+), 3 deletions(-)
>>>
>>> diff --git a/Documentation/devicetree/bindings/power/supply/bq27xxx.yaml b/Documentation/devicetree/bindings/power/supply/bq27xxx.yaml
>>> index 65fc6049efc1..b04c86ed0f58 100644
>>> --- a/Documentation/devicetree/bindings/power/supply/bq27xxx.yaml
>>> +++ b/Documentation/devicetree/bindings/power/supply/bq27xxx.yaml
>>> @@ -59,6 +59,7 @@ properties:
>>>      description: integer, I2C address of the fuel gauge.
>>>  
>>>    monitored-battery:
>>> +    $ref: /schemas/types.yaml#/definitions/phandle
>>>      description: |
>>>         phandle of battery characteristics node.
>>>         The fuel gauge uses the following battery properties:
>>> @@ -66,7 +67,6 @@ properties:
>>>         - charge-full-design-microamp-hours
>>>         - voltage-min-design-microvolt
>>>         Both or neither of the *-full-design-*-hours properties must be set.
>>> -       See Documentation/devicetree/bindings/power/supply/battery.yaml
>>>  
>>>    power-supplies: true
>>>  
>>> diff --git a/Documentation/devicetree/bindings/power/supply/ingenic,battery.yaml b/Documentation/devicetree/bindings/power/supply/ingenic,battery.yaml
>>> index 46527038bf22..8bdacc30e9d8 100644
>>> --- a/Documentation/devicetree/bindings/power/supply/ingenic,battery.yaml
>>> +++ b/Documentation/devicetree/bindings/power/supply/ingenic,battery.yaml
>>> @@ -27,6 +27,7 @@ properties:
>>>      const: battery
>>>  
>>>    monitored-battery:
>>> +    $ref: /schemas/types.yaml#/definitions/phandle
>>
>> We should not have a type definition multiple times for the same 
>> property. We need to add a common schema defining the type instead.
> 
> I suppose monitored-battery should become part of
> Documentation/devicetree/bindings/power/supply/power-supply.yaml

I'll send a v2.

Best regards,
Krzysztof
  

Patch

diff --git a/Documentation/devicetree/bindings/power/supply/bq27xxx.yaml b/Documentation/devicetree/bindings/power/supply/bq27xxx.yaml
index 65fc6049efc1..b04c86ed0f58 100644
--- a/Documentation/devicetree/bindings/power/supply/bq27xxx.yaml
+++ b/Documentation/devicetree/bindings/power/supply/bq27xxx.yaml
@@ -59,6 +59,7 @@  properties:
     description: integer, I2C address of the fuel gauge.
 
   monitored-battery:
+    $ref: /schemas/types.yaml#/definitions/phandle
     description: |
        phandle of battery characteristics node.
        The fuel gauge uses the following battery properties:
@@ -66,7 +67,6 @@  properties:
        - charge-full-design-microamp-hours
        - voltage-min-design-microvolt
        Both or neither of the *-full-design-*-hours properties must be set.
-       See Documentation/devicetree/bindings/power/supply/battery.yaml
 
   power-supplies: true
 
diff --git a/Documentation/devicetree/bindings/power/supply/ingenic,battery.yaml b/Documentation/devicetree/bindings/power/supply/ingenic,battery.yaml
index 46527038bf22..8bdacc30e9d8 100644
--- a/Documentation/devicetree/bindings/power/supply/ingenic,battery.yaml
+++ b/Documentation/devicetree/bindings/power/supply/ingenic,battery.yaml
@@ -27,6 +27,7 @@  properties:
     const: battery
 
   monitored-battery:
+    $ref: /schemas/types.yaml#/definitions/phandle
     description: >
       phandle to a "simple-battery" compatible node.
 
diff --git a/Documentation/devicetree/bindings/power/supply/rohm,bd99954.yaml b/Documentation/devicetree/bindings/power/supply/rohm,bd99954.yaml
index 24b06957b4ca..ad97d0ac9438 100644
--- a/Documentation/devicetree/bindings/power/supply/rohm,bd99954.yaml
+++ b/Documentation/devicetree/bindings/power/supply/rohm,bd99954.yaml
@@ -121,6 +121,7 @@  properties:
   monitored-battery:
     description:
       phandle of battery characteristics devicetree node
+    $ref: /schemas/types.yaml#/definitions/phandle
 
   rohm,vsys-regulation-microvolt:
     description: system specific lower limit for system voltage.
diff --git a/Documentation/devicetree/bindings/power/supply/sc2731-charger.yaml b/Documentation/devicetree/bindings/power/supply/sc2731-charger.yaml
index eeb043f9bb4f..4a1ca7288a3b 100644
--- a/Documentation/devicetree/bindings/power/supply/sc2731-charger.yaml
+++ b/Documentation/devicetree/bindings/power/supply/sc2731-charger.yaml
@@ -24,11 +24,11 @@  properties:
     description: phandle to the USB phy
 
   monitored-battery:
+    $ref: /schemas/types.yaml#/definitions/phandle
     description: |
       The charger uses the following battery properties
       - charge-term-current-microamp: current for charge termination phase.
       - constant-charge-voltage-max-microvolt: maximum constant input voltage.
-      See Documentation/devicetree/bindings/power/supply/battery.yaml
 
 additionalProperties: false
 
diff --git a/Documentation/devicetree/bindings/power/supply/sc27xx-fg.yaml b/Documentation/devicetree/bindings/power/supply/sc27xx-fg.yaml
index d90a838a1744..8af5957800c0 100644
--- a/Documentation/devicetree/bindings/power/supply/sc27xx-fg.yaml
+++ b/Documentation/devicetree/bindings/power/supply/sc27xx-fg.yaml
@@ -47,7 +47,8 @@  properties:
   sprd,calib-resistance-micro-ohms:
     description: real resistance of coulomb counter chip in micro Ohms
 
-  monitored-battery: true
+  monitored-battery:
+    $ref: /schemas/types.yaml#/definitions/phandle
 
 required:
   - compatible