| 398 | } |
| 399 | |
| 400 | int |
| 401 | rte_rawdev_start(uint16_t dev_id) |
| 402 | { |
| 403 | struct rte_rawdev *dev; |
| 404 | int diag; |
| 405 | |
| 406 | RTE_RDEV_DEBUG("Start dev_id=%" PRIu8, dev_id); |
| 407 | |
| 408 | RTE_RAWDEV_VALID_DEVID_OR_ERR_RET(dev_id, -EINVAL); |
| 409 | dev = &rte_rawdevs[dev_id]; |
| 410 | if (dev->started != 0) { |
| 411 | RTE_RDEV_ERR("Device with dev_id=%" PRIu8 "already started", |
| 412 | dev_id); |
| 413 | return 0; |
| 414 | } |
| 415 | |
| 416 | if (dev->dev_ops->dev_start == NULL) |
| 417 | goto mark_started; |
| 418 | |
| 419 | diag = (*dev->dev_ops->dev_start)(dev); |
| 420 | if (diag != 0) |
| 421 | return diag; |
| 422 | |
| 423 | mark_started: |
| 424 | dev->started = 1; |
| 425 | return 0; |
| 426 | } |
| 427 | |
| 428 | void |
| 429 | rte_rawdev_stop(uint16_t dev_id) |
no outgoing calls