u-boot-2018/include/rtl8363_nb/rtl8367c_asicdrv_mib.h
2024-05-31 13:50:08 +08:00

118 lines
3.4 KiB
C

// SPDX-License-Identifier: GPL-2.0+
#ifndef _RTL8367C_ASICDRV_MIB_H_
#define _RTL8367C_ASICDRV_MIB_H_
#include <rtl8367c_asicdrv.h>
#define RTL8367C_MIB_PORT_OFFSET (0x7C)
#define RTL8367C_MIB_LEARNENTRYDISCARD_OFFSET (0x420)
#define RTL8367C_MAX_LOG_CNT_NUM (32)
#define RTL8367C_MIB_MAX_LOG_CNT_IDX (RTL8367C_MAX_LOG_CNT_NUM - 1)
#define RTL8367C_MIB_LOG_CNT_OFFSET (0x3E0)
#define RTL8367C_MIB_MAX_LOG_MODE_IDX (16-1)
typedef enum RTL8367C_MIBCOUNTER_E{
/* RX */
ifInOctets = 0,
dot3StatsFCSErrors,
dot3StatsSymbolErrors,
dot3InPauseFrames,
dot3ControlInUnknownOpcodes,
etherStatsFragments,
etherStatsJabbers,
ifInUcastPkts,
etherStatsDropEvents,
ifInMulticastPkts,
ifInBroadcastPkts,
inMldChecksumError,
inIgmpChecksumError,
inMldSpecificQuery,
inMldGeneralQuery,
inIgmpSpecificQuery,
inIgmpGeneralQuery,
inMldLeaves,
inIgmpLeaves,
/* TX/RX */
etherStatsOctets,
etherStatsUnderSizePkts,
etherOversizeStats,
etherStatsPkts64Octets,
etherStatsPkts65to127Octets,
etherStatsPkts128to255Octets,
etherStatsPkts256to511Octets,
etherStatsPkts512to1023Octets,
etherStatsPkts1024to1518Octets,
/* TX */
ifOutOctets,
dot3StatsSingleCollisionFrames,
dot3StatMultipleCollisionFrames,
dot3sDeferredTransmissions,
dot3StatsLateCollisions,
etherStatsCollisions,
dot3StatsExcessiveCollisions,
dot3OutPauseFrames,
ifOutDiscards,
/* ALE */
dot1dTpPortInDiscards,
ifOutUcastPkts,
ifOutMulticastPkts,
ifOutBroadcastPkts,
outOampduPkts,
inOampduPkts,
inIgmpJoinsSuccess,
inIgmpJoinsFail,
inMldJoinsSuccess,
inMldJoinsFail,
inReportSuppressionDrop,
inLeaveSuppressionDrop,
outIgmpReports,
outIgmpLeaves,
outIgmpGeneralQuery,
outIgmpSpecificQuery,
outMldReports,
outMldLeaves,
outMldGeneralQuery,
outMldSpecificQuery,
inKnownMulticastPkts,
/*Device only */
dot1dTpLearnedEntryDiscards,
RTL8367C_MIBS_NUMBER,
}RTL8367C_MIBCOUNTER;
extern ret_t rtl8367c_setAsicMIBsCounterReset(rtk_uint32 greset, rtk_uint32 qmreset, rtk_uint32 pmask);
extern ret_t rtl8367c_getAsicMIBsCounter(rtk_uint32 port,RTL8367C_MIBCOUNTER mibIdx, rtk_uint64* pCounter);
extern ret_t rtl8367c_getAsicMIBsLogCounter(rtk_uint32 index, rtk_uint32 *pCounter);
extern ret_t rtl8367c_getAsicMIBsControl(rtk_uint32* pMask);
extern ret_t rtl8367c_setAsicMIBsResetValue(rtk_uint32 value);
extern ret_t rtl8367c_getAsicMIBsResetValue(rtk_uint32* value);
extern ret_t rtl8367c_setAsicMIBsUsageMode(rtk_uint32 mode);
extern ret_t rtl8367c_getAsicMIBsUsageMode(rtk_uint32* pMode);
extern ret_t rtl8367c_setAsicMIBsTimer(rtk_uint32 timer);
extern ret_t rtl8367c_getAsicMIBsTimer(rtk_uint32* pTimer);
extern ret_t rtl8367c_setAsicMIBsLoggingMode(rtk_uint32 index, rtk_uint32 mode);
extern ret_t rtl8367c_getAsicMIBsLoggingMode(rtk_uint32 index, rtk_uint32* pMode);
extern ret_t rtl8367c_setAsicMIBsLoggingType(rtk_uint32 index, rtk_uint32 type);
extern ret_t rtl8367c_getAsicMIBsLoggingType(rtk_uint32 index, rtk_uint32* pType);
extern ret_t rtl8367c_setAsicMIBsResetLoggingCounter(rtk_uint32 index);
extern ret_t rtl8367c_setAsicMIBsLength(rtk_uint32 txLengthMode, rtk_uint32 rxLengthMode);
extern ret_t rtl8367c_getAsicMIBsLength(rtk_uint32 *pTxLengthMode, rtk_uint32 *pRxLengthMode);
#endif /*#ifndef _RTL8367C_ASICDRV_MIB_H_*/