openbcm

Git mirror of https://github.com/Broadcom-Network-Switching-Software/OpenBCM
git clone git://git.finwo.net/mirror/broadcom/openbcm
Log | Files | Refs | README

triumph2.h (2721B)


      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:        triumph2.h
      8  */
      9 
     10 #ifndef _SOC_TRIUMPH2_H_
     11 #define _SOC_TRIUMPH2_H_
     12 
     13 #include <soc/drv.h>
     14 #include <soc/mem.h>
     15 #include <shared/sram.h>
     16 
     17 typedef int (*soc_triumph2_oam_handler_t)(int unit, soc_field_t fault_field);
     18 typedef int (*soc_triumph2_oam_ser_handler_t)(int unit, soc_mem_t mem, int index);
     19 
     20 extern void soc_triumph2_stat_nack(int unit, int *fixed);
     21 extern int soc_triumph2_misc_init(int);
     22 extern int soc_triumph2_mmu_init(int);
     23 extern int soc_triumph2_age_timer_get(int, int *, int *);
     24 extern int soc_triumph2_age_timer_max_get(int, int *);
     25 extern int soc_triumph2_age_timer_set(int, int, int);
     26 extern void soc_triumph2_parity_error(void *unit_vp, void *d1, void *d2,
     27                                       void *d3, void *d4);
     28 extern void soc_triumph2_oam_events(void *unit_vp, void *d1, void *d2,
     29                                     void *d3, void *d4);
     30 extern void soc_triumph2_mem_nack(void *unit_vp, void *addr_vp, void *d2,
     31                                      void *d3, void *d4);
     32 extern void soc_triumph2_ser_fail(int unit);
     33 extern int soc_triumph2_ser_mem_clear(int unit, soc_mem_t mem);
     34 extern int _soc_triumph2_mem_parity_control(int unit, soc_mem_t mem,
     35                                             int copyno, int enable);
     36 extern int _soc_triumph2_esm_process_intr_status(int unit);
     37 extern void soc_triumph2_esm_intr_status(void *unit_vp, void *d1, void *d2,
     38                                          void *d3, void *d4);
     39 extern int soc_triumph2_pipe_mem_clear(int unit);
     40 extern soc_functions_t soc_triumph2_drv_funs;
     41 extern void soc_triumph2_oam_handler_register(int unit,
     42 											  soc_triumph2_oam_handler_t
     43 											  handler);
     44 extern void soc_triumph2_oam_ser_handler_register(int unit, soc_triumph2_oam_ser_handler_t handler);
     45 extern int soc_triumph2_oam_ser_process(int unit, soc_mem_t mem, int index);
     46 extern int soc_tr2_xqport_mode_change(int unit, soc_port_t port, 
     47                                       soc_mac_mode_t mode);
     48 extern void soc_triumph2_mem_config(int unit);
     49 
     50 #if defined(SER_TR_TEST_SUPPORT)
     51 extern int soc_tr2_ser_inject_error(int unit, uint32 flags, soc_mem_t mem,
     52 									int pipeTarget, int block, int index);
     53 extern int soc_tr2_ser_mem_test(int unit, soc_mem_t mem,
     54 							    _soc_ser_test_t test_type, int cmd);
     55 extern int soc_tr2_ser_test(int unit, _soc_ser_test_t test_type);
     56 extern int _soc_triumph2_mem_nack_error_test(int unit,
     57 											 _soc_ser_test_t test_type,
     58 											 int *testErrors);
     59 #endif
     60 
     61 #endif    /* !_SOC_TRIUMPH2_H_ */