[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20260206-tricky-funky-bison-ffafa3@quoll>
Date: Fri, 6 Feb 2026 09:09:02 +0100
From: Krzysztof Kozlowski <krzk@...nel.org>
To: Manaf Meethalavalappu Pallikunhi <manaf.pallikunhi@....qualcomm.com>
Cc: Guenter Roeck <linux@...ck-us.net>, Rob Herring <robh@...nel.org>,
Krzysztof Kozlowski <krzk+dt@...nel.org>, Conor Dooley <conor+dt@...nel.org>,
Bjorn Andersson <andersson@...nel.org>, Konrad Dybcio <konradybcio@...nel.org>,
amit.kucheria@....qualcomm.com, Daniel Lezcano <daniel.lezcano@...aro.org>,
Gaurav Kohli <gaurav.kohli@....qualcomm.com>, linux-hwmon@...r.kernel.org, linux-arm-msm@...r.kernel.org,
devicetree@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH 1/4] dt-bindings: hwmon: Add qcom,bcl-hwmon yaml bindings
On Fri, Feb 06, 2026 at 02:44:05AM +0530, Manaf Meethalavalappu Pallikunhi wrote:
> Add devicetree binding documentation for Qualcomm PMIC Battery Current
Subject - You almost hit bingo of what not to do. You miss the third one.
When you hit the bingo, get in touch for a beer.
And before, read the docs, because this was repeated SO MANY TIMES.
> Limiting (BCL) hardware monitor. The BCL hardware provides monitoring
> and alarm functionality for battery overcurrent and battery/system
> under voltage conditions.
>
> Signed-off-by: Manaf Meethalavalappu Pallikunhi <manaf.pallikunhi@....qualcomm.com>
> ---
> .../devicetree/bindings/hwmon/qcom,bcl-hwmon.yaml | 128 +++++++++++++++++++++
> 1 file changed, 128 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/hwmon/qcom,bcl-hwmon.yaml b/Documentation/devicetree/bindings/hwmon/qcom,bcl-hwmon.yaml
> new file mode 100644
> index 000000000000..a0e8eaf13eec
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/hwmon/qcom,bcl-hwmon.yaml
> @@ -0,0 +1,128 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/hwmon/qcom,bcl-hwmon.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Qualcomm SPMI PMIC Battery Current Limiting (BCL) Hardware Monitor
> +
> +maintainers:
> + - Manaf Meethalavalappu Pallikunhi <manaf.pallikunhi@....qualcomm.com>
> +
> +description: |
Do not need '|' unless you need to preserve formatting.
> + SPMI PMIC Battery Current Limiting (BCL) hardware provides monitoring and
> + alarm functionality for battery overcurrent and battery or system under
> + voltage conditions. It monitors battery voltage and current, and
> + can trigger interrupts when configurable thresholds are exceeded.
> +
> +properties:
> + compatible:
> + oneOf:
> + - description: v1 based BCL
> + items:
> + - enum:
> + - qcom,pm7250b-bcl
> + - qcom,pm8250b-bcl
> + - const: qcom,bcl-v1
Drop all bcl fallbacks. Pointless, incorrect and misleading.
> +
> + - description: v2 based BCL
> + items:
> + - enum:
> + - qcom,pm8350b-bcl
> + - qcom,pm8350c-bcl
> + - const: qcom,bcl-v2
> +
> + - description: v3 bmx based BCL
> + items:
> + - enum:
> + - qcom,pm8550b-bcl
> + - qcom,pm7550ba-bcl
> + - const: qcom,bcl-v3-bmx
> +
> + - description: v3 core based BCL
> + items:
> + - enum:
> + - qcom,pm8550-bc0l
> + - qcom,pm7550-bcl
> + - const: qcom,bcl-v3-core
> +
> + - description: v3 wb based BCL
> + items:
> + - enum:
> + - qcom,pmw5100-bcl
> + - const: qcom,bcl-v3-wb
> +
> + - description: v4 bmx based BCL
> + items:
> + - enum:
> + - qcom,pmih010-bcl
> + - const: qcom,bcl-v4-bmx
> +
> + - description: v4 bmx with different scale based BCL
> + items:
> + - enum:
> + - qcom,pmv010-bcl
> + - const: qcom,bcl-v4-pmv010
> +
> + - description: v4 core based BCL
> + items:
> + - enum:
> + - qcom,pmh010-bcl
> + - const: qcom,bcl-v4-core
> +
> + - description: v4 wb based BCL
> + items:
> + - enum:
> + - qcom,pmw6100-bcl
> + - const: qcom,bcl-v4-wb
I really do not get what you are expressing here but all this is wrong.
> +
> + reg:
> + maxItems: 1
> + description: BCL base address in the SPMI PMIC register map
Bus defines it. Drop descrip=tion.
> +
> + interrupts:
> + minItems: 2
Drop.
> + maxItems: 2
> + description:
> + BCL alarm interrupts for different threshold levels
Drop
> +
> + interrupt-names:
> + items:
> + - const: bcl-max-min
> + - const: bcl-critical
Drop bcl
> +
> + overcurrent-thresholds-milliamp:
> + description:
> + Current thresholds in milliamperes for the two configurable current
> + alarm levels (max and critical). These values are used to override
> + default thresholds if a platform has different battery ocp specification.
> + $ref: /schemas/types.yaml#/definitions/uint32-array
No, please read basic guides or presentations about DT bindings. The
suffix already defines this.
> + minItems: 2
> + maxItems: 2
> +
> +required:
> + - compatible
> + - reg
> + - interrupts
> + - interrupt-names
> +
> +unevaluatedProperties: false
You did not bother to read the docs prior to posting this.
You are supposed to do internal review first. Did it happen? I checked
and cannot find anything. It's not acceptable to use the community
instead of your internal review.
NAK
> +
> +examples:
> + - |
> + #include <dt-bindings/interrupt-controller/irq.h>
> +
> + pmic {
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + bcl@...0 {
Node names should be generic. See also an explanation and list of
examples (not exhaustive) in DT specification:
https://devicetree-specification.readthedocs.io/en/latest/chapter2-devicetree-basics.html#generic-names-recommendation
If you cannot find a name matching your device, please check in kernel
sources for similar cases or you can grow the spec (via pull request to
DT spec repo).
Best regards,
Krzysztof
Powered by blists - more mailing lists