| 227 | } |
| 228 | |
| 229 | int |
| 230 | rte_ml_dev_info_get(int16_t dev_id, struct rte_ml_dev_info *dev_info) |
| 231 | { |
| 232 | struct rte_ml_dev *dev; |
| 233 | |
| 234 | if (!rte_ml_dev_is_valid_dev(dev_id)) { |
| 235 | RTE_MLDEV_LOG(ERR, "Invalid dev_id = %d", dev_id); |
| 236 | return -EINVAL; |
| 237 | } |
| 238 | |
| 239 | dev = rte_ml_dev_pmd_get_dev(dev_id); |
| 240 | if (*dev->dev_ops->dev_info_get == NULL) |
| 241 | return -ENOTSUP; |
| 242 | |
| 243 | if (dev_info == NULL) { |
| 244 | RTE_MLDEV_LOG(ERR, "Dev %d, dev_info cannot be NULL", dev_id); |
| 245 | return -EINVAL; |
| 246 | } |
| 247 | memset(dev_info, 0, sizeof(struct rte_ml_dev_info)); |
| 248 | |
| 249 | return (*dev->dev_ops->dev_info_get)(dev, dev_info); |
| 250 | } |
| 251 | |
| 252 | int |
| 253 | rte_ml_dev_configure(int16_t dev_id, const struct rte_ml_dev_config *config) |