Lines Matching defs:cvq
1799 struct mlx5_control_vq *cvq = &mvdev->cvq;
1808 read = vringh_iov_pull_iotlb(&cvq->vring, &cvq->riov, (void *)mac, ETH_ALEN);
1927 struct mlx5_control_vq *cvq = &mvdev->cvq;
1946 read = vringh_iov_pull_iotlb(&cvq->vring, &cvq->riov, (void *)&mq, sizeof(mq));
1975 struct mlx5_control_vq *cvq = &mvdev->cvq;
1985 read = vringh_iov_pull_iotlb(&cvq->vring, &cvq->riov, &vlan, sizeof(vlan));
1996 read = vringh_iov_pull_iotlb(&cvq->vring, &cvq->riov, &vlan, sizeof(vlan));
2017 struct mlx5_control_vq *cvq;
2025 cvq = &mvdev->cvq;
2035 if (!cvq->ready)
2039 err = vringh_getdesc_iotlb(&cvq->vring, &cvq->riov, &cvq->wiov, &cvq->head,
2044 read = vringh_iov_pull_iotlb(&cvq->vring, &cvq->riov, &ctrl, sizeof(ctrl));
2048 cvq->received_desc++;
2066 write = vringh_iov_push_iotlb(&cvq->vring, &cvq->wiov, &status, sizeof(status));
2067 vringh_complete_iotlb(&cvq->vring, cvq->head, write);
2068 vringh_kiov_cleanup(&cvq->riov);
2069 vringh_kiov_cleanup(&cvq->wiov);
2071 if (vringh_need_notify_iotlb(&cvq->vring))
2072 vringh_notify(&cvq->vring);
2074 cvq->completed_desc++;
2093 if (!mvdev->wq || !mvdev->cvq.ready)
2118 mvdev->cvq.desc_addr = desc_area;
2119 mvdev->cvq.device_addr = device_area;
2120 mvdev->cvq.driver_addr = driver_area;
2141 struct mlx5_control_vq *cvq = &mvdev->cvq;
2143 cvq->vring.vring.num = num;
2158 mvdev->cvq.event_cb = *cb;
2163 struct mlx5_control_vq *cvq = container_of(vring, struct mlx5_control_vq, vring);
2165 if (!cvq->event_cb.callback)
2168 cvq->event_cb.callback(cvq->event_cb.private);
2173 struct mlx5_control_vq *cvq = &mvdev->cvq;
2175 cvq->ready = ready;
2179 cvq->vring.notify = mlx5_cvq_notify;
2224 return mvdev->cvq.ready;
2240 mvdev->cvq.vring.last_avail_idx = state->split.avail_index;
2267 state->split.avail_index = mvdev->cvq.vring.last_avail_idx;
2795 ndev->mvdev.cvq.ready = false;
2800 struct mlx5_control_vq *cvq = &mvdev->cvq;
2804 u16 idx = cvq->vring.last_avail_idx;
2806 err = vringh_init_iotlb(&cvq->vring, mvdev->actual_features,
2807 cvq->vring.vring.num, false,
2808 (struct vring_desc *)(uintptr_t)cvq->desc_addr,
2809 (struct vring_avail *)(uintptr_t)cvq->driver_addr,
2810 (struct vring_used *)(uintptr_t)cvq->device_addr);
2813 cvq->vring.last_avail_idx = cvq->vring.last_used_idx = idx;
2885 ndev->mvdev.cvq.received_desc = 0;
2886 ndev->mvdev.cvq.completed_desc = 0;
3098 struct mlx5_control_vq *cvq;
3111 cvq = &mvdev->cvq;
3112 received_desc = cvq->received_desc;
3113 completed_desc = cvq->completed_desc;
3148 struct mlx5_control_vq *cvq;
3153 cvq = &mvdev->cvq;
3154 cvq->ready = false;