/kernel/linux/linux-6.6/drivers/net/ethernet/hisilicon/hns3/hns3_common/ |
H A D | hclge_comm_rss.c | 36 struct hclge_comm_rss_cfg *rss_cfg) in hclge_comm_rss_init_cfg() 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() 117 int hclge_comm_set_rss_hash_key(struct hclge_comm_rss_cfg *rss_cfg, in hclge_comm_set_rss_hash_key() argument 124 ret = hclge_comm_parse_rss_hfunc(rss_cfg, hfunc, &hash_algo); in hclge_comm_set_rss_hash_key() 135 memcpy(rss_cfg in hclge_comm_set_rss_hash_key() 34 hclge_comm_rss_init_cfg(struct hnae3_handle *nic, struct hnae3_ae_dev *ae_dev, struct hclge_comm_rss_cfg *rss_cfg) hclge_comm_rss_init_cfg() argument 147 hclge_comm_set_rss_tuple(struct hnae3_ae_dev *ae_dev, struct hclge_comm_hw *hw, struct hclge_comm_rss_cfg *rss_cfg, struct ethtool_rxnfc *nfc) hclge_comm_set_rss_tuple() argument 194 hclge_comm_parse_rss_hfunc(struct hclge_comm_rss_cfg *rss_cfg, const u8 hfunc, u8 *hash_algo) hclge_comm_parse_rss_hfunc() argument 212 hclge_comm_rss_indir_init_cfg(struct hnae3_ae_dev *ae_dev, struct hclge_comm_rss_cfg *rss_cfg) hclge_comm_rss_indir_init_cfg() argument 221 hclge_comm_get_rss_tuple(struct hclge_comm_rss_cfg *rss_cfg, int flow_type, u8 *tuple_sets) hclge_comm_get_rss_tuple() argument 308 hclge_comm_set_rss_input_tuple(struct hclge_comm_hw *hw, struct hclge_comm_rss_cfg *rss_cfg) hclge_comm_set_rss_input_tuple() argument 336 hclge_comm_get_rss_hash_info(struct hclge_comm_rss_cfg *rss_cfg, u8 *key, u8 *hfunc) hclge_comm_get_rss_hash_info() argument 359 hclge_comm_get_rss_indir_tbl(struct hclge_comm_rss_cfg *rss_cfg, u32 *indir, u16 rss_ind_tbl_size) hclge_comm_get_rss_indir_tbl() argument 437 hclge_comm_init_rss_tuple_cmd(struct hclge_comm_rss_cfg *rss_cfg, struct ethtool_rxnfc *nfc, struct hnae3_ae_dev *ae_dev, struct hclge_comm_rss_input_tuple_cmd *req) hclge_comm_init_rss_tuple_cmd() argument [all...] |
H A D | hclge_comm_rss.h | 99 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, [all...] |
/kernel/linux/linux-5.10/drivers/net/ethernet/hisilicon/hns3/hns3vf/ |
H A D | hclgevf_main.c | 636 const u8 *indir = hdev->rss_cfg.rss_indirection_tbl; in hclgevf_set_rss_indir_table() 708 struct hclgevf_rss_cfg *rss_cfg = &hdev->rss_cfg; in hclgevf_get_rss_hash_key() local 731 memcpy(&rss_cfg->rss_hash_key[hash_key_index], in hclgevf_get_rss_hash_key() 735 memcpy(&rss_cfg->rss_hash_key[hash_key_index], in hclgevf_get_rss_hash_key() 746 struct hclgevf_rss_cfg *rss_cfg = &hdev->rss_cfg; in hclgevf_get_rss() local 752 switch (rss_cfg->hash_algo) { in hclgevf_get_rss() 767 memcpy(key, rss_cfg->rss_hash_key, in hclgevf_get_rss() 776 memcpy(key, rss_cfg in hclgevf_get_rss() 810 struct hclgevf_rss_cfg *rss_cfg = &hdev->rss_cfg; hclgevf_set_rss() local 877 struct hclgevf_rss_cfg *rss_cfg = &hdev->rss_cfg; hclgevf_set_rss_tuple() local 958 struct hclgevf_rss_cfg *rss_cfg = &hdev->rss_cfg; hclgevf_get_rss_tuple() local 1008 hclgevf_set_rss_input_tuple(struct hclgevf_dev *hdev, struct hclgevf_rss_cfg *rss_cfg) hclgevf_set_rss_input_tuple() argument 1038 struct hclgevf_rss_cfg *rss_cfg = &hdev->rss_cfg; hclgevf_get_tc_size() local 2495 struct hclgevf_rss_cfg *rss_cfg = &hdev->rss_cfg; hclgevf_rss_init_cfg() local 2527 struct hclgevf_rss_cfg *rss_cfg = &hdev->rss_cfg; hclgevf_rss_init_hw() local [all...] |
H A D | hclgevf_main.h | 269 struct hclgevf_rss_cfg rss_cfg; member
|
/kernel/linux/linux-5.10/drivers/net/ethernet/huawei/hinic/ |
H A D | hinic_port.c | 656 struct hinic_rss_indir_table rss_cfg = { 0 }; in hinic_rss_get_indir_tbl() local 660 u16 out_size = sizeof(rss_cfg); in hinic_rss_get_indir_tbl() 663 rss_cfg.func_id = HINIC_HWIF_FUNC_IDX(hwif); in hinic_rss_get_indir_tbl() 664 rss_cfg.template_id = tmpl_idx; in hinic_rss_get_indir_tbl() 668 &rss_cfg, sizeof(rss_cfg), &rss_cfg, in hinic_rss_get_indir_tbl() 670 if (err || !out_size || rss_cfg.status) { in hinic_rss_get_indir_tbl() 672 err, rss_cfg.status, out_size); in hinic_rss_get_indir_tbl() 676 hinic_be32_to_cpu(rss_cfg in hinic_rss_get_indir_tbl() 905 struct hinic_rss_config rss_cfg = { 0 }; hinic_rss_cfg() local [all...] |
/kernel/linux/linux-6.6/drivers/net/ethernet/huawei/hinic/ |
H A D | hinic_port.c | 671 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 in hinic_rss_get_indir_tbl() 920 struct hinic_rss_config rss_cfg = { 0 }; hinic_rss_cfg() local [all...] |
/kernel/linux/linux-6.6/drivers/net/ethernet/intel/iavf/ |
H A D | iavf_adv_rss.c | 95 * @rss_cfg: the virtchnl message to be filled with RSS configuration setting 102 iavf_fill_adv_rss_cfg_msg(struct virtchnl_rss_cfg *rss_cfg, in iavf_fill_adv_rss_cfg_msg() argument 105 struct virtchnl_proto_hdrs *proto_hdrs = &rss_cfg->proto_hdrs; in iavf_fill_adv_rss_cfg_msg() 108 rss_cfg->rss_algorithm = VIRTCHNL_RSS_ALG_TOEPLITZ_ASYMMETRIC; in iavf_fill_adv_rss_cfg_msg()
|
H A D | iavf_virtchnl.c | 1791 struct virtchnl_rss_cfg *rss_cfg; in iavf_add_adv_rss_cfg() local 1804 rss_cfg = kzalloc(len, GFP_KERNEL); in iavf_add_adv_rss_cfg() 1805 if (!rss_cfg) in iavf_add_adv_rss_cfg() 1813 memcpy(rss_cfg, &rss->cfg_msg, len); in iavf_add_adv_rss_cfg() 1825 (u8 *)rss_cfg, len); in iavf_add_adv_rss_cfg() 1830 kfree(rss_cfg); in iavf_add_adv_rss_cfg() 1842 struct virtchnl_rss_cfg *rss_cfg; in iavf_del_adv_rss_cfg() local 1855 rss_cfg = kzalloc(len, GFP_KERNEL); in iavf_del_adv_rss_cfg() 1856 if (!rss_cfg) in iavf_del_adv_rss_cfg() 1864 memcpy(rss_cfg, in iavf_del_adv_rss_cfg() [all...] |
H A D | iavf_adv_rss.h | 88 iavf_fill_adv_rss_cfg_msg(struct virtchnl_rss_cfg *rss_cfg,
|
/kernel/linux/linux-6.6/drivers/net/ethernet/marvell/octeontx2/nic/ |
H A D | otx2_ethtool.c | 627 u32 rss_cfg = rss->flowkey_cfg; in otx2_set_rss_hash_opts() local 640 rss_cfg |= NIX_FLOW_KEY_TYPE_VLAN; in otx2_set_rss_hash_opts() 642 rss_cfg &= ~NIX_FLOW_KEY_TYPE_VLAN; in otx2_set_rss_hash_opts() 652 rss_cfg &= ~NIX_FLOW_KEY_TYPE_TCP; in otx2_set_rss_hash_opts() 655 rss_cfg |= NIX_FLOW_KEY_TYPE_TCP; in otx2_set_rss_hash_opts() 665 rss_cfg &= ~NIX_FLOW_KEY_TYPE_UDP; in otx2_set_rss_hash_opts() 668 rss_cfg |= NIX_FLOW_KEY_TYPE_UDP; in otx2_set_rss_hash_opts() 678 rss_cfg &= ~NIX_FLOW_KEY_TYPE_SCTP; in otx2_set_rss_hash_opts() 681 rss_cfg |= NIX_FLOW_KEY_TYPE_SCTP; in otx2_set_rss_hash_opts() 691 rss_cfg in otx2_set_rss_hash_opts() [all...] |
/kernel/linux/linux-5.10/drivers/net/ethernet/marvell/octeontx2/nic/ |
H A D | otx2_ethtool.c | 473 u32 rss_cfg = rss->flowkey_cfg; in otx2_set_rss_hash_opts() local 486 rss_cfg |= NIX_FLOW_KEY_TYPE_VLAN; in otx2_set_rss_hash_opts() 488 rss_cfg &= ~NIX_FLOW_KEY_TYPE_VLAN; in otx2_set_rss_hash_opts() 498 rss_cfg &= ~NIX_FLOW_KEY_TYPE_TCP; in otx2_set_rss_hash_opts() 501 rss_cfg |= NIX_FLOW_KEY_TYPE_TCP; in otx2_set_rss_hash_opts() 511 rss_cfg &= ~NIX_FLOW_KEY_TYPE_UDP; in otx2_set_rss_hash_opts() 514 rss_cfg |= NIX_FLOW_KEY_TYPE_UDP; in otx2_set_rss_hash_opts() 524 rss_cfg &= ~NIX_FLOW_KEY_TYPE_SCTP; in otx2_set_rss_hash_opts() 527 rss_cfg |= NIX_FLOW_KEY_TYPE_SCTP; in otx2_set_rss_hash_opts() 535 rss_cfg in otx2_set_rss_hash_opts() [all...] |
/kernel/linux/linux-5.10/drivers/net/ethernet/cavium/thunder/ |
H A D | nicvf_ethtool.c | 560 u64 rss_cfg = nicvf_reg_read(nic, NIC_VNIC_RSS_CFG); in nicvf_set_rss_hash_opts() local 577 rss_cfg &= ~(1ULL << RSS_HASH_TCP); in nicvf_set_rss_hash_opts() 580 rss_cfg |= (1ULL << RSS_HASH_TCP); in nicvf_set_rss_hash_opts() 590 rss_cfg &= ~(1ULL << RSS_HASH_UDP); in nicvf_set_rss_hash_opts() 593 rss_cfg |= (1ULL << RSS_HASH_UDP); in nicvf_set_rss_hash_opts() 603 rss_cfg &= ~(1ULL << RSS_HASH_L4ETC); in nicvf_set_rss_hash_opts() 606 rss_cfg |= (1ULL << RSS_HASH_L4ETC); in nicvf_set_rss_hash_opts() 614 rss_cfg = RSS_HASH_IP; in nicvf_set_rss_hash_opts() 620 nicvf_reg_write(nic, NIC_VNIC_RSS_CFG, rss_cfg); in nicvf_set_rss_hash_opts()
|
H A D | nicvf_main.c | 341 mbx.rss_cfg.vf_id = nic->vf_id; in nicvf_config_rss() 342 mbx.rss_cfg.hash_bits = rss->hash_bits; in nicvf_config_rss() 344 mbx.rss_cfg.tbl_offset = nextq; in nicvf_config_rss() 345 mbx.rss_cfg.tbl_len = min(ind_tbl_len, in nicvf_config_rss() 347 mbx.rss_cfg.msg = mbx.rss_cfg.tbl_offset ? in nicvf_config_rss() 350 for (i = 0; i < mbx.rss_cfg.tbl_len; i++) in nicvf_config_rss() 351 mbx.rss_cfg.ind_tbl[i] = rss->ind_tbl[nextq++]; in nicvf_config_rss() 355 ind_tbl_len -= mbx.rss_cfg.tbl_len; in nicvf_config_rss()
|
/kernel/linux/linux-6.6/drivers/net/ethernet/cavium/thunder/ |
H A D | nicvf_ethtool.c | 567 u64 rss_cfg = nicvf_reg_read(nic, NIC_VNIC_RSS_CFG); in nicvf_set_rss_hash_opts() local 584 rss_cfg &= ~(1ULL << RSS_HASH_TCP); in nicvf_set_rss_hash_opts() 587 rss_cfg |= (1ULL << RSS_HASH_TCP); in nicvf_set_rss_hash_opts() 597 rss_cfg &= ~(1ULL << RSS_HASH_UDP); in nicvf_set_rss_hash_opts() 600 rss_cfg |= (1ULL << RSS_HASH_UDP); in nicvf_set_rss_hash_opts() 610 rss_cfg &= ~(1ULL << RSS_HASH_L4ETC); in nicvf_set_rss_hash_opts() 613 rss_cfg |= (1ULL << RSS_HASH_L4ETC); in nicvf_set_rss_hash_opts() 621 rss_cfg = RSS_HASH_IP; in nicvf_set_rss_hash_opts() 627 nicvf_reg_write(nic, NIC_VNIC_RSS_CFG, rss_cfg); in nicvf_set_rss_hash_opts()
|
H A D | nicvf_main.c | 340 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()
|
/kernel/linux/linux-6.6/drivers/net/ethernet/hisilicon/hns3/hns3vf/ |
H A D | hclgevf_main.c | 488 struct hclge_comm_rss_cfg *rss_cfg = &hdev->rss_cfg; in hclgevf_get_rss_hash_key() local 511 memcpy(&rss_cfg->rss_hash_key[hash_key_index], in hclgevf_get_rss_hash_key() 515 memcpy(&rss_cfg->rss_hash_key[hash_key_index], in hclgevf_get_rss_hash_key() 526 struct hclge_comm_rss_cfg *rss_cfg = &hdev->rss_cfg; in hclgevf_get_rss() local 530 hclge_comm_get_rss_hash_info(rss_cfg, key, hfunc); in hclgevf_get_rss() 538 memcpy(key, rss_cfg->rss_hash_key, in hclgevf_get_rss() 543 hclge_comm_get_rss_indir_tbl(rss_cfg, indir, in hclgevf_get_rss() 553 struct hclge_comm_rss_cfg *rss_cfg in hclgevf_set_rss() local 615 struct hclge_comm_rss_cfg *rss_cfg = &hdev->rss_cfg; hclgevf_get_tc_size() local 2115 struct hclge_comm_rss_cfg *rss_cfg = &hdev->rss_cfg; hclgevf_rss_init_hw() local [all...] |
H A D | hclgevf_main.h | 214 struct hclge_comm_rss_cfg rss_cfg; member
|
/kernel/linux/linux-5.10/drivers/net/ethernet/intel/ice/ |
H A D | ice_flow.c | 1308 struct ice_rss_cfg *r, *rss_cfg; in ice_add_rss_list() local 1317 rss_cfg = devm_kzalloc(ice_hw_to_dev(hw), sizeof(*rss_cfg), in ice_add_rss_list() 1319 if (!rss_cfg) in ice_add_rss_list() 1322 rss_cfg->hashed_flds = prof->segs[prof->segs_cnt - 1].match; in ice_add_rss_list() 1323 rss_cfg->packet_hdr = prof->segs[prof->segs_cnt - 1].hdrs; in ice_add_rss_list() 1324 set_bit(vsi_handle, rss_cfg->vsis); in ice_add_rss_list() 1326 list_add_tail(&rss_cfg->l_entry, &hw->rss_list_head); in ice_add_rss_list()
|
/kernel/linux/linux-6.6/drivers/net/ethernet/fungible/funeth/ |
H A D | funeth_main.c | 211 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() 1378 if (!fp->rss_cfg) in fun_reset_rss_indir() 1401 if (!fp->rss_cfg) in fun_rss_set_qnum() 1441 fp->rss_cfg = dma_alloc_coherent(&fp->pdev->dev, size, in fun_init_rss() 1443 if (!fp->rss_cfg) in fun_init_rss() 1454 if (fp->rss_cfg) { in fun_free_rss() 1457 fp->rss_cfg, fp->rss_dma_addr); in fun_free_rss() 1458 fp->rss_cfg in fun_free_rss() [all...] |
H A D | funeth.h | 141 void *rss_cfg; member
|
/kernel/linux/linux-6.6/drivers/net/ethernet/intel/ice/ |
H A D | ice_flow.c | 2001 struct ice_rss_cfg *r, *rss_cfg; in ice_add_rss_list() local 2010 rss_cfg = devm_kzalloc(ice_hw_to_dev(hw), sizeof(*rss_cfg), in ice_add_rss_list() 2012 if (!rss_cfg) in ice_add_rss_list() 2015 rss_cfg->hashed_flds = prof->segs[prof->segs_cnt - 1].match; in ice_add_rss_list() 2016 rss_cfg->packet_hdr = prof->segs[prof->segs_cnt - 1].hdrs; in ice_add_rss_list() 2017 set_bit(vsi_handle, rss_cfg->vsis); in ice_add_rss_list() 2019 list_add_tail(&rss_cfg->l_entry, &hw->rss_list_head); in ice_add_rss_list()
|
H A D | ice_virtchnl.c | 681 * @rss_cfg: pointer to the virtchnl RSS cfg 693 ice_vc_parse_rss_cfg(struct ice_hw *hw, struct virtchnl_rss_cfg *rss_cfg, in ice_vc_parse_rss_cfg() argument 705 for (i = 0; i < rss_cfg->proto_hdrs.count; i++) { in ice_vc_parse_rss_cfg() 707 &rss_cfg->proto_hdrs.proto_hdr[i]; in ice_vc_parse_rss_cfg() 765 struct virtchnl_rss_cfg *rss_cfg = (struct virtchnl_rss_cfg *)msg; in ice_vc_handle_rss_cfg() local 790 if (rss_cfg->proto_hdrs.count > VIRTCHNL_MAX_NUM_PROTO_HDRS || in ice_vc_handle_rss_cfg() 791 rss_cfg->rss_algorithm < VIRTCHNL_RSS_ALG_TOEPLITZ_ASYMMETRIC || in ice_vc_handle_rss_cfg() 792 rss_cfg->rss_algorithm > VIRTCHNL_RSS_ALG_XOR_SYMMETRIC) { in ice_vc_handle_rss_cfg() 805 if (!ice_vc_validate_pattern(vf, &rss_cfg->proto_hdrs)) { in ice_vc_handle_rss_cfg() 810 if (rss_cfg in ice_vc_handle_rss_cfg() [all...] |
/kernel/linux/linux-5.10/drivers/net/ethernet/netronome/nfp/ |
H A D | nfp_net_ethtool.c | 913 if (nn->rss_cfg & nfp_rss_flag) in nfp_net_get_rss_hash_opts() 938 u32 new_rss_cfg = nn->rss_cfg; in nfp_net_set_rss_hash_opt() 973 if (new_rss_cfg == nn->rss_cfg) in nfp_net_set_rss_hash_opt() 981 nn->rss_cfg = new_rss_cfg; in nfp_net_set_rss_hash_opt() 983 nn_dbg(nn, "Changed RSS config to 0x%x\n", nn->rss_cfg); in nfp_net_set_rss_hash_opt()
|
/kernel/linux/linux-6.6/drivers/net/ethernet/hisilicon/hns3/hns3pf/ |
H A D | hclge_mbx.c | 751 struct hclge_comm_rss_cfg *rss_cfg; in hclge_get_rss_key() local 755 rss_cfg = &hdev->rss_cfg; in hclge_get_rss_key() 761 sizeof(rss_cfg->rss_hash_key)) { in hclge_get_rss_key() 769 &rss_cfg->rss_hash_key[index * HCLGE_RSS_MBX_RESP_LEN], in hclge_get_rss_key()
|
/kernel/linux/linux-6.6/drivers/net/ethernet/netronome/nfp/ |
H A D | nfp_net_ethtool.c | 1314 if (nn->rss_cfg & nfp_rss_flag) in nfp_net_get_rss_hash_opts() 1339 u32 new_rss_cfg = nn->rss_cfg; in nfp_net_set_rss_hash_opt() 1374 if (new_rss_cfg == nn->rss_cfg) in nfp_net_set_rss_hash_opt() 1382 nn->rss_cfg = new_rss_cfg; in nfp_net_set_rss_hash_opt() 1384 nn_dbg(nn, "Changed RSS config to 0x%x\n", nn->rss_cfg); in nfp_net_set_rss_hash_opt()
|