Re: [PATCH V15 2/4] dt-bindings: pwm: add IPQ6018 binding

From: Rob Herring
Date: Fri Oct 20 2023 - 11:15:26 EST


On Wed, Oct 18, 2023 at 3:46 PM Uwe Kleine-König
<u.kleine-koenig@xxxxxxxxxxxxxx> wrote:
>
> Hello,
>
> On Thu, Oct 05, 2023 at 09:35:48PM +0530, Devi Priya wrote:
> > DT binding for the PWM block in Qualcomm IPQ6018 SoC.
> >
> > Reviewed-by: Bjorn Andersson <bjorn.andersson@xxxxxxxxxx>
> > Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxx>
> > Co-developed-by: Baruch Siach <baruch.siach@xxxxxxxxx>
> > Signed-off-by: Baruch Siach <baruch.siach@xxxxxxxxx>
> > Signed-off-by: Devi Priya <quic_devipriy@xxxxxxxxxxx>
> > ---
> > v15:
> >
> > No change
> >
> > v14:
> >
> > Picked up the R-b tag
> >
> > v13:
> >
> > Updated the file name to match the compatible
> >
> > Sorted the properties and updated the order in the required field
> >
> > Dropped the syscon node from examples
> >
> > v12:
> >
> > Picked up the R-b tag
> >
> > v11:
> >
> > No change
> >
> > v10:
> >
> > No change
> >
> > v9:
> >
> > Add 'ranges' property to example (Rob)
> >
> > Drop label in example (Rob)
> >
> > v8:
> >
> > Add size cell to 'reg' (Rob)
> >
> > v7:
> >
> > Use 'reg' instead of 'offset' (Rob)
> >
> > Drop 'clock-names' and 'assigned-clock*' (Bjorn)
> >
> > Use single cell address/size in example node (Bjorn)
> >
> > Move '#pwm-cells' lower in example node (Bjorn)
> >
> > List 'reg' as required
> >
> > v6:
> >
> > Device node is child of TCSR; remove phandle (Rob Herring)
> >
> > Add assigned-clocks/assigned-clock-rates (Uwe Kleine-König)
> >
> > v5: Use qcom,pwm-regs for phandle instead of direct regs (Bjorn
> > Andersson, Kathiravan T)
> >
> > v4: Update the binding example node as well (Rob Herring's bot)
> >
> > v3: s/qcom,pwm-ipq6018/qcom,ipq6018-pwm/ (Rob Herring)
> >
> > v2: Make #pwm-cells const (Rob Herring)
> >
> > .../bindings/pwm/qcom,ipq6018-pwm.yaml | 45 +++++++++++++++++++
> > 1 file changed, 45 insertions(+)
> > create mode 100644 Documentation/devicetree/bindings/pwm/qcom,ipq6018-pwm.yaml
> >
> > diff --git a/Documentation/devicetree/bindings/pwm/qcom,ipq6018-pwm.yaml b/Documentation/devicetree/bindings/pwm/qcom,ipq6018-pwm.yaml
> > new file mode 100644
> > index 000000000000..6d0d7ed271f7
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/pwm/qcom,ipq6018-pwm.yaml
> > @@ -0,0 +1,45 @@
> > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> > +%YAML 1.2
> > +---
> > +$id: http://devicetree.org/schemas/pwm/qcom,ipq6018-pwm.yaml#
> > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > +
> > +title: Qualcomm IPQ6018 PWM controller
> > +
> > +maintainers:
> > + - Baruch Siach <baruch@xxxxxxxxxx>
>
> Not being very fluent in dt and binding yaml I wonder if adding
>
> allOf:
> - $ref: pwm.yaml#
>
> would be beneficial?!

Not really because the only thing you pick up is #pwm-cells, but
that's still needed here since that varies by binding. A reference
generally becomes useful when there are child nodes (e.g. a bus
binding) or multiple properties.

> > +properties:
> > + compatible:
> > + const: qcom,ipq6018-pwm
> > +
> > + reg:
> > + description: Offset of PWM register in the TCSR block.
> > + maxItems: 1
> > +
> > + clocks:
> > + maxItems: 1
> > +
> > + "#pwm-cells":
> > + const: 2
>
> The driver only supports normal polarity. Is this a shortcoming of the
> driver, or is the hardware incapable to do that, too?
>
> If it's only the former I'd want #pwm-cells = <3> here. For ease of use
> I'd not oppose if you pick #pwm-cells = <3> even if the hardware can
> only do normal polarity.

Devi, Can we get an answer here soon.

The MFD part has been applied and it references this schema causing
warnings. So this needs to land or MFD schema reverted.

Rob