tucana.h (2736B)
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 * File: tucana.h 8 */ 9 10 #ifndef _SOC_TUCANA_H_ 11 #define _SOC_TUCANA_H_ 12 13 #include <soc/drv.h> 14 15 16 extern int soc_tucana_misc_init(int); 17 extern int soc_tucana_mmu_init(int); 18 extern int soc_tucana_age_timer_get(int, int *, int *); 19 extern int soc_tucana_age_timer_max_get(int, int *); 20 extern int soc_tucana_age_timer_set(int, int, int); 21 extern int soc_tucana_stat_get(int, soc_port_t, int, uint64*); 22 23 extern int soc_tucana_arl_parity_error(int unit, int blk, int mem); 24 extern int soc_tucana_mmu_parity_error(int unit, int blk, uint32 info); 25 extern int soc_tucana_mmu_crc_error(int unit, uint32 addr); 26 extern int soc_tucana_pdll_lock_loss(int unit, uint32 info); 27 extern int soc_tucana_num_cells(int unit, int *num_cells); 28 29 #define SOC_TUCANA_CRC_ADDR_MASK 0xffff 30 #define SOC_TUCANA_CRC_MEM_BITS_SHIFT 16 31 #define SOC_TUCANA_CRC_MEM_BITS_MASK 0x3 32 33 #define SOC_TUCANA_PARITY_XQ 0x001 34 #define SOC_TUCANA_PARITY_EBUF_HG 0x002 35 #define SOC_TUCANA_PARITY_EBUF 0x004 36 #define SOC_TUCANA_PARITY_CELLASMB 0x008 37 #define SOC_TUCANA_PARITY_RELMGR 0x010 38 #define SOC_TUCANA_PARITY_CCC 0x020 39 #define SOC_TUCANA_PARITY_CCPTR 0x040 40 #define SOC_TUCANA_PARITY_CG1M1_FIFO 0x080 41 #define SOC_TUCANA_PARITY_CG1M0_FIFO 0x100 42 #define SOC_TUCANA_PARITY_CG0M1_FIFO 0x200 43 #define SOC_TUCANA_PARITY_CG0M0_FIFO 0x400 44 45 #define SOC_TUCANA_MEM_FAIL_DLL 0x2 46 #define SOC_TUCANA_MEM_FAIL_PLL 0x1 47 48 /* Needed for MMU cell calculations. This is a fixed HW value. */ 49 #define SOC_TUCANA_MMU_PTRS_PER_PTR_BLOCK 125 50 51 extern soc_functions_t soc_tucana_drv_funs; 52 53 /* 54 * IPORT Mode Definitions. 55 * These indicate the polarity of the IPORT_MODE bit in the 56 * rule and mask tables. 57 * SOC_IPORT_MODE_SPECIFIC - The port field may be compared like 58 * any other field. It indicates a speicific port (or all ones 59 * to indicate all ports in the block). Note that if the 60 * IPORT_MASK in the mask is 0, then the IPORT field must be 61 * zero for proper operation; the IPORT field is ignored in the 62 * match in this case. 63 * SOC_IPORT_MODE_ARBITRARY_BMAP - Arbitrary bitmaps supported; 64 * special comparison and sorting is required. 65 */ 66 #define SOC_IPORT_MODE_SPECIFIC 0 67 #define SOC_IPORT_MODE_ARBITRARY_BMAP 1 68 69 /* Values for the port type field in the port table in tucana */ 70 71 #define SOC_TUCANA_PORT_TYPE_DEFAULT 0 72 #define SOC_TUCANA_PORT_TYPE_TRUNK 1 73 #define SOC_TUCANA_PORT_TYPE_STACKING 2 74 #define SOC_TUCANA_PORT_TYPE_RESERVED 3 75 76 #endif /* !_SOC_TUCANA_H_ */