indir 143 drivers/net/dsa/bcm_sf2.h u32 indir, dir; \ indir 146 drivers/net/dsa/bcm_sf2.h indir = reg_readl(priv, REG_DIR_DATA_READ); \ indir 148 drivers/net/dsa/bcm_sf2.h return (u64)indir << 32 | dir; \ indir 639 drivers/net/ethernet/amazon/ena/ena_ethtool.c static int ena_indirection_table_get(struct ena_adapter *adapter, u32 *indir) indir 644 drivers/net/ethernet/amazon/ena/ena_ethtool.c if (!indir) indir 647 drivers/net/ethernet/amazon/ena/ena_ethtool.c rc = ena_com_indirect_table_get(ena_dev, indir); indir 656 drivers/net/ethernet/amazon/ena/ena_ethtool.c indir[i] = ENA_IO_RXQ_IDX_TO_COMBINED_IDX(indir[i]); indir 661 drivers/net/ethernet/amazon/ena/ena_ethtool.c static int ena_get_rxfh(struct net_device *netdev, u32 *indir, u8 *key, indir 669 drivers/net/ethernet/amazon/ena/ena_ethtool.c rc = ena_indirection_table_get(adapter, indir); indir 710 drivers/net/ethernet/amazon/ena/ena_ethtool.c static int ena_set_rxfh(struct net_device *netdev, const u32 *indir, indir 718 drivers/net/ethernet/amazon/ena/ena_ethtool.c if (indir) { indir 722 drivers/net/ethernet/amazon/ena/ena_ethtool.c ENA_IO_RXQ_IDX(indir[i])); indir 548 drivers/net/ethernet/amd/xgbe/xgbe-ethtool.c static int xgbe_get_rxfh(struct net_device *netdev, u32 *indir, u8 *key, indir 554 drivers/net/ethernet/amd/xgbe/xgbe-ethtool.c if (indir) { indir 556 drivers/net/ethernet/amd/xgbe/xgbe-ethtool.c indir[i] = XGMAC_GET_BITS(pdata->rss_table[i], indir 569 drivers/net/ethernet/amd/xgbe/xgbe-ethtool.c static int xgbe_set_rxfh(struct net_device *netdev, const u32 *indir, indir 581 drivers/net/ethernet/amd/xgbe/xgbe-ethtool.c if (indir) { indir 582 drivers/net/ethernet/amd/xgbe/xgbe-ethtool.c ret = hw_if->set_rss_lookup_table(pdata, indir); indir 183 drivers/net/ethernet/aquantia/atlantic/aq_ethtool.c static int aq_ethtool_get_rss(struct net_device *ndev, u32 *indir, u8 *key, indir 192 drivers/net/ethernet/aquantia/atlantic/aq_ethtool.c if (indir) { indir 194 drivers/net/ethernet/aquantia/atlantic/aq_ethtool.c indir[i] = cfg->aq_rss.indirection_table[i]; indir 202 drivers/net/ethernet/aquantia/atlantic/aq_ethtool.c static int aq_ethtool_set_rss(struct net_device *netdev, const u32 *indir, indir 218 drivers/net/ethernet/aquantia/atlantic/aq_ethtool.c if (indir) indir 220 drivers/net/ethernet/aquantia/atlantic/aq_ethtool.c cfg->aq_rss.indirection_table[i] = indir[i]; indir 3487 drivers/net/ethernet/broadcom/bnx2x/bnx2x_ethtool.c static int bnx2x_get_rxfh(struct net_device *dev, u32 *indir, u8 *key, indir 3496 drivers/net/ethernet/broadcom/bnx2x/bnx2x_ethtool.c if (!indir) indir 3512 drivers/net/ethernet/broadcom/bnx2x/bnx2x_ethtool.c indir[i] = ind_table[i] - bp->fp->cl_id; indir 3517 drivers/net/ethernet/broadcom/bnx2x/bnx2x_ethtool.c static int bnx2x_set_rxfh(struct net_device *dev, const u32 *indir, indir 3530 drivers/net/ethernet/broadcom/bnx2x/bnx2x_ethtool.c if (!indir) indir 3543 drivers/net/ethernet/broadcom/bnx2x/bnx2x_ethtool.c bp->rss_conf_obj.ind_table[i] = indir[i] + bp->fp->cl_id; indir 1208 drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c static int bnxt_get_rxfh(struct net_device *dev, u32 *indir, u8 *key, indir 1222 drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c if (indir && vnic->rss_table) { indir 1224 drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c indir[i] = le16_to_cpu(vnic->rss_table[i]); indir 12644 drivers/net/ethernet/broadcom/tg3.c static int tg3_get_rxfh(struct net_device *dev, u32 *indir, u8 *key, u8 *hfunc) indir 12651 drivers/net/ethernet/broadcom/tg3.c if (!indir) indir 12655 drivers/net/ethernet/broadcom/tg3.c indir[i] = tp->rss_ind_tbl[i]; indir 12660 drivers/net/ethernet/broadcom/tg3.c static int tg3_set_rxfh(struct net_device *dev, const u32 *indir, const u8 *key, indir 12673 drivers/net/ethernet/broadcom/tg3.c if (!indir) indir 12677 drivers/net/ethernet/broadcom/tg3.c tp->rss_ind_tbl[i] = indir[i]; indir 651 drivers/net/ethernet/cavium/thunder/nicvf_ethtool.c static int nicvf_get_rxfh(struct net_device *dev, u32 *indir, u8 *hkey, indir 658 drivers/net/ethernet/cavium/thunder/nicvf_ethtool.c if (indir) { indir 660 drivers/net/ethernet/cavium/thunder/nicvf_ethtool.c indir[idx] = rss->ind_tbl[idx]; indir 672 drivers/net/ethernet/cavium/thunder/nicvf_ethtool.c static int nicvf_set_rxfh(struct net_device *dev, const u32 *indir, indir 688 drivers/net/ethernet/cavium/thunder/nicvf_ethtool.c if (indir) { indir 690 drivers/net/ethernet/cavium/thunder/nicvf_ethtool.c rss->ind_tbl[idx] = indir[idx]; indir 599 drivers/net/ethernet/cisco/enic/enic_ethtool.c static int enic_get_rxfh(struct net_device *netdev, u32 *indir, u8 *hkey, indir 613 drivers/net/ethernet/cisco/enic/enic_ethtool.c static int enic_set_rxfh(struct net_device *netdev, const u32 *indir, indir 619 drivers/net/ethernet/cisco/enic/enic_ethtool.c indir) indir 1269 drivers/net/ethernet/emulex/benet/be_ethtool.c static int be_get_rxfh(struct net_device *netdev, u32 *indir, u8 *hkey, indir 1276 drivers/net/ethernet/emulex/benet/be_ethtool.c if (indir) { indir 1278 drivers/net/ethernet/emulex/benet/be_ethtool.c indir[i] = rss->rss_queue[i]; indir 1290 drivers/net/ethernet/emulex/benet/be_ethtool.c static int be_set_rxfh(struct net_device *netdev, const u32 *indir, indir 1301 drivers/net/ethernet/emulex/benet/be_ethtool.c if (indir) { indir 1305 drivers/net/ethernet/emulex/benet/be_ethtool.c j = indir[i]; indir 486 drivers/net/ethernet/freescale/enetc/enetc_ethtool.c static int enetc_get_rxfh(struct net_device *ndev, u32 *indir, u8 *key, indir 503 drivers/net/ethernet/freescale/enetc/enetc_ethtool.c if (indir) indir 504 drivers/net/ethernet/freescale/enetc/enetc_ethtool.c err = enetc_get_rss_table(priv->si, indir, priv->si->num_rss); indir 517 drivers/net/ethernet/freescale/enetc/enetc_ethtool.c static int enetc_set_rxfh(struct net_device *ndev, const u32 *indir, indir 529 drivers/net/ethernet/freescale/enetc/enetc_ethtool.c if (indir) indir 530 drivers/net/ethernet/freescale/enetc/enetc_ethtool.c err = enetc_set_rss_table(priv->si, indir, priv->si->num_rss); indir 530 drivers/net/ethernet/hisilicon/hns/hnae.h int (*get_rss)(struct hnae_handle *handle, u32 *indir, u8 *key, indir 532 drivers/net/ethernet/hisilicon/hns/hnae.h int (*set_rss)(struct hnae_handle *handle, const u32 *indir, indir 910 drivers/net/ethernet/hisilicon/hns/hns_ae_adapt.c static int hns_ae_get_rss(struct hnae_handle *handle, u32 *indir, u8 *key, indir 924 drivers/net/ethernet/hisilicon/hns/hns_ae_adapt.c if (indir) indir 925 drivers/net/ethernet/hisilicon/hns/hns_ae_adapt.c memcpy(indir, ppe_cb->rss_indir_table, indir 926 drivers/net/ethernet/hisilicon/hns/hns_ae_adapt.c HNS_PPEV2_RSS_IND_TBL_SIZE * sizeof(*indir)); indir 931 drivers/net/ethernet/hisilicon/hns/hns_ae_adapt.c static int hns_ae_set_rss(struct hnae_handle *handle, const u32 *indir, indir 942 drivers/net/ethernet/hisilicon/hns/hns_ae_adapt.c if (indir) { indir 944 drivers/net/ethernet/hisilicon/hns/hns_ae_adapt.c memcpy(ppe_cb->rss_indir_table, indir, indir 945 drivers/net/ethernet/hisilicon/hns/hns_ae_adapt.c HNS_PPEV2_RSS_IND_TBL_SIZE * sizeof(*indir)); indir 1207 drivers/net/ethernet/hisilicon/hns/hns_ethtool.c hns_get_rss(struct net_device *netdev, u32 *indir, u8 *key, u8 *hfunc) indir 1220 drivers/net/ethernet/hisilicon/hns/hns_ethtool.c if (!indir) indir 1223 drivers/net/ethernet/hisilicon/hns/hns_ethtool.c return ops->get_rss(priv->ae_handle, indir, key, hfunc); indir 1227 drivers/net/ethernet/hisilicon/hns/hns_ethtool.c hns_set_rss(struct net_device *netdev, const u32 *indir, const u8 *key, indir 1246 drivers/net/ethernet/hisilicon/hns/hns_ethtool.c return ops->set_rss(priv->ae_handle, indir, key, hfunc); indir 457 drivers/net/ethernet/hisilicon/hns3/hnae3.h int (*get_rss)(struct hnae3_handle *handle, u32 *indir, u8 *key, indir 459 drivers/net/ethernet/hisilicon/hns3/hnae3.h int (*set_rss)(struct hnae3_handle *handle, const u32 *indir, indir 827 drivers/net/ethernet/hisilicon/hns3/hns3_ethtool.c static int hns3_get_rss(struct net_device *netdev, u32 *indir, u8 *key, indir 835 drivers/net/ethernet/hisilicon/hns3/hns3_ethtool.c return h->ae_algo->ops->get_rss(h, indir, key, hfunc); indir 838 drivers/net/ethernet/hisilicon/hns3/hns3_ethtool.c static int hns3_set_rss(struct net_device *netdev, const u32 *indir, indir 853 drivers/net/ethernet/hisilicon/hns3/hns3_ethtool.c if (!indir) { indir 859 drivers/net/ethernet/hisilicon/hns3/hns3_ethtool.c return h->ae_algo->ops->set_rss(h, indir, key, hfunc); indir 4046 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c static int hclge_set_rss_indir_table(struct hclge_dev *hdev, const u8 *indir) indir 4065 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c indir[i * HCLGE_RSS_CFG_TBL_SIZE + j]; indir 4152 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c static int hclge_get_rss(struct hnae3_handle *handle, u32 *indir, indir 4178 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c if (indir) indir 4180 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c indir[i] = vport->rss_indirection_tbl[i]; indir 4185 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c static int hclge_set_rss(struct hnae3_handle *handle, const u32 *indir, indir 4220 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c vport->rss_indirection_tbl[i] = indir[i]; indir 601 drivers/net/ethernet/hisilicon/hns3/hns3vf/hclgevf_main.c const u8 *indir = hdev->rss_cfg.rss_indirection_tbl; indir 616 drivers/net/ethernet/hisilicon/hns3/hns3vf/hclgevf_main.c indir[i * HCLGEVF_RSS_CFG_TBL_SIZE + j]; indir 707 drivers/net/ethernet/hisilicon/hns3/hns3vf/hclgevf_main.c static int hclgevf_get_rss(struct hnae3_handle *handle, u32 *indir, u8 *key, indir 746 drivers/net/ethernet/hisilicon/hns3/hns3vf/hclgevf_main.c if (indir) indir 748 drivers/net/ethernet/hisilicon/hns3/hns3vf/hclgevf_main.c indir[i] = rss_cfg->rss_indirection_tbl[i]; indir 753 drivers/net/ethernet/hisilicon/hns3/hns3vf/hclgevf_main.c static int hclgevf_set_rss(struct hnae3_handle *handle, const u32 *indir, indir 791 drivers/net/ethernet/hisilicon/hns3/hns3vf/hclgevf_main.c rss_cfg->rss_indirection_tbl[i] = indir[i]; indir 296 drivers/net/ethernet/huawei/hinic/hinic_ethtool.c const u32 *indir, const u8 *key) indir 301 drivers/net/ethernet/huawei/hinic/hinic_ethtool.c if (indir) { indir 310 drivers/net/ethernet/huawei/hinic/hinic_ethtool.c memcpy(nic_dev->rss_indir_user, indir, indir 314 drivers/net/ethernet/huawei/hinic/hinic_ethtool.c nic_dev->rss_tmpl_idx, indir); indir 378 drivers/net/ethernet/huawei/hinic/hinic_ethtool.c u32 *indir, u8 *key, u8 *hfunc) indir 397 drivers/net/ethernet/huawei/hinic/hinic_ethtool.c if (indir) { indir 399 drivers/net/ethernet/huawei/hinic/hinic_ethtool.c nic_dev->rss_tmpl_idx, indir); indir 411 drivers/net/ethernet/huawei/hinic/hinic_ethtool.c static int hinic_set_rxfh(struct net_device *netdev, const u32 *indir, indir 434 drivers/net/ethernet/huawei/hinic/hinic_ethtool.c err = __set_rss_rxfh(netdev, indir, key); indir 672 drivers/net/ethernet/huawei/hinic/hinic_port.c hinic_be32_to_cpu(rss_cfg.indir, HINIC_RSS_INDIR_SIZE); indir 674 drivers/net/ethernet/huawei/hinic/hinic_port.c indir_table[i] = rss_cfg.indir[i]; indir 305 drivers/net/ethernet/huawei/hinic/hinic_port.h u8 indir[HINIC_RSS_INDIR_SIZE]; indir 528 drivers/net/ethernet/intel/fm10k/fm10k.h void fm10k_write_reta(struct fm10k_intfc *interface, const u32 *indir); indir 971 drivers/net/ethernet/intel/fm10k/fm10k_ethtool.c void fm10k_write_reta(struct fm10k_intfc *interface, const u32 *indir) indir 984 drivers/net/ethernet/intel/fm10k/fm10k_ethtool.c if (indir) indir 985 drivers/net/ethernet/intel/fm10k/fm10k_ethtool.c n = indir[4 * i + j]; indir 1006 drivers/net/ethernet/intel/fm10k/fm10k_ethtool.c static int fm10k_get_reta(struct net_device *netdev, u32 *indir) indir 1011 drivers/net/ethernet/intel/fm10k/fm10k_ethtool.c if (!indir) indir 1014 drivers/net/ethernet/intel/fm10k/fm10k_ethtool.c for (i = 0; i < FM10K_RETA_SIZE; i++, indir += 4) { indir 1017 drivers/net/ethernet/intel/fm10k/fm10k_ethtool.c indir[0] = (reta << 24) >> 24; indir 1018 drivers/net/ethernet/intel/fm10k/fm10k_ethtool.c indir[1] = (reta << 16) >> 24; indir 1019 drivers/net/ethernet/intel/fm10k/fm10k_ethtool.c indir[2] = (reta << 8) >> 24; indir 1020 drivers/net/ethernet/intel/fm10k/fm10k_ethtool.c indir[3] = (reta) >> 24; indir 1026 drivers/net/ethernet/intel/fm10k/fm10k_ethtool.c static int fm10k_set_reta(struct net_device *netdev, const u32 *indir) indir 1032 drivers/net/ethernet/intel/fm10k/fm10k_ethtool.c if (!indir) indir 1038 drivers/net/ethernet/intel/fm10k/fm10k_ethtool.c if (indir[i] < rss_i) indir 1043 drivers/net/ethernet/intel/fm10k/fm10k_ethtool.c fm10k_write_reta(interface, indir); indir 1053 drivers/net/ethernet/intel/fm10k/fm10k_ethtool.c static int fm10k_get_rssh(struct net_device *netdev, u32 *indir, u8 *key, indir 1062 drivers/net/ethernet/intel/fm10k/fm10k_ethtool.c err = fm10k_get_reta(netdev, indir); indir 1072 drivers/net/ethernet/intel/fm10k/fm10k_ethtool.c static int fm10k_set_rssh(struct net_device *netdev, const u32 *indir, indir 1083 drivers/net/ethernet/intel/fm10k/fm10k_ethtool.c err = fm10k_set_reta(netdev, indir); indir 4743 drivers/net/ethernet/intel/i40e/i40e_ethtool.c static int i40e_get_rxfh(struct net_device *netdev, u32 *indir, u8 *key, indir 4755 drivers/net/ethernet/intel/i40e/i40e_ethtool.c if (!indir) indir 4766 drivers/net/ethernet/intel/i40e/i40e_ethtool.c indir[i] = (u32)(lut[i]); indir 4784 drivers/net/ethernet/intel/i40e/i40e_ethtool.c static int i40e_set_rxfh(struct net_device *netdev, const u32 *indir, indir 4813 drivers/net/ethernet/intel/i40e/i40e_ethtool.c if (indir) indir 4815 drivers/net/ethernet/intel/i40e/i40e_ethtool.c vsi->rss_lut_user[i] = (u8)(indir[i]); indir 947 drivers/net/ethernet/intel/iavf/iavf_ethtool.c static int iavf_get_rxfh(struct net_device *netdev, u32 *indir, u8 *key, indir 955 drivers/net/ethernet/intel/iavf/iavf_ethtool.c if (!indir) indir 962 drivers/net/ethernet/intel/iavf/iavf_ethtool.c indir[i] = (u32)adapter->rss_lut[i]; indir 977 drivers/net/ethernet/intel/iavf/iavf_ethtool.c static int iavf_set_rxfh(struct net_device *netdev, const u32 *indir, indir 987 drivers/net/ethernet/intel/iavf/iavf_ethtool.c if (!indir) indir 995 drivers/net/ethernet/intel/iavf/iavf_ethtool.c adapter->rss_lut[i] = (u8)(indir[i]); indir 2985 drivers/net/ethernet/intel/ice/ice_ethtool.c ice_get_rxfh(struct net_device *netdev, u32 *indir, u8 *key, u8 *hfunc) indir 2996 drivers/net/ethernet/intel/ice/ice_ethtool.c if (!indir) indir 3015 drivers/net/ethernet/intel/ice/ice_ethtool.c indir[i] = (u32)(lut[i]); indir 3033 drivers/net/ethernet/intel/ice/ice_ethtool.c ice_set_rxfh(struct net_device *netdev, const u32 *indir, const u8 *key, indir 3072 drivers/net/ethernet/intel/ice/ice_ethtool.c if (indir) { indir 3076 drivers/net/ethernet/intel/ice/ice_ethtool.c vsi->rss_lut_user[i] = (u8)(indir[i]); indir 3293 drivers/net/ethernet/intel/igb/igb_ethtool.c static int igb_get_rxfh(struct net_device *netdev, u32 *indir, u8 *key, indir 3301 drivers/net/ethernet/intel/igb/igb_ethtool.c if (!indir) indir 3304 drivers/net/ethernet/intel/igb/igb_ethtool.c indir[i] = adapter->rss_indir_tbl[i]; indir 3344 drivers/net/ethernet/intel/igb/igb_ethtool.c static int igb_set_rxfh(struct net_device *netdev, const u32 *indir, indir 3356 drivers/net/ethernet/intel/igb/igb_ethtool.c if (!indir) indir 3373 drivers/net/ethernet/intel/igb/igb_ethtool.c if (indir[i] >= num_queues) indir 3378 drivers/net/ethernet/intel/igb/igb_ethtool.c adapter->rss_indir_tbl[i] = indir[i]; indir 1503 drivers/net/ethernet/intel/igc/igc_ethtool.c static int igc_get_rxfh(struct net_device *netdev, u32 *indir, u8 *key, indir 1511 drivers/net/ethernet/intel/igc/igc_ethtool.c if (!indir) indir 1514 drivers/net/ethernet/intel/igc/igc_ethtool.c indir[i] = adapter->rss_indir_tbl[i]; indir 1519 drivers/net/ethernet/intel/igc/igc_ethtool.c static int igc_set_rxfh(struct net_device *netdev, const u32 *indir, indir 1530 drivers/net/ethernet/intel/igc/igc_ethtool.c if (!indir) indir 1537 drivers/net/ethernet/intel/igc/igc_ethtool.c if (indir[i] >= num_queues) indir 1541 drivers/net/ethernet/intel/igc/igc_ethtool.c adapter->rss_indir_tbl[i] = indir[i]; indir 2975 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c static void ixgbe_get_reta(struct ixgbe_adapter *adapter, u32 *indir) indir 2984 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c indir[i] = adapter->rss_indir_tbl[i] & rss_m; indir 2987 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c static int ixgbe_get_rxfh(struct net_device *netdev, u32 *indir, u8 *key, indir 2995 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c if (indir) indir 2996 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c ixgbe_get_reta(adapter, indir); indir 3004 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c static int ixgbe_set_rxfh(struct net_device *netdev, const u32 *indir, indir 3015 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c if (indir) { indir 3026 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c if (indir[i] >= max_queues) indir 3030 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c adapter->rss_indir_tbl[i] = indir[i]; indir 898 drivers/net/ethernet/intel/ixgbevf/ethtool.c static int ixgbevf_get_rxfh(struct net_device *netdev, u32 *indir, u8 *key, indir 912 drivers/net/ethernet/intel/ixgbevf/ethtool.c if (indir) { indir 916 drivers/net/ethernet/intel/ixgbevf/ethtool.c indir[i] = adapter->rss_indir_tbl[i]; indir 922 drivers/net/ethernet/intel/ixgbevf/ethtool.c if (!indir && !key) indir 926 drivers/net/ethernet/intel/ixgbevf/ethtool.c if (indir) indir 927 drivers/net/ethernet/intel/ixgbevf/ethtool.c err = ixgbevf_get_reta_locked(&adapter->hw, indir, indir 456 drivers/net/ethernet/marvell/mvneta.c u32 indir[MVNETA_RSS_LU_TABLE_SIZE]; indir 4199 drivers/net/ethernet/marvell/mvneta.c pp->rxq_def = pp->indir[0]; indir 4230 drivers/net/ethernet/marvell/mvneta.c static int mvneta_ethtool_set_rxfh(struct net_device *dev, const u32 *indir, indir 4246 drivers/net/ethernet/marvell/mvneta.c if (!indir) indir 4249 drivers/net/ethernet/marvell/mvneta.c memcpy(pp->indir, indir, MVNETA_RSS_LU_TABLE_SIZE); indir 4254 drivers/net/ethernet/marvell/mvneta.c static int mvneta_ethtool_get_rxfh(struct net_device *dev, u32 *indir, u8 *key, indir 4266 drivers/net/ethernet/marvell/mvneta.c if (!indir) indir 4269 drivers/net/ethernet/marvell/mvneta.c memcpy(indir, pp->indir, MVNETA_RSS_LU_TABLE_SIZE); indir 4549 drivers/net/ethernet/marvell/mvneta.c pp->indir[0] = rxq_def; indir 751 drivers/net/ethernet/marvell/mvpp2/mvpp2.h u32 indir[MVPP22_RSS_TABLE_ENTRIES]; indir 1476 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c mvpp22_rxfh_indir(port, table->indir[i])); indir 1586 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c const u32 *indir) indir 1595 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c memcpy(rss_table->indir, indir, indir 1596 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c MVPP22_RSS_TABLE_ENTRIES * sizeof(rss_table->indir[0])); indir 1604 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c u32 *indir) indir 1613 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c memcpy(indir, rss_table->indir, indir 1614 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c MVPP22_RSS_TABLE_ENTRIES * sizeof(rss_table->indir[0])); indir 1723 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c table->indir[i] = ethtool_rxfh_indir_default(i, port->nrxqs); indir 271 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.h const u32 *indir); indir 273 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.h u32 *indir); indir 4275 drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c static int mvpp2_ethtool_get_rxfh(struct net_device *dev, u32 *indir, u8 *key, indir 4284 drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c if (indir) indir 4285 drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c ret = mvpp22_port_rss_ctx_indir_get(port, 0, indir); indir 4293 drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c static int mvpp2_ethtool_set_rxfh(struct net_device *dev, const u32 *indir, indir 4308 drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c if (indir) indir 4309 drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c ret = mvpp22_port_rss_ctx_indir_set(port, 0, indir); indir 4314 drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c static int mvpp2_ethtool_get_rxfh_context(struct net_device *dev, u32 *indir, indir 4328 drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c if (indir) indir 4329 drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c ret = mvpp22_port_rss_ctx_indir_get(port, rss_context, indir); indir 4335 drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c const u32 *indir, const u8 *key, indir 4360 drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c return mvpp22_port_rss_ctx_indir_set(port, *rss_context, indir); indir 1136 drivers/net/ethernet/mellanox/mlx5/core/en_ethtool.c static int mlx5e_get_rxfh(struct net_device *netdev, u32 *indir, u8 *key, indir 1142 drivers/net/ethernet/mellanox/mlx5/core/en_ethtool.c if (indir) indir 1143 drivers/net/ethernet/mellanox/mlx5/core/en_ethtool.c memcpy(indir, rss->indirection_rqt, indir 1156 drivers/net/ethernet/mellanox/mlx5/core/en_ethtool.c static int mlx5e_set_rxfh(struct net_device *dev, const u32 *indir, indir 1181 drivers/net/ethernet/mellanox/mlx5/core/en_ethtool.c if (indir) { indir 1182 drivers/net/ethernet/mellanox/mlx5/core/en_ethtool.c memcpy(rss->indirection_rqt, indir, indir 575 drivers/net/ethernet/microchip/lan743x_ethtool.c u32 *indir, u8 *key, u8 *hfunc) indir 579 drivers/net/ethernet/microchip/lan743x_ethtool.c if (indir) { indir 588 drivers/net/ethernet/microchip/lan743x_ethtool.c indir[byte_index + 0] = indir 590 drivers/net/ethernet/microchip/lan743x_ethtool.c indir[byte_index + 1] = indir 592 drivers/net/ethernet/microchip/lan743x_ethtool.c indir[byte_index + 2] = indir 594 drivers/net/ethernet/microchip/lan743x_ethtool.c indir[byte_index + 3] = indir 624 drivers/net/ethernet/microchip/lan743x_ethtool.c const u32 *indir, const u8 *key, indir 632 drivers/net/ethernet/microchip/lan743x_ethtool.c if (indir) { indir 640 drivers/net/ethernet/microchip/lan743x_ethtool.c (((indir[byte_index + 0] & 0x000000FF) << 0) | indir 641 drivers/net/ethernet/microchip/lan743x_ethtool.c ((indir[byte_index + 1] & 0x000000FF) << 8) | indir 642 drivers/net/ethernet/microchip/lan743x_ethtool.c ((indir[byte_index + 2] & 0x000000FF) << 16) | indir 643 drivers/net/ethernet/microchip/lan743x_ethtool.c ((indir[byte_index + 3] & 0x000000FF) << 24)); indir 81 drivers/net/ethernet/netronome/nfp/bpf/jit.c bool indir) indir 93 drivers/net/ethernet/netronome/nfp/bpf/jit.c FIELD_PREP(OP_CMD_INDIR, indir) | indir 101 drivers/net/ethernet/netronome/nfp/bpf/jit.c swreg lreg, swreg rreg, u8 size, enum cmd_ctx_swap ctx, bool indir) indir 123 drivers/net/ethernet/netronome/nfp/bpf/jit.c indir); indir 2737 drivers/net/ethernet/netronome/nfp/bpf/jit.c bool indir; indir 2744 drivers/net/ethernet/netronome/nfp/bpf/jit.c indir = len > 8 * REG_WIDTH; indir 2746 drivers/net/ethernet/netronome/nfp/bpf/jit.c if (indir) indir 2752 drivers/net/ethernet/netronome/nfp/bpf/jit.c off, xfer_num - 1, CMD_CTX_SWAP, indir); indir 920 drivers/net/ethernet/netronome/nfp/nfp_net_ethtool.c static int nfp_net_get_rxfh(struct net_device *netdev, u32 *indir, u8 *key, indir 929 drivers/net/ethernet/netronome/nfp/nfp_net_ethtool.c if (indir) indir 931 drivers/net/ethernet/netronome/nfp/nfp_net_ethtool.c indir[i] = nn->rss_itbl[i]; indir 944 drivers/net/ethernet/netronome/nfp/nfp_net_ethtool.c const u32 *indir, const u8 *key, indir 954 drivers/net/ethernet/netronome/nfp/nfp_net_ethtool.c if (!key && !indir) indir 961 drivers/net/ethernet/netronome/nfp/nfp_net_ethtool.c if (indir) { indir 963 drivers/net/ethernet/netronome/nfp/nfp_net_ethtool.c nn->rss_itbl[i] = indir[i]; indir 588 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c static int ionic_get_rxfh(struct net_device *netdev, u32 *indir, u8 *key, indir 594 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c if (indir) { indir 597 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c indir[i] = lif->rss_ind_tbl[i]; indir 609 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c static int ionic_set_rxfh(struct net_device *netdev, const u32 *indir, indir 618 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c err = ionic_lif_rss_config(lif, lif->rss_types, key, indir); indir 1335 drivers/net/ethernet/pensando/ionic/ionic_lif.c const u8 *key, const u32 *indir) indir 1353 drivers/net/ethernet/pensando/ionic/ionic_lif.c if (indir) { indir 1356 drivers/net/ethernet/pensando/ionic/ionic_lif.c lif->rss_ind_tbl[i] = indir[i]; indir 240 drivers/net/ethernet/pensando/ionic/ionic_lif.h const u8 *key, const u32 *indir); indir 1396 drivers/net/ethernet/qlogic/qede/qede_ethtool.c static int qede_get_rxfh(struct net_device *dev, u32 *indir, u8 *key, u8 *hfunc) indir 1404 drivers/net/ethernet/qlogic/qede/qede_ethtool.c if (!indir) indir 1408 drivers/net/ethernet/qlogic/qede/qede_ethtool.c indir[i] = edev->rss_ind_table[i]; indir 1416 drivers/net/ethernet/qlogic/qede/qede_ethtool.c static int qede_set_rxfh(struct net_device *dev, const u32 *indir, indir 1432 drivers/net/ethernet/qlogic/qede/qede_ethtool.c if (!indir && !key) indir 1435 drivers/net/ethernet/qlogic/qede/qede_ethtool.c if (indir) { indir 1437 drivers/net/ethernet/qlogic/qede/qede_ethtool.c edev->rss_ind_table[i] = indir[i]; indir 1326 drivers/net/ethernet/sfc/ethtool.c static int efx_ethtool_get_rxfh(struct net_device *net_dev, u32 *indir, u8 *key, indir 1338 drivers/net/ethernet/sfc/ethtool.c if (indir) indir 1339 drivers/net/ethernet/sfc/ethtool.c memcpy(indir, efx->rss_context.rx_indir_table, indir 1347 drivers/net/ethernet/sfc/ethtool.c static int efx_ethtool_set_rxfh(struct net_device *net_dev, const u32 *indir, indir 1355 drivers/net/ethernet/sfc/ethtool.c if (!indir && !key) indir 1360 drivers/net/ethernet/sfc/ethtool.c if (!indir) indir 1361 drivers/net/ethernet/sfc/ethtool.c indir = efx->rss_context.rx_indir_table; indir 1363 drivers/net/ethernet/sfc/ethtool.c return efx->type->rx_push_rss_config(efx, true, indir, key); indir 1366 drivers/net/ethernet/sfc/ethtool.c static int efx_ethtool_get_rxfh_context(struct net_device *net_dev, u32 *indir, indir 1388 drivers/net/ethernet/sfc/ethtool.c if (indir) indir 1389 drivers/net/ethernet/sfc/ethtool.c memcpy(indir, ctx->rx_indir_table, sizeof(ctx->rx_indir_table)); indir 1398 drivers/net/ethernet/sfc/ethtool.c const u32 *indir, const u8 *key, indir 1449 drivers/net/ethernet/sfc/ethtool.c if (!indir) indir 1450 drivers/net/ethernet/sfc/ethtool.c indir = ctx->rx_indir_table; indir 1452 drivers/net/ethernet/sfc/ethtool.c rc = efx->type->rx_push_rss_context_config(efx, ctx, indir, key); indir 1253 drivers/net/ethernet/sfc/falcon/ethtool.c static int ef4_ethtool_get_rxfh(struct net_device *net_dev, u32 *indir, u8 *key, indir 1260 drivers/net/ethernet/sfc/falcon/ethtool.c if (indir) indir 1261 drivers/net/ethernet/sfc/falcon/ethtool.c memcpy(indir, efx->rx_indir_table, sizeof(efx->rx_indir_table)); indir 1265 drivers/net/ethernet/sfc/falcon/ethtool.c static int ef4_ethtool_set_rxfh(struct net_device *net_dev, const u32 *indir, indir 1274 drivers/net/ethernet/sfc/falcon/ethtool.c if (!indir) indir 1277 drivers/net/ethernet/sfc/falcon/ethtool.c return efx->type->rx_push_rss_config(efx, true, indir); indir 804 drivers/net/ethernet/stmicro/stmmac/stmmac_ethtool.c static int stmmac_get_rxfh(struct net_device *dev, u32 *indir, u8 *key, indir 810 drivers/net/ethernet/stmicro/stmmac/stmmac_ethtool.c if (indir) { indir 812 drivers/net/ethernet/stmicro/stmmac/stmmac_ethtool.c indir[i] = priv->rss.table[i]; indir 823 drivers/net/ethernet/stmicro/stmmac/stmmac_ethtool.c static int stmmac_set_rxfh(struct net_device *dev, const u32 *indir, indir 832 drivers/net/ethernet/stmicro/stmmac/stmmac_ethtool.c if (indir) { indir 834 drivers/net/ethernet/stmicro/stmmac/stmmac_ethtool.c priv->rss.table[i] = indir[i]; indir 1645 drivers/net/hyperv/netvsc_drv.c static int netvsc_get_rxfh(struct net_device *dev, u32 *indir, u8 *key, indir 1660 drivers/net/hyperv/netvsc_drv.c if (indir) { indir 1662 drivers/net/hyperv/netvsc_drv.c indir[i] = ndc->rx_table[i]; indir 1671 drivers/net/hyperv/netvsc_drv.c static int netvsc_set_rxfh(struct net_device *dev, const u32 *indir, indir 1686 drivers/net/hyperv/netvsc_drv.c if (indir) { indir 1688 drivers/net/hyperv/netvsc_drv.c if (indir[i] >= ndev->num_chn) indir 1692 drivers/net/hyperv/netvsc_drv.c ndc->rx_table[i] = indir[i]; indir 1696 drivers/net/hyperv/netvsc_drv.c if (!indir) indir 89 fs/freevxfs/vxfs_bmap.c __fs32 *indir; indir 96 fs/freevxfs/vxfs_bmap.c indir = (__fs32 *)buf->b_data; indir 97 fs/freevxfs/vxfs_bmap.c bno = fs32_to_cpu(sbi, indir[(bn / indsize) % (indsize * bn)]) + indir 131 fs/freevxfs/vxfs_bmap.c vxfs_bmap_indir(struct inode *ip, long indir, int size, long block) indir 143 fs/freevxfs/vxfs_bmap.c indir + (i / VXFS_TYPED_PER_BLOCK(ip->i_sb))); indir 367 include/linux/ethtool.h int (*get_rxfh)(struct net_device *, u32 *indir, u8 *key, indir 369 include/linux/ethtool.h int (*set_rxfh)(struct net_device *, const u32 *indir, indir 371 include/linux/ethtool.h int (*get_rxfh_context)(struct net_device *, u32 *indir, u8 *key, indir 373 include/linux/ethtool.h int (*set_rxfh_context)(struct net_device *, const u32 *indir, indir 975 net/core/ethtool.c static int ethtool_copy_validate_indir(u32 *indir, void __user *useraddr, indir 981 net/core/ethtool.c if (copy_from_user(indir, useraddr, size * sizeof(indir[0]))) indir 986 net/core/ethtool.c if (indir[i] >= rx_rings->data) indir 1005 net/core/ethtool.c u32 *indir; indir 1015 net/core/ethtool.c indir = kcalloc(dev_size, sizeof(indir[0]), GFP_USER); indir 1016 net/core/ethtool.c if (!indir) indir 1019 net/core/ethtool.c ret = dev->ethtool_ops->get_rxfh(dev, indir, NULL, NULL); indir 1024 net/core/ethtool.c current_max = max(current_max, indir[dev_size]); indir 1029 net/core/ethtool.c kfree(indir); indir 1037 net/core/ethtool.c u32 *indir; indir 1063 net/core/ethtool.c indir = kcalloc(dev_size, sizeof(indir[0]), GFP_USER); indir 1064 net/core/ethtool.c if (!indir) indir 1067 net/core/ethtool.c ret = dev->ethtool_ops->get_rxfh(dev, indir, NULL, NULL); indir 1073 net/core/ethtool.c indir, dev_size * sizeof(indir[0]))) indir 1077 net/core/ethtool.c kfree(indir); indir 1086 net/core/ethtool.c u32 *indir; indir 1107 net/core/ethtool.c indir = kcalloc(dev_size, sizeof(indir[0]), GFP_USER); indir 1108 net/core/ethtool.c if (!indir) indir 1118 net/core/ethtool.c indir[i] = ethtool_rxfh_indir_default(i, rx_rings.data); indir 1120 net/core/ethtool.c ret = ethtool_copy_validate_indir(indir, indir 1128 net/core/ethtool.c ret = ops->set_rxfh(dev, indir, NULL, ETH_RSS_HASH_NO_CHANGE); indir 1139 net/core/ethtool.c kfree(indir); indir 1153 net/core/ethtool.c u32 *indir = NULL; indir 1187 net/core/ethtool.c indir_bytes = user_indir_size * sizeof(indir[0]); indir 1194 net/core/ethtool.c indir = (u32 *)rss_config; indir 1200 net/core/ethtool.c ret = dev->ethtool_ops->get_rxfh_context(dev, indir, hkey, indir 1204 net/core/ethtool.c ret = dev->ethtool_ops->get_rxfh(dev, indir, hkey, &dev_hfunc); indir 1230 net/core/ethtool.c u32 *indir = NULL, indir_bytes = 0; indir 1266 net/core/ethtool.c indir_bytes = dev_indir_size * sizeof(indir[0]); indir 1283 net/core/ethtool.c indir = (u32 *)rss_config; indir 1284 net/core/ethtool.c ret = ethtool_copy_validate_indir(indir, indir 1292 net/core/ethtool.c indir = (u32 *)rss_config; indir 1294 net/core/ethtool.c indir[i] = ethtool_rxfh_indir_default(i, rx_rings.data); indir 1311 net/core/ethtool.c ret = ops->set_rxfh_context(dev, indir, hkey, rxfh.hfunc, indir 1314 net/core/ethtool.c ret = ops->set_rxfh(dev, indir, hkey, rxfh.hfunc);