Skip to content

Commit f6bd595

Browse files
grygoriySdavem330
authored andcommitted
net: ethernet: ti: introduce am654 common platform time sync driver
The CPTS module is used to facilitate host control of time sync operations. Main features of CPTS module are: - selection of multiple external clock sources - control of time sync events via interrupt or polling - 64-bit timestamp mode in ns with HW PPM and nudge adjustment. - hardware timestamp ext. inputs (HWx_TS_PUSH) - timestamp Generator function outputs (TS_GENFx) Depending on integration it enables compliance with the IEEE 1588-2008 standard for a precision clock synchronization protocol, Ethernet Enhanced Scheduled Traffic Operations (CPTS_ESTFn) and PCIe Subsystem Precision Time Measurement (PTM). Introduced driver provides Linux PTP hardware clock for each CPTS device and network packets timestamping where applicable. CPTS PTP hardware clock supports following operations: - Set time - Get time - Shift the clock by a given offset atomically - Adjust clock frequency - Time stamp external events - Periodic output signals Signed-off-by: Grygorii Strashko <[email protected]> Signed-off-by: David S. Miller <[email protected]>
1 parent 6e87ac7 commit f6bd595

File tree

4 files changed

+1106
-0
lines changed

4 files changed

+1106
-0
lines changed

drivers/net/ethernet/ti/Kconfig

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -110,6 +110,20 @@ config TI_K3_AM65_CPSW_NUSS
110110
To compile this driver as a module, choose M here: the module
111111
will be called ti-am65-cpsw-nuss.
112112

113+
config TI_K3_AM65_CPTS
114+
tristate "TI K3 AM65x CPTS"
115+
depends on ARCH_K3 && OF && PTP_1588_CLOCK
116+
depends on PTP_1588_CLOCK
117+
select NET_PTP_CLASSIFY
118+
help
119+
Say y here to support the TI K3 AM65x CPTS with 1588 features such as
120+
PTP hardware clock for each CPTS device and network packets
121+
timestamping where applicable.
122+
Depending on integration CPTS blocks enable compliance with
123+
the IEEE 1588-2008 standard for a precision clock synchronization
124+
protocol, Ethernet Enhanced Scheduled Traffic Operations (CPTS_ESTFn)
125+
and PCIe Subsystem Precision Time Measurement (PTM).
126+
113127
config TI_KEYSTONE_NETCP
114128
tristate "TI Keystone NETCP Core Support"
115129
select TI_DAVINCI_MDIO

drivers/net/ethernet/ti/Makefile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,3 +26,4 @@ keystone_netcp_ethss-y := netcp_ethss.o netcp_sgmii.o netcp_xgbepcsr.o cpsw_ale.
2626

2727
obj-$(CONFIG_TI_K3_AM65_CPSW_NUSS) += ti-am65-cpsw-nuss.o
2828
ti-am65-cpsw-nuss-y := am65-cpsw-nuss.o cpsw_sl.o am65-cpsw-ethtool.o cpsw_ale.o k3-cppi-desc-pool.o
29+
obj-$(CONFIG_TI_K3_AM65_CPTS) += am65-cpts.o

0 commit comments

Comments
 (0)