Re: [PATCH] dt-bindings: iio: afe: current-sense-shunt: add io-channel-cells

From: Peter Rosin
Date: Fri May 07 2021 - 18:48:55 EST


Hi!

On 2021-05-06 17:06, Krzysztof Kozlowski wrote:
> The current-sense-shunt is an IIO provider thus can be referenced by IIO
> consumers (via "io-channels" property in consumer device node).
> Such provider is required to describe number of cells used in phandle
> lookup with "io-channel-cells" property. This also fixes dtbs_check
> warnings like:
>
> arch/arm/boot/dts/s5pv210-fascinate4g.dt.yaml: current-sense-shunt:
> '#io-channel-cells' does not match any of the regexes: 'pinctrl-[0-9]+'
>
> Fixes: ce66e52b6c16 ("dt-bindings:iio:afe:current-sense-shunt: txt to yaml conversion.")
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxxxxx>
> ---
> .../devicetree/bindings/iio/afe/current-sense-shunt.yaml | 5 +++++
> 1 file changed, 5 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/iio/afe/current-sense-shunt.yaml b/Documentation/devicetree/bindings/iio/afe/current-sense-shunt.yaml
> index 90439a8dc785..05166d8a3124 100644
> --- a/Documentation/devicetree/bindings/iio/afe/current-sense-shunt.yaml
> +++ b/Documentation/devicetree/bindings/iio/afe/current-sense-shunt.yaml
> @@ -24,12 +24,16 @@ properties:
> description: |
> Channel node of a voltage io-channel.
>
> + "#io-channel-cells":
> + const: 0
> +
> shunt-resistor-micro-ohms:
> description: The shunt resistance.
>
> required:
> - compatible
> - io-channels
> + - "#io-channel-cells"
> - shunt-resistor-micro-ohms

I know I'm listed as maintainer and all, but I have not kept up with the yaml
conversion. Sorry. So, given that I might very well fundamentally misunderstand
something, it does not sound correct that #io-channel-cells is now "required".
I regard it as optional, and only needed if some other in-kernel driver is
consuming the sensed current. What am I missing?

Also, whatever is done in this binding should preferably also be done in the
two "sister" afe bindings, i.e. current-sense-amplifier and voltage-divider.

Cheers,
Peter

> additionalProperties: false
> @@ -57,6 +61,7 @@ examples:
> sysi {
> compatible = "current-sense-shunt";
> io-channels = <&tiadc 0>;
> + #io-channel-cells = <0>;
>
> /* Divide the voltage by 3300000/1000000 (or 3.3) for the current. */
> shunt-resistor-micro-ohms = <3300000>;
>