Lines Matching refs:bbdev
175 struct rte_bbdev *bbdev; in rte_bbdev_allocate() local
194 bbdev = &rte_bbdev_devices[dev_id]; in rte_bbdev_allocate()
202 bbdev->data = find_bbdev_data(name); in rte_bbdev_allocate()
203 if (bbdev->data == NULL) { in rte_bbdev_allocate()
209 __atomic_add_fetch(&bbdev->data->process_cnt, 1, __ATOMIC_RELAXED); in rte_bbdev_allocate()
210 bbdev->data->dev_id = dev_id; in rte_bbdev_allocate()
211 bbdev->state = RTE_BBDEV_INITIALIZED; in rte_bbdev_allocate()
213 ret = snprintf(bbdev->data->name, RTE_BBDEV_NAME_MAX_LEN, "%s", name); in rte_bbdev_allocate()
220 TAILQ_INIT(&(bbdev->list_cbs)); in rte_bbdev_allocate()
227 return bbdev; in rte_bbdev_allocate()
231 rte_bbdev_release(struct rte_bbdev *bbdev) in rte_bbdev_release() argument
236 if (bbdev == NULL) { in rte_bbdev_release()
240 dev_id = bbdev->data->dev_id; in rte_bbdev_release()
243 for (cb = TAILQ_FIRST(&bbdev->list_cbs); cb != NULL; cb = next) { in rte_bbdev_release()
246 TAILQ_REMOVE(&(bbdev->list_cbs), cb, next); in rte_bbdev_release()
251 if (__atomic_sub_fetch(&bbdev->data->process_cnt, 1, in rte_bbdev_release()
253 memset(bbdev->data, 0, sizeof(*bbdev->data)); in rte_bbdev_release()
255 memset(bbdev, 0, sizeof(*bbdev)); in rte_bbdev_release()
257 bbdev->state = RTE_BBDEV_UNUSED; in rte_bbdev_release()