net: ethernet: ti: am65-cpts: add pps support
authorGrygorii Strashko <grygorii.strashko@ti.com>
Mon, 16 Jan 2023 08:55:33 +0000 (14:25 +0530)
committerDavid S. Miller <davem@davemloft.net>
Wed, 18 Jan 2023 12:56:38 +0000 (12:56 +0000)
commitb6d7871234270071a32e3d1f8667a54e4fc2627d
treed6623f3469d9a16ce401b9104fc3daa11fa0ddc3
parent2b76af68d8e5ecc936e70eb9c09d5591b0809fef
net: ethernet: ti: am65-cpts: add pps support

CPTS doesn't have HW support for PPS ("pulse per second”) signal
generation, but it can be modeled by using Time Sync Router and routing
GenFx (periodic signal generator) output to CPTS_HWy_TS_PUSH (hardware time
stamp) input, and configuring GenFx to generate 1sec pulses.

     +------------------------+
     |          CPTS          |
     |                        |
 +--->CPTS_HW4_PUSH      GENFx+---+
 |   |                        |   |
 |   +------------------------+   |
 |                                |
 +--------------------------------+

Add corresponding support to am65-cpts driver. The DT property "ti,pps"
has to be used to enable PPS support and configure pair
[CPTS_HWy_TS_PUSH, GenFx].

Once enabled, PPS can be tested using ppstest tool:
 # ./ppstest /dev/pps0

Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com>
Signed-off-by: Siddharth Vadapalli <s-vadapalli@ti.com>
Reviewed-by: Roger Quadros <rogerq@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/ti/am65-cpts.c