mmuerr.h (1670B)
1 /* 2 * 3 * This license is set out in https://raw.githubusercontent.com/Broadcom-Network-Switching-Software/OpenBCM/master/Legal/LICENSE file. 4 * 5 * Copyright 2007-2019 Broadcom Inc. All rights reserved. 6 */ 7 8 #ifndef _SOC_MMUERR_H 9 #define _SOC_MMUERR_H 10 11 extern int soc_mmu_error_init(int unit); 12 extern int soc_mmu_error_done(int unit); 13 extern int soc_mmu_error_all(int unit); 14 15 /* MMU Error Status register decodings */ 16 #define SOC_ERR_HAND_MMU_XQ_PARITY 0x00000001 /* Notify */ 17 #define SOC_ERR_HAND_MMU_LLA_PARITY 0x00000002 /* Fatal */ 18 #define SOC_ERR_HAND_MMU_PP_SBE 0x00000004 /* Notify */ 19 #define SOC_ERR_HAND_MMU_PP_DBE 0x00000008 /* Notify */ 20 #define SOC_ERR_HAND_MMU_UPK_PARITY 0x00000010 /* Fatal */ 21 #define SOC_ERR_HAND_MMU_ING_PARITY 0x00000020 /* Fatal */ 22 #define SOC_ERR_HAND_MMU_EGR_PARITY 0x00000040 /* Fatal */ 23 #define SOC_ERR_HAND_MMU_ALL 0x0000003f /* Mask */ 24 #define SOC_ERR_HAND_MMU_ALL_H15 0x0000007f /* Mask */ 25 26 #define SOC_MMU_ERR_CLEAR_ALL 0x000001ff /* Mask */ 27 28 #define SOC_MMU_ERR_ING_SHIFT 21 29 #define SOC_MMU_ERR_ING_MASK 0x7 30 31 #define SOC_MMU_ERR_ING_ING_BUF 1 32 #define SOC_MMU_ERR_ING_ING_VLAN 2 33 #define SOC_MMU_ERR_ING_ING_MC 4 34 35 /* Statistics tracking for each port's MMU */ 36 typedef struct soc_mmu_error_s { 37 int pp_sbe_blocks_init; 38 int pp_dbe_blocks_init; 39 int pp_sbe_cells_init; 40 int pp_dbe_cells_init; 41 int pp_sbe_blocks; 42 int pp_dbe_blocks; 43 int pp_sbe_cells; 44 int pp_dbe_cells; 45 int xq_parity; 46 int lla_parity; 47 int upk_parity; 48 int ing_parity; 49 int egr_parity; 50 } soc_mmu_error_t; 51 52 #endif /* !_SOC_MMUERR_H */ 53 54