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:46:14 EST


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.

Regards,
Vincent