Lines Matching refs:hcattr
513 void *hcattr; in mlx5_devx_cmd_query_hca_vdpa_attr() local
515 hcattr = mlx5_devx_get_hca_cap(ctx, in, out, NULL, in mlx5_devx_cmd_query_hca_vdpa_attr()
518 if (!hcattr) { in mlx5_devx_cmd_query_hca_vdpa_attr()
524 MLX5_GET(virtio_emulation_cap, hcattr, in mlx5_devx_cmd_query_hca_vdpa_attr()
527 MLX5_GET(virtio_emulation_cap, hcattr, in mlx5_devx_cmd_query_hca_vdpa_attr()
530 MLX5_GET(virtio_emulation_cap, hcattr, in mlx5_devx_cmd_query_hca_vdpa_attr()
532 vdpa_attr->tso_ipv4 = MLX5_GET(virtio_emulation_cap, hcattr, in mlx5_devx_cmd_query_hca_vdpa_attr()
534 vdpa_attr->tso_ipv6 = MLX5_GET(virtio_emulation_cap, hcattr, in mlx5_devx_cmd_query_hca_vdpa_attr()
536 vdpa_attr->tx_csum = MLX5_GET(virtio_emulation_cap, hcattr, in mlx5_devx_cmd_query_hca_vdpa_attr()
538 vdpa_attr->rx_csum = MLX5_GET(virtio_emulation_cap, hcattr, in mlx5_devx_cmd_query_hca_vdpa_attr()
540 vdpa_attr->event_mode = MLX5_GET(virtio_emulation_cap, hcattr, in mlx5_devx_cmd_query_hca_vdpa_attr()
543 MLX5_GET(virtio_emulation_cap, hcattr, in mlx5_devx_cmd_query_hca_vdpa_attr()
546 MLX5_GET(virtio_emulation_cap, hcattr, in mlx5_devx_cmd_query_hca_vdpa_attr()
549 MLX5_GET(virtio_emulation_cap, hcattr, in mlx5_devx_cmd_query_hca_vdpa_attr()
552 MLX5_GET64(virtio_emulation_cap, hcattr, in mlx5_devx_cmd_query_hca_vdpa_attr()
555 MLX5_GET(virtio_emulation_cap, hcattr, in mlx5_devx_cmd_query_hca_vdpa_attr()
557 vdpa_attr->umems[0].a = MLX5_GET(virtio_emulation_cap, hcattr, in mlx5_devx_cmd_query_hca_vdpa_attr()
559 vdpa_attr->umems[0].b = MLX5_GET(virtio_emulation_cap, hcattr, in mlx5_devx_cmd_query_hca_vdpa_attr()
561 vdpa_attr->umems[1].a = MLX5_GET(virtio_emulation_cap, hcattr, in mlx5_devx_cmd_query_hca_vdpa_attr()
563 vdpa_attr->umems[1].b = MLX5_GET(virtio_emulation_cap, hcattr, in mlx5_devx_cmd_query_hca_vdpa_attr()
565 vdpa_attr->umems[2].a = MLX5_GET(virtio_emulation_cap, hcattr, in mlx5_devx_cmd_query_hca_vdpa_attr()
567 vdpa_attr->umems[2].b = MLX5_GET(virtio_emulation_cap, hcattr, in mlx5_devx_cmd_query_hca_vdpa_attr()
743 void *hcattr; in mlx5_devx_cmd_query_hca_parse_graph_node_cap() local
746 hcattr = mlx5_devx_get_hca_cap(ctx, in, out, &rc, in mlx5_devx_cmd_query_hca_parse_graph_node_cap()
749 if (!hcattr) in mlx5_devx_cmd_query_hca_parse_graph_node_cap()
751 attr->node_in = MLX5_GET(parse_graph_node_cap, hcattr, node_in); in mlx5_devx_cmd_query_hca_parse_graph_node_cap()
752 attr->node_out = MLX5_GET(parse_graph_node_cap, hcattr, node_out); in mlx5_devx_cmd_query_hca_parse_graph_node_cap()
753 attr->header_length_mode = MLX5_GET(parse_graph_node_cap, hcattr, in mlx5_devx_cmd_query_hca_parse_graph_node_cap()
755 attr->sample_offset_mode = MLX5_GET(parse_graph_node_cap, hcattr, in mlx5_devx_cmd_query_hca_parse_graph_node_cap()
757 attr->max_num_arc_in = MLX5_GET(parse_graph_node_cap, hcattr, in mlx5_devx_cmd_query_hca_parse_graph_node_cap()
759 attr->max_num_arc_out = MLX5_GET(parse_graph_node_cap, hcattr, in mlx5_devx_cmd_query_hca_parse_graph_node_cap()
761 attr->max_num_sample = MLX5_GET(parse_graph_node_cap, hcattr, in mlx5_devx_cmd_query_hca_parse_graph_node_cap()
763 attr->sample_id_in_out = MLX5_GET(parse_graph_node_cap, hcattr, in mlx5_devx_cmd_query_hca_parse_graph_node_cap()
765 attr->max_base_header_length = MLX5_GET(parse_graph_node_cap, hcattr, in mlx5_devx_cmd_query_hca_parse_graph_node_cap()
767 attr->max_sample_base_offset = MLX5_GET(parse_graph_node_cap, hcattr, in mlx5_devx_cmd_query_hca_parse_graph_node_cap()
769 attr->max_next_header_offset = MLX5_GET(parse_graph_node_cap, hcattr, in mlx5_devx_cmd_query_hca_parse_graph_node_cap()
771 attr->header_length_mask_width = MLX5_GET(parse_graph_node_cap, hcattr, in mlx5_devx_cmd_query_hca_parse_graph_node_cap()
774 hcattr = mlx5_devx_get_hca_cap(ctx, in, out, &rc, in mlx5_devx_cmd_query_hca_parse_graph_node_cap()
777 if (!hcattr) in mlx5_devx_cmd_query_hca_parse_graph_node_cap()
780 MLX5_GET(cmd_hca_cap_2, hcattr, max_num_prog_sample_field); in mlx5_devx_cmd_query_hca_parse_graph_node_cap()
785 mlx5_devx_query_pkt_integrity_match(void *hcattr) in mlx5_devx_query_pkt_integrity_match() argument
787 return MLX5_GET(flow_table_nic_cap, hcattr, in mlx5_devx_query_pkt_integrity_match()
789 MLX5_GET(flow_table_nic_cap, hcattr, in mlx5_devx_query_pkt_integrity_match()
791 MLX5_GET(flow_table_nic_cap, hcattr, in mlx5_devx_query_pkt_integrity_match()
793 MLX5_GET(flow_table_nic_cap, hcattr, in mlx5_devx_query_pkt_integrity_match()
795 MLX5_GET(flow_table_nic_cap, hcattr, in mlx5_devx_query_pkt_integrity_match()
798 MLX5_GET(flow_table_nic_cap, hcattr, in mlx5_devx_query_pkt_integrity_match()
800 MLX5_GET(flow_table_nic_cap, hcattr, in mlx5_devx_query_pkt_integrity_match()
803 MLX5_GET(flow_table_nic_cap, hcattr, in mlx5_devx_query_pkt_integrity_match()
828 void *hcattr; in mlx5_devx_cmd_query_hca_attr() local
831 hcattr = mlx5_devx_get_hca_cap(ctx, in, out, &rc, in mlx5_devx_cmd_query_hca_attr()
834 if (!hcattr) in mlx5_devx_cmd_query_hca_attr()
836 hca_cap_2_sup = MLX5_GET(cmd_hca_cap, hcattr, hca_cap_2); in mlx5_devx_cmd_query_hca_attr()
837 attr->max_wqe_sz_sq = MLX5_GET(cmd_hca_cap, hcattr, max_wqe_sz_sq); in mlx5_devx_cmd_query_hca_attr()
839 MLX5_GET(cmd_hca_cap, hcattr, flow_counter_bulk_alloc); in mlx5_devx_cmd_query_hca_attr()
840 attr->flow_counters_dump = MLX5_GET(cmd_hca_cap, hcattr, in mlx5_devx_cmd_query_hca_attr()
842 attr->log_max_rmp = MLX5_GET(cmd_hca_cap, hcattr, log_max_rmp); in mlx5_devx_cmd_query_hca_attr()
843 attr->mem_rq_rmp = MLX5_GET(cmd_hca_cap, hcattr, mem_rq_rmp); in mlx5_devx_cmd_query_hca_attr()
844 attr->log_max_rqt_size = MLX5_GET(cmd_hca_cap, hcattr, in mlx5_devx_cmd_query_hca_attr()
846 attr->eswitch_manager = MLX5_GET(cmd_hca_cap, hcattr, eswitch_manager); in mlx5_devx_cmd_query_hca_attr()
847 attr->hairpin = MLX5_GET(cmd_hca_cap, hcattr, hairpin); in mlx5_devx_cmd_query_hca_attr()
848 attr->log_max_hairpin_queues = MLX5_GET(cmd_hca_cap, hcattr, in mlx5_devx_cmd_query_hca_attr()
850 attr->log_max_hairpin_wq_data_sz = MLX5_GET(cmd_hca_cap, hcattr, in mlx5_devx_cmd_query_hca_attr()
853 (cmd_hca_cap, hcattr, log_min_hairpin_wq_data_sz); in mlx5_devx_cmd_query_hca_attr()
854 attr->vhca_id = MLX5_GET(cmd_hca_cap, hcattr, vhca_id); in mlx5_devx_cmd_query_hca_attr()
855 attr->relaxed_ordering_write = MLX5_GET(cmd_hca_cap, hcattr, in mlx5_devx_cmd_query_hca_attr()
857 attr->relaxed_ordering_read = MLX5_GET(cmd_hca_cap, hcattr, in mlx5_devx_cmd_query_hca_attr()
859 attr->access_register_user = MLX5_GET(cmd_hca_cap, hcattr, in mlx5_devx_cmd_query_hca_attr()
861 attr->eth_net_offloads = MLX5_GET(cmd_hca_cap, hcattr, in mlx5_devx_cmd_query_hca_attr()
863 attr->eth_virt = MLX5_GET(cmd_hca_cap, hcattr, eth_virt); in mlx5_devx_cmd_query_hca_attr()
864 attr->flex_parser_protocols = MLX5_GET(cmd_hca_cap, hcattr, in mlx5_devx_cmd_query_hca_attr()
866 attr->max_geneve_tlv_options = MLX5_GET(cmd_hca_cap, hcattr, in mlx5_devx_cmd_query_hca_attr()
868 attr->max_geneve_tlv_option_data_len = MLX5_GET(cmd_hca_cap, hcattr, in mlx5_devx_cmd_query_hca_attr()
870 attr->qos.sup = MLX5_GET(cmd_hca_cap, hcattr, qos); in mlx5_devx_cmd_query_hca_attr()
871 attr->qos.flow_meter_aso_sup = !!(MLX5_GET64(cmd_hca_cap, hcattr, in mlx5_devx_cmd_query_hca_attr()
874 attr->vdpa.valid = !!(MLX5_GET64(cmd_hca_cap, hcattr, in mlx5_devx_cmd_query_hca_attr()
877 attr->vdpa.queue_counters_valid = !!(MLX5_GET64(cmd_hca_cap, hcattr, in mlx5_devx_cmd_query_hca_attr()
880 attr->parse_graph_flex_node = !!(MLX5_GET64(cmd_hca_cap, hcattr, in mlx5_devx_cmd_query_hca_attr()
883 attr->wqe_index_ignore = MLX5_GET(cmd_hca_cap, hcattr, in mlx5_devx_cmd_query_hca_attr()
885 attr->cross_channel = MLX5_GET(cmd_hca_cap, hcattr, cd); in mlx5_devx_cmd_query_hca_attr()
886 attr->non_wire_sq = MLX5_GET(cmd_hca_cap, hcattr, non_wire_sq); in mlx5_devx_cmd_query_hca_attr()
887 attr->log_max_static_sq_wq = MLX5_GET(cmd_hca_cap, hcattr, in mlx5_devx_cmd_query_hca_attr()
889 attr->num_lag_ports = MLX5_GET(cmd_hca_cap, hcattr, num_lag_ports); in mlx5_devx_cmd_query_hca_attr()
890 attr->dev_freq_khz = MLX5_GET(cmd_hca_cap, hcattr, in mlx5_devx_cmd_query_hca_attr()
893 MLX5_GET(cmd_hca_cap, hcattr, scatter_fcs_w_decap_disable); in mlx5_devx_cmd_query_hca_attr()
894 attr->roce = MLX5_GET(cmd_hca_cap, hcattr, roce); in mlx5_devx_cmd_query_hca_attr()
895 attr->rq_ts_format = MLX5_GET(cmd_hca_cap, hcattr, rq_ts_format); in mlx5_devx_cmd_query_hca_attr()
896 attr->sq_ts_format = MLX5_GET(cmd_hca_cap, hcattr, sq_ts_format); in mlx5_devx_cmd_query_hca_attr()
898 MLX5_GET(cmd_hca_cap, hcattr, steering_format_version); in mlx5_devx_cmd_query_hca_attr()
899 attr->regexp_params = MLX5_GET(cmd_hca_cap, hcattr, regexp_params); in mlx5_devx_cmd_query_hca_attr()
900 attr->regexp_version = MLX5_GET(cmd_hca_cap, hcattr, regexp_version); in mlx5_devx_cmd_query_hca_attr()
901 attr->regexp_num_of_engines = MLX5_GET(cmd_hca_cap, hcattr, in mlx5_devx_cmd_query_hca_attr()
904 general_obj_types_supported = MLX5_GET64(cmd_hca_cap, hcattr, in mlx5_devx_cmd_query_hca_attr()
927 attr->log_max_cq = MLX5_GET(cmd_hca_cap, hcattr, log_max_cq); in mlx5_devx_cmd_query_hca_attr()
928 attr->log_max_qp = MLX5_GET(cmd_hca_cap, hcattr, log_max_qp); in mlx5_devx_cmd_query_hca_attr()
929 attr->log_max_cq_sz = MLX5_GET(cmd_hca_cap, hcattr, log_max_cq_sz); in mlx5_devx_cmd_query_hca_attr()
930 attr->log_max_qp_sz = MLX5_GET(cmd_hca_cap, hcattr, log_max_qp_sz); in mlx5_devx_cmd_query_hca_attr()
931 attr->log_max_mrw_sz = MLX5_GET(cmd_hca_cap, hcattr, log_max_mrw_sz); in mlx5_devx_cmd_query_hca_attr()
932 attr->log_max_pd = MLX5_GET(cmd_hca_cap, hcattr, log_max_pd); in mlx5_devx_cmd_query_hca_attr()
933 attr->log_max_srq = MLX5_GET(cmd_hca_cap, hcattr, log_max_srq); in mlx5_devx_cmd_query_hca_attr()
934 attr->log_max_srq_sz = MLX5_GET(cmd_hca_cap, hcattr, log_max_srq_sz); in mlx5_devx_cmd_query_hca_attr()
936 MLX5_GET(cmd_hca_cap, hcattr, reg_c_preserve); in mlx5_devx_cmd_query_hca_attr()
937 attr->mmo_regex_qp_en = MLX5_GET(cmd_hca_cap, hcattr, regexp_mmo_qp); in mlx5_devx_cmd_query_hca_attr()
938 attr->mmo_regex_sq_en = MLX5_GET(cmd_hca_cap, hcattr, regexp_mmo_sq); in mlx5_devx_cmd_query_hca_attr()
939 attr->mmo_dma_sq_en = MLX5_GET(cmd_hca_cap, hcattr, dma_mmo_sq); in mlx5_devx_cmd_query_hca_attr()
940 attr->mmo_compress_sq_en = MLX5_GET(cmd_hca_cap, hcattr, in mlx5_devx_cmd_query_hca_attr()
942 attr->mmo_decompress_sq_en = MLX5_GET(cmd_hca_cap, hcattr, in mlx5_devx_cmd_query_hca_attr()
944 attr->mmo_dma_qp_en = MLX5_GET(cmd_hca_cap, hcattr, dma_mmo_qp); in mlx5_devx_cmd_query_hca_attr()
945 attr->mmo_compress_qp_en = MLX5_GET(cmd_hca_cap, hcattr, in mlx5_devx_cmd_query_hca_attr()
947 attr->mmo_decompress_qp_en = MLX5_GET(cmd_hca_cap, hcattr, in mlx5_devx_cmd_query_hca_attr()
949 attr->compress_min_block_size = MLX5_GET(cmd_hca_cap, hcattr, in mlx5_devx_cmd_query_hca_attr()
951 attr->log_max_mmo_dma = MLX5_GET(cmd_hca_cap, hcattr, log_dma_mmo_size); in mlx5_devx_cmd_query_hca_attr()
952 attr->log_max_mmo_compress = MLX5_GET(cmd_hca_cap, hcattr, in mlx5_devx_cmd_query_hca_attr()
954 attr->log_max_mmo_decompress = MLX5_GET(cmd_hca_cap, hcattr, in mlx5_devx_cmd_query_hca_attr()
956 attr->cqe_compression = MLX5_GET(cmd_hca_cap, hcattr, cqe_compression); in mlx5_devx_cmd_query_hca_attr()
957 attr->mini_cqe_resp_flow_tag = MLX5_GET(cmd_hca_cap, hcattr, in mlx5_devx_cmd_query_hca_attr()
959 attr->mini_cqe_resp_l3_l4_tag = MLX5_GET(cmd_hca_cap, hcattr, in mlx5_devx_cmd_query_hca_attr()
962 MLX5_GET(cmd_hca_cap, hcattr, umr_indirect_mkey_disabled); in mlx5_devx_cmd_query_hca_attr()
964 MLX5_GET(cmd_hca_cap, hcattr, umr_modify_entity_size_disabled); in mlx5_devx_cmd_query_hca_attr()
965 attr->wait_on_time = MLX5_GET(cmd_hca_cap, hcattr, wait_on_time); in mlx5_devx_cmd_query_hca_attr()
966 attr->crypto = MLX5_GET(cmd_hca_cap, hcattr, crypto); in mlx5_devx_cmd_query_hca_attr()
968 attr->aes_xts = MLX5_GET(cmd_hca_cap, hcattr, aes_xts); in mlx5_devx_cmd_query_hca_attr()
969 attr->ct_offload = !!(MLX5_GET64(cmd_hca_cap, hcattr, in mlx5_devx_cmd_query_hca_attr()
972 attr->rq_delay_drop = MLX5_GET(cmd_hca_cap, hcattr, rq_delay_drop); in mlx5_devx_cmd_query_hca_attr()
974 hcattr = mlx5_devx_get_hca_cap(ctx, in, out, &rc, in mlx5_devx_cmd_query_hca_attr()
977 if (!hcattr) { in mlx5_devx_cmd_query_hca_attr()
982 attr->log_min_stride_wqe_sz = MLX5_GET(cmd_hca_cap_2, hcattr, in mlx5_devx_cmd_query_hca_attr()
988 hcattr = mlx5_devx_get_hca_cap(ctx, in, out, &rc, in mlx5_devx_cmd_query_hca_attr()
991 if (!hcattr) { in mlx5_devx_cmd_query_hca_attr()
996 MLX5_GET(qos_cap, hcattr, flow_meter_old); in mlx5_devx_cmd_query_hca_attr()
998 MLX5_GET(qos_cap, hcattr, log_max_flow_meter); in mlx5_devx_cmd_query_hca_attr()
1000 MLX5_GET(qos_cap, hcattr, flow_meter_reg_id); in mlx5_devx_cmd_query_hca_attr()
1002 MLX5_GET(qos_cap, hcattr, flow_meter); in mlx5_devx_cmd_query_hca_attr()
1004 MLX5_GET(qos_cap, hcattr, packet_pacing); in mlx5_devx_cmd_query_hca_attr()
1006 MLX5_GET(qos_cap, hcattr, wqe_rate_pp); in mlx5_devx_cmd_query_hca_attr()
1009 MLX5_GET(qos_cap, hcattr, in mlx5_devx_cmd_query_hca_attr()
1012 MLX5_GET(qos_cap, hcattr, in mlx5_devx_cmd_query_hca_attr()
1015 MLX5_GET(qos_cap, hcattr, in mlx5_devx_cmd_query_hca_attr()
1034 hcattr = mlx5_devx_get_hca_cap(ctx, in, out, &rc, in mlx5_devx_cmd_query_hca_attr()
1037 if (!hcattr) { in mlx5_devx_cmd_query_hca_attr()
1042 (flow_table_nic_cap, hcattr, in mlx5_devx_cmd_query_hca_attr()
1045 (flow_table_nic_cap, hcattr, in mlx5_devx_cmd_query_hca_attr()
1048 (flow_table_nic_cap, hcattr, in mlx5_devx_cmd_query_hca_attr()
1050 attr->pkt_integrity_match = mlx5_devx_query_pkt_integrity_match(hcattr); in mlx5_devx_cmd_query_hca_attr()
1052 (flow_table_nic_cap, hcattr, in mlx5_devx_cmd_query_hca_attr()
1055 (flow_table_nic_cap, hcattr, in mlx5_devx_cmd_query_hca_attr()
1058 hcattr = mlx5_devx_get_hca_cap(ctx, in, out, &rc, in mlx5_devx_cmd_query_hca_attr()
1061 if (!hcattr) { in mlx5_devx_cmd_query_hca_attr()
1066 hcattr, wqe_vlan_insert); in mlx5_devx_cmd_query_hca_attr()
1068 hcattr, csum_cap); in mlx5_devx_cmd_query_hca_attr()
1070 hcattr, vlan_cap); in mlx5_devx_cmd_query_hca_attr()
1071 attr->lro_cap = MLX5_GET(per_protocol_networking_offload_caps, hcattr, in mlx5_devx_cmd_query_hca_attr()
1074 hcattr, max_lso_cap); in mlx5_devx_cmd_query_hca_attr()
1076 hcattr, scatter_fcs); in mlx5_devx_cmd_query_hca_attr()
1078 hcattr, tunnel_lro_gre); in mlx5_devx_cmd_query_hca_attr()
1080 hcattr, tunnel_lro_vxlan); in mlx5_devx_cmd_query_hca_attr()
1082 hcattr, swp); in mlx5_devx_cmd_query_hca_attr()
1085 hcattr, tunnel_stateless_gre); in mlx5_devx_cmd_query_hca_attr()
1088 hcattr, tunnel_stateless_vxlan); in mlx5_devx_cmd_query_hca_attr()
1090 hcattr, swp_csum); in mlx5_devx_cmd_query_hca_attr()
1092 hcattr, swp_lso); in mlx5_devx_cmd_query_hca_attr()
1095 hcattr, lro_max_msg_sz_mode); in mlx5_devx_cmd_query_hca_attr()
1098 MLX5_GET(per_protocol_networking_offload_caps, hcattr, in mlx5_devx_cmd_query_hca_attr()
1102 hcattr, lro_min_mss_size); in mlx5_devx_cmd_query_hca_attr()
1105 hcattr, tunnel_stateless_geneve_rx); in mlx5_devx_cmd_query_hca_attr()
1108 hcattr, max_geneve_opt_len); in mlx5_devx_cmd_query_hca_attr()
1110 hcattr, wqe_inline_mode); in mlx5_devx_cmd_query_hca_attr()
1113 hcattr, tunnel_stateless_gtp); in mlx5_devx_cmd_query_hca_attr()
1116 hcattr, rss_ind_tbl_cap); in mlx5_devx_cmd_query_hca_attr()
1119 hcattr = mlx5_devx_get_hca_cap(ctx, in, out, &rc, in mlx5_devx_cmd_query_hca_attr()
1122 if (!hcattr) { in mlx5_devx_cmd_query_hca_attr()
1127 attr->qp_ts_format = MLX5_GET(roce_caps, hcattr, qp_ts_format); in mlx5_devx_cmd_query_hca_attr()
1138 hcattr = mlx5_devx_get_hca_cap(ctx, in, out, &rc, in mlx5_devx_cmd_query_hca_attr()
1141 if (!hcattr) in mlx5_devx_cmd_query_hca_attr()
1144 MLX5_GET(esw_cap, hcattr, in mlx5_devx_cmd_query_hca_attr()
1147 MLX5_GET(esw_cap, hcattr, esw_manager_vport_number); in mlx5_devx_cmd_query_hca_attr()