| 397 | } |
| 398 | |
| 399 | static int |
| 400 | parse_class_options(const struct rte_devargs *devargs, |
| 401 | struct mlx5_kvargs_ctrl *mkvlist) |
| 402 | { |
| 403 | int ret = 0; |
| 404 | |
| 405 | if (mkvlist == NULL) |
| 406 | return 0; |
| 407 | MLX5_ASSERT(devargs != NULL); |
| 408 | if (devargs->cls != NULL && devargs->cls->name != NULL) |
| 409 | /* Global syntax, only one class type. */ |
| 410 | return class_name_to_value(devargs->cls->name); |
| 411 | /* Legacy devargs support multiple classes. */ |
| 412 | rte_kvargs_process(mkvlist->kvlist, RTE_DEVARGS_KEY_CLASS, |
| 413 | devargs_class_handler, &ret); |
| 414 | return ret; |
| 415 | } |
| 416 | |
| 417 | static const unsigned int mlx5_class_invalid_combinations[] = { |
| 418 | MLX5_CLASS_ETH | MLX5_CLASS_VDPA, |
no test coverage detected