Lines Matching refs:bfa
23 bfa_hwcb_reginit(struct bfa_s *bfa) in bfa_hwcb_reginit() argument
25 struct bfa_iocfc_regs_s *bfa_regs = &bfa->iocfc.bfa_regs; in bfa_hwcb_reginit()
26 void __iomem *kva = bfa_ioc_bar0(&bfa->ioc); in bfa_hwcb_reginit()
27 int fn = bfa_ioc_pcifn(&bfa->ioc); in bfa_hwcb_reginit()
39 bfa_hwcb_reqq_ack_msix(struct bfa_s *bfa, int reqq) in bfa_hwcb_reqq_ack_msix() argument
41 writel(__HFN_INT_CPE_Q0 << CPE_Q_NUM(bfa_ioc_pcifn(&bfa->ioc), reqq), in bfa_hwcb_reqq_ack_msix()
42 bfa->iocfc.bfa_regs.intr_status); in bfa_hwcb_reqq_ack_msix()
53 bfa_hwcb_rspq_ack_msix(struct bfa_s *bfa, int rspq, u32 ci) in bfa_hwcb_rspq_ack_msix() argument
55 writel(__HFN_INT_RME_Q0 << RME_Q_NUM(bfa_ioc_pcifn(&bfa->ioc), rspq), in bfa_hwcb_rspq_ack_msix()
56 bfa->iocfc.bfa_regs.intr_status); in bfa_hwcb_rspq_ack_msix()
58 if (bfa_rspq_ci(bfa, rspq) == ci) in bfa_hwcb_rspq_ack_msix()
61 bfa_rspq_ci(bfa, rspq) = ci; in bfa_hwcb_rspq_ack_msix()
62 writel(ci, bfa->iocfc.bfa_regs.rme_q_ci[rspq]); in bfa_hwcb_rspq_ack_msix()
67 bfa_hwcb_rspq_ack(struct bfa_s *bfa, int rspq, u32 ci) in bfa_hwcb_rspq_ack() argument
69 if (bfa_rspq_ci(bfa, rspq) == ci) in bfa_hwcb_rspq_ack()
72 bfa_rspq_ci(bfa, rspq) = ci; in bfa_hwcb_rspq_ack()
73 writel(ci, bfa->iocfc.bfa_regs.rme_q_ci[rspq]); in bfa_hwcb_rspq_ack()
78 bfa_hwcb_msix_getvecs(struct bfa_s *bfa, u32 *msix_vecs_bmap, in bfa_hwcb_msix_getvecs() argument
82 if (bfa_ioc_pcifn(&bfa->ioc) == 0) { in bfa_hwcb_msix_getvecs()
107 bfa_hwcb_msix_dummy(struct bfa_s *bfa, int vec) in bfa_hwcb_msix_dummy() argument
115 bfa_hwcb_msix_init(struct bfa_s *bfa, int nvecs) in bfa_hwcb_msix_init() argument
119 bfa->msix.nvecs = nvecs; in bfa_hwcb_msix_init()
120 bfa_hwcb_msix_uninstall(bfa); in bfa_hwcb_msix_init()
124 bfa_hwcb_msix_ctrl_install(struct bfa_s *bfa) in bfa_hwcb_msix_ctrl_install() argument
128 if (bfa->msix.nvecs == 0) in bfa_hwcb_msix_ctrl_install()
131 if (bfa->msix.nvecs == 1) { in bfa_hwcb_msix_ctrl_install()
133 bfa->msix.handler[i] = bfa_msix_all; in bfa_hwcb_msix_ctrl_install()
138 bfa->msix.handler[i] = bfa_msix_lpu_err; in bfa_hwcb_msix_ctrl_install()
142 bfa_hwcb_msix_queue_install(struct bfa_s *bfa) in bfa_hwcb_msix_queue_install() argument
146 if (bfa->msix.nvecs == 0) in bfa_hwcb_msix_queue_install()
149 if (bfa->msix.nvecs == 1) { in bfa_hwcb_msix_queue_install()
151 bfa->msix.handler[i] = bfa_msix_all; in bfa_hwcb_msix_queue_install()
156 bfa->msix.handler[i] = bfa_msix_reqq; in bfa_hwcb_msix_queue_install()
159 bfa->msix.handler[i] = bfa_msix_rspq; in bfa_hwcb_msix_queue_install()
163 bfa_hwcb_msix_uninstall(struct bfa_s *bfa) in bfa_hwcb_msix_uninstall() argument
168 bfa->msix.handler[i] = bfa_hwcb_msix_dummy; in bfa_hwcb_msix_uninstall()
175 bfa_hwcb_isr_mode_set(struct bfa_s *bfa, bfa_boolean_t msix) in bfa_hwcb_isr_mode_set() argument
178 bfa->iocfc.hwif.hw_reqq_ack = bfa_hwcb_reqq_ack_msix; in bfa_hwcb_isr_mode_set()
179 bfa->iocfc.hwif.hw_rspq_ack = bfa_hwcb_rspq_ack_msix; in bfa_hwcb_isr_mode_set()
181 bfa->iocfc.hwif.hw_reqq_ack = NULL; in bfa_hwcb_isr_mode_set()
182 bfa->iocfc.hwif.hw_rspq_ack = bfa_hwcb_rspq_ack; in bfa_hwcb_isr_mode_set()
187 bfa_hwcb_msix_get_rme_range(struct bfa_s *bfa, u32 *start, u32 *end) in bfa_hwcb_msix_get_rme_range() argument