AM263Px MCU+ SDK: TimeSync_ParamsHandle Struct Reference

| AM263Px MCU+ SDK 26.00.00 |

Public Member Functions | Data Fields
TimeSync_ParamsHandle Struct Reference

## Detailed Description

Time synchronization parameter handle structure.

## Public Member Functions
uint32_t pDelayReqSendTaskStack[TASK_STACK_SIZE/sizeof(uint32_t)] | __attribute__ ((aligned(32)))
uint32_t delayReqSendTaskStack[TASK_STACK_SIZE/sizeof(uint32_t)] | __attribute__ ((aligned(32)))
uint32_t txTSTaskP1Stack[TASK_STACK_SIZE/sizeof(uint32_t)] | __attribute__ ((aligned(32)))
uint32_t txTSTaskP2Stack[TASK_STACK_SIZE/sizeof(uint32_t)] | __attribute__ ((aligned(32)))
uint32_t NRT_TaskStack[TASK_STACK_SIZE/sizeof(uint32_t)] | __attribute__ ((aligned(32)))
uint32_t backgroundTaskStack[TASK_STACK_SIZE/sizeof(uint32_t)] | __attribute__ ((aligned(32)))

## Data Fields
ICSS_EMAC_Handle | emacHandle
uint8_t | macId [6]
PRUICSS_Handle | pruicssHandle
uint8_t | enabled
ptpFrameTypes_t | txFrameType
uint8_t | txPort
uint8_t | txprotocol
uint8_t | sequenceIdOut_txTS
ptpFrameTypes_t | rxFrameType
uint8_t | rxPort
uint8_t | rxprotocol
timeStamp * | rxTimestamp_gPTP
uint8_t | sequenceIdOut_rxTS
timeStamp | clockTime
uint8_t | sequenceIdIn
int32_t | drift
uint32_t | syncInterval
ptpDparams_t | stackParams
uint32_t | pathDelay [ICSS_EMAC_MAX_PORTS_PER_INSTANCE]
uint8_t | syntIndexMap [3]
uint8_t | prevIndexMap [3]
TaskP_Object | timeSync_pDelayReqSendTask
TaskP_Object | timeSync_delayReqSendTask
TaskP_Object | timeSync_TxTSTaskP1
TaskP_Object | timeSync_TxTSTaskP2
TaskP_Object | timeSync_NRT_Task
TaskP_Object | timeSync_backgroundTask
EventP_Object | txTSAvailableEvtObject [ICSS_EMAC_MAX_PORTS_PER_INSTANCE]
EventP_Object | ptpPdelayResEvtObject [ICSS_EMAC_MAX_PORTS_PER_INSTANCE]
EventP_Object | ptpPdelayReqEvtObject [ICSS_EMAC_MAX_PORTS_PER_INSTANCE]
EventP_Object | ptpSendFollowUpEvtObject [ICSS_EMAC_MAX_PORTS_PER_INSTANCE]
uint32_t | eventIdSync
uint32_t | eventIdPdelayReq
uint32_t | eventIdPdelayResp
uint32_t | eventIdPdelayRespFlwUp
uint32_t | eventIdDelayReq
uint32_t | eventIdFlwUpGenerated
SemaphoreP_Object | delayReqTxSemObject
HwiP_Object | timeSync_txTSIsrObject
uint32_t | numSyncMissed
timeSync_Offset_Stable_Algo_t * | offsetAlgo
ipParams_t | udpParams
peerDelayParams_t | pDelayParams [ICSS_EMAC_MAX_PORTS_PER_INSTANCE]
delayReqRespParams_t * | delayParams
TimeSync_Config_t | timeSyncConfig
TimeSync_frame_buffers_t | timeSyncBuff
timeSync_SyntInfo_t * | tsSyntInfo
timeSync_NrrInfo_t * | tsNrrInfo [ICSS_EMAC_MAX_PORTS_PER_INSTANCE]
syncParam_t * | syncParam [ICSS_EMAC_MAX_PORTS_PER_INSTANCE]
timeSync_RuntimeVar_t * | tsRunTimeVar

## Member Function Documentation

## ◆ __attribute__() [1/6]

uint32_t pDelayReqSendTaskStack [TASK_STACK_SIZE/sizeof(uint32_t)] TimeSync_ParamsHandle::__attribute__ | ( | (aligned(32)) |  | ) |

## ◆ __attribute__() [2/6]

uint32_t delayReqSendTaskStack [TASK_STACK_SIZE/sizeof(uint32_t)] TimeSync_ParamsHandle::__attribute__ | ( | (aligned(32)) |  | ) |

## ◆ __attribute__() [3/6]

uint32_t txTSTaskP1Stack [TASK_STACK_SIZE/sizeof(uint32_t)] TimeSync_ParamsHandle::__attribute__ | ( | (aligned(32)) |  | ) |

## ◆ __attribute__() [4/6]

uint32_t txTSTaskP2Stack [TASK_STACK_SIZE/sizeof(uint32_t)] TimeSync_ParamsHandle::__attribute__ | ( | (aligned(32)) |  | ) |

## ◆ __attribute__() [5/6]

uint32_t NRT_TaskStack [TASK_STACK_SIZE/sizeof(uint32_t)] TimeSync_ParamsHandle::__attribute__ | ( | (aligned(32)) |  | ) |

## ◆ __attribute__() [6/6]

uint32_t backgroundTaskStack [TASK_STACK_SIZE/sizeof(uint32_t)] TimeSync_ParamsHandle::__attribute__ | ( | (aligned(32)) |  | ) |

## Field Documentation

## ◆ emacHandle

ICSS_EMAC_Handle TimeSync_ParamsHandle::emacHandle

ICSS EMAC handle

## ◆ macId

uint8_t TimeSync_ParamsHandle::macId[6]

## ◆ pruicssHandle

PRUICSS_Handle TimeSync_ParamsHandle::pruicssHandle

PRUICSS handle

## ◆ enabled

uint8_t TimeSync_ParamsHandle::enabled

PTP Enable/Disable status

## ◆ txFrameType

ptpFrameTypes_t TimeSync_ParamsHandle::txFrameType

Frame type transmitted. Valid values: 0,1,2,3

## ◆ txPort

uint8_t TimeSync_ParamsHandle::txPort

Port used for transmit. Valid values: ICSS_EMAC_PORT_1/ ICSS_EMAC_PORT_2

## ◆ txprotocol

uint8_t TimeSync_ParamsHandle::txprotocol

Transmitted frame protocol. Valid values: gPTP/PTCP 0/1

## ◆ sequenceIdOut_txTS

uint8_t TimeSync_ParamsHandle::sequenceIdOut_txTS

## ◆ rxFrameType

ptpFrameTypes_t TimeSync_ParamsHandle::rxFrameType

Frame type received. Valid values: 0,1,2,3

## ◆ rxPort

uint8_t TimeSync_ParamsHandle::rxPort

Port used for receive. Valid values: ICSS_EMAC_PORT_1/ ICSS_EMAC_PORT_2

## ◆ rxprotocol

uint8_t TimeSync_ParamsHandle::rxprotocol

protocol. Valid values: gPTP/PTCP 0/1

## ◆ rxTimestamp_gPTP

timeStamp* TimeSync_ParamsHandle::rxTimestamp_gPTP

timestamp if rxprotocol=gPTP

## ◆ sequenceIdOut_rxTS

uint8_t TimeSync_ParamsHandle::sequenceIdOut_rxTS

Sequence ID

## ◆ clockTime

timeStamp TimeSync_ParamsHandle::clockTime

Clock time to set

## ◆ sequenceIdIn

uint8_t TimeSync_ParamsHandle::sequenceIdIn

Sequence ID

## ◆ drift

int32_t TimeSync_ParamsHandle::drift

Drift(nanoseconds)

## ◆ syncInterval

uint32_t TimeSync_ParamsHandle::syncInterval

Sync interval(nanoseconds)

## ◆ stackParams

ptpDparams_t TimeSync_ParamsHandle::stackParams

PTPd stack parameters

## ◆ pathDelay

uint32_t TimeSync_ParamsHandle::pathDelay[ICSS_EMAC_MAX_PORTS_PER_INSTANCE]

Line delay or Peer Delay for each port

## ◆ syntIndexMap

uint8_t TimeSync_ParamsHandle::syntIndexMap[3]

## ◆ prevIndexMap

uint8_t TimeSync_ParamsHandle::prevIndexMap[3]

## ◆ timeSync_pDelayReqSendTask

TaskP_Object TimeSync_ParamsHandle::timeSync_pDelayReqSendTask

Time Sync Task handle for Delay Request Task which sends task periodically

## ◆ timeSync_delayReqSendTask

TaskP_Object TimeSync_ParamsHandle::timeSync_delayReqSendTask

Time Sync Task handle for sending a delay request to Master on receiving a Sync

## ◆ timeSync_TxTSTaskP1

TaskP_Object TimeSync_ParamsHandle::timeSync_TxTSTaskP1

PTP Task for storing Tx timestamps for Port 1

## ◆ timeSync_TxTSTaskP2

TaskP_Object TimeSync_ParamsHandle::timeSync_TxTSTaskP2

PTP Task for storing Tx timestamps for Port 2

## ◆ timeSync_NRT_Task

TaskP_Object TimeSync_ParamsHandle::timeSync_NRT_Task

For processing frames like Pdelay Request, Pdelay Response and Pdelay Response Follow Up which don't require real time response

## ◆ timeSync_backgroundTask

TaskP_Object TimeSync_ParamsHandle::timeSync_backgroundTask

Used to do resource intensive but non-critical tasks like doing floating point calculations, algorithms, status monitoring etc

## ◆ txTSAvailableEvtObject

EventP_Object TimeSync_ParamsHandle::txTSAvailableEvtObject[ICSS_EMAC_MAX_PORTS_PER_INSTANCE]

Event handle for indicating that a Tx Timestamp interrupt has been generated and needs to be serviced. index 0 contains handle for Port 1.

## ◆ ptpPdelayResEvtObject

EventP_Object TimeSync_ParamsHandle::ptpPdelayResEvtObject[ICSS_EMAC_MAX_PORTS_PER_INSTANCE]

Two event handlers for two ports for processing Pdelay response and Pdelay response follow up

## ◆ ptpPdelayReqEvtObject

EventP_Object TimeSync_ParamsHandle::ptpPdelayReqEvtObject[ICSS_EMAC_MAX_PORTS_PER_INSTANCE]

Two event handlers for two ports for processing Pdelay request frames

## ◆ ptpSendFollowUpEvtObject

EventP_Object TimeSync_ParamsHandle::ptpSendFollowUpEvtObject[ICSS_EMAC_MAX_PORTS_PER_INSTANCE]

Two event handlers for two ports for sending out follow up frame in case of forced 2-step

## ◆ eventIdSync

uint32_t TimeSync_ParamsHandle::eventIdSync

Event ID for Sync frame

## ◆ eventIdPdelayReq

uint32_t TimeSync_ParamsHandle::eventIdPdelayReq

Event ID for Pdelay Request frame

## ◆ eventIdPdelayResp

uint32_t TimeSync_ParamsHandle::eventIdPdelayResp

Event ID for Pdelay Response frame

## ◆ eventIdPdelayRespFlwUp

uint32_t TimeSync_ParamsHandle::eventIdPdelayRespFlwUp

Event ID for Pdelay Response Follow Up frame

## ◆ eventIdDelayReq

uint32_t TimeSync_ParamsHandle::eventIdDelayReq

Event ID for Delay Request frame

## ◆ eventIdFlwUpGenerated

uint32_t TimeSync_ParamsHandle::eventIdFlwUpGenerated

Event ID to indicate follow up frame generated

## ◆ delayReqTxSemObject

SemaphoreP_Object TimeSync_ParamsHandle::delayReqTxSemObject

## ◆ timeSync_txTSIsrObject

HwiP_Object TimeSync_ParamsHandle::timeSync_txTSIsrObject

## ◆ numSyncMissed

uint32_t TimeSync_ParamsHandle::numSyncMissed

## ◆ offsetAlgo

timeSync_Offset_Stable_Algo_t* TimeSync_ParamsHandle::offsetAlgo

## ◆ udpParams

ipParams_t TimeSync_ParamsHandle::udpParams

IP/UDP Params

## ◆ pDelayParams

peerDelayParams_t TimeSync_ParamsHandle::pDelayParams[ICSS_EMAC_MAX_PORTS_PER_INSTANCE]

Peer Delay params

## ◆ delayParams

delayReqRespParams_t* TimeSync_ParamsHandle::delayParams

Delay params for Delay Response

## ◆ timeSyncConfig

TimeSync_Config_t TimeSync_ParamsHandle::timeSyncConfig

## ◆ timeSyncBuff

TimeSync_frame_buffers_t TimeSync_ParamsHandle::timeSyncBuff

## ◆ tsSyntInfo

timeSync_SyntInfo_t* TimeSync_ParamsHandle::tsSyntInfo

Data for Syntonization

## ◆ tsNrrInfo

timeSync_NrrInfo_t* TimeSync_ParamsHandle::tsNrrInfo[ICSS_EMAC_MAX_PORTS_PER_INSTANCE]

Data for calculating NRR on both ports

## ◆ syncParam

syncParam_t* TimeSync_ParamsHandle::syncParam[ICSS_EMAC_MAX_PORTS_PER_INSTANCE]

Delay params for Sync Frame

## ◆ tsRunTimeVar

timeSync_RuntimeVar_t* TimeSync_ParamsHandle::tsRunTimeVar

Time Sync Runtime variables