| axiethernet Vitis Drivers API Documentation

- Overview
- Data Structures
- APIs
- File List
- Examples

- Data Structures
- Data Fields

Data Fields
XAvb Struct Reference

The XAvb driver instance data. More...

## Data Fields
XAvb_Config | Config
| hardware configuration More...
u32 | IsReady
| Device is initialized and ready. More...
u32 | AVBIsEnabled
| Is AVB enabled. More...
u32 | PtpIsRunning
| The PTP algorithm can be started and stopped as requested. More...
u32 | PeerASCapable
| The peer must be AS capable before we start full blown PTP. More...
u32 | PTPLocked
| Current PTP Slave Error is less than XAVB_CLOCK_LOCK_THRESHOLD nsec. More...
XAvb_MDSyncReceive | latestMDSyncReceive
| Store the info from the latest RX'd Sync/Follow message pair. More...
XAvb_PortIdentity | portIdLocal
| Contains the local port Identity information. More...
XAvb_BmcData | CurrentBmc
| Create a data structure for the Best Master Clock Algorithm (BMCA) More...
XAvb_PtpStruct | PtpRecords
| Create a data structure for the Precise Timing Protocol (PTP) More...
XAvb_SequenceIdStruct | SequenceIdRecords
| Create a data structure to record the PTP frames Sequence ID values. More...
XAvb_SignallingFrameData | SignallingFrameData
| Create a data structure to store the Signalling frame information. More...
XAvb_Counters | PtpCounters
| Create a data structure to store various PTP counters/timers. More...
XAvb_StateMachineData | StateMachineData
| Create a data structure to store state machine flags. More...
XAvb_Handler | GMDiscHandler
| Callback Handler for a GrandMaster discontinuity event. More...
void * | GMDiscCallBackRef
| Callback ref for a GrandMaster discontinuity event. More...

## Detailed Description

The XAvb driver instance data.

The user is required to allocate a variable of this type for every AVB device in the system. A pointer to a variable of this type is then passed to the driver API functions.

## Field Documentation

u32 XAvb::AVBIsEnabled

Is AVB enabled.

XAvb_Config XAvb::Config

hardware configuration

Referenced by main(), XAvb_BecomeRtcMaster(), XAvb_CalcRtcOffset(), XAvb_CfgInitialize(), XAvb_DecodeRxAnnounceFrame(), XAvb_DecodeRxFollowUp(), XAvb_DecodeRxPDelayResp(), XAvb_DecodeRxPDelayRespFollowUp(), XAvb_DecodeRxSignaling(), XAvb_DecodeRxSync(), XAvb_DecodeTxAnnounceFrame(), XAvb_IsRxFramePTP(), XAvb_MasterSendAnnounce(), XAvb_MasterSendFollowUp(), XAvb_MasterSendSync(), XAvb_PtpRxInterruptHandler(), XAvb_PtpTimerInterruptHandler(), XAvb_Reset(), XAvb_SendPDelayReq(), XAvb_SendPDelayResp(), XAvb_SendPDelayRespFollowUp(), XAvb_SetupRxFilterControlMatchMode(), XAvb_SetupRxFilterControlPcp(), XAvb_SetupRxFilterControlVid(), XAvb_SetupSourcePortIdentity(), XAvb_UpdateRtcIncrement(), and XAvb_WaitOnTxPtpQueue().

XAvb_BmcData XAvb::CurrentBmc

Create a data structure for the Best Master Clock Algorithm (BMCA)

Referenced by XAvb_BecomeRtcMaster(), XAvb_BecomeRtcSlave(), XAvb_DecodeRxAnnounceFrame(), XAvb_DecodeRxFollowUp(), XAvb_DecodeRxSync(), XAvb_DecodeTxAnnounceFrame(), and XAvb_PtpTimerInterruptHandler().

void* XAvb::GMDiscCallBackRef

Callback ref for a GrandMaster discontinuity event.

Referenced by XAvb_BecomeRtcMaster(), XAvb_BecomeRtcSlave(), XAvb_ChangePTPLockStatus(), and XAvb_SetGMDiscontinuityHandler().

XAvb_Handler XAvb::GMDiscHandler

Callback Handler for a GrandMaster discontinuity event.

Referenced by XAvb_BecomeRtcMaster(), XAvb_BecomeRtcSlave(), XAvb_CfgInitialize(), XAvb_ChangePTPLockStatus(), and XAvb_SetGMDiscontinuityHandler().

u32 XAvb::IsReady

Device is initialized and ready.

Referenced by XAvb_CfgInitialize(), XAvb_Reset(), XAvb_SetGMDiscontinuityHandler(), XAvb_Start(), and XAvb_Stop().

XAvb_MDSyncReceive XAvb::latestMDSyncReceive

Store the info from the latest RX'd Sync/Follow message pair.

Referenced by XAvb_DecodeRxSync(), XAvb_PtpTimerInterruptHandler(), and XAvb_Reset().

u32 XAvb::PeerASCapable

The peer must be AS capable before we start full blown PTP.

Referenced by XAvb_ChangePeerASCapability(), and XAvb_PtpTimerInterruptHandler().

XAvb_PortIdentity XAvb::portIdLocal

Contains the local port Identity information.

Referenced by XAvb_DecodeRxAnnounceFrame(), XAvb_DecodeRxPDelayResp(), and XAvb_SetupSourcePortIdentity().

XAvb_Counters XAvb::PtpCounters

Create a data structure to store various PTP counters/timers.

Referenced by XAvb_BecomeRtcSlave(), XAvb_DecodeRxAnnounceFrame(), XAvb_DecodeRxFollowUp(), XAvb_DecodeRxSync(), XAvb_PtpRxInterruptHandler(), XAvb_PtpTimerInterruptHandler(), and XAvb_Reset().

u32 XAvb::PtpIsRunning

The PTP algorithm can be started and stopped as requested.

Referenced by XAvb_PtpRxInterruptHandler(), XAvb_PtpTimerInterruptHandler(), XAvb_Reset(), and XAvb_Start().

u32 XAvb::PTPLocked

Current PTP Slave Error is less than XAVB_CLOCK_LOCK_THRESHOLD nsec.

Referenced by XAvb_ChangePTPLockStatus().

XAvb_PtpStruct XAvb::PtpRecords

Create a data structure for the Precise Timing Protocol (PTP)

Referenced by XAvb_CalcDelay(), XAvb_CalcRtcOffset(), XAvb_DecodeRxFollowUp(), XAvb_DecodeRxPDelayResp(), XAvb_DecodeRxPDelayRespFollowUp(), XAvb_DecodeRxSync(), XAvb_MasterSendFollowUp(), XAvb_MasterSendSync(), XAvb_Reset(), XAvb_SendPDelayReq(), XAvb_SendPDelayResp(), XAvb_SendPDelayRespFollowUp(), and XAvb_UpdateRtcIncrement().

XAvb_SequenceIdStruct XAvb::SequenceIdRecords

Create a data structure to record the PTP frames Sequence ID values.

Referenced by XAvb_DecodeRxFollowUp(), XAvb_DecodeRxPDelayResp(), XAvb_DecodeRxPDelayRespFollowUp(), XAvb_DecodeRxSync(), XAvb_SendPDelayReq(), and XAvb_UpdateRtcIncrement().

XAvb_SignallingFrameData XAvb::SignallingFrameData

Create a data structure to store the Signalling frame information.

Referenced by XAvb_DecodeRxSignaling(), XAvb_PtpTimerInterruptHandler(), and XAvb_Reset().

XAvb_StateMachineData XAvb::StateMachineData

Create a data structure to store state machine flags.

Referenced by XAvb_DecodeRxPDelayResp(), XAvb_DecodeRxPDelayRespFollowUp(), XAvb_PtpTimerInterruptHandler(), and XAvb_Reset().