[PATCH net-next 01/12] dt-bindings: ptp: add bindings for NETC Timer

Wei Fang posted 12 patches 2 months, 4 weeks ago
[PATCH net-next 01/12] dt-bindings: ptp: add bindings for NETC Timer
Posted by Wei Fang 2 months, 4 weeks ago
Add device tree binding doc for the PTP clock based on NETC Timer.

Signed-off-by: Wei Fang <wei.fang@nxp.com>
---
 .../devicetree/bindings/ptp/nxp,ptp-netc.yaml | 67 +++++++++++++++++++
 1 file changed, 67 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/ptp/nxp,ptp-netc.yaml

diff --git a/Documentation/devicetree/bindings/ptp/nxp,ptp-netc.yaml b/Documentation/devicetree/bindings/ptp/nxp,ptp-netc.yaml
new file mode 100644
index 000000000000..b6b2e881a3c0
--- /dev/null
+++ b/Documentation/devicetree/bindings/ptp/nxp,ptp-netc.yaml
@@ -0,0 +1,67 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/ptp/nxp,ptp-netc.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: NXP NETC Timer PTP clock
+
+description:
+  NETC Timer provides current time with nanosecond resolution, precise
+  periodic pulse, pulse on timeout (alarm), and time capture on external
+  pulse support. And it supports time synchronization as required for
+  IEEE 1588 and IEEE 802.1AS-2020.
+
+maintainers:
+  - Wei Fang <wei.fang@nxp.com>
+  - Clark Wang <xiaoning.wang@nxp.com>
+
+properties:
+  compatible:
+    enum:
+      - pci1131,ee02
+
+  reg:
+    maxItems: 1
+
+  clocks:
+    maxItems: 1
+
+  clock-names:
+    oneOf:
+      - enum:
+          - system
+          - ccm_timer
+          - ext_1588
+
+  nxp,pps-channel:
+    $ref: /schemas/types.yaml#/definitions/uint8
+    default: 0
+    description:
+      Specifies to which fixed interval period pulse generator is
+      used to generate PPS signal.
+    enum: [0, 1, 2]
+
+required:
+  - compatible
+  - reg
+
+allOf:
+  - $ref: /schemas/pci/pci-device.yaml
+
+unevaluatedProperties: false
+
+examples:
+  - |
+    pcie {
+        #address-cells = <3>;
+        #size-cells = <2>;
+
+        ethernet@18,0 {
+            compatible = "pci1131,ee02";
+            reg = <0x00c000 0 0 0 0>;
+            clocks = <&scmi_clk 18>;
+            clock-names = "ccm_timer";
+            nxp,pps-channel =  /bits/ 8 <1>;
+        };
+    };
-- 
2.34.1
Re: [PATCH net-next 01/12] dt-bindings: ptp: add bindings for NETC Timer
Posted by Krzysztof Kozlowski 2 months, 3 weeks ago
On 11/07/2025 08:57, Wei Fang wrote:
> Add device tree binding doc for the PTP clock based on NETC Timer.


A nit, subject: drop second/last, redundant "bindings for". The
"dt-bindings" prefix is already stating that these are bindings.
See also:
https://elixir.bootlin.com/linux/v6.7-rc8/source/Documentation/devicetree/bindings/submitting-patches.rst#L18

> 
> Signed-off-by: Wei Fang <wei.fang@nxp.com>
> ---
>  .../devicetree/bindings/ptp/nxp,ptp-netc.yaml | 67 +++++++++++++++++++
>  1 file changed, 67 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/ptp/nxp,ptp-netc.yaml
> 
> diff --git a/Documentation/devicetree/bindings/ptp/nxp,ptp-netc.yaml b/Documentation/devicetree/bindings/ptp/nxp,ptp-netc.yaml
> new file mode 100644
> index 000000000000..b6b2e881a3c0
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/ptp/nxp,ptp-netc.yaml
> @@ -0,0 +1,67 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/ptp/nxp,ptp-netc.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: NXP NETC Timer PTP clock

What is NETC?

> +
> +description:
> +  NETC Timer provides current time with nanosecond resolution, precise
> +  periodic pulse, pulse on timeout (alarm), and time capture on external
> +  pulse support. And it supports time synchronization as required for
> +  IEEE 1588 and IEEE 802.1AS-2020.
> +
> +maintainers:
> +  - Wei Fang <wei.fang@nxp.com>
> +  - Clark Wang <xiaoning.wang@nxp.com>
> +
> +properties:
> +  compatible:
> +    enum:
> +      - pci1131,ee02
> +
> +  reg:
> +    maxItems: 1
> +
> +  clocks:
> +    maxItems: 1
> +
> +  clock-names:
> +    oneOf:

Why oneOf? Drop

> +      - enum:
> +          - system
> +          - ccm_timer
> +          - ext_1588

Why is this flexible?

> +
> +  nxp,pps-channel:
> +    $ref: /schemas/types.yaml#/definitions/uint8
> +    default: 0
> +    description:
> +      Specifies to which fixed interval period pulse generator is
> +      used to generate PPS signal.
> +    enum: [0, 1, 2]

Cell phandle tells that. Drop property.


Best regards,
Krzysztof
Re: [PATCH net-next 01/12] dt-bindings: ptp: add bindings for NETC Timer
Posted by Andrew Lunn 2 months, 3 weeks ago
> +  clocks:
> +    maxItems: 1
> +
> +  clock-names:
> +    oneOf:
> +      - enum:
> +          - system
> +          - ccm_timer
> +          - ext_1588
> +
> +  nxp,pps-channel:
> +    $ref: /schemas/types.yaml#/definitions/uint8
> +    default: 0
> +    description:
> +      Specifies to which fixed interval period pulse generator is
> +      used to generate PPS signal.
> +    enum: [0, 1, 2]
> +
> +required:
> +  - compatible
> +  - reg

Given that clocks and clock-names are not required, please document
what happens if they are not present.

	Andrew