RE: [RFC PATCH] dt-bindings: net: ethernet-controller: Add ptimer_handle

From: Gaddam, Sarath Babu Naidu
Date: Fri Sep 30 2022 - 00:48:08 EST




> -----Original Message-----
> From: Sarath Babu Naidu Gaddam <sarath.babu.naidu.gaddam@xxxxxxx>
> Sent: Thursday, September 29, 2022 5:43 PM
> To: davem@xxxxxxxxxxxxx; edumazet@xxxxxxxxxx; kuba@xxxxxxxxxx;
> pabeni@xxxxxxxxxx; robh+dt@xxxxxxxxxx
> Cc: krzysztof.kozlowski+dt@xxxxxxxxxx; netdev@xxxxxxxxxxxxxxx;
> devicetree@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx;
> yangbo.lu@xxxxxxx; Pandey, Radhey Shyam
> <radhey.shyam.pandey@xxxxxxx>; Sarangi, Anirudha
> <anirudha.sarangi@xxxxxxx>; Katakam, Harini
> <harini.katakam@xxxxxxx>; Gaddam, Sarath Babu Naidu
> <sarath.babu.naidu.gaddam@xxxxxxx>
> Subject: [RFC PATCH] dt-bindings: net: ethernet-controller: Add
> ptimer_handle
>
> There is currently no standard property to pass PTP device index information
> to ethernet driver when they are independent.
>
> ptimer_handle property will contain phandle to PTP timer node.
>
> Freescale driver currently has this implementation but it will be good to agree
> on a generic (optional) property name to link to PTP phandle to Ethernet
> node. In future or any current ethernet driver wants to use this method of
> reading the PHC index,they can simply use this generic name and point their
> own PTP timer node, instead of creating seperate property names in each
> ethernet driver DT node.
>
> axiethernet driver uses this method when PTP support is integrated.
>
> Example:
> fman0: fman@1a00000 {
> ptimer-handle = <&ptp_timer0>;
> }
>
> ptp_timer0: ptp-timer@1afe000 {
> compatible = "fsl,fman-ptp-timer";
> reg = <0x0 0x1afe000 0x0 0x1000>;
> }
>
> Signed-off-by: Sarath Babu Naidu Gaddam
> <sarath.babu.naidu.gaddam@xxxxxxx>
> ---
> We want binding to be reviewed/accepted and then make changes in
> freescale binding documentation to use this generic binding.
>
> DT information:
> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/
> tree/arch/arm64/boot/dts/freescale/qoriq-fman3-0.dtsi#n23
>
> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/
> tree/Documentation/devicetree/bindings/net/fsl-fman.txt#n320
>
> Freescale driver:
> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/
> tree/drivers/net/ethernet/freescale/dpaa/dpaa_ethtool.c#n467
>
> Changes in V2:
> 1)Added links to reference code snippets.
> 2)Updated commit msg.
>
> Comments, suggestions and thoughts to have a common name are very
> welcome...!
> ---
> .../devicetree/bindings/net/ethernet-controller.yaml | 5 +++++
> 1 file changed, 5 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/net/ethernet-
> controller.yaml b/Documentation/devicetree/bindings/net/ethernet-
> controller.yaml
> index 4b3c590fcebf..7e726d620c6a 100644
> --- a/Documentation/devicetree/bindings/net/ethernet-controller.yaml
> +++ b/Documentation/devicetree/bindings/net/ethernet-controller.yaml
> @@ -155,6 +155,11 @@ properties:
> - auto
> - in-band-status
>
> + ptimer_handle:
> + $ref: /schemas/types.yaml#/definitions/phandle
> + description:
> + Specifies a reference to a node representing a IEEE1588 timer.
> +
> fixed-link:
> oneOf:
> - $ref: /schemas/types.yaml#/definitions/uint32-array
> --
> 2.25.1

+Richard Cochran for PTP; apologies for missing earlier.

Thanks,
Sarath