Re: [PATCH v3 1/2] dt-bindings: ptp: Add bindings doc for IDT ClockMatrix based PTP clock

From: Vincent Cheng
Date: Tue Oct 29 2019 - 22:55:08 EST


On Tue, Oct 29, 2019 at 10:45:52PM EDT, Vincent Cheng wrote:
>On Tue, Oct 29, 2019 at 05:20:03PM EDT, Rob Herring wrote:
>>On Tue, Oct 29, 2019 at 10:00 AM Vincent Cheng
>><vincent.cheng.xh@xxxxxxxxxxx> wrote:
>>>
>>> On Fri, Oct 25, 2019 at 03:32:28PM EDT, Rob Herring wrote:
>>> >On Mon, Oct 21, 2019 at 03:57:47PM -0400, vincent.cheng.xh@xxxxxxxxxxx wrote:
>>> >> From: Vincent Cheng <vincent.cheng.xh@xxxxxxxxxxx>
>>> >>
>>> >> Add device tree binding doc for the IDT ClockMatrix PTP clock.
>>> >>
>>> >> +
>>> >> +examples:
>>> >> + - |
>>> >> + phc@5b {
>>> >
>>> >ptp@5b
>>> >
>>> >Examples are built now and this fails:
>>> >
>>> >Documentation/devicetree/bindings/ptp/ptp-idtcm.example.dts:19.15-28:
>>> >Warning (reg_format): /example-0/phc@5b:reg: property has invalid length (4 bytes) (#address-cells == 1, #size-cells == 1)
>>> >
>>> >The problem is i2c devices need to be shown under an i2c bus node.
>>> >
>>> >> + compatible = "idt,8a34000";
>>> >> + reg = <0x5b>;
>>> >> + };
>>>
>>> I am trying to replicate the problem locally to confirm the fix prior to re-submission.
>>>
>>> I have tried the following:
>>>
>>> ./tools/dt-doc-validate ~/projects/linux/Documentation/devicetree/bindings/ptp/ptp-idtcm.yaml
>>> ./tools/dt-extract-example ~/projects/linux/Documentation/devicetree/bindings/ptp/ptp-idtcm.yaml > example.dts
>>>
>>> How to validate the example.dts file against the schema in ptp-idtcm.yaml?
>>
>>'make -k dt_binding_check' in the kernel tree.
>
>Thanks for the tip - that led me to re-discover write-schema.rst
>
>Did the following to ensure dt-schema and yaml is installed:
>$ pip3 install git+https://github.com/devicetree-org/dt-schema.git@master
>
>$ pkg-config --exists yaml-0.1 && echo yes
>yes
>
>$ pkg-config yaml-0.1 --libs
>-lyaml
>
>
>However, I get 'No rule to make target" error with 'make -k dt_binding_check'.
>
>On linux: Tue Oct 29, commit 23fdb198ae8
>
>$ make -k dt_binding_check \
> DT_SCHEMA_FILES=Documentation/devicetree/bindings/trivial-devices.yaml
> SCHEMA Documentation/devicetree/bindings/processed-schema.yaml
> CHKDT Documentation/devicetree/bindings/trivial-devices.yaml
>make[1]: *** No rule to make target
> 'Documentation/devicetree/bindings/trivial-devices.example.dt.yaml',
> needed by '__build'.
>
>On linux-next-mirror: Tue Oct 29, commit c57cf3833c6
>
>$ make -k dt_binding_check \
> DT_SCHEMA_FILES=Documentation/devicetree/bindings/trivial-devices.yaml
> SCHEMA Documentation/devicetree/bindings/processed-schema.yaml
> CHKDT Documentation/devicetree/bindings/trivial-devices.yaml
>make[1]: *** No rule to make target
> 'Documentation/devicetree/bindings/trivial-devices.example.dt.yaml',
> needed by '__build'.
>
>I will keep googling, but any tips will be greatly appreciated.

Please ignore, I figured it out.

'make -k dt_binding check ARCH=arm' works without make errors.

Regards,
Vincent