| 87 | } |
| 88 | |
| 89 | static int |
| 90 | cn10k_mldev_parse_devargs(struct rte_devargs *devargs, struct cn10k_ml_dev *cn10k_mldev) |
| 91 | { |
| 92 | bool enable_dpe_warnings_set = false; |
| 93 | bool report_dpe_warnings_set = false; |
| 94 | bool cache_model_data_set = false; |
| 95 | struct rte_kvargs *kvlist = NULL; |
| 96 | bool ocm_alloc_mode_set = false; |
| 97 | bool hw_queue_lock_set = false; |
| 98 | bool ocm_page_size_set = false; |
| 99 | char *ocm_alloc_mode = NULL; |
| 100 | bool fw_path_set = false; |
| 101 | char *fw_path = NULL; |
| 102 | int ret = 0; |
| 103 | bool found; |
| 104 | uint8_t i; |
| 105 | |
| 106 | if (devargs == NULL) |
| 107 | goto check_args; |
| 108 | |
| 109 | kvlist = rte_kvargs_parse(devargs->args, valid_args); |
| 110 | if (kvlist == NULL) { |
| 111 | plt_err("Error parsing devargs"); |
| 112 | return -EINVAL; |
| 113 | } |
| 114 | |
| 115 | if (rte_kvargs_count(kvlist, CN10K_ML_FW_PATH) == 1) { |
| 116 | ret = rte_kvargs_process(kvlist, CN10K_ML_FW_PATH, &parse_string_arg, &fw_path); |
| 117 | if (ret < 0) { |
| 118 | plt_err("Error processing arguments, key = %s", CN10K_ML_FW_PATH); |
| 119 | ret = -EINVAL; |
| 120 | goto exit; |
| 121 | } |
| 122 | fw_path_set = true; |
| 123 | } |
| 124 | |
| 125 | if (rte_kvargs_count(kvlist, CN10K_ML_FW_ENABLE_DPE_WARNINGS) == 1) { |
| 126 | ret = rte_kvargs_process(kvlist, CN10K_ML_FW_ENABLE_DPE_WARNINGS, |
| 127 | &parse_integer_arg, &cn10k_mldev->fw.enable_dpe_warnings); |
| 128 | if (ret < 0) { |
| 129 | plt_err("Error processing arguments, key = %s", |
| 130 | CN10K_ML_FW_ENABLE_DPE_WARNINGS); |
| 131 | ret = -EINVAL; |
| 132 | goto exit; |
| 133 | } |
| 134 | enable_dpe_warnings_set = true; |
| 135 | } |
| 136 | |
| 137 | if (rte_kvargs_count(kvlist, CN10K_ML_FW_REPORT_DPE_WARNINGS) == 1) { |
| 138 | ret = rte_kvargs_process(kvlist, CN10K_ML_FW_REPORT_DPE_WARNINGS, |
| 139 | &parse_integer_arg, &cn10k_mldev->fw.report_dpe_warnings); |
| 140 | if (ret < 0) { |
| 141 | plt_err("Error processing arguments, key = %s", |
| 142 | CN10K_ML_FW_REPORT_DPE_WARNINGS); |
| 143 | ret = -EINVAL; |
| 144 | goto exit; |
| 145 | } |
| 146 | report_dpe_warnings_set = true; |
no test coverage detected