dcmn_intr.h (1645B)
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-2020 Broadcom Inc. All rights reserved. 6 */ 7 8 #ifndef _DCMN_INTR_H_ 9 #define _DCMN_INTR_H_ 10 11 /************* 12 * INCLUDES * 13 */ 14 #include <soc/defs.h> 15 #include <soc/types.h> 16 #include <bcm/error.h> 17 18 /************* 19 * TYPE DEFS * 20 */ 21 22 /************* 23 * STRUCTURES * 24 */ 25 26 /* 27 * static data strucure which holds the info about: 28 * the function suppose to run for each interrupt 29 * info about storm threshold 30 */ 31 typedef struct interrupt_common_params_s { 32 uint32* int_disable_on_init; 33 uint32* int_active_on_init; 34 uint32* int_disable_print_on_init; 35 soc_mem_t* cached_mem; 36 } intr_common_params_t; 37 38 /************* 39 * FUNCTIONS * 40 */ 41 int interrupt_appl_init(int unit); 42 int interrupt_appl_deinit(int unit); 43 int interrupt_appl_nocache_deinit(int unit); 44 45 #ifdef BCM_QUX_SUPPORT 46 int qux_interrupt_cmn_param_init(int unit, intr_common_params_t* interrupt_common_params); 47 #endif 48 49 #ifdef BCM_QAX_SUPPORT 50 int qax_interrupt_cmn_param_init(int unit, intr_common_params_t* interrupt_common_params); 51 #endif 52 53 #ifdef BCM_JERICHO_PLUS_SUPPORT 54 int jerp_interrupt_cmn_param_init(int unit, intr_common_params_t* interrupt_common_params); 55 #endif 56 57 #ifdef BCM_JERICHO_SUPPORT 58 int jer_interrupt_cmn_param_init(int unit, intr_common_params_t* interrupt_common_params); 59 #endif 60 #ifdef BCM_DFE_SUPPORT 61 int fe3200_interrupt_cmn_param_init(int unit, intr_common_params_t* interrupt_common_params); 62 #endif 63 64 uint32 *interrupt_active_on_intr_get(int unit); 65 66 #endif /*_DCMN_INTR_H_ */