| /drivers/net/ethernet/mellanox/mlx5/core/en/ |
| A D | rss.c | 138 rss = kvzalloc(sizeof(*rss), GFP_KERNEL); in mlx5e_rss_init_copy() 139 if (!rss) in mlx5e_rss_init_copy() 151 return rss; in mlx5e_rss_init_copy() 156 kvfree(rss); in mlx5e_rss_init_copy() 176 return inner ? &rss->inner_tir[tt] : &rss->tir[tt]; in rss_get_tirp() 357 return mlx5e_rqt_init_direct(&rss->rqt, rss->mdev, true, in mlx5e_rss_init_no_tirs() 358 rss->drop_rqn, rss->indir.max_table_size); in mlx5e_rss_init_no_tirs() 369 rss = kvzalloc(sizeof(*rss), GFP_KERNEL); in mlx5e_rss_init() 370 if (!rss) in mlx5e_rss_init() 401 return rss; in mlx5e_rss_init() [all …]
|
| A D | rx_res.c | 69 res->rss[0] = rss; in mlx5e_rx_res_rss_init_def() 95 res->rss[rss_idx] = rss; in mlx5e_rx_res_rss_init() 121 rss = res->rss[rss_idx]; in mlx5e_rx_res_rss_destroy() 133 struct mlx5e_rss *rss = res->rss[i]; in mlx5e_rx_res_rss_destroy_all() local 158 struct mlx5e_rss *rss = res->rss[i]; in mlx5e_rx_res_rss_enable() local 175 struct mlx5e_rss *rss = res->rss[i]; in mlx5e_rx_res_rss_disable() local 196 rss = res->rss[rss_idx]; in mlx5e_rx_res_rss_get_rxfh() 213 rss = res->rss[rss_idx]; in mlx5e_rx_res_rss_set_rxfh() 229 rss = res->rss[rss_idx]; in mlx5e_rx_res_rss_get_hash_fields() 244 rss = res->rss[rss_idx]; in mlx5e_rx_res_rss_set_hash_fields() [all …]
|
| A D | rss.h | 29 int mlx5e_rss_cleanup(struct mlx5e_rss *rss); 31 void mlx5e_rss_refcnt_inc(struct mlx5e_rss *rss); 32 void mlx5e_rss_refcnt_dec(struct mlx5e_rss *rss); 33 unsigned int mlx5e_rss_refcnt_read(struct mlx5e_rss *rss); 35 bool mlx5e_rss_get_inner_ft_support(struct mlx5e_rss *rss); 39 u32 mlx5e_rss_get_rqtn(struct mlx5e_rss *rss); 40 int mlx5e_rss_obtain_tirn(struct mlx5e_rss *rss, 46 void mlx5e_rss_disable(struct mlx5e_rss *rss); 48 int mlx5e_rss_packet_merge_set_param(struct mlx5e_rss *rss, 52 int mlx5e_rss_set_rxfh(struct mlx5e_rss *rss, const u32 *indir, [all …]
|
| A D | reporter_rx.c | 369 static void mlx5e_rx_reporter_diagnose_rx_res_rss_tirn(struct mlx5e_rss *rss, bool inner, in mlx5e_rx_reporter_diagnose_rx_res_rss_tirn() argument 376 if (!mlx5e_rss_valid_tir(rss, tt, inner)) in mlx5e_rx_reporter_diagnose_rx_res_rss_tirn() 388 devlink_fmsg_u32_pair_put(fmsg, "tirn", mlx5e_rss_get_tirn(rss, tt, inner)); in mlx5e_rx_reporter_diagnose_rx_res_rss_tirn() 399 struct mlx5e_rss *rss = mlx5e_rx_res_rss_get(rx_res, rss_idx); in mlx5e_rx_reporter_diagnose_rx_res_rss_ix() local 401 if (!rss) in mlx5e_rx_reporter_diagnose_rx_res_rss_ix() 407 devlink_fmsg_u32_pair_put(fmsg, "rqtn", mlx5e_rss_get_rqtn(rss)); in mlx5e_rx_reporter_diagnose_rx_res_rss_ix() 408 mlx5e_rx_reporter_diagnose_rx_res_rss_tirn(rss, false, fmsg); in mlx5e_rx_reporter_diagnose_rx_res_rss_ix() 409 if (mlx5e_rss_get_inner_ft_support(rss)) in mlx5e_rx_reporter_diagnose_rx_res_rss_ix() 410 mlx5e_rx_reporter_diagnose_rx_res_rss_tirn(rss, true, fmsg); in mlx5e_rx_reporter_diagnose_rx_res_rss_ix()
|
| A D | rx_res.h | 68 int mlx5e_rx_res_rss_index(struct mlx5e_rx_res *res, struct mlx5e_rss *rss);
|
| /drivers/net/ethernet/amazon/ena/ |
| A D | ena_com.c | 1060 struct ena_rss *rss = &ena_dev->rss; in ena_com_hash_key_allocate() local 1076 struct ena_rss *rss = &ena_dev->rss; in ena_com_hash_key_destroy() local 1086 struct ena_rss *rss = &ena_dev->rss; in ena_com_hash_ctrl_init() local 1099 struct ena_rss *rss = &ena_dev->rss; in ena_com_hash_ctrl_destroy() local 1110 struct ena_rss *rss = &ena_dev->rss; in ena_com_indirect_table_allocate() local 1159 struct ena_rss *rss = &ena_dev->rss; in ena_com_indirect_table_destroy() local 1246 struct ena_rss *rss = &ena_dev->rss; in ena_com_ind_tbl_convert_to_device() local 2532 struct ena_rss *rss = &ena_dev->rss; in ena_com_set_hash_function() local 2596 struct ena_rss *rss = &ena_dev->rss; in ena_com_fill_hash_function() local 2643 struct ena_rss *rss = &ena_dev->rss; in ena_com_get_hash_function() local [all …]
|
| /drivers/net/ethernet/marvell/octeontx2/nic/ |
| A D | otx2_ethtool.c | 569 rss = &pfvf->hw.rss_info; in otx2_get_rss_hash_opts() 571 if (!(rss->flowkey_cfg & in otx2_get_rss_hash_opts() 625 rss = &pfvf->hw.rss_info; in otx2_set_rss_hash_opts() 628 if (!rss->enable) { in otx2_set_rss_hash_opts() 789 rss = &pfvf->hw.rss_info; in otx2_get_rxfh_key_size() 791 return sizeof(rss->key); in otx2_get_rxfh_key_size() 817 if (!rss->enable) { in otx2_create_rxfh() 886 if (!rss->enable) { in otx2_set_rxfh() 892 memcpy(rss->key, rxfh->key, sizeof(rss->key)); in otx2_set_rxfh() 920 if (!rss->enable) { in otx2_get_rxfh() [all …]
|
| A D | otx2_common.c | 301 req->flowkey_cfg = rss->flowkey_cfg; in otx2_set_flowkey_cfg() 330 ind_tbl = ind_tbl ?: rss->ind_tbl; in otx2_set_rss_table() 354 aq->rss.rq = ind_tbl[idx]; in otx2_set_rss_table() 369 u64 *key = (u64 *)&rss->key[4]; in otx2_set_rss_key() 382 idx = sizeof(rss->key) / sizeof(u64); in otx2_set_rss_key() 394 rss->rss_size = sizeof(*rss->ind_tbl); in otx2_rss_init() 397 if (!rss->enable) in otx2_rss_init() 398 netdev_rss_key_fill(rss->key, sizeof(rss->key)); in otx2_rss_init() 403 rss->ind_tbl[idx] = in otx2_rss_init() 412 rss->flowkey_cfg = rss->enable ? rss->flowkey_cfg : in otx2_rss_init() [all …]
|
| /drivers/net/ethernet/intel/iavf/ |
| A D | iavf_adv_rss.c | 156 struct iavf_adv_rss *rss; in iavf_find_adv_rss_cfg_by_hdrs() local 158 list_for_each_entry(rss, &adapter->adv_rss_list_head, list) in iavf_find_adv_rss_cfg_by_hdrs() 159 if (rss->packet_hdrs == packet_hdrs) in iavf_find_adv_rss_cfg_by_hdrs() 160 return rss; in iavf_find_adv_rss_cfg_by_hdrs() 175 iavf_print_adv_rss_cfg(struct iavf_adapter *adapter, struct iavf_adv_rss *rss, in iavf_print_adv_rss_cfg() argument 178 u32 packet_hdrs = rss->packet_hdrs; in iavf_print_adv_rss_cfg() 179 u64 hash_flds = rss->hash_flds; in iavf_print_adv_rss_cfg()
|
| A D | iavf_virtchnl.c | 2108 struct iavf_adv_rss *rss; in iavf_add_adv_rss_cfg() local 2159 struct iavf_adv_rss *rss; in iavf_del_adv_rss_cfg() local 2491 struct iavf_adv_rss *rss, *rss_tmp; in iavf_virtchnl_completion() local 2501 list_del(&rss->list); in iavf_virtchnl_completion() 2502 kfree(rss); in iavf_virtchnl_completion() 2509 struct iavf_adv_rss *rss; in iavf_virtchnl_completion() local 2877 struct iavf_adv_rss *rss; in iavf_virtchnl_completion() local 2885 rss->state = IAVF_ADV_RSS_ACTIVE; in iavf_virtchnl_completion() 2892 struct iavf_adv_rss *rss, *rss_tmp; in iavf_virtchnl_completion() local 2898 list_del(&rss->list); in iavf_virtchnl_completion() [all …]
|
| A D | iavf_adv_rss.h | 94 iavf_print_adv_rss_cfg(struct iavf_adapter *adapter, struct iavf_adv_rss *rss,
|
| /drivers/net/ethernet/mellanox/mlx4/ |
| A D | en_resources.c | 41 int is_tx, int rss, int qpn, int cqn, in mlx4_en_fill_qp_context() argument 48 context->flags = cpu_to_be32(7 << 16 | rss << MLX4_RSS_QPC_FLAG_OFFSET); in mlx4_en_fill_qp_context() 51 if (!is_tx && !rss) in mlx4_en_fill_qp_context() 74 if (!rss && in mlx4_en_fill_qp_context() 87 if (!is_tx && !rss && in mlx4_en_fill_qp_context()
|
| /drivers/net/ethernet/wangxun/txgbevf/ |
| A D | txgbevf_main.c | 51 u16 rss, queue; in txgbevf_set_num_queues() local 70 rss = min_t(u16, num_online_cpus(), TXGBEVF_MAX_RSS_NUM); in txgbevf_set_num_queues() 72 rss = min_t(u16, queue, rss); in txgbevf_set_num_queues() 75 wx->num_rx_queues = rss; in txgbevf_set_num_queues() 76 wx->num_tx_queues = rss; in txgbevf_set_num_queues()
|
| /drivers/net/ethernet/cavium/thunder/ |
| A D | nicvf_ethtool.c | 566 struct nicvf_rss_info *rss; in nicvf_set_rxfh_fields() local 569 rss = &nic->rss_info; in nicvf_set_rxfh_fields() 572 if (!rss->enable) in nicvf_set_rxfh_fields() 650 struct nicvf_rss_info *rss = &nic->rss_info; in nicvf_get_rxfh() local 654 for (idx = 0; idx < rss->rss_size; idx++) in nicvf_get_rxfh() 655 rxfh->indir[idx] = rss->ind_tbl[idx]; in nicvf_get_rxfh() 659 memcpy(rxfh->key, rss->key, RSS_HASH_KEY_SIZE * sizeof(u64)); in nicvf_get_rxfh() 671 struct nicvf_rss_info *rss = &nic->rss_info; in nicvf_set_rxfh() local 678 if (!rss->enable) { in nicvf_set_rxfh() 685 for (idx = 0; idx < rss->rss_size; idx++) in nicvf_set_rxfh() [all …]
|
| A D | nicvf_main.c | 336 struct nicvf_rss_info *rss = &nic->rss_info; in nicvf_config_rss() local 337 int ind_tbl_len = rss->rss_size; in nicvf_config_rss() 341 mbx.rss_cfg.hash_bits = rss->hash_bits; in nicvf_config_rss() 360 struct nicvf_rss_info *rss = &nic->rss_info; in nicvf_set_rss_key() local 365 nicvf_reg_write(nic, key_addr, rss->key[idx]); in nicvf_set_rss_key() 372 struct nicvf_rss_info *rss = &nic->rss_info; in nicvf_rss_init() local 378 rss->enable = false; in nicvf_rss_init() 379 rss->hash_bits = 0; in nicvf_rss_init() 383 rss->enable = true; in nicvf_rss_init() 391 rss->hash_bits = ilog2(rounddown_pow_of_two(rss->rss_size)); in nicvf_rss_init() [all …]
|
| /drivers/net/ethernet/mellanox/mlx5/core/ |
| A D | en_fs_ethtool.c | 66 struct mlx5e_rss *rss; member 429 struct mlx5e_rss *rss; in flow_get_tirn() local 434 rss = mlx5e_rx_res_rss_get(priv->rx_res, rss_context); in flow_get_tirn() 435 if (!rss) in flow_get_tirn() 444 err = mlx5e_rss_obtain_tirn(rss, tt, &pkt_merge_param, false, tirn); in flow_get_tirn() 447 eth_rule->rss = rss; in flow_get_tirn() 448 mlx5e_rss_refcnt_inc(eth_rule->rss); in flow_get_tirn() 514 if (eth_rule->rss) in del_ethtool_rule() 515 mlx5e_rss_refcnt_dec(eth_rule->rss); in del_ethtool_rule() 807 if (!eth_rule->rss) in mlx5e_ethtool_get_flow() [all …]
|
| /drivers/net/ethernet/chelsio/cxgb4vf/ |
| A D | t4vf_hw.c | 1017 struct rss_params *rss = &adapter->params.rss; in t4vf_get_rss_glb_config() local 1042 switch (rss->mode) { in t4vf_get_rss_glb_config() 1047 rss->u.basicvirtual.synmapen = in t4vf_get_rss_glb_config() 1049 rss->u.basicvirtual.syn4tupenipv6 = in t4vf_get_rss_glb_config() 1058 rss->u.basicvirtual.ofdmapen = in t4vf_get_rss_glb_config() 1061 rss->u.basicvirtual.tnlmapen = in t4vf_get_rss_glb_config() 1063 rss->u.basicvirtual.tnlalllookup = in t4vf_get_rss_glb_config() 1066 rss->u.basicvirtual.hashtoeplitz = in t4vf_get_rss_glb_config() 1070 if (!rss->u.basicvirtual.tnlmapen) in t4vf_get_rss_glb_config() 1159 switch (adapter->params.rss.mode) { in t4vf_read_rss_vi_config() [all …]
|
| /drivers/net/ethernet/stmicro/stmmac/ |
| A D | stmmac_ethtool.c | 1056 return sizeof(priv->rss.key); in stmmac_get_rxfh_key_size() 1063 return ARRAY_SIZE(priv->rss.table); in stmmac_get_rxfh_indir_size() 1073 for (i = 0; i < ARRAY_SIZE(priv->rss.table); i++) in stmmac_get_rxfh() 1074 rxfh->indir[i] = priv->rss.table[i]; in stmmac_get_rxfh() 1078 memcpy(rxfh->key, priv->rss.key, sizeof(priv->rss.key)); in stmmac_get_rxfh() 1096 for (i = 0; i < ARRAY_SIZE(priv->rss.table); i++) in stmmac_set_rxfh() 1097 priv->rss.table[i] = rxfh->indir[i]; in stmmac_set_rxfh() 1101 memcpy(priv->rss.key, rxfh->key, sizeof(priv->rss.key)); in stmmac_set_rxfh() 1103 return stmmac_rss_configure(priv, priv->hw, &priv->rss, in stmmac_set_rxfh()
|
| A D | stmmac_selftests.c | 824 if (!priv->dma_cap.rssen || !priv->rss.enable) in stmmac_test_rss() 1345 if (priv->rss.enable) { in __stmmac_test_l3filt() 1346 old_enable = priv->rss.enable; in __stmmac_test_l3filt() 1347 priv->rss.enable = false; in __stmmac_test_l3filt() 1419 priv->rss.enable = old_enable; in __stmmac_test_l3filt() 1420 stmmac_rss_configure(priv, priv->hw, &priv->rss, in __stmmac_test_l3filt() 1471 if (priv->rss.enable) { in __stmmac_test_l4filt() 1472 old_enable = priv->rss.enable; in __stmmac_test_l4filt() 1473 priv->rss.enable = false; in __stmmac_test_l4filt() 1550 priv->rss.enable = old_enable; in __stmmac_test_l4filt() [all …]
|
| /drivers/net/ethernet/qlogic/qed/ |
| A D | qed_l2.c | 2380 rss->update_rss_config = 1; in qed_update_vport_rss() 2381 rss->rss_enable = 1; in qed_update_vport_rss() 2384 rss->update_rss_key = 1; in qed_update_vport_rss() 2395 memcpy(rss->rss_ind_table, in qed_update_vport_rss() 2403 memcpy(&rss[1], &rss[0], sizeof(struct qed_rss_params)); in qed_update_vport_rss() 2411 t_rss = &rss[0]; in qed_update_vport_rss() 2413 t_rss = &rss[1]; in qed_update_vport_rss() 2440 struct qed_rss_params *rss; in qed_update_vport() local 2446 rss = vzalloc(array_size(sizeof(*rss), cdev->num_hwfns)); in qed_update_vport() 2447 if (!rss) in qed_update_vport() [all …]
|
| /drivers/net/ethernet/broadcom/bnx2x/ |
| A D | bnx2x_vfpf.c | 1984 struct bnx2x_config_rss_params rss; in bnx2x_vf_mbx_update_rss() local 1999 memcpy(rss.ind_table, rss_tlv->ind_table, in bnx2x_vf_mbx_update_rss() 2002 rss.rss_obj = &vf->rss_conf_obj; in bnx2x_vf_mbx_update_rss() 2003 rss.rss_result_mask = rss_tlv->rss_result_mask; in bnx2x_vf_mbx_update_rss() 2006 rss.rss_flags = 0; in bnx2x_vf_mbx_update_rss() 2007 rss.ramrod_flags = 0; in bnx2x_vf_mbx_update_rss() 2014 __set_bit(BNX2X_RSS_SET_SRCH, &rss.rss_flags); in bnx2x_vf_mbx_update_rss() 2016 __set_bit(BNX2X_RSS_IPV4, &rss.rss_flags); in bnx2x_vf_mbx_update_rss() 2018 __set_bit(BNX2X_RSS_IPV4_TCP, &rss.rss_flags); in bnx2x_vf_mbx_update_rss() 2022 __set_bit(BNX2X_RSS_IPV6, &rss.rss_flags); in bnx2x_vf_mbx_update_rss() [all …]
|
| /drivers/net/ethernet/intel/igc/ |
| A D | igc_base.h | 74 __le32 rss; /* RSS Hash */ member
|
| /drivers/net/ethernet/synopsys/ |
| A D | dwc-xlgmac-common.c | 195 if (pdata->hw_feat.rss) in xlgmac_init() 439 hw_feat->rss = XLGMAC_GET_REG_BITS(mac_hfr1, in xlgmac_get_all_hw_features() 662 pdata->hw_feat.rss ? "YES" : "NO"); in xlgmac_print_all_hw_features()
|
| /drivers/net/ethernet/intel/ixgbe/ |
| A D | ixgbe_lib.c | 190 struct ixgbe_ring_feature *rss = &adapter->ring_feature[RING_F_RSS]; in ixgbe_cache_ring_sriov() local 208 if ((reg_idx & ~vmdq->mask) >= rss->indices) { in ixgbe_cache_ring_sriov() 232 if ((reg_idx & rss->mask) >= rss->indices) in ixgbe_cache_ring_sriov()
|
| /drivers/net/ethernet/qlogic/qede/ |
| A D | qede_filter.c | 565 struct qed_update_vport_rss_params *rss, u8 *update) in qede_fill_rss_params() argument 571 memset(rss, 0, sizeof(*rss)); in qede_fill_rss_params() 599 rss->rss_ind_table[i] = edev->fp_array[idx].rxq->handle; in qede_fill_rss_params() 606 memcpy(rss->rss_key, edev->rss_key, sizeof(rss->rss_key)); in qede_fill_rss_params() 613 rss->rss_caps = edev->rss_caps; in qede_fill_rss_params()
|