Home
last modified time | relevance | path

Searched refs:rss_cfg (Results 1 – 25 of 29) sorted by relevance

12

/linux/drivers/net/ethernet/hisilicon/hns3/hns3_common/
H A Dhclge_comm_rss.c36 struct hclge_comm_rss_cfg *rss_cfg) in hclge_comm_rss_init_cfg() argument
43 rss_cfg->rss_size = nic->kinfo.rss_size; in hclge_comm_rss_init_cfg()
48 hclge_comm_init_rss_tuple(ae_dev, &rss_cfg->rss_tuple_sets); in hclge_comm_rss_init_cfg()
50 rss_cfg->rss_algo = rss_algo; in hclge_comm_rss_init_cfg()
57 rss_cfg->rss_indirection_tbl = rss_ind_tbl; in hclge_comm_rss_init_cfg()
58 memcpy(rss_cfg->rss_hash_key, hclge_comm_hash_key, in hclge_comm_rss_init_cfg()
61 hclge_comm_rss_indir_init_cfg(ae_dev, rss_cfg); in hclge_comm_rss_init_cfg()
120 int hclge_comm_set_rss_hash_key(struct hclge_comm_rss_cfg *rss_cfg, in hclge_comm_set_rss_hash_key() argument
127 ret = hclge_comm_parse_rss_hfunc(rss_cfg, hfunc, &hash_algo); in hclge_comm_set_rss_hash_key()
138 memcpy(rss_cfg->rss_hash_key, key, HCLGE_COMM_RSS_KEY_SIZE); in hclge_comm_set_rss_hash_key()
[all …]
H A Dhclge_comm_rss.h99 struct hclge_comm_rss_cfg *rss_cfg);
100 int hclge_comm_get_rss_tuple(struct hclge_comm_rss_cfg *rss_cfg, int flow_type,
102 int hclge_comm_parse_rss_hfunc(struct hclge_comm_rss_cfg *rss_cfg,
104 void hclge_comm_get_rss_hash_info(struct hclge_comm_rss_cfg *rss_cfg, u8 *key,
106 void hclge_comm_get_rss_indir_tbl(struct hclge_comm_rss_cfg *rss_cfg,
110 int hclge_comm_init_rss_tuple_cmd(struct hclge_comm_rss_cfg *rss_cfg,
116 struct hclge_comm_rss_cfg *rss_cfg);
121 struct hclge_comm_rss_cfg *rss_cfg);
126 int hclge_comm_set_rss_hash_key(struct hclge_comm_rss_cfg *rss_cfg,
131 struct hclge_comm_rss_cfg *rss_cfg,
/linux/drivers/net/ethernet/huawei/hinic3/
H A Dhinic3_rss.c27 struct l2nic_cmd_cfg_rss rss_cfg = {}; in hinic3_rss_cfg() local
30 rss_cfg.func_id = hinic3_global_func_id(hwdev); in hinic3_rss_cfg()
31 rss_cfg.rss_en = rss_en; in hinic3_rss_cfg()
32 rss_cfg.rq_priority_number = 0; in hinic3_rss_cfg()
33 rss_cfg.num_qps = num_qps; in hinic3_rss_cfg()
35 mgmt_msg_params_init_default(&msg_params, &rss_cfg, sizeof(rss_cfg)); in hinic3_rss_cfg()
39 if (err || rss_cfg.msg_head.status) { in hinic3_rss_cfg()
41 err, rss_cfg.msg_head.status); in hinic3_rss_cfg()
/linux/drivers/net/ethernet/huawei/hinic/
H A Dhinic_port.c671 struct hinic_rss_indir_table rss_cfg = { 0 }; in hinic_rss_get_indir_tbl() local
675 u16 out_size = sizeof(rss_cfg); in hinic_rss_get_indir_tbl()
678 rss_cfg.func_id = HINIC_HWIF_FUNC_IDX(hwif); in hinic_rss_get_indir_tbl()
679 rss_cfg.template_id = tmpl_idx; in hinic_rss_get_indir_tbl()
683 &rss_cfg, sizeof(rss_cfg), &rss_cfg, in hinic_rss_get_indir_tbl()
685 if (err || !out_size || rss_cfg.status) { in hinic_rss_get_indir_tbl()
687 err, rss_cfg.status, out_size); in hinic_rss_get_indir_tbl()
691 hinic_be32_to_cpu(rss_cfg.indir, HINIC_RSS_INDIR_SIZE); in hinic_rss_get_indir_tbl()
693 indir_table[i] = rss_cfg.indir[i]; in hinic_rss_get_indir_tbl()
920 struct hinic_rss_config rss_cfg = { 0 }; in hinic_rss_cfg() local
[all …]
/linux/drivers/net/ethernet/intel/iavf/
H A Diavf_adv_rss.c152 iavf_fill_adv_rss_cfg_msg(struct virtchnl_rss_cfg *rss_cfg, in iavf_fill_adv_rss_cfg_msg() argument
157 struct virtchnl_proto_hdrs *proto_hdrs = &rss_cfg->proto_hdrs; in iavf_fill_adv_rss_cfg_msg()
161 rss_cfg->rss_algorithm = VIRTCHNL_RSS_ALG_TOEPLITZ_SYMMETRIC; in iavf_fill_adv_rss_cfg_msg()
163 rss_cfg->rss_algorithm = VIRTCHNL_RSS_ALG_TOEPLITZ_ASYMMETRIC; in iavf_fill_adv_rss_cfg_msg()
H A Diavf_virtchnl.c2111 struct virtchnl_rss_cfg *rss_cfg; in iavf_add_adv_rss_cfg() local
2124 rss_cfg = kzalloc(len, GFP_KERNEL); in iavf_add_adv_rss_cfg()
2125 if (!rss_cfg) in iavf_add_adv_rss_cfg()
2133 memcpy(rss_cfg, &rss->cfg_msg, len); in iavf_add_adv_rss_cfg()
2145 (u8 *)rss_cfg, len); in iavf_add_adv_rss_cfg()
2150 kfree(rss_cfg); in iavf_add_adv_rss_cfg()
2162 struct virtchnl_rss_cfg *rss_cfg; in iavf_del_adv_rss_cfg() local
2175 rss_cfg = kzalloc(len, GFP_KERNEL); in iavf_del_adv_rss_cfg()
2176 if (!rss_cfg) in iavf_del_adv_rss_cfg()
2184 memcpy(rss_cfg, &rss->cfg_msg, len); in iavf_del_adv_rss_cfg()
[all …]
H A Diavf_adv_rss.h120 iavf_fill_adv_rss_cfg_msg(struct virtchnl_rss_cfg *rss_cfg,
/linux/drivers/net/ethernet/marvell/octeontx2/nic/
H A Dotx2_ethtool.c640 u32 rss_cfg; in otx2_set_rss_hash_opts() local
643 rss_cfg = rss->flowkey_cfg; in otx2_set_rss_hash_opts()
656 rss_cfg |= NIX_FLOW_KEY_TYPE_VLAN; in otx2_set_rss_hash_opts()
658 rss_cfg &= ~NIX_FLOW_KEY_TYPE_VLAN; in otx2_set_rss_hash_opts()
668 rss_cfg &= ~NIX_FLOW_KEY_TYPE_TCP; in otx2_set_rss_hash_opts()
671 rss_cfg |= NIX_FLOW_KEY_TYPE_TCP; in otx2_set_rss_hash_opts()
681 rss_cfg &= ~NIX_FLOW_KEY_TYPE_UDP; in otx2_set_rss_hash_opts()
684 rss_cfg |= NIX_FLOW_KEY_TYPE_UDP; in otx2_set_rss_hash_opts()
694 rss_cfg &= ~NIX_FLOW_KEY_TYPE_SCTP; in otx2_set_rss_hash_opts()
697 rss_cfg |= NIX_FLOW_KEY_TYPE_SCTP; in otx2_set_rss_hash_opts()
[all …]
/linux/drivers/net/ethernet/cavium/thunder/
H A Dnicvf_ethtool.c557 u64 rss_cfg; in nicvf_set_rxfh_fields() local
560 rss_cfg = nicvf_reg_read(nic, NIC_VNIC_RSS_CFG); in nicvf_set_rxfh_fields()
577 rss_cfg &= ~(1ULL << RSS_HASH_TCP); in nicvf_set_rxfh_fields()
580 rss_cfg |= (1ULL << RSS_HASH_TCP); in nicvf_set_rxfh_fields()
590 rss_cfg &= ~(1ULL << RSS_HASH_UDP); in nicvf_set_rxfh_fields()
593 rss_cfg |= (1ULL << RSS_HASH_UDP); in nicvf_set_rxfh_fields()
603 rss_cfg &= ~(1ULL << RSS_HASH_L4ETC); in nicvf_set_rxfh_fields()
606 rss_cfg |= (1ULL << RSS_HASH_L4ETC); in nicvf_set_rxfh_fields()
614 rss_cfg = RSS_HASH_IP; in nicvf_set_rxfh_fields()
620 nicvf_reg_write(nic, NIC_VNIC_RSS_CFG, rss_cfg); in nicvf_set_rxfh_fields()
H A Dnicvf_main.c340 mbx.rss_cfg.vf_id = nic->vf_id; in nicvf_config_rss()
341 mbx.rss_cfg.hash_bits = rss->hash_bits; in nicvf_config_rss()
343 mbx.rss_cfg.tbl_offset = nextq; in nicvf_config_rss()
344 mbx.rss_cfg.tbl_len = min(ind_tbl_len, in nicvf_config_rss()
346 mbx.rss_cfg.msg = mbx.rss_cfg.tbl_offset ? in nicvf_config_rss()
349 for (i = 0; i < mbx.rss_cfg.tbl_len; i++) in nicvf_config_rss()
350 mbx.rss_cfg.ind_tbl[i] = rss->ind_tbl[nextq++]; in nicvf_config_rss()
354 ind_tbl_len -= mbx.rss_cfg.tbl_len; in nicvf_config_rss()
H A Dnic.h594 struct rss_cfg_msg rss_cfg; member
/linux/drivers/net/ethernet/intel/ice/virt/
H A Drss.c522 struct virtchnl_rss_cfg *rss_cfg, in ice_vc_parse_rss_cfg() argument
539 if (rss_cfg->rss_algorithm == VIRTCHNL_RSS_ALG_TOEPLITZ_SYMMETRIC) in ice_vc_parse_rss_cfg()
549 for (i = 0; i < rss_cfg->proto_hdrs.count; i++) { in ice_vc_parse_rss_cfg()
551 &rss_cfg->proto_hdrs.proto_hdr[i]; in ice_vc_parse_rss_cfg()
1567 struct virtchnl_rss_cfg *rss_cfg = (struct virtchnl_rss_cfg *)msg; in ice_vc_handle_rss_cfg() local
1595 if (rss_cfg->proto_hdrs.count > VIRTCHNL_MAX_NUM_PROTO_HDRS || in ice_vc_handle_rss_cfg()
1596 rss_cfg->rss_algorithm < VIRTCHNL_RSS_ALG_TOEPLITZ_ASYMMETRIC || in ice_vc_handle_rss_cfg()
1597 rss_cfg->rss_algorithm > VIRTCHNL_RSS_ALG_XOR_SYMMETRIC) { in ice_vc_handle_rss_cfg()
1610 if (rss_cfg->rss_algorithm == VIRTCHNL_RSS_ALG_R_ASYMMETRIC) { in ice_vc_handle_rss_cfg()
1628 symm = rss_cfg->rss_algorithm == VIRTCHNL_RSS_ALG_TOEPLITZ_SYMMETRIC; in ice_vc_handle_rss_cfg()
[all …]
/linux/drivers/net/ethernet/hisilicon/hns3/hns3vf/
H A Dhclgevf_main.c524 struct hclge_comm_rss_cfg *rss_cfg = &hdev->rss_cfg; in hclgevf_get_rss_hash_key() local
547 memcpy(&rss_cfg->rss_hash_key[hash_key_index], in hclgevf_get_rss_hash_key()
551 memcpy(&rss_cfg->rss_hash_key[hash_key_index], in hclgevf_get_rss_hash_key()
562 struct hclge_comm_rss_cfg *rss_cfg = &hdev->rss_cfg; in hclgevf_get_rss() local
566 hclge_comm_get_rss_hash_info(rss_cfg, key, hfunc); in hclgevf_get_rss()
574 memcpy(key, rss_cfg->rss_hash_key, in hclgevf_get_rss()
579 hclge_comm_get_rss_indir_tbl(rss_cfg, indir, in hclgevf_get_rss()
589 struct hclge_comm_rss_cfg *rss_cfg = &hdev->rss_cfg; in hclgevf_set_rss() local
593 ret = hclge_comm_set_rss_hash_key(rss_cfg, &hdev->hw.hw, key, in hclgevf_set_rss()
601 rss_cfg->rss_indirection_tbl[i] = indir[i]; in hclgevf_set_rss()
[all …]
H A Dhclgevf_main.h214 struct hclge_comm_rss_cfg rss_cfg; member
/linux/drivers/net/ethernet/fungible/funeth/
H A Dfuneth_main.c211 memcpy(fp->rss_cfg, key, FUN_ETH_RSS_MAX_KEY_SIZE); in fun_config_rss()
212 indir_tab = fp->rss_cfg + FUN_ETH_RSS_MAX_KEY_SIZE; in fun_config_rss()
804 if (fp->rss_cfg) { in fun_up()
1366 if (!fp->rss_cfg) in fun_reset_rss_indir()
1389 if (!fp->rss_cfg) in fun_rss_set_qnum()
1429 fp->rss_cfg = dma_alloc_coherent(&fp->pdev->dev, size, in fun_init_rss()
1431 if (!fp->rss_cfg) in fun_init_rss()
1442 if (fp->rss_cfg) { in fun_free_rss()
1445 fp->rss_cfg, fp->rss_dma_addr); in fun_free_rss()
1446 fp->rss_cfg = NULL; in fun_free_rss()
H A Dfuneth.h141 void *rss_cfg; member
H A Dfuneth_ethtool.c978 if (!fp->rss_cfg) in fun_get_rxfh()
1003 if (!fp->rss_cfg) in fun_set_rxfh()
/linux/drivers/net/ethernet/intel/ice/
H A Dice_flow.c2252 struct ice_rss_cfg *r, *rss_cfg; in ice_add_rss_list() local
2261 rss_cfg = devm_kzalloc(ice_hw_to_dev(hw), sizeof(*rss_cfg), in ice_add_rss_list()
2263 if (!rss_cfg) in ice_add_rss_list()
2266 rss_cfg->hash.hash_flds = prof->segs[prof->segs_cnt - 1].match; in ice_add_rss_list()
2267 rss_cfg->hash.addl_hdrs = prof->segs[prof->segs_cnt - 1].hdrs; in ice_add_rss_list()
2268 rss_cfg->hash.hdr_type = hdr_type; in ice_add_rss_list()
2269 rss_cfg->hash.symm = prof->symm; in ice_add_rss_list()
2270 set_bit(vsi_handle, rss_cfg->vsis); in ice_add_rss_list()
2272 list_add_tail(&rss_cfg->l_entry, &hw->rss_list_head); in ice_add_rss_list()
/linux/drivers/net/ethernet/hisilicon/hns3/hns3pf/
H A Dhclge_mbx.c751 struct hclge_comm_rss_cfg *rss_cfg; in hclge_get_rss_key() local
756 rss_cfg = &hdev->rss_cfg; in hclge_get_rss_key()
757 rss_hash_key_size = sizeof(rss_cfg->rss_hash_key); in hclge_get_rss_key()
770 &rss_cfg->rss_hash_key[index * HCLGE_RSS_MBX_RESP_LEN], in hclge_get_rss_key()
H A Dhclge_dcb.c217 hclge_comm_rss_indir_init_cfg(hdev->ae_dev, &hdev->rss_cfg); in hclge_map_update()
H A Dhclge_main.c4840 struct hclge_comm_rss_cfg *rss_cfg = &vport->back->rss_cfg; in hclge_get_rss() local
4842 hclge_comm_get_rss_hash_info(rss_cfg, key, hfunc); in hclge_get_rss()
4844 hclge_comm_get_rss_indir_tbl(rss_cfg, indir, in hclge_get_rss()
4856 struct hclge_comm_rss_cfg *rss_cfg = &hdev->rss_cfg; in hclge_set_rss() local
4859 ret = hclge_comm_set_rss_hash_key(rss_cfg, &hdev->hw.hw, key, hfunc); in hclge_set_rss()
4867 rss_cfg->rss_indirection_tbl[i] = indir[i]; in hclge_set_rss()
4871 rss_cfg->rss_indirection_tbl); in hclge_set_rss()
4882 &hdev->rss_cfg, nfc); in hclge_set_rss_tuple()
4901 ret = hclge_comm_get_rss_tuple(&vport->back->rss_cfg, nfc->flow_type, in hclge_get_rss_tuple()
4965 u16 *rss_indir = hdev->rss_cfg.rss_indirection_tbl; in hclge_rss_init_hw()
[all …]
H A Dhclge_main.h988 struct hclge_comm_rss_cfg rss_cfg; member
/linux/drivers/net/ethernet/netronome/nfp/
H A Dnfp_net_ethtool.c1322 if (nn->rss_cfg & nfp_rss_flag) in nfp_net_get_rxfh_fields()
1469 u32 new_rss_cfg = nn->rss_cfg; in nfp_net_set_rxfh_fields()
1504 if (new_rss_cfg == nn->rss_cfg) in nfp_net_set_rxfh_fields()
1512 nn->rss_cfg = new_rss_cfg; in nfp_net_set_rxfh_fields()
1514 nn_dbg(nn, "Changed RSS config to 0x%x\n", nn->rss_cfg); in nfp_net_set_rxfh_fields()
H A Dnfp_net.h642 u32 rss_cfg; member
/linux/drivers/net/ethernet/brocade/bna/
H A Dbna_types.h776 struct bna_rss_config rss_cfg; member

12