aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/mediatek/files-5.10/drivers/net/phy/rtk/rtl8367c/include/stat.h
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/mediatek/files-5.10/drivers/net/phy/rtk/rtl8367c/include/stat.h')
-rw-r--r--target/linux/mediatek/files-5.10/drivers/net/phy/rtk/rtl8367c/include/stat.h433
1 files changed, 433 insertions, 0 deletions
diff --git a/target/linux/mediatek/files-5.10/drivers/net/phy/rtk/rtl8367c/include/stat.h b/target/linux/mediatek/files-5.10/drivers/net/phy/rtk/rtl8367c/include/stat.h
new file mode 100644
index 0000000000..a7357633a1
--- /dev/null
+++ b/target/linux/mediatek/files-5.10/drivers/net/phy/rtk/rtl8367c/include/stat.h
@@ -0,0 +1,433 @@
+/*
+ * Copyright (C) 2013 Realtek Semiconductor Corp.
+ * All Rights Reserved.
+ *
+ * Unless you and Realtek execute a separate written software license
+ * agreement governing use of this software, this software is licensed
+ * to you under the terms of the GNU General Public License version 2,
+ * available at https://www.gnu.org/licenses/old-licenses/gpl-2.0.txt
+ *
+ * Purpose : RTL8367/RTL8367C switch high-level API
+ *
+ * Feature : The file includes MIB module high-layer API defination
+ *
+ */
+
+#ifndef __RTK_API_STAT_H__
+#define __RTK_API_STAT_H__
+
+/*
+ * Data Type Declaration
+ */
+typedef rtk_u_long_t rtk_stat_counter_t;
+
+/* global statistic counter structure */
+typedef struct rtk_stat_global_cntr_s
+{
+ rtk_uint64 dot1dTpLearnedEntryDiscards;
+}rtk_stat_global_cntr_t;
+
+typedef enum rtk_stat_global_type_e
+{
+ DOT1D_TP_LEARNED_ENTRY_DISCARDS_INDEX = 58,
+ MIB_GLOBAL_CNTR_END
+}rtk_stat_global_type_t;
+
+/* port statistic counter structure */
+typedef struct rtk_stat_port_cntr_s
+{
+ rtk_uint64 ifInOctets;
+ rtk_uint32 dot3StatsFCSErrors;
+ rtk_uint32 dot3StatsSymbolErrors;
+ rtk_uint32 dot3InPauseFrames;
+ rtk_uint32 dot3ControlInUnknownOpcodes;
+ rtk_uint32 etherStatsFragments;
+ rtk_uint32 etherStatsJabbers;
+ rtk_uint32 ifInUcastPkts;
+ rtk_uint32 etherStatsDropEvents;
+ rtk_uint64 etherStatsOctets;
+ rtk_uint32 etherStatsUndersizePkts;
+ rtk_uint32 etherStatsOversizePkts;
+ rtk_uint32 etherStatsPkts64Octets;
+ rtk_uint32 etherStatsPkts65to127Octets;
+ rtk_uint32 etherStatsPkts128to255Octets;
+ rtk_uint32 etherStatsPkts256to511Octets;
+ rtk_uint32 etherStatsPkts512to1023Octets;
+ rtk_uint32 etherStatsPkts1024toMaxOctets;
+ rtk_uint32 etherStatsMcastPkts;
+ rtk_uint32 etherStatsBcastPkts;
+ rtk_uint64 ifOutOctets;
+ rtk_uint32 dot3StatsSingleCollisionFrames;
+ rtk_uint32 dot3StatsMultipleCollisionFrames;
+ rtk_uint32 dot3StatsDeferredTransmissions;
+ rtk_uint32 dot3StatsLateCollisions;
+ rtk_uint32 etherStatsCollisions;
+ rtk_uint32 dot3StatsExcessiveCollisions;
+ rtk_uint32 dot3OutPauseFrames;
+ rtk_uint32 dot1dBasePortDelayExceededDiscards;
+ rtk_uint32 dot1dTpPortInDiscards;
+ rtk_uint32 ifOutUcastPkts;
+ rtk_uint32 ifOutMulticastPkts;
+ rtk_uint32 ifOutBrocastPkts;
+ rtk_uint32 outOampduPkts;
+ rtk_uint32 inOampduPkts;
+ rtk_uint32 pktgenPkts;
+ rtk_uint32 inMldChecksumError;
+ rtk_uint32 inIgmpChecksumError;
+ rtk_uint32 inMldSpecificQuery;
+ rtk_uint32 inMldGeneralQuery;
+ rtk_uint32 inIgmpSpecificQuery;
+ rtk_uint32 inIgmpGeneralQuery;
+ rtk_uint32 inMldLeaves;
+ rtk_uint32 inIgmpLeaves;
+ rtk_uint32 inIgmpJoinsSuccess;
+ rtk_uint32 inIgmpJoinsFail;
+ rtk_uint32 inMldJoinsSuccess;
+ rtk_uint32 inMldJoinsFail;
+ rtk_uint32 inReportSuppressionDrop;
+ rtk_uint32 inLeaveSuppressionDrop;
+ rtk_uint32 outIgmpReports;
+ rtk_uint32 outIgmpLeaves;
+ rtk_uint32 outIgmpGeneralQuery;
+ rtk_uint32 outIgmpSpecificQuery;
+ rtk_uint32 outMldReports;
+ rtk_uint32 outMldLeaves;
+ rtk_uint32 outMldGeneralQuery;
+ rtk_uint32 outMldSpecificQuery;
+ rtk_uint32 inKnownMulticastPkts;
+ rtk_uint32 ifInMulticastPkts;
+ rtk_uint32 ifInBroadcastPkts;
+ rtk_uint32 ifOutDiscards;
+}rtk_stat_port_cntr_t;
+
+/* port statistic counter index */
+typedef enum rtk_stat_port_type_e
+{
+ STAT_IfInOctets = 0,
+ STAT_Dot3StatsFCSErrors,
+ STAT_Dot3StatsSymbolErrors,
+ STAT_Dot3InPauseFrames,
+ STAT_Dot3ControlInUnknownOpcodes,
+ STAT_EtherStatsFragments,
+ STAT_EtherStatsJabbers,
+ STAT_IfInUcastPkts,
+ STAT_EtherStatsDropEvents,
+ STAT_EtherStatsOctets,
+ STAT_EtherStatsUnderSizePkts,
+ STAT_EtherOversizeStats,
+ STAT_EtherStatsPkts64Octets,
+ STAT_EtherStatsPkts65to127Octets,
+ STAT_EtherStatsPkts128to255Octets,
+ STAT_EtherStatsPkts256to511Octets,
+ STAT_EtherStatsPkts512to1023Octets,
+ STAT_EtherStatsPkts1024to1518Octets,
+ STAT_EtherStatsMulticastPkts,
+ STAT_EtherStatsBroadcastPkts,
+ STAT_IfOutOctets,
+ STAT_Dot3StatsSingleCollisionFrames,
+ STAT_Dot3StatsMultipleCollisionFrames,
+ STAT_Dot3StatsDeferredTransmissions,
+ STAT_Dot3StatsLateCollisions,
+ STAT_EtherStatsCollisions,
+ STAT_Dot3StatsExcessiveCollisions,
+ STAT_Dot3OutPauseFrames,
+ STAT_Dot1dBasePortDelayExceededDiscards,
+ STAT_Dot1dTpPortInDiscards,
+ STAT_IfOutUcastPkts,
+ STAT_IfOutMulticastPkts,
+ STAT_IfOutBroadcastPkts,
+ STAT_OutOampduPkts,
+ STAT_InOampduPkts,
+ STAT_PktgenPkts,
+ STAT_InMldChecksumError,
+ STAT_InIgmpChecksumError,
+ STAT_InMldSpecificQuery,
+ STAT_InMldGeneralQuery,
+ STAT_InIgmpSpecificQuery,
+ STAT_InIgmpGeneralQuery,
+ STAT_InMldLeaves,
+ STAT_InIgmpInterfaceLeaves,
+ STAT_InIgmpJoinsSuccess,
+ STAT_InIgmpJoinsFail,
+ STAT_InMldJoinsSuccess,
+ STAT_InMldJoinsFail,
+ STAT_InReportSuppressionDrop,
+ STAT_InLeaveSuppressionDrop,
+ STAT_OutIgmpReports,
+ STAT_OutIgmpLeaves,
+ STAT_OutIgmpGeneralQuery,
+ STAT_OutIgmpSpecificQuery,
+ STAT_OutMldReports,
+ STAT_OutMldLeaves,
+ STAT_OutMldGeneralQuery,
+ STAT_OutMldSpecificQuery,
+ STAT_InKnownMulticastPkts,
+ STAT_IfInMulticastPkts,
+ STAT_IfInBroadcastPkts,
+ STAT_IfOutDiscards,
+ STAT_PORT_CNTR_END
+}rtk_stat_port_type_t;
+
+typedef enum rtk_logging_counter_mode_e
+{
+ LOGGING_MODE_32BIT = 0,
+ LOGGING_MODE_64BIT,
+ LOGGING_MODE_END
+}rtk_logging_counter_mode_t;
+
+typedef enum rtk_logging_counter_type_e
+{
+ LOGGING_TYPE_PACKET = 0,
+ LOGGING_TYPE_BYTE,
+ LOGGING_TYPE_END
+}rtk_logging_counter_type_t;
+
+typedef enum rtk_stat_lengthMode_e
+{
+ LENGTH_MODE_EXC_TAG = 0,
+ LENGTH_MODE_INC_TAG,
+ LENGTH_MODE_END
+}rtk_stat_lengthMode_t;
+
+
+
+/* Function Name:
+ * rtk_stat_global_reset
+ * Description:
+ * Reset global MIB counter.
+ * Input:
+ * None
+ * Output:
+ * None
+ * Return:
+ * RT_ERR_OK - OK
+ * RT_ERR_FAILED - Failed
+ * RT_ERR_SMI - SMI access error
+ * Note:
+ * Reset MIB counter of ports. API will use global reset while port mask is all-ports.
+ */
+extern rtk_api_ret_t rtk_stat_global_reset(void);
+
+/* Function Name:
+ * rtk_stat_port_reset
+ * Description:
+ * Reset per port MIB counter by port.
+ * Input:
+ * port - port id.
+ * Output:
+ * None
+ * Return:
+ * RT_ERR_OK - OK
+ * RT_ERR_FAILED - Failed
+ * RT_ERR_SMI - SMI access error
+ * Note:
+ *
+ */
+extern rtk_api_ret_t rtk_stat_port_reset(rtk_port_t port);
+
+/* Function Name:
+ * rtk_stat_queueManage_reset
+ * Description:
+ * Reset queue manage MIB counter.
+ * Input:
+ * None
+ * Output:
+ * None
+ * Return:
+ * RT_ERR_OK - OK
+ * RT_ERR_FAILED - Failed
+ * RT_ERR_SMI - SMI access error
+ * Note:
+ *
+ */
+extern rtk_api_ret_t rtk_stat_queueManage_reset(void);
+
+/* Function Name:
+ * rtk_stat_global_get
+ * Description:
+ * Get global MIB counter
+ * Input:
+ * cntr_idx - global counter index.
+ * Output:
+ * pCntr - global counter value.
+ * Return:
+ * RT_ERR_OK - OK
+ * RT_ERR_FAILED - Failed
+ * RT_ERR_SMI - SMI access error
+ * RT_ERR_INPUT - Invalid input parameters.
+ * Note:
+ * Get global MIB counter by index definition.
+ */
+extern rtk_api_ret_t rtk_stat_global_get(rtk_stat_global_type_t cntr_idx, rtk_stat_counter_t *pCntr);
+
+/* Function Name:
+ * rtk_stat_global_getAll
+ * Description:
+ * Get all global MIB counter
+ * Input:
+ * None
+ * Output:
+ * pGlobal_cntrs - global counter structure.
+ * Return:
+ * RT_ERR_OK - OK
+ * RT_ERR_FAILED - Failed
+ * RT_ERR_SMI - SMI access error
+ * RT_ERR_INPUT - Invalid input parameters.
+ * Note:
+ * Get all global MIB counter by index definition.
+ */
+extern rtk_api_ret_t rtk_stat_global_getAll(rtk_stat_global_cntr_t *pGlobal_cntrs);
+
+/* Function Name:
+ * rtk_stat_port_get
+ * Description:
+ * Get per port MIB counter by index
+ * Input:
+ * port - port id.
+ * cntr_idx - port counter index.
+ * Output:
+ * pCntr - MIB retrived counter.
+ * Return:
+ * RT_ERR_OK - OK
+ * RT_ERR_FAILED - Failed
+ * RT_ERR_SMI - SMI access error
+ * Note:
+ * Get per port MIB counter by index definition.
+ */
+extern rtk_api_ret_t rtk_stat_port_get(rtk_port_t port, rtk_stat_port_type_t cntr_idx, rtk_stat_counter_t *pCntr);
+
+/* Function Name:
+ * rtk_stat_port_getAll
+ * Description:
+ * Get all counters of one specified port in the specified device.
+ * Input:
+ * port - port id.
+ * Output:
+ * pPort_cntrs - buffer pointer of counter value.
+ * Return:
+ * RT_ERR_OK - OK
+ * RT_ERR_FAILED - Failed
+ * RT_ERR_SMI - SMI access error
+ * RT_ERR_INPUT - Invalid input parameters.
+ * Note:
+ * Get all MIB counters of one port.
+ */
+extern rtk_api_ret_t rtk_stat_port_getAll(rtk_port_t port, rtk_stat_port_cntr_t *pPort_cntrs);
+
+/* Function Name:
+ * rtk_stat_logging_counterCfg_set
+ * Description:
+ * Set the type and mode of Logging Counter
+ * Input:
+ * idx - The index of Logging Counter. Should be even number only.(0,2,4,6,8.....30)
+ * mode - 32 bits or 64 bits mode
+ * type - Packet counter or byte counter
+ * Output:
+ * None.
+ * Return:
+ * RT_ERR_OK - OK
+ * RT_ERR_OUT_OF_RANGE - Out of range.
+ * RT_ERR_FAILED - Failed
+ * RT_ERR_SMI - SMI access error
+ * RT_ERR_INPUT - Invalid input parameters.
+ * Note:
+ * Set the type and mode of Logging Counter.
+ */
+extern rtk_api_ret_t rtk_stat_logging_counterCfg_set(rtk_uint32 idx, rtk_logging_counter_mode_t mode, rtk_logging_counter_type_t type);
+
+/* Function Name:
+ * rtk_stat_logging_counterCfg_get
+ * Description:
+ * Get the type and mode of Logging Counter
+ * Input:
+ * idx - The index of Logging Counter. Should be even number only.(0,2,4,6,8.....30)
+ * Output:
+ * pMode - 32 bits or 64 bits mode
+ * pType - Packet counter or byte counter
+ * Return:
+ * RT_ERR_OK - OK
+ * RT_ERR_OUT_OF_RANGE - Out of range.
+ * RT_ERR_FAILED - Failed
+ * RT_ERR_NULL_POINTER - NULL Pointer
+ * RT_ERR_SMI - SMI access error
+ * RT_ERR_INPUT - Invalid input parameters.
+ * Note:
+ * Get the type and mode of Logging Counter.
+ */
+extern rtk_api_ret_t rtk_stat_logging_counterCfg_get(rtk_uint32 idx, rtk_logging_counter_mode_t *pMode, rtk_logging_counter_type_t *pType);
+
+/* Function Name:
+ * rtk_stat_logging_counter_reset
+ * Description:
+ * Reset Logging Counter
+ * Input:
+ * idx - The index of Logging Counter. (0~31)
+ * Output:
+ * None.
+ * Return:
+ * RT_ERR_OK - OK
+ * RT_ERR_OUT_OF_RANGE - Out of range.
+ * RT_ERR_FAILED - Failed
+ * RT_ERR_SMI - SMI access error
+ * Note:
+ * Reset Logging Counter.
+ */
+extern rtk_api_ret_t rtk_stat_logging_counter_reset(rtk_uint32 idx);
+
+/* Function Name:
+ * rtk_stat_logging_counter_get
+ * Description:
+ * Get Logging Counter
+ * Input:
+ * idx - The index of Logging Counter. (0~31)
+ * Output:
+ * pCnt - Logging counter value
+ * Return:
+ * RT_ERR_OK - OK
+ * RT_ERR_OUT_OF_RANGE - Out of range.
+ * RT_ERR_FAILED - Failed
+ * RT_ERR_SMI - SMI access error
+ * Note:
+ * Get Logging Counter.
+ */
+extern rtk_api_ret_t rtk_stat_logging_counter_get(rtk_uint32 idx, rtk_uint32 *pCnt);
+
+/* Function Name:
+ * rtk_stat_lengthMode_set
+ * Description:
+ * Set Legnth mode.
+ * Input:
+ * txMode - The length counting mode
+ * rxMode - The length counting mode
+ * Output:
+ * None.
+ * Return:
+ * RT_ERR_OK - OK
+ * RT_ERR_INPUT - Out of range.
+ * RT_ERR_FAILED - Failed
+ * RT_ERR_SMI - SMI access error
+ * Note:
+ *
+ */
+extern rtk_api_ret_t rtk_stat_lengthMode_set(rtk_stat_lengthMode_t txMode, rtk_stat_lengthMode_t rxMode);
+
+/* Function Name:
+ * rtk_stat_lengthMode_get
+ * Description:
+ * Get Legnth mode.
+ * Input:
+ * None.
+ * Output:
+ * pTxMode - The length counting mode
+ * pRxMode - The length counting mode
+ * Return:
+ * RT_ERR_OK - OK
+ * RT_ERR_INPUT - Out of range.
+ * RT_ERR_FAILED - Failed
+ * RT_ERR_SMI - SMI access error
+ * Note:
+ */
+extern rtk_api_ret_t rtk_stat_lengthMode_get(rtk_stat_lengthMode_t *pTxMode, rtk_stat_lengthMode_t *pRxMode);
+
+#endif /* __RTK_API_STAT_H__ */
+