| 543 | } |
| 544 | |
| 545 | int |
| 546 | rte_compressdev_queue_pair_setup(uint8_t dev_id, uint16_t queue_pair_id, |
| 547 | uint32_t max_inflight_ops, int socket_id) |
| 548 | { |
| 549 | struct rte_compressdev *dev; |
| 550 | |
| 551 | if (!rte_compressdev_is_valid_dev(dev_id)) { |
| 552 | COMPRESSDEV_LOG(ERR, "Invalid dev_id=%" PRIu8, dev_id); |
| 553 | return -EINVAL; |
| 554 | } |
| 555 | |
| 556 | dev = &rte_comp_devices[dev_id]; |
| 557 | if (queue_pair_id >= dev->data->nb_queue_pairs) { |
| 558 | COMPRESSDEV_LOG(ERR, "Invalid queue_pair_id=%d", queue_pair_id); |
| 559 | return -EINVAL; |
| 560 | } |
| 561 | |
| 562 | if (dev->data->dev_started) { |
| 563 | COMPRESSDEV_LOG(ERR, |
| 564 | "device %d must be stopped to allow configuration", dev_id); |
| 565 | return -EBUSY; |
| 566 | } |
| 567 | |
| 568 | if (max_inflight_ops == 0) { |
| 569 | COMPRESSDEV_LOG(ERR, |
| 570 | "Invalid maximum number of inflight operations"); |
| 571 | return -EINVAL; |
| 572 | } |
| 573 | |
| 574 | if (*dev->dev_ops->queue_pair_setup == NULL) |
| 575 | return -ENOTSUP; |
| 576 | |
| 577 | return (*dev->dev_ops->queue_pair_setup)(dev, queue_pair_id, |
| 578 | max_inflight_ops, socket_id); |
| 579 | } |
| 580 | |
| 581 | uint16_t |
| 582 | rte_compressdev_dequeue_burst(uint8_t dev_id, uint16_t qp_id, |