2023-09-17 01:55:44

by Nikita Travkin

[permalink] [raw]
Subject: [PATCH 1/3] dt-bindings: mfd: qcom,spmi-pmic: Add pm8916 vm-bms and lbc

PM8916 (and probably some other similar pmics) have hardware blocks for
battery monitoring and charging. Add patterns for respecive nodes so the
dt for those blocks can be validated properly.

Signed-off-by: Nikita Travkin <[email protected]>
---
Schemas for those devices were added in [1].

[1] https://lore.kernel.org/r/[email protected]
---
Documentation/devicetree/bindings/mfd/qcom,spmi-pmic.yaml | 6 ++++++
1 file changed, 6 insertions(+)

diff --git a/Documentation/devicetree/bindings/mfd/qcom,spmi-pmic.yaml b/Documentation/devicetree/bindings/mfd/qcom,spmi-pmic.yaml
index 9f03436b1cdc..8bcd76748faa 100644
--- a/Documentation/devicetree/bindings/mfd/qcom,spmi-pmic.yaml
+++ b/Documentation/devicetree/bindings/mfd/qcom,spmi-pmic.yaml
@@ -133,9 +133,15 @@ patternProperties:
type: object
$ref: /schemas/sound/qcom,pm8916-wcd-analog-codec.yaml#

+ "^battery@[0-9a-f]+$":
+ type: object
+ oneOf:
+ - $ref: /schemas/power/supply/qcom,pm8916-bms-vm.yaml#
+
"^charger@[0-9a-f]+$":
type: object
oneOf:
+ - $ref: /schemas/power/supply/qcom,pm8916-lbc.yaml#
- $ref: /schemas/power/supply/qcom,pm8941-charger.yaml#
- $ref: /schemas/power/supply/qcom,pm8941-coincell.yaml#
- $ref: /schemas/power/supply/qcom,pmi8998-charger.yaml#

--
2.41.0


2023-09-17 08:36:47

by Nikita Travkin

[permalink] [raw]
Subject: Re: [PATCH 1/3] dt-bindings: mfd: qcom,spmi-pmic: Add pm8916 vm-bms and lbc

Krzysztof Kozlowski писал(а) 17.09.2023 12:58:
> On 16/09/2023 15:57, Nikita Travkin wrote:
>> PM8916 (and probably some other similar pmics) have hardware blocks for
>> battery monitoring and charging. Add patterns for respecive nodes so the
>
> typo: respective
>

Oops, will fix if we get to v2.

>> dt for those blocks can be validated properly.
>>
>> Signed-off-by: Nikita Travkin <[email protected]>
>> ---
>> Schemas for those devices were added in [1].
>
> "Dependency"
>

You are right, will try to word it better next time.

>>
>> [1] https://lore.kernel.org/r/[email protected]
>> ---
>> Documentation/devicetree/bindings/mfd/qcom,spmi-pmic.yaml | 6 ++++++
>> 1 file changed, 6 insertions(+)
>>
>> diff --git a/Documentation/devicetree/bindings/mfd/qcom,spmi-pmic.yaml b/Documentation/devicetree/bindings/mfd/qcom,spmi-pmic.yaml
>> index 9f03436b1cdc..8bcd76748faa 100644
>> --- a/Documentation/devicetree/bindings/mfd/qcom,spmi-pmic.yaml
>> +++ b/Documentation/devicetree/bindings/mfd/qcom,spmi-pmic.yaml
>> @@ -133,9 +133,15 @@ patternProperties:
>> type: object
>> $ref: /schemas/sound/qcom,pm8916-wcd-analog-codec.yaml#
>>
>> + "^battery@[0-9a-f]+$":
>> + type: object
>> + oneOf:
>> + - $ref: /schemas/power/supply/qcom,pm8916-bms-vm.yaml#
>
> That's just ref, so no need for oneOf... unless you already think this
> will grow with different schemas like the charger below?
>

Yes, I think some other PMICs have different battery/fuel-gauge
blocks too so I'd like to have some room for expansion here.

Thanks for the review!
Nikita

>> +
>> "^charger@[0-9a-f]+$":
>> type: object
>> oneOf:
>> + - $ref: /schemas/power/supply/qcom,pm8916-lbc.yaml#
>> - $ref: /schemas/power/supply/qcom,pm8941-charger.yaml#
>> - $ref: /schemas/power/supply/qcom,pm8941-coincell.yaml#
>> - $ref: /schemas/power/supply/qcom,pmi8998-charger.yaml#
>>
>
> Best regards,
> Krzysztof

2023-09-17 12:17:51

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: [PATCH 1/3] dt-bindings: mfd: qcom,spmi-pmic: Add pm8916 vm-bms and lbc

On 17/09/2023 10:54, Nikita Travkin wrote:

>>>>> + "^battery@[0-9a-f]+$":
>>>>> + type: object
>>>>> + oneOf:
>>>>> + - $ref: /schemas/power/supply/qcom,pm8916-bms-vm.yaml#
>>>>
>>>> That's just ref, so no need for oneOf... unless you already think this
>>>> will grow with different schemas like the charger below?
>>>>
>>>
>>> Yes, I think some other PMICs have different battery/fuel-gauge
>>> blocks too so I'd like to have some room for expansion here.
>>
>> There is always room. Which other device will have different battery
>> charger?
>>
>
> I know of non-"VM" BMS block in PM8226. It's used on some Nokia
> devices that people were working on so I expect it to appear in
> the future.
>
> There is also some BMS block in more modern PM6150 that I've
> seen being looked at by people interested in bringing sm7125
> phones upstream.
>
> Both of those, to my knowledge, are completely different from
> this VM-BMS block, which I believe was present in the generation
> of pm8916, pm8909 and was abandoned again shortly after...

OK, sounds good.

Best regards,
Krzysztof

2023-09-17 13:51:48

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: [PATCH 1/3] dt-bindings: mfd: qcom,spmi-pmic: Add pm8916 vm-bms and lbc

On 17/09/2023 10:26, Nikita Travkin wrote:
> Krzysztof Kozlowski писал(а) 17.09.2023 12:58:
>> On 16/09/2023 15:57, Nikita Travkin wrote:
>>> PM8916 (and probably some other similar pmics) have hardware blocks for
>>> battery monitoring and charging. Add patterns for respecive nodes so the
>>
>> typo: respective
>>
>
> Oops, will fix if we get to v2.
>
>>> dt for those blocks can be validated properly.
>>>
>>> Signed-off-by: Nikita Travkin <[email protected]>
>>> ---
>>> Schemas for those devices were added in [1].
>>
>> "Dependency"
>>
>
> You are right, will try to word it better next time.
>
>>>
>>> [1] https://lore.kernel.org/r/[email protected]
>>> ---
>>> Documentation/devicetree/bindings/mfd/qcom,spmi-pmic.yaml | 6 ++++++
>>> 1 file changed, 6 insertions(+)
>>>
>>> diff --git a/Documentation/devicetree/bindings/mfd/qcom,spmi-pmic.yaml b/Documentation/devicetree/bindings/mfd/qcom,spmi-pmic.yaml
>>> index 9f03436b1cdc..8bcd76748faa 100644
>>> --- a/Documentation/devicetree/bindings/mfd/qcom,spmi-pmic.yaml
>>> +++ b/Documentation/devicetree/bindings/mfd/qcom,spmi-pmic.yaml
>>> @@ -133,9 +133,15 @@ patternProperties:
>>> type: object
>>> $ref: /schemas/sound/qcom,pm8916-wcd-analog-codec.yaml#
>>>
>>> + "^battery@[0-9a-f]+$":
>>> + type: object
>>> + oneOf:
>>> + - $ref: /schemas/power/supply/qcom,pm8916-bms-vm.yaml#
>>
>> That's just ref, so no need for oneOf... unless you already think this
>> will grow with different schemas like the charger below?
>>
>
> Yes, I think some other PMICs have different battery/fuel-gauge
> blocks too so I'd like to have some room for expansion here.

There is always room. Which other device will have different battery
charger?

Best regards,
Krzysztof

2023-09-17 15:39:35

by Nikita Travkin

[permalink] [raw]
Subject: Re: [PATCH 1/3] dt-bindings: mfd: qcom,spmi-pmic: Add pm8916 vm-bms and lbc

Krzysztof Kozlowski писал(а) 17.09.2023 13:32:
> On 17/09/2023 10:26, Nikita Travkin wrote:
>> Krzysztof Kozlowski писал(а) 17.09.2023 12:58:
>>> On 16/09/2023 15:57, Nikita Travkin wrote:
>>>> PM8916 (and probably some other similar pmics) have hardware blocks for
>>>> battery monitoring and charging. Add patterns for respecive nodes so the
>>>
>>> typo: respective
>>>
>>
>> Oops, will fix if we get to v2.
>>
>>>> dt for those blocks can be validated properly.
>>>>
>>>> Signed-off-by: Nikita Travkin <[email protected]>
>>>> ---
>>>> Schemas for those devices were added in [1].
>>>
>>> "Dependency"
>>>
>>
>> You are right, will try to word it better next time.
>>
>>>>
>>>> [1] https://lore.kernel.org/r/[email protected]
>>>> ---
>>>> Documentation/devicetree/bindings/mfd/qcom,spmi-pmic.yaml | 6 ++++++
>>>> 1 file changed, 6 insertions(+)
>>>>
>>>> diff --git a/Documentation/devicetree/bindings/mfd/qcom,spmi-pmic.yaml b/Documentation/devicetree/bindings/mfd/qcom,spmi-pmic.yaml
>>>> index 9f03436b1cdc..8bcd76748faa 100644
>>>> --- a/Documentation/devicetree/bindings/mfd/qcom,spmi-pmic.yaml
>>>> +++ b/Documentation/devicetree/bindings/mfd/qcom,spmi-pmic.yaml
>>>> @@ -133,9 +133,15 @@ patternProperties:
>>>> type: object
>>>> $ref: /schemas/sound/qcom,pm8916-wcd-analog-codec.yaml#
>>>>
>>>> + "^battery@[0-9a-f]+$":
>>>> + type: object
>>>> + oneOf:
>>>> + - $ref: /schemas/power/supply/qcom,pm8916-bms-vm.yaml#
>>>
>>> That's just ref, so no need for oneOf... unless you already think this
>>> will grow with different schemas like the charger below?
>>>
>>
>> Yes, I think some other PMICs have different battery/fuel-gauge
>> blocks too so I'd like to have some room for expansion here.
>
> There is always room. Which other device will have different battery
> charger?
>

I know of non-"VM" BMS block in PM8226. It's used on some Nokia
devices that people were working on so I expect it to appear in
the future.

There is also some BMS block in more modern PM6150 that I've
seen being looked at by people interested in bringing sm7125
phones upstream.

Both of those, to my knowledge, are completely different from
this VM-BMS block, which I believe was present in the generation
of pm8916, pm8909 and was abandoned again shortly after...

Nikita

> Best regards,
> Krzysztof

2023-09-17 17:41:07

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: [PATCH 1/3] dt-bindings: mfd: qcom,spmi-pmic: Add pm8916 vm-bms and lbc

On 16/09/2023 15:57, Nikita Travkin wrote:
> PM8916 (and probably some other similar pmics) have hardware blocks for
> battery monitoring and charging. Add patterns for respecive nodes so the

typo: respective

> dt for those blocks can be validated properly.
>
> Signed-off-by: Nikita Travkin <[email protected]>
> ---
> Schemas for those devices were added in [1].

"Dependency"

>
> [1] https://lore.kernel.org/r/[email protected]
> ---
> Documentation/devicetree/bindings/mfd/qcom,spmi-pmic.yaml | 6 ++++++
> 1 file changed, 6 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/mfd/qcom,spmi-pmic.yaml b/Documentation/devicetree/bindings/mfd/qcom,spmi-pmic.yaml
> index 9f03436b1cdc..8bcd76748faa 100644
> --- a/Documentation/devicetree/bindings/mfd/qcom,spmi-pmic.yaml
> +++ b/Documentation/devicetree/bindings/mfd/qcom,spmi-pmic.yaml
> @@ -133,9 +133,15 @@ patternProperties:
> type: object
> $ref: /schemas/sound/qcom,pm8916-wcd-analog-codec.yaml#
>
> + "^battery@[0-9a-f]+$":
> + type: object
> + oneOf:
> + - $ref: /schemas/power/supply/qcom,pm8916-bms-vm.yaml#

That's just ref, so no need for oneOf... unless you already think this
will grow with different schemas like the charger below?

> +
> "^charger@[0-9a-f]+$":
> type: object
> oneOf:
> + - $ref: /schemas/power/supply/qcom,pm8916-lbc.yaml#
> - $ref: /schemas/power/supply/qcom,pm8941-charger.yaml#
> - $ref: /schemas/power/supply/qcom,pm8941-coincell.yaml#
> - $ref: /schemas/power/supply/qcom,pmi8998-charger.yaml#
>

Best regards,
Krzysztof