📄 txc_envoy_mac_api.h
字号:
/****************************************************************************/
/* this enumeration and structure are used by TXC_IfMAC_IngressFlowCtrlSet
& TXC_IfMAC_IngressFlowCtrlGet */
typedef enum
{
TXC_IfMAC_NO_FLOW_CTRL = 0,
TXC_IfMAC_INTERMITTENT_RAISE_CARRIER_FLOW_CTRL,
TXC_IfMAC_CONTINUOUS_RAISE_CARRIER_FLOW_CTRL,
TXC_IfMAC_AUTO_PAUSE_FRAME_FLOW_CTRL,
TXC_IfMAC_HOST_INITIATED_PAUSE_FRAME_FLOW_CTRL,
TXC_IfMAC_END_OF_MAC_INGRESS_FLOW_CTRL_ENUM,
TXC_IfMAC_INGRESS_FLOW_CTRL_ENUM_ERR = 0xFFFE
} TXC_IfMAC_INGRESS_FLOW_CTRL_MODE_ENUM;
typedef struct
{
TXC_IfMAC_INGRESS_FLOW_CTRL_MODE_ENUM ingressFlowCtrlMode;
TXC_U16BIT ingressFlowCtrlFramePauseTime;
TXC_U16BIT ingressFlowCtrlFrameExtendedParameter;
} TXC_IfMAC_INGRESS_FLOW_CTRL_MODE_STRUCT;
/****************************************************************************/
/* this enumeration and structure are used by TXC_IfMAC_EgressFlowCtrlSet
& TXC_IfMAC_EgressFlowCtrlGet */
typedef struct
{
TXC_BOOL egressFlowCtrlEnable;
} TXC_IfMAC_EGRESS_FLOW_CTRL_MODE_STRUCT;
/****************************************************************************/
/* Note: BELOW ARE ENVOY-CE2/CE4 SPECIFIC DATA TYPES */
/****************************************************************************/
/* this enumeration and structure are TXC_ENVOY_MacRmonCtrlSet and
TXC_ENVOY_MacRmonCtrlGet. */
typedef enum
{
ENVOY_CNT_GOOD_AND_BAD_PKTS = 0,
ENVOY_CNT_GOOD_PKTS_ONLY,
ENVOY_END_OF_RX_CNT_MODE,
ENVOY_CNT_MODE_ENUM_ERR
} ENVOY_MAC_RX_BYTE_CNT_MODE_ENUM;
typedef struct
{
TXC_BOOL rmonSaturateEnable;
ENVOY_MAC_RX_BYTE_CNT_MODE_ENUM rbytCntMode;
} ENVOY_MAC_RMON_CTRL_STRUCT;
/****************************************************************************/
/* this structures is used by TXC_ENVOY_RtrvMacRxStatistics */
typedef struct
{
TXC_U32BIT rbytCnt;
TXC_U32BIT rbythiCnt;
TXC_U32BIT rpktCnt;
TXC_U32BIT rundCnt;
TXC_U32BIT rx64Cnt;
TXC_U32BIT r127Cnt;
TXC_U32BIT r255Cnt;
TXC_U32BIT r511Cnt;
TXC_U32BIT r1023Cnt;
TXC_U32BIT r1518Cnt;
TXC_U32BIT rflrCnt;
TXC_U32BIT rovrCnt;
TXC_U32BIT rbcaCnt;
TXC_U32BIT rmcaCnt;
TXC_U32BIT rpfCnt;
TXC_U32BIT ruoCnt;
TXC_U32BIT rvlnCnt;
TXC_U32BIT rfrgCnt;
TXC_U32BIT rfcsCnt;
TXC_U32BIT rjbrCnt;
TXC_U32BIT rcdeCnt;
TXC_U32BIT rdfffCnt;
TXC_U32BIT rdfucCnt;
} ENVOY_MAC_RX_STATISTICS_STRUCT;
/****************************************************************************/
/* this structures is used by TXC_ENVOY_MacTxStatisticsRtrv*/
typedef struct
{
TXC_U32BIT tbytCnt;
TXC_U32BIT tbythiCnt;
TXC_U32BIT tpktCnt;
TXC_U32BIT tundCnt;
TXC_U32BIT t64Cnt;
TXC_U32BIT t127Cnt;
TXC_U32BIT t255Cnt;
TXC_U32BIT t511Cnt;
TXC_U32BIT t1023Cnt;
TXC_U32BIT t1518Cnt;
TXC_U32BIT tpfdCnt;
TXC_U32BIT tovrCnt;
TXC_U32BIT tbcaCnt;
TXC_U32BIT tmcaCnt;
TXC_U32BIT tpfCnt;
TXC_U32BIT tvlnCnt;
TXC_U32BIT tdfrCnt;
TXC_U32BIT tedfCnt;
TXC_U32BIT tsclCnt;
TXC_U32BIT tmclCnt;
TXC_U32BIT tlclCnt;
TXC_U32BIT texclCnt;
TXC_U32BIT tfrgCnt;
TXC_U32BIT tfcsCnt;
TXC_U32BIT tjbrCnt;
TXC_U32BIT tdrpCnt;
TXC_U32BIT tabtCnt;
} ENVOY_MAC_TX_STATISTICS_STRUCT;
/****************************************************************************
** Function Prototypes **
****************************************************************************/
TXC_U16BIT TXC_ENVOY_MacReset
(TXC_U16BIT handle, TXC_U16BIT port,
TXC_IfMAC_RESET_STRUCT *macResetPtr);
TXC_U16BIT TXC_ENVOY_MacIfaceSet
(TXC_U16BIT handle, TXC_U16BIT port,
TXC_IfMAC_CONFIG_STRUCT *macIfaceDataPtr);
TXC_U16BIT TXC_ENVOY_MacIfaceGet
(TXC_U16BIT handle, TXC_U16BIT port,
TXC_IfMAC_CONFIG_STRUCT *macIfaceDataPtr);
TXC_U16BIT TXC_IfMAC_OperationalStateSet
(TXC_U16BIT handle, TXC_U16BIT port,
TXC_IfMAC_OPERATIONAL_STATE_STRUCT *macOperationalStateDataPtr);
TXC_U16BIT TXC_IfMAC_OperationalStateGet
(TXC_U16BIT handle, TXC_U16BIT port,
TXC_IfMAC_OPERATIONAL_STATE_STRUCT *macOperationalStateDataPtr);
TXC_U16BIT TXC_ENVOY_MacIngressFlowCtrlSet
(TXC_U16BIT handle, TXC_U16BIT port,
TXC_IfMAC_INGRESS_FLOW_CTRL_MODE_STRUCT *macIngressFlowCtrlModeDataPtr);
TXC_U16BIT TXC_ENVOY_MacIngressFlowCtrlGet
(TXC_U16BIT handle, TXC_U16BIT port,
TXC_IfMAC_INGRESS_FLOW_CTRL_MODE_STRUCT *macIngressFlowCtrlModeDataPtr);
TXC_U16BIT TXC_ENVOY_MacEgressFlowCtrlSet
(TXC_U16BIT handle, TXC_U16BIT port,
TXC_IfMAC_EGRESS_FLOW_CTRL_MODE_STRUCT *macEgressFlowCtrlModeDataPtr);
TXC_U16BIT TXC_ENVOY_MacEgressFlowCtrlGet
(TXC_U16BIT handle, TXC_U16BIT port,
TXC_IfMAC_EGRESS_FLOW_CTRL_MODE_STRUCT *macEgressFlowCtrlModeDataPtr);
TXC_U16BIT
TXC_IfMAC_StatusRtrv (
TXC_U16BIT handle,
TXC_U16BIT port,
TXC_U32BIT *macStatusDataPtr);
TXC_U16BIT TXC_IfMAC_MacLoopbackSet
(TXC_U16BIT handle, TXC_U16BIT port,
TXC_IfMAC_LOOPBACK_STRUCT *macLoopbackDataPtr);
TXC_U16BIT TXC_IfMAC_MacLoopbackGet
(TXC_U16BIT handle, TXC_U16BIT port,
TXC_IfMAC_LOOPBACK_STRUCT *macLoopbackDataPtr);
TXC_U16BIT TXC_ENVOY_MacHalfDuplexSet
(TXC_U16BIT handle, TXC_U16BIT port,
TXC_IfMAC_HALF_DUPLEX_STRUCT * macHalfDuplexDataPtr);
TXC_U16BIT TXC_ENVOY_MacHalfDuplexGet
(TXC_U16BIT handle, TXC_U16BIT port,
TXC_IfMAC_HALF_DUPLEX_STRUCT * macHalfDuplexDataPtr);
TXC_U16BIT TXC_ENVOY_MacRxStatisticsRtrv
(TXC_U16BIT handle, TXC_U16BIT port,
ENVOY_MAC_RX_STATISTICS_STRUCT *macRxStatisticsDataPtr);
TXC_U16BIT TXC_ENVOY_MacRmonCtrlSet
(TXC_U16BIT handle, ENVOY_MAC_RMON_CTRL_STRUCT *macRmonCtrlDataPtr);
TXC_U16BIT TXC_ENVOY_MacRmonCtrlGet
(TXC_U16BIT handle, ENVOY_MAC_RMON_CTRL_STRUCT *macRmonCtrlDataPtr);
TXC_U16BIT TXC_ENVOY_MacTxStatisticsRtrv
(TXC_U16BIT handle, TXC_U16BIT port,ENVOY_MAC_TX_STATISTICS_STRUCT *macTxStatisticsDataPtr);
TXC_U16BIT TXC_ENVOY_RegPoke(TXC_U16BIT handle, TXC_U32BIT offset, TXC_U32BIT regData);
TXC_U16BIT TXC_ENVOY_RegPeek(TXC_U16BIT handle, TXC_U32BIT offset, TXC_U32BIT *regDataPtr);
/****************************************************************************
** Callback Function Typedef **
****************************************************************************/
/* none */
/****************************************************************************
** End of Module **
****************************************************************************/
#endif /* TXC_ENVOY_MAC_API_H */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -