Skip to content

Commit 7347255

Browse files
Jie Wangdavem330
authored andcommitted
net: hns3: refactor PF rss get APIs with new common rss get APIs
This patch firstly uses new rss parameter struct(hclge_comm_rss_cfg) as child member of hclge_dev and deletes the original child rss parameter members in vport. All the vport child rss parameter members used in PF rss module is modified according to the new hclge_comm_rss_cfg. Secondly PF rss get APIs are refactored to use new common rss get APIs. The old rss get APIs in PF are deleted. Signed-off-by: Jie Wang <[email protected]> Signed-off-by: David S. Miller <[email protected]>
1 parent 1bfd668 commit 7347255

File tree

5 files changed

+67
-160
lines changed

5 files changed

+67
-160
lines changed

drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_dcb.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -203,7 +203,7 @@ static int hclge_map_update(struct hclge_dev *hdev)
203203
if (ret)
204204
return ret;
205205

206-
hclge_rss_indir_init_cfg(hdev);
206+
hclge_comm_rss_indir_init_cfg(hdev->ae_dev, &hdev->rss_cfg);
207207

208208
return hclge_rss_init_hw(hdev);
209209
}

drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c

Lines changed: 58 additions & 135 deletions
Original file line numberDiff line numberDiff line change
@@ -4719,11 +4719,6 @@ static int hclge_put_vector(struct hnae3_handle *handle, int vector)
47194719
return 0;
47204720
}
47214721

4722-
static u32 hclge_get_rss_key_size(struct hnae3_handle *handle)
4723-
{
4724-
return HCLGE_RSS_KEY_SIZE;
4725-
}
4726-
47274722
static int hclge_set_rss_algo_key(struct hclge_dev *hdev,
47284723
const u8 hfunc, const u8 *key)
47294724
{
@@ -4837,22 +4832,6 @@ static int hclge_set_rss_tc_mode(struct hclge_dev *hdev, u16 *tc_valid,
48374832
return ret;
48384833
}
48394834

4840-
static void hclge_get_rss_type(struct hclge_vport *vport)
4841-
{
4842-
if (vport->rss_tuple_sets.ipv4_tcp_en ||
4843-
vport->rss_tuple_sets.ipv4_udp_en ||
4844-
vport->rss_tuple_sets.ipv4_sctp_en ||
4845-
vport->rss_tuple_sets.ipv6_tcp_en ||
4846-
vport->rss_tuple_sets.ipv6_udp_en ||
4847-
vport->rss_tuple_sets.ipv6_sctp_en)
4848-
vport->nic.kinfo.rss_type = PKT_HASH_TYPE_L4;
4849-
else if (vport->rss_tuple_sets.ipv4_fragment_en ||
4850-
vport->rss_tuple_sets.ipv6_fragment_en)
4851-
vport->nic.kinfo.rss_type = PKT_HASH_TYPE_L3;
4852-
else
4853-
vport->nic.kinfo.rss_type = PKT_HASH_TYPE_NONE;
4854-
}
4855-
48564835
static int hclge_set_rss_input_tuple(struct hclge_dev *hdev)
48574836
{
48584837
struct hclge_rss_input_tuple_cmd *req;
@@ -4864,15 +4843,16 @@ static int hclge_set_rss_input_tuple(struct hclge_dev *hdev)
48644843
req = (struct hclge_rss_input_tuple_cmd *)desc.data;
48654844

48664845
/* Get the tuple cfg from pf */
4867-
req->ipv4_tcp_en = hdev->vport[0].rss_tuple_sets.ipv4_tcp_en;
4868-
req->ipv4_udp_en = hdev->vport[0].rss_tuple_sets.ipv4_udp_en;
4869-
req->ipv4_sctp_en = hdev->vport[0].rss_tuple_sets.ipv4_sctp_en;
4870-
req->ipv4_fragment_en = hdev->vport[0].rss_tuple_sets.ipv4_fragment_en;
4871-
req->ipv6_tcp_en = hdev->vport[0].rss_tuple_sets.ipv6_tcp_en;
4872-
req->ipv6_udp_en = hdev->vport[0].rss_tuple_sets.ipv6_udp_en;
4873-
req->ipv6_sctp_en = hdev->vport[0].rss_tuple_sets.ipv6_sctp_en;
4874-
req->ipv6_fragment_en = hdev->vport[0].rss_tuple_sets.ipv6_fragment_en;
4875-
hclge_get_rss_type(&hdev->vport[0]);
4846+
req->ipv4_tcp_en = hdev->rss_cfg.rss_tuple_sets.ipv4_tcp_en;
4847+
req->ipv4_udp_en = hdev->rss_cfg.rss_tuple_sets.ipv4_udp_en;
4848+
req->ipv4_sctp_en = hdev->rss_cfg.rss_tuple_sets.ipv4_sctp_en;
4849+
req->ipv4_fragment_en = hdev->rss_cfg.rss_tuple_sets.ipv4_fragment_en;
4850+
req->ipv6_tcp_en = hdev->rss_cfg.rss_tuple_sets.ipv6_tcp_en;
4851+
req->ipv6_udp_en = hdev->rss_cfg.rss_tuple_sets.ipv6_udp_en;
4852+
req->ipv6_sctp_en = hdev->rss_cfg.rss_tuple_sets.ipv6_sctp_en;
4853+
req->ipv6_fragment_en = hdev->rss_cfg.rss_tuple_sets.ipv6_fragment_en;
4854+
hclge_comm_get_rss_type(&hdev->vport[0].nic,
4855+
&hdev->rss_cfg.rss_tuple_sets);
48764856
ret = hclge_cmd_send(&hdev->hw, &desc, 1);
48774857
if (ret)
48784858
dev_err(&hdev->pdev->dev,
@@ -4885,11 +4865,12 @@ static int hclge_get_rss(struct hnae3_handle *handle, u32 *indir,
48854865
{
48864866
struct hnae3_ae_dev *ae_dev = pci_get_drvdata(handle->pdev);
48874867
struct hclge_vport *vport = hclge_get_vport(handle);
4868+
struct hclge_comm_rss_cfg *rss_cfg = &vport->back->rss_cfg;
48884869
int i;
48894870

48904871
/* Get hash algorithm */
48914872
if (hfunc) {
4892-
switch (vport->rss_algo) {
4873+
switch (rss_cfg->rss_algo) {
48934874
case HCLGE_RSS_HASH_ALGO_TOEPLITZ:
48944875
*hfunc = ETH_RSS_HASH_TOP;
48954876
break;
@@ -4904,34 +4885,16 @@ static int hclge_get_rss(struct hnae3_handle *handle, u32 *indir,
49044885

49054886
/* Get the RSS Key required by the user */
49064887
if (key)
4907-
memcpy(key, vport->rss_hash_key, HCLGE_RSS_KEY_SIZE);
4888+
memcpy(key, rss_cfg->rss_hash_key, HCLGE_RSS_KEY_SIZE);
49084889

49094890
/* Get indirect table */
49104891
if (indir)
49114892
for (i = 0; i < ae_dev->dev_specs.rss_ind_tbl_size; i++)
4912-
indir[i] = vport->rss_indirection_tbl[i];
4893+
indir[i] = rss_cfg->rss_indirection_tbl[i];
49134894

49144895
return 0;
49154896
}
49164897

4917-
static int hclge_parse_rss_hfunc(struct hclge_vport *vport, const u8 hfunc,
4918-
u8 *hash_algo)
4919-
{
4920-
switch (hfunc) {
4921-
case ETH_RSS_HASH_TOP:
4922-
*hash_algo = HCLGE_RSS_HASH_ALGO_TOEPLITZ;
4923-
return 0;
4924-
case ETH_RSS_HASH_XOR:
4925-
*hash_algo = HCLGE_RSS_HASH_ALGO_SIMPLE;
4926-
return 0;
4927-
case ETH_RSS_HASH_NO_CHANGE:
4928-
*hash_algo = vport->rss_algo;
4929-
return 0;
4930-
default:
4931-
return -EINVAL;
4932-
}
4933-
}
4934-
49354898
static int hclge_set_rss(struct hnae3_handle *handle, const u32 *indir,
49364899
const u8 *key, const u8 hfunc)
49374900
{
@@ -4941,7 +4904,7 @@ static int hclge_set_rss(struct hnae3_handle *handle, const u32 *indir,
49414904
u8 hash_algo;
49424905
int ret, i;
49434906

4944-
ret = hclge_parse_rss_hfunc(vport, hfunc, &hash_algo);
4907+
ret = hclge_comm_parse_rss_hfunc(&hdev->rss_cfg, hfunc, &hash_algo);
49454908
if (ret) {
49464909
dev_err(&hdev->pdev->dev, "invalid hfunc type %u\n", hfunc);
49474910
return ret;
@@ -4954,21 +4917,22 @@ static int hclge_set_rss(struct hnae3_handle *handle, const u32 *indir,
49544917
return ret;
49554918

49564919
/* Update the shadow RSS key with user specified qids */
4957-
memcpy(vport->rss_hash_key, key, HCLGE_RSS_KEY_SIZE);
4920+
memcpy(hdev->rss_cfg.rss_hash_key, key, HCLGE_RSS_KEY_SIZE);
49584921
} else {
49594922
ret = hclge_set_rss_algo_key(hdev, hash_algo,
4960-
vport->rss_hash_key);
4923+
hdev->rss_cfg.rss_hash_key);
49614924
if (ret)
49624925
return ret;
49634926
}
4964-
vport->rss_algo = hash_algo;
4927+
hdev->rss_cfg.rss_algo = hash_algo;
49654928

49664929
/* Update the shadow RSS table with user specified qids */
49674930
for (i = 0; i < ae_dev->dev_specs.rss_ind_tbl_size; i++)
4968-
vport->rss_indirection_tbl[i] = indir[i];
4931+
hdev->rss_cfg.rss_indirection_tbl[i] = indir[i];
49694932

49704933
/* Update the hardware */
4971-
return hclge_set_rss_indir_table(hdev, vport->rss_indirection_tbl);
4934+
return hclge_set_rss_indir_table(hdev,
4935+
hdev->rss_cfg.rss_indirection_tbl);
49724936
}
49734937

49744938
static u8 hclge_get_rss_hash_bits(struct ethtool_rxnfc *nfc)
@@ -5001,16 +4965,17 @@ static int hclge_init_rss_tuple_cmd(struct hclge_vport *vport,
50014965
struct hclge_rss_input_tuple_cmd *req)
50024966
{
50034967
struct hclge_dev *hdev = vport->back;
4968+
struct hclge_comm_rss_cfg *rss_cfg = &hdev->rss_cfg;
50044969
u8 tuple_sets;
50054970

5006-
req->ipv4_tcp_en = vport->rss_tuple_sets.ipv4_tcp_en;
5007-
req->ipv4_udp_en = vport->rss_tuple_sets.ipv4_udp_en;
5008-
req->ipv4_sctp_en = vport->rss_tuple_sets.ipv4_sctp_en;
5009-
req->ipv4_fragment_en = vport->rss_tuple_sets.ipv4_fragment_en;
5010-
req->ipv6_tcp_en = vport->rss_tuple_sets.ipv6_tcp_en;
5011-
req->ipv6_udp_en = vport->rss_tuple_sets.ipv6_udp_en;
5012-
req->ipv6_sctp_en = vport->rss_tuple_sets.ipv6_sctp_en;
5013-
req->ipv6_fragment_en = vport->rss_tuple_sets.ipv6_fragment_en;
4971+
req->ipv4_tcp_en = rss_cfg->rss_tuple_sets.ipv4_tcp_en;
4972+
req->ipv4_udp_en = rss_cfg->rss_tuple_sets.ipv4_udp_en;
4973+
req->ipv4_sctp_en = rss_cfg->rss_tuple_sets.ipv4_sctp_en;
4974+
req->ipv4_fragment_en = rss_cfg->rss_tuple_sets.ipv4_fragment_en;
4975+
req->ipv6_tcp_en = rss_cfg->rss_tuple_sets.ipv6_tcp_en;
4976+
req->ipv6_udp_en = rss_cfg->rss_tuple_sets.ipv6_udp_en;
4977+
req->ipv6_sctp_en = rss_cfg->rss_tuple_sets.ipv6_sctp_en;
4978+
req->ipv6_fragment_en = rss_cfg->rss_tuple_sets.ipv6_fragment_en;
50144979

50154980
tuple_sets = hclge_get_rss_hash_bits(nfc);
50164981
switch (nfc->flow_type) {
@@ -5079,48 +5044,15 @@ static int hclge_set_rss_tuple(struct hnae3_handle *handle,
50795044
return ret;
50805045
}
50815046

5082-
vport->rss_tuple_sets.ipv4_tcp_en = req->ipv4_tcp_en;
5083-
vport->rss_tuple_sets.ipv4_udp_en = req->ipv4_udp_en;
5084-
vport->rss_tuple_sets.ipv4_sctp_en = req->ipv4_sctp_en;
5085-
vport->rss_tuple_sets.ipv4_fragment_en = req->ipv4_fragment_en;
5086-
vport->rss_tuple_sets.ipv6_tcp_en = req->ipv6_tcp_en;
5087-
vport->rss_tuple_sets.ipv6_udp_en = req->ipv6_udp_en;
5088-
vport->rss_tuple_sets.ipv6_sctp_en = req->ipv6_sctp_en;
5089-
vport->rss_tuple_sets.ipv6_fragment_en = req->ipv6_fragment_en;
5090-
hclge_get_rss_type(vport);
5091-
return 0;
5092-
}
5093-
5094-
static int hclge_get_vport_rss_tuple(struct hclge_vport *vport, int flow_type,
5095-
u8 *tuple_sets)
5096-
{
5097-
switch (flow_type) {
5098-
case TCP_V4_FLOW:
5099-
*tuple_sets = vport->rss_tuple_sets.ipv4_tcp_en;
5100-
break;
5101-
case UDP_V4_FLOW:
5102-
*tuple_sets = vport->rss_tuple_sets.ipv4_udp_en;
5103-
break;
5104-
case TCP_V6_FLOW:
5105-
*tuple_sets = vport->rss_tuple_sets.ipv6_tcp_en;
5106-
break;
5107-
case UDP_V6_FLOW:
5108-
*tuple_sets = vport->rss_tuple_sets.ipv6_udp_en;
5109-
break;
5110-
case SCTP_V4_FLOW:
5111-
*tuple_sets = vport->rss_tuple_sets.ipv4_sctp_en;
5112-
break;
5113-
case SCTP_V6_FLOW:
5114-
*tuple_sets = vport->rss_tuple_sets.ipv6_sctp_en;
5115-
break;
5116-
case IPV4_FLOW:
5117-
case IPV6_FLOW:
5118-
*tuple_sets = HCLGE_S_IP_BIT | HCLGE_D_IP_BIT;
5119-
break;
5120-
default:
5121-
return -EINVAL;
5122-
}
5123-
5047+
hdev->rss_cfg.rss_tuple_sets.ipv4_tcp_en = req->ipv4_tcp_en;
5048+
hdev->rss_cfg.rss_tuple_sets.ipv4_udp_en = req->ipv4_udp_en;
5049+
hdev->rss_cfg.rss_tuple_sets.ipv4_sctp_en = req->ipv4_sctp_en;
5050+
hdev->rss_cfg.rss_tuple_sets.ipv4_fragment_en = req->ipv4_fragment_en;
5051+
hdev->rss_cfg.rss_tuple_sets.ipv6_tcp_en = req->ipv6_tcp_en;
5052+
hdev->rss_cfg.rss_tuple_sets.ipv6_udp_en = req->ipv6_udp_en;
5053+
hdev->rss_cfg.rss_tuple_sets.ipv6_sctp_en = req->ipv6_sctp_en;
5054+
hdev->rss_cfg.rss_tuple_sets.ipv6_fragment_en = req->ipv6_fragment_en;
5055+
hclge_comm_get_rss_type(&vport->nic, &hdev->rss_cfg.rss_tuple_sets);
51245056
return 0;
51255057
}
51265058

@@ -5149,7 +5081,8 @@ static int hclge_get_rss_tuple(struct hnae3_handle *handle,
51495081

51505082
nfc->data = 0;
51515083

5152-
ret = hclge_get_vport_rss_tuple(vport, nfc->flow_type, &tuple_sets);
5084+
ret = hclge_comm_get_rss_tuple(&vport->back->rss_cfg, nfc->flow_type,
5085+
&tuple_sets);
51535086
if (ret || !tuple_sets)
51545087
return ret;
51555088

@@ -5211,10 +5144,9 @@ static int hclge_init_rss_tc_mode(struct hclge_dev *hdev)
52115144

52125145
int hclge_rss_init_hw(struct hclge_dev *hdev)
52135146
{
5214-
struct hclge_vport *vport = hdev->vport;
5215-
u16 *rss_indir = vport[0].rss_indirection_tbl;
5216-
u8 *key = vport[0].rss_hash_key;
5217-
u8 hfunc = vport[0].rss_algo;
5147+
u16 *rss_indir = hdev->rss_cfg.rss_indirection_tbl;
5148+
u8 *key = hdev->rss_cfg.rss_hash_key;
5149+
u8 hfunc = hdev->rss_cfg.rss_algo;
52185150
int ret;
52195151

52205152
ret = hclge_set_rss_indir_table(hdev, rss_indir);
@@ -5232,48 +5164,39 @@ int hclge_rss_init_hw(struct hclge_dev *hdev)
52325164
return hclge_init_rss_tc_mode(hdev);
52335165
}
52345166

5235-
void hclge_rss_indir_init_cfg(struct hclge_dev *hdev)
5236-
{
5237-
struct hclge_vport *vport = &hdev->vport[0];
5238-
int i;
5239-
5240-
for (i = 0; i < hdev->ae_dev->dev_specs.rss_ind_tbl_size; i++)
5241-
vport->rss_indirection_tbl[i] = i % vport->alloc_rss_size;
5242-
}
5243-
52445167
static int hclge_rss_init_cfg(struct hclge_dev *hdev)
52455168
{
52465169
u16 rss_ind_tbl_size = hdev->ae_dev->dev_specs.rss_ind_tbl_size;
52475170
int rss_algo = HCLGE_RSS_HASH_ALGO_TOEPLITZ;
5248-
struct hclge_vport *vport = &hdev->vport[0];
5171+
struct hclge_comm_rss_cfg *rss_cfg = &hdev->rss_cfg;
52495172
u16 *rss_ind_tbl;
52505173

52515174
if (hdev->ae_dev->dev_version >= HNAE3_DEVICE_VERSION_V2)
52525175
rss_algo = HCLGE_RSS_HASH_ALGO_SIMPLE;
52535176

5254-
vport->rss_tuple_sets.ipv4_tcp_en = HCLGE_RSS_INPUT_TUPLE_OTHER;
5255-
vport->rss_tuple_sets.ipv4_udp_en = HCLGE_RSS_INPUT_TUPLE_OTHER;
5256-
vport->rss_tuple_sets.ipv4_sctp_en = HCLGE_RSS_INPUT_TUPLE_SCTP;
5257-
vport->rss_tuple_sets.ipv4_fragment_en = HCLGE_RSS_INPUT_TUPLE_OTHER;
5258-
vport->rss_tuple_sets.ipv6_tcp_en = HCLGE_RSS_INPUT_TUPLE_OTHER;
5259-
vport->rss_tuple_sets.ipv6_udp_en = HCLGE_RSS_INPUT_TUPLE_OTHER;
5260-
vport->rss_tuple_sets.ipv6_sctp_en =
5177+
rss_cfg->rss_tuple_sets.ipv4_tcp_en = HCLGE_RSS_INPUT_TUPLE_OTHER;
5178+
rss_cfg->rss_tuple_sets.ipv4_udp_en = HCLGE_RSS_INPUT_TUPLE_OTHER;
5179+
rss_cfg->rss_tuple_sets.ipv4_sctp_en = HCLGE_RSS_INPUT_TUPLE_SCTP;
5180+
rss_cfg->rss_tuple_sets.ipv4_fragment_en = HCLGE_RSS_INPUT_TUPLE_OTHER;
5181+
rss_cfg->rss_tuple_sets.ipv6_tcp_en = HCLGE_RSS_INPUT_TUPLE_OTHER;
5182+
rss_cfg->rss_tuple_sets.ipv6_udp_en = HCLGE_RSS_INPUT_TUPLE_OTHER;
5183+
rss_cfg->rss_tuple_sets.ipv6_sctp_en =
52615184
hdev->ae_dev->dev_version <= HNAE3_DEVICE_VERSION_V2 ?
52625185
HCLGE_RSS_INPUT_TUPLE_SCTP_NO_PORT :
52635186
HCLGE_RSS_INPUT_TUPLE_SCTP;
5264-
vport->rss_tuple_sets.ipv6_fragment_en = HCLGE_RSS_INPUT_TUPLE_OTHER;
5187+
rss_cfg->rss_tuple_sets.ipv6_fragment_en = HCLGE_RSS_INPUT_TUPLE_OTHER;
52655188

5266-
vport->rss_algo = rss_algo;
5189+
rss_cfg->rss_algo = rss_algo;
52675190

52685191
rss_ind_tbl = devm_kcalloc(&hdev->pdev->dev, rss_ind_tbl_size,
52695192
sizeof(*rss_ind_tbl), GFP_KERNEL);
52705193
if (!rss_ind_tbl)
52715194
return -ENOMEM;
52725195

5273-
vport->rss_indirection_tbl = rss_ind_tbl;
5274-
memcpy(vport->rss_hash_key, hclge_hash_key, HCLGE_RSS_KEY_SIZE);
5196+
rss_cfg->rss_indirection_tbl = rss_ind_tbl;
5197+
memcpy(rss_cfg->rss_hash_key, hclge_hash_key, HCLGE_RSS_KEY_SIZE);
52755198

5276-
hclge_rss_indir_init_cfg(hdev);
5199+
hclge_comm_rss_indir_init_cfg(hdev->ae_dev, rss_cfg);
52775200

52785201
return 0;
52795202
}
@@ -13213,7 +13136,7 @@ static const struct hnae3_ae_ops hclge_ops = {
1321313136
.check_port_speed = hclge_check_port_speed,
1321413137
.get_fec = hclge_get_fec,
1321513138
.set_fec = hclge_set_fec,
13216-
.get_rss_key_size = hclge_get_rss_key_size,
13139+
.get_rss_key_size = hclge_comm_get_rss_key_size,
1321713140
.get_rss = hclge_get_rss,
1321813141
.set_rss = hclge_set_rss,
1321913142
.set_rss_tuple = hclge_set_rss_tuple,

drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.h

Lines changed: 2 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
#include "hclge_cmd.h"
1414
#include "hclge_ptp.h"
1515
#include "hnae3.h"
16+
#include "hclge_comm_rss.h"
1617

1718
#define HCLGE_MOD_VERSION "1.0"
1819
#define HCLGE_DRIVER_NAME "hclge"
@@ -968,6 +969,7 @@ struct hclge_dev {
968969
cpumask_t affinity_mask;
969970
struct hclge_ptp *ptp;
970971
struct devlink *devlink;
972+
struct hclge_comm_rss_cfg rss_cfg;
971973
};
972974

973975
/* VPort level vlan tag configuration for TX direction */
@@ -994,17 +996,6 @@ struct hclge_rx_vtag_cfg {
994996
bool strip_tag2_discard_en; /* Outer vlan tag discard for BD enable */
995997
};
996998

997-
struct hclge_rss_tuple_cfg {
998-
u8 ipv4_tcp_en;
999-
u8 ipv4_udp_en;
1000-
u8 ipv4_sctp_en;
1001-
u8 ipv4_fragment_en;
1002-
u8 ipv6_tcp_en;
1003-
u8 ipv6_udp_en;
1004-
u8 ipv6_sctp_en;
1005-
u8 ipv6_fragment_en;
1006-
};
1007-
1008999
enum HCLGE_VPORT_STATE {
10091000
HCLGE_VPORT_STATE_ALIVE,
10101001
HCLGE_VPORT_STATE_MAC_TBL_CHANGE,
@@ -1038,15 +1029,6 @@ struct hclge_vf_info {
10381029
struct hclge_vport {
10391030
u16 alloc_tqps; /* Allocated Tx/Rx queues */
10401031

1041-
u8 rss_hash_key[HCLGE_RSS_KEY_SIZE]; /* User configured hash keys */
1042-
/* User configured lookup table entries */
1043-
u16 *rss_indirection_tbl;
1044-
int rss_algo; /* User configured hash algorithm */
1045-
/* User configured rss tuple sets */
1046-
struct hclge_rss_tuple_cfg rss_tuple_sets;
1047-
1048-
u16 alloc_rss_size;
1049-
10501032
u16 qs_offset;
10511033
u32 bw_limit; /* VSI BW Limit (0 = disabled) */
10521034
u8 dwrr;
@@ -1125,7 +1107,6 @@ int hclge_en_hw_strip_rxvtag(struct hnae3_handle *handle, bool enable);
11251107

11261108
int hclge_buffer_alloc(struct hclge_dev *hdev);
11271109
int hclge_rss_init_hw(struct hclge_dev *hdev);
1128-
void hclge_rss_indir_init_cfg(struct hclge_dev *hdev);
11291110

11301111
void hclge_mbx_handler(struct hclge_dev *hdev);
11311112
int hclge_reset_tqp(struct hnae3_handle *handle);

0 commit comments

Comments
 (0)