We design a device based on AM3354 (TIRTOS). One of possibilities of the device is synchronizing by PTP.
Time source in the device is CPTS which bind with CPSW. CPTS works wich frequency 250MHz. PTP works on the Ethernet level (raw-sockets) with P2P
It makes three time stamps per second (with using events Ethernet_Receive_Event and Ethernet_Transmit_Event).
Simultaneously with PTP we make and send 4000 ethernet frames per second (with time between frames 250 microsecond). We have to keep the time
interval with precision about one microsecond. To achieve it we once in 2.5 millisecond get the time stamp upon TIMER4 and ajust it. It makes 400 time
stamps in CPTS per second (event Hardware_Tim_Stamp_Push_Event).
Simultaneously once in millisecond we get time from CPTS for our system time. It makes 1000 time stamps from CPTS per second (event Time_Stamp_Push_Event).
Events like Time_Stamp_Rollover_Event and Time_Stamp_Half_Rollover_Event we don't handle.
Some times when system is working happens bad event, when PTP loose synchronization cause PTP daemon doesn't get the time stamp from CPTS. We have
supposition than CPTS doesn't make the time stamp or the time stamp was made but on the moment of request it wasn't in the FIFO.
Also some times happens a delay, when the timer made an event, the Software got an interruption but on the moment to get the time stamp there was not in the FIFO.
But after some time the time stamp appears in the FIFO.
Consequently we have a couple questions:
1. How many a time stamps can make CPTS per second?
2. Which is the maximum delay can be between make time stamp and put it into FIFO of CPTS?