intr_cmicx.h (1568B)
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: intr_cmicx.h 8 * Purpose: CMICX interrupt include file 9 */ 10 #ifndef _SOC_INTR_CMICX_H 11 #define _SOC_INTR_CMICX_H 12 13 #include <soc/intr.h> 14 #include <soc/mcm/intr_cmicx.h> 15 #include <soc/mcm/intr_iproc.h> 16 17 #define CMICX_INTR_REG_NUM (8) 18 #define CMCx_SBUSDMA_CHy_BASE (CMC0_SBUSDMA_CH0_DONE) 19 #define INTR_SBUSDMA(x, y) (CMC0_SBUSDMA_CH0_DONE + 48*x + y) 20 #define INTR_SCHAN(x) (SCHAN_CH0_OP_DONE + x) 21 #define INTR_SCHAN_FIFO(x) (SCHAN_FIFO_CH0_DONE + x) 22 #define INTR_FIFO_DMA(x) (FIFO_CH0_DMA_INTR + x) 23 24 /******************************************* 25 * @function soc_cmicx_intr_init 26 * purpose initialize CMICX interrupt framework 27 * @param unit [out] soc_cmic_intr_op_t pointer 28 * 29 * @param unit [in] unit 30 * 31 * @returns SOC_E_NONE 32 * @returns SOC_E_XXX 33 * 34 * @end 35 */ 36 extern int 37 soc_cmicx_intr_init(int unit, soc_cmic_intr_op_t *intr_op); 38 39 /******************************************* 40 * @function soc_cmicx_intr 41 * purpose SOC CMICX Interrupt Service Routine 42 * 43 * @param unit [in] unit 44 * 45 * 46 * @end 47 */ 48 extern void 49 soc_cmicx_intr(void *_unit); 50 51 #ifdef SEPARATE_PKTDMA_INTR_HANDLER 52 /******************************************* 53 * @function soc_cmicx_pktdma_intr 54 * purpose SOC CMICX Interrupt Service Routine 55 * 56 * @param unit [in] unit 57 * 58 * 59 * @end 60 */ 61 extern void 62 soc_cmicx_pktdma_intr(void *_unit); 63 #endif 64 65 #endif /* !_SOC_INTR_CMICX_H */