| 2596 | } |
| 2597 | |
| 2598 | int ena_com_set_dev_mtu(struct ena_com_dev *ena_dev, u32 mtu) |
| 2599 | { |
| 2600 | struct ena_com_admin_queue *admin_queue; |
| 2601 | struct ena_admin_set_feat_cmd cmd; |
| 2602 | struct ena_admin_set_feat_resp resp; |
| 2603 | int ret; |
| 2604 | |
| 2605 | if (!ena_com_check_supported_feature_id(ena_dev, ENA_ADMIN_MTU)) { |
| 2606 | ena_trc_dbg(ena_dev, "Feature %d isn't supported\n", ENA_ADMIN_MTU); |
| 2607 | return ENA_COM_UNSUPPORTED; |
| 2608 | } |
| 2609 | |
| 2610 | memset(&cmd, 0x0, sizeof(cmd)); |
| 2611 | admin_queue = &ena_dev->admin_queue; |
| 2612 | |
| 2613 | cmd.aq_common_descriptor.opcode = ENA_ADMIN_SET_FEATURE; |
| 2614 | cmd.aq_common_descriptor.flags = 0; |
| 2615 | cmd.feat_common.feature_id = ENA_ADMIN_MTU; |
| 2616 | cmd.u.mtu.mtu = mtu; |
| 2617 | |
| 2618 | ret = ena_com_execute_admin_command(admin_queue, |
| 2619 | (struct ena_admin_aq_entry *)&cmd, |
| 2620 | sizeof(cmd), |
| 2621 | (struct ena_admin_acq_entry *)&resp, |
| 2622 | sizeof(resp)); |
| 2623 | |
| 2624 | if (unlikely(ret)) |
| 2625 | ena_trc_err(ena_dev, "Failed to set mtu %d. error: %d\n", mtu, ret); |
| 2626 | |
| 2627 | return ret; |
| 2628 | } |
| 2629 | |
| 2630 | int ena_com_get_offload_settings(struct ena_com_dev *ena_dev, |
| 2631 | struct ena_admin_feature_offload_desc *offload) |
no test coverage detected