Lines Matching defs:bfa
21 bfa_hwct_msix_dummy(struct bfa_s *bfa, int vec)
26 bfa_hwct_reginit(struct bfa_s *bfa)
28 struct bfa_iocfc_regs_s *bfa_regs = &bfa->iocfc.bfa_regs;
29 void __iomem *kva = bfa_ioc_bar0(&bfa->ioc);
30 int fn = bfa_ioc_pcifn(&bfa->ioc);
42 bfa_hwct2_reginit(struct bfa_s *bfa)
44 struct bfa_iocfc_regs_s *bfa_regs = &bfa->iocfc.bfa_regs;
45 void __iomem *kva = bfa_ioc_bar0(&bfa->ioc);
52 bfa_hwct_reqq_ack(struct bfa_s *bfa, int reqq)
56 r32 = readl(bfa->iocfc.bfa_regs.cpe_q_ctrl[reqq]);
57 writel(r32, bfa->iocfc.bfa_regs.cpe_q_ctrl[reqq]);
67 bfa_hwct_rspq_ack(struct bfa_s *bfa, int rspq, u32 ci)
71 r32 = readl(bfa->iocfc.bfa_regs.rme_q_ctrl[rspq]);
72 writel(r32, bfa->iocfc.bfa_regs.rme_q_ctrl[rspq]);
74 bfa_rspq_ci(bfa, rspq) = ci;
75 writel(ci, bfa->iocfc.bfa_regs.rme_q_ci[rspq]);
84 bfa_hwct2_rspq_ack(struct bfa_s *bfa, int rspq, u32 ci)
86 bfa_rspq_ci(bfa, rspq) = ci;
87 writel(ci, bfa->iocfc.bfa_regs.rme_q_ci[rspq]);
91 bfa_hwct_msix_getvecs(struct bfa_s *bfa, u32 *msix_vecs_bmap,
103 bfa_hwct_msix_init(struct bfa_s *bfa, int nvecs)
106 bfa_trc(bfa, nvecs);
108 bfa->msix.nvecs = nvecs;
109 bfa_hwct_msix_uninstall(bfa);
113 bfa_hwct_msix_ctrl_install(struct bfa_s *bfa)
115 if (bfa->msix.nvecs == 0)
118 if (bfa->msix.nvecs == 1)
119 bfa->msix.handler[BFI_MSIX_LPU_ERR_CT] = bfa_msix_all;
121 bfa->msix.handler[BFI_MSIX_LPU_ERR_CT] = bfa_msix_lpu_err;
125 bfa_hwct_msix_queue_install(struct bfa_s *bfa)
129 if (bfa->msix.nvecs == 0)
132 if (bfa->msix.nvecs == 1) {
134 bfa->msix.handler[i] = bfa_msix_all;
139 bfa->msix.handler[i] = bfa_msix_reqq;
142 bfa->msix.handler[i] = bfa_msix_rspq;
146 bfa_hwct_msix_uninstall(struct bfa_s *bfa)
151 bfa->msix.handler[i] = bfa_hwct_msix_dummy;
158 bfa_hwct_isr_mode_set(struct bfa_s *bfa, bfa_boolean_t msix)
160 bfa_trc(bfa, 0);
161 bfa_ioc_isr_mode_set(&bfa->ioc, msix);
165 bfa_hwct_msix_get_rme_range(struct bfa_s *bfa, u32 *start, u32 *end)