enduro.h (1903B)
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: enduro.h 8 */ 9 10 #ifndef _SOC_ENDURO_H_ 11 #define _SOC_ENDURO_H_ 12 13 #include <soc/drv.h> 14 #include <shared/sram.h> 15 16 typedef int (*soc_enduro_oam_handler_t)(int unit, soc_field_t fault_field); 17 18 typedef _shr_ext_sram_entry_t en_ext_sram_entry_t; 19 20 #define SOC_EN_BROADCAST_RANGE_DEFAULT 4096 21 #define SOC_EN_L2_MULTICAST_RANGE_DEFAULT 1024 22 #define SOC_EN_IP_MULTICAST_RANGE_DEFAULT 2048 23 24 extern int soc_enduro_misc_init(int); 25 extern int soc_enduro_mmu_init(int); 26 extern int soc_enduro_age_timer_get(int, int *, int *); 27 extern int soc_enduro_age_timer_max_get(int, int *); 28 extern int soc_enduro_age_timer_set(int, int, int); 29 extern void soc_enduro_oam_handler_register(int unit, soc_enduro_oam_handler_t handler); 30 extern void soc_enduro_parity_error(void *unit_vp, void *d1, void *d2, 31 void *d3, void *d4); 32 extern int _soc_enduro_mem_parity_control(int unit, soc_mem_t mem, 33 int copyno, int enable); 34 extern void soc_enduro_mem_config(int unit); 35 extern soc_functions_t soc_enduro_drv_funs; 36 extern void soc_enduro_mem_nack(void *unit_vp, void *addr_vp, void *blk_vp, 37 void *d3, void *d4); 38 extern int soc_enduro_ser_inject_error(int unit, uint32 flags, soc_mem_t mem, 39 int pipeTarget, int block, int index); 40 extern soc_error_t soc_enduro_ser_error_injection_support (int unit, soc_mem_t mem, int pipe); 41 extern int soc_enduro_l3_defip_index_map(int unit, soc_mem_t mem, int index); 42 extern int soc_enduro_l3_defip_index_remap(int unit, soc_mem_t mem, int index); 43 extern int soc_enduro_mem_index_remap(int unit, soc_mem_t mem, int index); 44 #endif /* !_SOC_ENDURO_H_ */