| 2195 | } |
| 2196 | |
| 2197 | static int ena_get_dev_stats(struct ena_com_dev *ena_dev, |
| 2198 | struct ena_com_stats_ctx *ctx, |
| 2199 | enum ena_admin_get_stats_type type) |
| 2200 | { |
| 2201 | struct ena_admin_acq_get_stats_resp *get_resp = &ctx->get_resp; |
| 2202 | struct ena_admin_aq_get_stats_cmd *get_cmd = &ctx->get_cmd; |
| 2203 | struct ena_com_admin_queue *admin_queue; |
| 2204 | int ret; |
| 2205 | |
| 2206 | admin_queue = &ena_dev->admin_queue; |
| 2207 | |
| 2208 | get_cmd->aq_common_descriptor.opcode = ENA_ADMIN_GET_STATS; |
| 2209 | get_cmd->aq_common_descriptor.flags = 0; |
| 2210 | get_cmd->type = type; |
| 2211 | |
| 2212 | ret = ena_com_execute_admin_command(admin_queue, |
| 2213 | (struct ena_admin_aq_entry *)get_cmd, |
| 2214 | sizeof(*get_cmd), |
| 2215 | (struct ena_admin_acq_entry *)get_resp, |
| 2216 | sizeof(*get_resp)); |
| 2217 | |
| 2218 | if (unlikely(ret)) |
| 2219 | ena_trc_err(ena_dev, "Failed to get stats. error: %d\n", ret); |
| 2220 | |
| 2221 | return ret; |
| 2222 | } |
| 2223 | |
| 2224 | static void ena_com_set_supported_customer_metrics(struct ena_com_dev *ena_dev) |
| 2225 | { |
no test coverage detected