Re: [PATCH] dt-bindings: clk: qcom: Fix self-validation, split, and clean cruft

From: Doug Anderson
Date: Wed Jan 29 2020 - 18:31:42 EST


Hi,

On Wed, Jan 29, 2020 at 2:01 PM Rob Herring <robh+dt@xxxxxxxxxx> wrote:
>
> On Wed, Jan 29, 2020 at 3:23 PM Douglas Anderson <dianders@xxxxxxxxxxxx> wrote:
> >
> > The 'qcom,gcc.yaml' file failed self-validation (dt_binding_check)
> > because it required a property to be either (3 entries big),
> > (3 entries big), or (7 entries big), but not more than one of those
> > things. That didn't make a ton of sense.
> >
> > This patch splits all of the exceptional device trees (AKA those that
> > would have needed if/then/else rules) from qcom,gcc.yaml. It also
> > cleans up some cruft found while doing that.
> >
> > After this lands, this worked for me atop clk-next:
> > for f in \
> > Documentation/devicetree/bindings/clock/qcom,gcc-apq8064.yaml \
> > Documentation/devicetree/bindings/clock/qcom,gcc-ipq8074.yaml \
> > Documentation/devicetree/bindings/clock/qcom,gcc-msm8996.yaml \
> > Documentation/devicetree/bindings/clock/qcom,gcc-msm8998.yaml \
> > Documentation/devicetree/bindings/clock/qcom,gcc-qcs404.yaml \
> > Documentation/devicetree/bindings/clock/qcom,gcc-sc7180.yaml \
> > Documentation/devicetree/bindings/clock/qcom,gcc-sm8150.yaml \
> > Documentation/devicetree/bindings/clock/qcom,gcc.yaml; do \
> > ARCH=arm64 make dt_binding_check DT_SCHEMA_FILES=$f; \
> > ARCH=arm64 make dtbs_check DT_SCHEMA_FILES=$f; \
> > done
>
> Note that using DT_SCHEMA_FILES may hide some errors in examples as
> all other schemas (including the core ones) are not used for
> validation. So just 'make dt_binding_check' needs to pass (ignoring
> any other unrelated errors as it breaks frequently). Supposedly a
> patch is coming explaining this in the documentation.

That seems like it's going to be a huge pain going forward, but OK. I
kept running "dtbs_check" with the DT_SCHEMA_FILES since I guess this
was OK? Then I ran this atop next-20200129:

# Delete broken yaml:
rm Documentation/devicetree/bindings/pci/intel-gw-pcie.yaml
ARCH=arm64 make dt_binding_check | grep 'clock/qcom'

...and that seemed OK to me. I've updated the commit message to
include what I did. Hopefully it's right.

> > + nvmem-cell-names:
> > + minItems: 1
> > + maxItems: 2
> > + description:
> > + Names for each nvmem-cells specified.
>
> Isn't that every instance? So drop.

Dropped the description here.

> Otherwise, assuming it all works:
>
> Reviewed-by: Rob Herring <robh@xxxxxxxxxx>

Thanks. v2 now with your feedback and Jeffrey's at:
20200129152458.v2.1.I4452dc951d7556ede422835268742b25a18b356b@changeid">http://lore.kernel.org/r/20200129152458.v2.1.I4452dc951d7556ede422835268742b25a18b356b@changeid