p_mngr 272 drivers/net/ethernet/qlogic/qed/qed_cxt.c static void qed_cxt_cdu_iids(struct qed_cxt_mngr *p_mngr, p_mngr 278 drivers/net/ethernet/qlogic/qed/qed_cxt.c iids->pf_cids += p_mngr->conn_cfg[type].cid_count; p_mngr 279 drivers/net/ethernet/qlogic/qed/qed_cxt.c iids->per_vf_cids += p_mngr->conn_cfg[type].cids_per_vf; p_mngr 289 drivers/net/ethernet/qlogic/qed/qed_cxt.c static void qed_cxt_src_iids(struct qed_cxt_mngr *p_mngr, p_mngr 298 drivers/net/ethernet/qlogic/qed/qed_cxt.c iids->pf_cids += p_mngr->conn_cfg[i].cid_count; p_mngr 299 drivers/net/ethernet/qlogic/qed/qed_cxt.c iids->per_vf_cids += p_mngr->conn_cfg[i].cids_per_vf; p_mngr 303 drivers/net/ethernet/qlogic/qed/qed_cxt.c iids->pf_cids += p_mngr->arfs_count; p_mngr 316 drivers/net/ethernet/qlogic/qed/qed_cxt.c struct qed_cxt_mngr *p_mngr, p_mngr 330 drivers/net/ethernet/qlogic/qed/qed_cxt.c struct qed_conn_type_cfg *p_cfg = &p_mngr->conn_cfg[i]; p_mngr 376 drivers/net/ethernet/qlogic/qed/qed_cxt.c struct qed_cxt_mngr *p_mngr = p_hwfn->p_cxt_mngr; p_mngr 382 drivers/net/ethernet/qlogic/qed/qed_cxt.c iids->cids += p_mngr->conn_cfg[type].cid_count; p_mngr 383 drivers/net/ethernet/qlogic/qed/qed_cxt.c vf_cids += p_mngr->conn_cfg[type].cids_per_vf; p_mngr 385 drivers/net/ethernet/qlogic/qed/qed_cxt.c segs = p_mngr->conn_cfg[type].tid_seg; p_mngr 399 drivers/net/ethernet/qlogic/qed/qed_cxt.c iids->vf_cids += vf_cids * p_mngr->vf_count; p_mngr 400 drivers/net/ethernet/qlogic/qed/qed_cxt.c iids->tids += vf_tids * p_mngr->vf_count; p_mngr 489 drivers/net/ethernet/qlogic/qed/qed_cxt.c struct qed_cxt_mngr *p_mngr = p_hwfn->p_cxt_mngr; p_mngr 490 drivers/net/ethernet/qlogic/qed/qed_cxt.c struct qed_tid_seg *p_seg = &p_mngr->conn_cfg[proto].tid_seg[seg]; p_mngr 573 drivers/net/ethernet/qlogic/qed/qed_cxt.c struct qed_cxt_mngr *p_mngr = p_hwfn->p_cxt_mngr; p_mngr 588 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_mngr->pf_start_line = RESC_START(p_hwfn, QED_ILT); p_mngr 595 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_cli = qed_cxt_set_cli(&p_mngr->clients[ILT_CLI_CDUC]); p_mngr 597 drivers/net/ethernet/qlogic/qed/qed_cxt.c curr_line = p_mngr->pf_start_line; p_mngr 603 drivers/net/ethernet/qlogic/qed/qed_cxt.c qed_cxt_cdu_iids(p_mngr, &cdu_iids); p_mngr 628 drivers/net/ethernet/qlogic/qed/qed_cxt.c for (i = 1; i < p_mngr->vf_count; i++) p_mngr 633 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_cli = qed_cxt_set_cli(&p_mngr->clients[ILT_CLI_CDUT]); p_mngr 643 drivers/net/ethernet/qlogic/qed/qed_cxt.c total = p_seg->count * p_mngr->task_type_size[p_seg->type]; p_mngr 645 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_mngr->task_type_size[p_seg->type]); p_mngr 682 drivers/net/ethernet/qlogic/qed/qed_cxt.c total = p_seg->count * p_mngr->task_type_size[p_seg->type]; p_mngr 686 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_mngr->task_type_size[p_seg->type]); p_mngr 701 drivers/net/ethernet/qlogic/qed/qed_cxt.c total = p_seg->count * p_mngr->task_type_size[p_seg->type]; p_mngr 706 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_mngr->task_type_size[p_seg->type]); p_mngr 719 drivers/net/ethernet/qlogic/qed/qed_cxt.c task_size = p_mngr->task_type_size[p_seg->type]; p_mngr 729 drivers/net/ethernet/qlogic/qed/qed_cxt.c for (i = 1; i < p_mngr->vf_count; i++) { p_mngr 741 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_cli = qed_cxt_set_cli(&p_mngr->clients[ILT_CLI_QM]); p_mngr 766 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_cli = qed_cxt_set_cli(&p_mngr->clients[ILT_CLI_SRC]); p_mngr 767 drivers/net/ethernet/qlogic/qed/qed_cxt.c qed_cxt_src_iids(p_mngr, &src_iids); p_mngr 773 drivers/net/ethernet/qlogic/qed/qed_cxt.c total = src_iids.pf_cids + src_iids.per_vf_cids * p_mngr->vf_count; p_mngr 791 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_cli = qed_cxt_set_cli(&p_mngr->clients[ILT_CLI_TM]); p_mngr 792 drivers/net/ethernet/qlogic/qed/qed_cxt.c qed_cxt_tm_iids(p_hwfn, p_mngr, &tm_iids); p_mngr 815 drivers/net/ethernet/qlogic/qed/qed_cxt.c for (i = 1; i < p_mngr->vf_count; i++) p_mngr 824 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_cli = qed_cxt_set_cli(&p_mngr->clients[ILT_CLI_TSDM]); p_mngr 847 drivers/net/ethernet/qlogic/qed/qed_cxt.c struct qed_cxt_mngr *p_mngr; p_mngr 861 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_mngr = p_hwfn->p_cxt_mngr; p_mngr 862 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_cli = &p_mngr->clients[ILT_CLI_CDUT]; p_mngr 870 drivers/net/ethernet/qlogic/qed/qed_cxt.c elem_size = p_mngr->task_type_size[p_seg->type]; p_mngr 883 drivers/net/ethernet/qlogic/qed/qed_cxt.c struct qed_cxt_mngr *p_mngr = p_hwfn->p_cxt_mngr; p_mngr 886 drivers/net/ethernet/qlogic/qed/qed_cxt.c if (!p_mngr->t2) p_mngr 889 drivers/net/ethernet/qlogic/qed/qed_cxt.c for (i = 0; i < p_mngr->t2_num_pages; i++) p_mngr 890 drivers/net/ethernet/qlogic/qed/qed_cxt.c if (p_mngr->t2[i].p_virt) p_mngr 892 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_mngr->t2[i].size, p_mngr 893 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_mngr->t2[i].p_virt, p_mngr 894 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_mngr->t2[i].p_phys); p_mngr 896 drivers/net/ethernet/qlogic/qed/qed_cxt.c kfree(p_mngr->t2); p_mngr 897 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_mngr->t2 = NULL; p_mngr 902 drivers/net/ethernet/qlogic/qed/qed_cxt.c struct qed_cxt_mngr *p_mngr = p_hwfn->p_cxt_mngr; p_mngr 918 drivers/net/ethernet/qlogic/qed/qed_cxt.c qed_cxt_src_iids(p_mngr, &src_iids); p_mngr 919 drivers/net/ethernet/qlogic/qed/qed_cxt.c conn_num = src_iids.pf_cids + src_iids.per_vf_cids * p_mngr->vf_count; p_mngr 924 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_mngr->t2_num_pages = DIV_ROUND_UP(total_size, psz); p_mngr 927 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_mngr->t2 = kcalloc(p_mngr->t2_num_pages, sizeof(struct qed_dma_mem), p_mngr 929 drivers/net/ethernet/qlogic/qed/qed_cxt.c if (!p_mngr->t2) { p_mngr 935 drivers/net/ethernet/qlogic/qed/qed_cxt.c for (i = 0; i < p_mngr->t2_num_pages; i++) { p_mngr 937 drivers/net/ethernet/qlogic/qed/qed_cxt.c void **p_virt = &p_mngr->t2[i].p_virt; p_mngr 940 drivers/net/ethernet/qlogic/qed/qed_cxt.c &p_mngr->t2[i].p_phys, p_mngr 942 drivers/net/ethernet/qlogic/qed/qed_cxt.c if (!p_mngr->t2[i].p_virt) { p_mngr 946 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_mngr->t2[i].size = size; p_mngr 955 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_mngr->first_free = (u64) p_mngr->t2[0].p_phys; p_mngr 957 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_t2 = &p_mngr->t2[(conn_num - 1) / ent_per_page]; p_mngr 958 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_mngr->last_free = (u64) p_t2->p_phys + p_mngr 961 drivers/net/ethernet/qlogic/qed/qed_cxt.c for (i = 0; i < p_mngr->t2_num_pages; i++) { p_mngr 965 drivers/net/ethernet/qlogic/qed/qed_cxt.c struct src_ent *entries = p_mngr->t2[i].p_virt; p_mngr 966 drivers/net/ethernet/qlogic/qed/qed_cxt.c u64 p_ent_phys = (u64) p_mngr->t2[i].p_phys, val; p_mngr 974 drivers/net/ethernet/qlogic/qed/qed_cxt.c if (i < p_mngr->t2_num_pages - 1) p_mngr 975 drivers/net/ethernet/qlogic/qed/qed_cxt.c val = (u64) p_mngr->t2[i + 1].p_phys; p_mngr 1011 drivers/net/ethernet/qlogic/qed/qed_cxt.c struct qed_cxt_mngr *p_mngr = p_hwfn->p_cxt_mngr; p_mngr 1016 drivers/net/ethernet/qlogic/qed/qed_cxt.c for (i = 0; p_mngr->ilt_shadow && i < ilt_size; i++) { p_mngr 1017 drivers/net/ethernet/qlogic/qed/qed_cxt.c struct qed_dma_mem *p_dma = &p_mngr->ilt_shadow[i]; p_mngr 1025 drivers/net/ethernet/qlogic/qed/qed_cxt.c kfree(p_mngr->ilt_shadow); p_mngr 1079 drivers/net/ethernet/qlogic/qed/qed_cxt.c struct qed_cxt_mngr *p_mngr = p_hwfn->p_cxt_mngr; p_mngr 1080 drivers/net/ethernet/qlogic/qed/qed_cxt.c struct qed_ilt_client_cfg *clients = p_mngr->clients; p_mngr 1086 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_mngr->ilt_shadow = kcalloc(size, sizeof(struct qed_dma_mem), p_mngr 1088 drivers/net/ethernet/qlogic/qed/qed_cxt.c if (!p_mngr->ilt_shadow) { p_mngr 1104 drivers/net/ethernet/qlogic/qed/qed_cxt.c for (k = 0; k < p_mngr->vf_count; k++) { p_mngr 1125 drivers/net/ethernet/qlogic/qed/qed_cxt.c struct qed_cxt_mngr *p_mngr = p_hwfn->p_cxt_mngr; p_mngr 1129 drivers/net/ethernet/qlogic/qed/qed_cxt.c kfree(p_mngr->acquired[type].cid_map); p_mngr 1130 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_mngr->acquired[type].max_count = 0; p_mngr 1131 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_mngr->acquired[type].start_cid = 0; p_mngr 1134 drivers/net/ethernet/qlogic/qed/qed_cxt.c kfree(p_mngr->acquired_vf[type][vf].cid_map); p_mngr 1135 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_mngr->acquired_vf[type][vf].max_count = 0; p_mngr 1136 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_mngr->acquired_vf[type][vf].start_cid = 0; p_mngr 1171 drivers/net/ethernet/qlogic/qed/qed_cxt.c struct qed_cxt_mngr *p_mngr = p_hwfn->p_cxt_mngr; p_mngr 1176 drivers/net/ethernet/qlogic/qed/qed_cxt.c struct qed_conn_type_cfg *p_cfg = &p_mngr->conn_cfg[type]; p_mngr 1180 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_map = &p_mngr->acquired[type]; p_mngr 1187 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_map = &p_mngr->acquired_vf[type][vf]; p_mngr 1208 drivers/net/ethernet/qlogic/qed/qed_cxt.c struct qed_cxt_mngr *p_mngr; p_mngr 1211 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_mngr = kzalloc(sizeof(*p_mngr), GFP_KERNEL); p_mngr 1212 drivers/net/ethernet/qlogic/qed/qed_cxt.c if (!p_mngr) p_mngr 1216 drivers/net/ethernet/qlogic/qed/qed_cxt.c clients = p_mngr->clients; p_mngr 1242 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_mngr->clients[i].p_size.val = ILT_DEFAULT_HW_P_SIZE; p_mngr 1245 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_mngr->task_type_size[0] = TYPE0_TASK_CXT_SIZE(p_hwfn); p_mngr 1246 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_mngr->task_type_size[1] = TYPE1_TASK_CXT_SIZE(p_hwfn); p_mngr 1249 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_mngr->vf_count = p_hwfn->cdev->p_iov_info->total_vfs; p_mngr 1251 drivers/net/ethernet/qlogic/qed/qed_cxt.c mutex_init(&p_mngr->mutex); p_mngr 1254 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_hwfn->p_cxt_mngr = p_mngr; p_mngr 1300 drivers/net/ethernet/qlogic/qed/qed_cxt.c struct qed_cxt_mngr *p_mngr = p_hwfn->p_cxt_mngr; p_mngr 1310 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_cfg = &p_mngr->conn_cfg[type]; p_mngr 1312 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_map = &p_mngr->acquired[type]; p_mngr 1324 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_map = &p_mngr->acquired_vf[type][vf]; p_mngr 1543 drivers/net/ethernet/qlogic/qed/qed_cxt.c struct qed_cxt_mngr *p_mngr = p_hwfn->p_cxt_mngr; p_mngr 1546 drivers/net/ethernet/qlogic/qed/qed_cxt.c dq_pf_max_cid += (p_mngr->conn_cfg[0].cid_count >> DQ_RANGE_SHIFT); p_mngr 1549 drivers/net/ethernet/qlogic/qed/qed_cxt.c dq_vf_max_cid += (p_mngr->conn_cfg[0].cids_per_vf >> DQ_RANGE_SHIFT); p_mngr 1552 drivers/net/ethernet/qlogic/qed/qed_cxt.c dq_pf_max_cid += (p_mngr->conn_cfg[1].cid_count >> DQ_RANGE_SHIFT); p_mngr 1555 drivers/net/ethernet/qlogic/qed/qed_cxt.c dq_vf_max_cid += (p_mngr->conn_cfg[1].cids_per_vf >> DQ_RANGE_SHIFT); p_mngr 1558 drivers/net/ethernet/qlogic/qed/qed_cxt.c dq_pf_max_cid += (p_mngr->conn_cfg[2].cid_count >> DQ_RANGE_SHIFT); p_mngr 1561 drivers/net/ethernet/qlogic/qed/qed_cxt.c dq_vf_max_cid += (p_mngr->conn_cfg[2].cids_per_vf >> DQ_RANGE_SHIFT); p_mngr 1564 drivers/net/ethernet/qlogic/qed/qed_cxt.c dq_pf_max_cid += (p_mngr->conn_cfg[3].cid_count >> DQ_RANGE_SHIFT); p_mngr 1567 drivers/net/ethernet/qlogic/qed/qed_cxt.c dq_vf_max_cid += (p_mngr->conn_cfg[3].cids_per_vf >> DQ_RANGE_SHIFT); p_mngr 1570 drivers/net/ethernet/qlogic/qed/qed_cxt.c dq_pf_max_cid += (p_mngr->conn_cfg[4].cid_count >> DQ_RANGE_SHIFT); p_mngr 1573 drivers/net/ethernet/qlogic/qed/qed_cxt.c dq_vf_max_cid += (p_mngr->conn_cfg[4].cids_per_vf >> DQ_RANGE_SHIFT); p_mngr 1576 drivers/net/ethernet/qlogic/qed/qed_cxt.c dq_pf_max_cid += (p_mngr->conn_cfg[5].cid_count >> DQ_RANGE_SHIFT); p_mngr 1579 drivers/net/ethernet/qlogic/qed/qed_cxt.c dq_vf_max_cid += (p_mngr->conn_cfg[5].cids_per_vf >> DQ_RANGE_SHIFT); p_mngr 1676 drivers/net/ethernet/qlogic/qed/qed_cxt.c struct qed_cxt_mngr *p_mngr; p_mngr 1683 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_mngr = p_hwfn->p_cxt_mngr; p_mngr 1684 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_shdw = p_mngr->ilt_shadow; p_mngr 1691 drivers/net/ethernet/qlogic/qed/qed_cxt.c line = clients[i].first.val - p_mngr->pf_start_line; p_mngr 1695 drivers/net/ethernet/qlogic/qed/qed_cxt.c for (; line <= clients[i].last.val - p_mngr->pf_start_line; p_mngr 1721 drivers/net/ethernet/qlogic/qed/qed_cxt.c struct qed_cxt_mngr *p_mngr = p_hwfn->p_cxt_mngr; p_mngr 1726 drivers/net/ethernet/qlogic/qed/qed_cxt.c qed_cxt_src_iids(p_mngr, &src_iids); p_mngr 1727 drivers/net/ethernet/qlogic/qed/qed_cxt.c conn_num = src_iids.pf_cids + src_iids.per_vf_cids * p_mngr->vf_count; p_mngr 1762 drivers/net/ethernet/qlogic/qed/qed_cxt.c struct qed_cxt_mngr *p_mngr = p_hwfn->p_cxt_mngr; p_mngr 1769 drivers/net/ethernet/qlogic/qed/qed_cxt.c qed_cxt_tm_iids(p_hwfn, p_mngr, &tm_iids); p_mngr 1774 drivers/net/ethernet/qlogic/qed/qed_cxt.c for (i = 0; i < p_mngr->vf_count; i++) { p_mngr 1806 drivers/net/ethernet/qlogic/qed/qed_cxt.c for (i = 0; i < p_mngr->vf_count; i++) { p_mngr 1859 drivers/net/ethernet/qlogic/qed/qed_cxt.c struct qed_cxt_mngr *p_mngr = p_hwfn->p_cxt_mngr; p_mngr 1863 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_fcoe = &p_mngr->conn_cfg[PROTOCOLID_FCOE]; p_mngr 1902 drivers/net/ethernet/qlogic/qed/qed_cxt.c struct qed_cxt_mngr *p_mngr = p_hwfn->p_cxt_mngr; p_mngr 1918 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_map = &p_mngr->acquired[type]; p_mngr 1920 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_map = &p_mngr->acquired_vf[type][vfid]; p_mngr 1957 drivers/net/ethernet/qlogic/qed/qed_cxt.c struct qed_cxt_mngr *p_mngr = p_hwfn->p_cxt_mngr; p_mngr 1963 drivers/net/ethernet/qlogic/qed/qed_cxt.c *pp_map = &p_mngr->acquired[*p_type]; p_mngr 1965 drivers/net/ethernet/qlogic/qed/qed_cxt.c *pp_map = &p_mngr->acquired_vf[*p_type][vfid]; p_mngr 2029 drivers/net/ethernet/qlogic/qed/qed_cxt.c struct qed_cxt_mngr *p_mngr = p_hwfn->p_cxt_mngr; p_mngr 2053 drivers/net/ethernet/qlogic/qed/qed_cxt.c if (!p_mngr->ilt_shadow[line].p_virt) p_mngr 2056 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_info->p_cxt = p_mngr->ilt_shadow[line].p_virt + p_mngr 2202 drivers/net/ethernet/qlogic/qed/qed_cxt.c struct qed_cxt_mngr *p_mngr = p_hwfn->p_cxt_mngr; p_mngr 2222 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_cli = &p_mngr->clients[ILT_CLI_CDUT]; p_mngr 2226 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_seg_info = &p_mngr->conn_cfg[proto].tid_seg[seg]; p_mngr 2237 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_info->blocks[i] = p_mngr->ilt_shadow[shadow_line].p_virt; p_mngr 2241 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_info->tid_size = p_mngr->task_type_size[p_seg_info->type]; p_mngr 2503 drivers/net/ethernet/qlogic/qed/qed_cxt.c struct qed_cxt_mngr *p_mngr = p_hwfn->p_cxt_mngr; p_mngr 2526 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_cli = &p_mngr->clients[ILT_CLI_CDUT]; p_mngr 2530 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_seg_info = &p_mngr->conn_cfg[proto].tid_seg[seg]; p_mngr 2542 drivers/net/ethernet/qlogic/qed/qed_cxt.c tid_size = p_mngr->task_type_size[p_seg_info->type]; p_mngr 2549 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_mngr->pf_start_line; p_mngr 2550 drivers/net/ethernet/qlogic/qed/qed_cxt.c *pp_task_ctx = (u8 *)p_mngr->ilt_shadow[ilt_idx].p_virt +