| 720 | } |
| 721 | |
| 722 | int |
| 723 | rte_ml_io_dequantize(int16_t dev_id, uint16_t model_id, struct rte_ml_buff_seg **qbuffer, |
| 724 | struct rte_ml_buff_seg **dbuffer) |
| 725 | { |
| 726 | struct rte_ml_dev *dev; |
| 727 | |
| 728 | if (!rte_ml_dev_is_valid_dev(dev_id)) { |
| 729 | RTE_MLDEV_LOG(ERR, "Invalid dev_id = %d", dev_id); |
| 730 | return -EINVAL; |
| 731 | } |
| 732 | |
| 733 | dev = rte_ml_dev_pmd_get_dev(dev_id); |
| 734 | if (*dev->dev_ops->io_dequantize == NULL) |
| 735 | return -ENOTSUP; |
| 736 | |
| 737 | if (qbuffer == NULL) { |
| 738 | RTE_MLDEV_LOG(ERR, "Dev %d, qbuffer cannot be NULL", dev_id); |
| 739 | return -EINVAL; |
| 740 | } |
| 741 | |
| 742 | if (dbuffer == NULL) { |
| 743 | RTE_MLDEV_LOG(ERR, "Dev %d, dbuffer cannot be NULL", dev_id); |
| 744 | return -EINVAL; |
| 745 | } |
| 746 | |
| 747 | return (*dev->dev_ops->io_dequantize)(dev, model_id, qbuffer, dbuffer); |
| 748 | } |
| 749 | |
| 750 | /** Initialise rte_ml_op mempool element */ |
| 751 | static void |