]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/blob - releases/4.14.93/net-hns-incorrect-offset-address-used-for-some-regis.patch
Linux 4.14.93
[thirdparty/kernel/stable-queue.git] / releases / 4.14.93 / net-hns-incorrect-offset-address-used-for-some-regis.patch
1 From 3994072870a243342869bd71e90f3ea5ebd98cda Mon Sep 17 00:00:00 2001
2 From: Yonglong Liu <liuyonglong@huawei.com>
3 Date: Sat, 15 Dec 2018 11:53:20 +0800
4 Subject: net: hns: Incorrect offset address used for some registers.
5
6 [ Upstream commit 4e1d4be681b2c26fd874adbf584bf034573ac45d ]
7
8 According to the hip06 Datasheet:
9 1. The offset of INGRESS_SW_VLAN_TAG_DISC should be 0x1A00+4*all_chn_num
10 2. The offset of INGRESS_IN_DATA_STP_DISC should be 0x1A50+4*all_chn_num
11
12 Signed-off-by: Yonglong Liu <liuyonglong@huawei.com>
13 Signed-off-by: Peng Li <lipeng321@huawei.com>
14 Signed-off-by: David S. Miller <davem@davemloft.net>
15 Signed-off-by: Sasha Levin <sashal@kernel.org>
16 ---
17 drivers/net/ethernet/hisilicon/hns/hns_dsaf_main.c | 4 ++--
18 1 file changed, 2 insertions(+), 2 deletions(-)
19
20 diff --git a/drivers/net/ethernet/hisilicon/hns/hns_dsaf_main.c b/drivers/net/ethernet/hisilicon/hns/hns_dsaf_main.c
21 index 1f056a6b167e..bc020dddd253 100644
22 --- a/drivers/net/ethernet/hisilicon/hns/hns_dsaf_main.c
23 +++ b/drivers/net/ethernet/hisilicon/hns/hns_dsaf_main.c
24 @@ -2159,9 +2159,9 @@ void hns_dsaf_update_stats(struct dsaf_device *dsaf_dev, u32 node_num)
25 DSAF_INODE_LOCAL_ADDR_FALSE_NUM_0_REG + 0x80 * (u64)node_num);
26
27 hw_stats->vlan_drop += dsaf_read_dev(dsaf_dev,
28 - DSAF_INODE_SW_VLAN_TAG_DISC_0_REG + 0x80 * (u64)node_num);
29 + DSAF_INODE_SW_VLAN_TAG_DISC_0_REG + 4 * (u64)node_num);
30 hw_stats->stp_drop += dsaf_read_dev(dsaf_dev,
31 - DSAF_INODE_IN_DATA_STP_DISC_0_REG + 0x80 * (u64)node_num);
32 + DSAF_INODE_IN_DATA_STP_DISC_0_REG + 4 * (u64)node_num);
33
34 /* pfc pause frame statistics stored in dsaf inode*/
35 if ((node_num < DSAF_SERVICE_NW_NUM) && !is_ver1) {
36 --
37 2.19.1
38