When !CONFIG_REGMAP hns throws compiler warnings since
dsaf_read_syscon ignores the return result from regmap_read,
which allows val to be uninitialized.
Fixes: 86897c960b49 ("net: hns: add syscon operation for dsaf")
Reported-by: Jason Gunthorpe <j...@ziepe.ca>
Signed-off-
Add cpld-syscon node to support the cpld control for hns-dsaf
on the hip07 SoC.
Signed-off-by: Huazhong Tan <tanhuazh...@huawei.com>
---
arch/arm64/boot/dts/hisilicon/hip07.dtsi | 8
1 file changed, 8 insertions(+)
diff --git a/arch/arm64/boot/dts/hisilicon/hip07.dtsi
b/arch
ions and TQP enable status.
Guangbin Huang (2):
net: hns3: debugfs add new command to query device specifications
net: hns3: dump tqp enable status in debugfs
Guojia Liao (1):
net: hns3: remove unused code in hns3_self_test()
Huazhong Tan (4):
net: hns3: replace macro HNS3_MAX_NON_TSO_BD
From: Guojia Liao
NETIF_F_HW_VLAN_CTAG_FILTER is not set in netdev->hw_feature,
but set in netdev->features.
So the handler of NETIF_F_HW_VLAN_CTAG_FILTER in hns3_self_test() is
always true, remove it.
Signed-off-by: Guojia Liao
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/his
From: Yunsheng Lin
Use napi_consume_skb() to batch consuming skb when cleaning
tx desc in NAPI polling.
Signed-off-by: Yunsheng Lin
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c| 27 +++---
drivers/net/ethernet/hisilicon/hns3/hns3_enet.h
to record the tx desc that has
notified to the hw, so that hns3_nic_reclaim_desc() can decide how many
tx desc's valid bit need checking when reclaiming tx desc.
And io_err_cnt stat is also removed for it is not used anymore.
Signed-off-by: Yunsheng Lin
Signed-off-by: Huazhong Tan
---
drivers/net
.
Signed-off-by: Yunsheng Lin
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c| 47 +-
drivers/net/ethernet/hisilicon/hns3/hns3_enet.h| 2 +-
drivers/net/ethernet/hisilicon/hns3/hns3_ethtool.c | 2 +-
3 files changed, 39 insertions(+), 12
moving rx ring's next_to_clean forward to avoid double
cleaning a rx desc, also add a dma_rmb() barrier in hns3_handle_rx_bd()
to make sure valid bit is set before reading other field in the rx desc.
Signed-off-by: Yunsheng Lin
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3
().
Signed-off-by: Yunsheng Lin
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c | 8 +++-
drivers/net/ethernet/hisilicon/hns3/hns3_enet.h | 3 ---
2 files changed, 3 insertions(+), 8 deletions(-)
diff --git a/drivers/net/ethernet/hisilicon/hns3/hns3_enet.c
b
From: Yunsheng Lin
Batch the page reference count updates instead of doing them
one at a time. By doing this we can improve the overall receive
performance by avoid some atomic increment operations when the
rx page is reused.
Signed-off-by: Yunsheng Lin
Signed-off-by: Huazhong Tan
There are some optimizations related to IO path.
Yunsheng Lin (6):
net: hns3: batch the page reference count updates
net: hns3: batch tx doorbell operation
net: hns3: optimize the tx clean process
net: hns3: optimize the rx clean process
net: hns3: use writel() to optimize the barrier
There are some optimizations related to IO path.
Change since V1:
- fixes a unsuitable handling in hns3_lb_clear_tx_ring() of #6 which
pointed out by Saeed Mahameed.
previous version:
V1:
moving rx ring's next_to_clean forward to avoid double
cleaning a rx desc, also add a dma_rmb() barrier in hns3_handle_rx_bd()
to make sure valid bit is set before reading other field in the rx desc.
Signed-off-by: Yunsheng Lin
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3
From: Yunsheng Lin
Batch the page reference count updates instead of doing them
one at a time. By doing this we can improve the overall receive
performance by avoid some atomic increment operations when the
rx page is reused.
Signed-off-by: Yunsheng Lin
Signed-off-by: Huazhong Tan
From: Yunsheng Lin
Use napi_consume_skb() to batch consuming skb when cleaning
tx desc in NAPI polling.
Signed-off-by: Yunsheng Lin
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c| 27 +++---
drivers/net/ethernet/hisilicon/hns3/hns3_enet.h
.
Signed-off-by: Yunsheng Lin
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c| 47 +-
drivers/net/ethernet/hisilicon/hns3/hns3_enet.h| 2 +-
drivers/net/ethernet/hisilicon/hns3/hns3_ethtool.c | 2 +-
3 files changed, 39 insertions(+), 12
to record the tx desc that has
notified to the hw, so that hns3_nic_reclaim_desc() can decide how many
tx desc's valid bit need checking when reclaiming tx desc.
And io_err_cnt stat is also removed for it is not used anymore.
Signed-off-by: Yunsheng Lin
Signed-off-by: Huazhong Tan
---
drivers/net
().
Signed-off-by: Yunsheng Lin
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c | 8 +++-
drivers/net/ethernet/hisilicon/hns3/hns3_enet.h | 3 ---
2 files changed, 3 insertions(+), 8 deletions(-)
diff --git a/drivers/net/ethernet/hisilicon/hns3/hns3_enet.c
b
at the same time.
Signed-off-by: Jian Shen
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hnae3.h| 11 +
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c| 70 -
.../ethernet/hisilicon/hns3/hns3pf/hclge_main.c| 313 -
.../ethernet/hisilicon
, the queue
number of each tc should be power of 2.
For the queues is not assigned to each tc by average, so it's
should return vport->alloc_tqps for hclge_get_max_channels().
Signed-off-by: Jian Shen
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hnae3.h| 6 +-
driv
255.
Signed-off-by: Guojia Liao
Signed-off-by: Huazhong Tan
---
.../net/ethernet/hisilicon/hns3/hns3pf/hclge_cmd.h | 7 +--
.../net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c | 20 ++--
2 files changed, 19 insertions(+), 8 deletions(-)
diff --git a/drivers/net/ethernet
field from 10 bits to 11
bits, and extend tc size field from 3 bits to 4 bits.
Signed-off-by: Guojia Liao
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_cmd.h | 4 +++-
drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c | 2 ++
2 files changed, 5 insertions
Liao
Signed-off-by: Huazhong Tan
---
.../net/ethernet/hisilicon/hns3/hns3pf/hclge_cmd.h | 2 ++
.../net/ethernet/hisilicon/hns3/hns3pf/hclge_dcb.c | 4 +--
.../ethernet/hisilicon/hns3/hns3pf/hclge_main.c| 36 --
.../ethernet/hisilicon/hns3/hns3pf/hclge_main.h| 8
From: Jian Shen
For some new device, it supports forwarding packet to queues
of specified TC when flow director rule hit. So extend the
command handle to support it.
Signed-off-by: Jian Shen
Signed-off-by: Huazhong Tan
---
.../net/ethernet/hisilicon/hns3/hns3pf/hclge_cmd.c | 2 ++
.../net
This patchset adds support for tc mqprio offload, hw tc
offload of tc flower, and adpation for max rss size changes.
Guojia Liao (3):
net: hns3: add support for max 512 rss size
net: hns3: adjust rss indirection table configure command
net: hns3: adjust rss tc mode configure command
Jian
From: Jian Shen
Currently, there are multiple members related to tc information
in struct hnae3_knic_private_info. Merge them into a new struct
hnae3_tc_info.
Signed-off-by: Jian Shen
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hnae3.h| 17
drivers
xpression is always true which is not correct. Fix this by
replacing || with && to correct the logic in the expression.
Addresses-Coverity: ("Constant expression result")
Fixes: 0205ec041ec6 ("net: hns3: add support for hw tc offload of tc flower")
Signed-off-by: Colin
For device whose version is above V3(include V3), the GL
configuration can set as 1us unit, so adds support for
configuring this field.
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c| 26 ++
drivers/net/ethernet/hisilicon/hns3/hns3_enet.h
For maintainability and compatibility, add support for querying
the maximum value of GL.
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hnae3.h | 1 +
drivers/net/ethernet/hisilicon/hns3/hns3_debugfs.c| 1 +
drivers/net/ethernet/hisilicon/hns3
Add a check for hns3_set_priv_flags() since if the capability
is unsupported its private flags should not be modified as well.
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hnae3.h| 1 +
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c| 1 +
drivers/net
Add dynamic interrupt moderation support for the HNS3 driver.
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/Kconfig | 1 +
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c | 87 -
drivers/net/ethernet/hisilicon/hns3/hns3_enet.h | 4 ++
3 files
1-git-send-email-tanhuazh...@huawei.com/
Huazhong Tan (10):
net: hns3: add support for configuring interrupt quantity limiting
net: hns3: add support for querying maximum value of GL
net: hns3: add support for 1us unit GL configuration
net: hns3: rename gl_adapt_enable in struct hns3_enet_coal
Besides GL(Gap Limiting), QL(Quantity Limiting) can be modified
dynamically when DIM is supported. So rename gl_adapt_enable as
adapt_enable in struct hns3_enet_coalesce.
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c| 12 ++--
drivers/net/ethernet
To improve the readability and maintainability, add hns3_state_init()
to initialize the state.
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c | 14 +++---
1 file changed, 11 insertions(+), 3 deletions(-)
diff --git a/drivers/net/ethernet/hisilicon/hns3
Add a control private flag in ethtool for enable/disable
DIM feature.
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hnae3.h| 7 +++
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c| 1 +
drivers/net/ethernet/hisilicon/hns3/hns3_ethtool.c | 71
For device whose version is above V3(include V3), the GL can
select EQ or CQ mode, so adds support for it.
In CQ mode, the coalesced timer will restart when the first new
completion occurs, while in EQ mode, the timer will not restart.
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet
QL(quantity limiting) means that hardware supports the interrupt
coalesce based on the frame quantity. QL can be configured when
int_ql_max in device's specification is non-zero, so add support
to configure it. Also, rename two coalesce init function to fit
their purpose.
Signed-off-by: Huazhong
Add a control private flag in ethtool for switching EQ/CQ mode.
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hnae3.h| 2 ++
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c| 19 +++--
drivers/net/ethernet/hisilicon/hns3/hns3_enet.h| 2
Since the information whether the adaptive behavior is implemented
by DIM or driver custom is useful, so add new attribute to
ETHTOOL_MSG_COALESCE_GET/ETHTOOL_MSG_COALESCE_SET commands to control
the type of adaptive coalescing.
Suggested-by: Jakub Kicinski
Signed-off-by: Huazhong Tan
#2 will add DIM for the HNS3 ethernet driver, then there will
be two implemation of IRQ adaptive coalescing (DIM and driver
custiom, so #1 adds a new netlink attribute to the
ETHTOOL_MSG_COALESCE_GET/ETHTOOL_MSG_COALESCE_SET commands
which controls the type of adaptive coalescing.
Huazhong Tan (2
Add dynamic interrupt moderation support for the HNS3 driver,
and add ethtool support for controlling the type of adaptive.
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/Kconfig | 1 +
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c| 87
: fixes some problems in #1 reported by Andrew Lunn & Michal Kubecek.
previous version:
V1:
https://patchwork.ozlabs.org/project/netdev/cover/1605758050-21061-1-git-send-email-tanhuazh...@huawei.com/
Huazhong Tan (2):
ethtool: add support for controling the type of adaptive coalescing
Add dynamic interrupt moderation support for the HNS3 driver,
and add ethtool support for controlling the type of adaptive.
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/Kconfig | 1 +
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c| 87
handler to deal with it in the netlink API, then other new extended
coalescing parameters can utiliaze it as well.
Suggested-by: Jakub Kicinski
Signed-off-by: Huazhong Tan
---
Documentation/networking/ethtool-netlink.rst | 1 +
include/linux/ethtool.h | 14
From: Yonglong Liu
Adds debugfs to dump new shaping parameters: rate and flag.
Signed-off-by: Yonglong Liu
Signed-off-by: Huazhong Tan
---
.../net/ethernet/hisilicon/hns3/hns3pf/hclge_debugfs.c | 18 --
1 file changed, 16 insertions(+), 2 deletions(-)
diff --git a/drivers
For device who has device memory accessed through the PCI BAR4,
IO descriptor push of NIC and direct WQE(Work Queue Element) of
RoCE will use this device memory, so add support for mapping
this device memory, and add this info to the RoCE client whose
new feature needs.
Signed-off-by: Huazhong
off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c| 3 -
.../net/ethernet/hisilicon/hns3/hns3pf/hclge_cmd.h | 16 ++--
.../ethernet/hisilicon/hns3/hns3pf/hclge_main.c| 100 -
.../ethernet/hisilicon/hns3/hns3pf/hclge_main.h| 3 +-
4 files changed,
This series includes some misc updates for the HNS3 ethernet driver.
#1 adds support for 1280 queues
#2 adds mapping for BAR45 which is needed by RoCE client.
#3 extend the interrupt resources.
#4 add support to query firmware's calculated shaping parameters.
Huazhong Tan (1):
net: hns3: add
-by: Yonglong Liu
Signed-off-by: Huazhong Tan
---
.../net/ethernet/hisilicon/hns3/hns3pf/hclge_tm.c | 43 --
.../net/ethernet/hisilicon/hns3/hns3pf/hclge_tm.h | 15
2 files changed, 46 insertions(+), 12 deletions(-)
diff --git a/drivers/net/ethernet/hisilicon/hns3
into two part:
tqp_num(range 0~1023) and ext_tqp_num(range 1024~1279).
Signed-off-by: Yonglong Liu
Signed-off-by: Huazhong Tan
---
.../net/ethernet/hisilicon/hns3/hns3pf/hclge_cmd.h | 7 ++--
.../ethernet/hisilicon/hns3/hns3pf/hclge_debugfs.c | 30 +++---
.../ethernet/hisilicon/hns3
QL(quantity limiting) means that hardware supports the interrupt
coalesce based on the frame quantity. QL can be configured when
int_ql_max in device's specification is non-zero, so add support
to configure it. Also, rename two coalesce init function to fit
their purpose.
Signed-off-by: Huazhong
For device whose version is above V3(include V3), the GL
configuration can set as 1us unit, so adds support for
configuring this field.
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c| 26 ++
drivers/net/ethernet/hisilicon/hns3/hns3_enet.h
:
https://patchwork.ozlabs.org/project/netdev/cover/1604892159-19990-1-git-send-email-tanhuazh...@huawei.com/
V1:
https://patchwork.ozlabs.org/project/netdev/cover/1604730681-32559-1-git-send-email-tanhuazh...@huawei.com/
Huazhong Tan (4):
net: hns3: add support for configuring interrupt quantity limiting
n
Besides GL(Gap Limiting), QL(Quantity Limiting) can be modified
dynamically when DIM is supported. So rename gl_adapt_enable as
adapt_enable in struct hns3_enet_coalesce.
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c| 12 ++--
drivers/net/ethernet
For maintainability and compatibility, add support for querying
the maximum value of GL.
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hnae3.h | 1 +
drivers/net/ethernet/hisilicon/hns3/hns3_debugfs.c| 1 +
drivers/net/ethernet/hisilicon/hns3
and rx broadcast promiscuous can be enabled separately.
So add support for the new promiscuous command.
Signed-off-by: Guojia Liao
Signed-off-by: Huazhong Tan
---
.../net/ethernet/hisilicon/hns3/hns3pf/hclge_cmd.h | 31 +++-
.../ethernet/hisilicon/hns3/hns3pf/hclge_main.c| 59
There are some updates for the HNS3 ethernet driver.
#1 supports an extended promiscuous command which makes
promiscuous configuration more flexible, #2 adds ethtool
private flags to control whether enable tx unicast promisc.
#3 refine the vlan tag handling for port based vlan.
change log:
V2:
ble discard mode, hardware will strip and discard the
port based VLAN tag, so vf driver doesn't need to identify it
from rx buffer descriptor.
So modify the port based VLAN configuration, simplify the process
for vf handling the VLAN tag.
Signed-off-by: Guojia Liao
Signed-off-by: Huazhong
From: Jian Shen
Currently, the tx unicast promisc is always enabled when promisc
mode on. If tx unicast promisc on, a function will receive all
unicast packet from other functions belong to the same port.
Add a ethtool private flag to control whether enable tx
unicast promisc. Then the function
per entry.
Fixes: a582b78dfc33 ("net: hns3: code optimization for debugfs related to "dump
reg"")
Reported-by: Stephen Rothwell
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_debugfs.h | 4
1 file changed, 4 deletions(-)
diff --git a/
and rx broadcast promiscuous can be enabled separately.
So add support for the new promiscuous command.
Signed-off-by: Guojia Liao
Signed-off-by: Huazhong Tan
---
.../net/ethernet/hisilicon/hns3/hns3pf/hclge_cmd.h | 31 +++-
.../ethernet/hisilicon/hns3/hns3pf/hclge_main.c| 59
There are some updates for the HNS3 ethernet driver.
#1 supports an extended promiscuous command which makes
promiscuous configuration more flexible, #2 adds ethtool
private flags to control whether enable tx unicast promisc.
#3 refine the vlan tag handling for port based vlan.
Guojia Liao (2):
hen enable discard mode, hardware will strip and discard the
port based VLAN tag, so the vf driver doesn't need to
identify it from rx buffer descriptor.
So modify the port based VLAN configuration, simplify the process
for vf handling the VLAN tag.
Signed-off-by: Guojia Liao
Signed-off-by: Huazh
. Then the function is able to filter the
unknown unicast packets from other function.
Signed-off-by: Jian Shen
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hclge_mbx.h| 1 +
drivers/net/ethernet/hisilicon/hns3/hnae3.h| 8 ++
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c
In some cases (for example ip fragment), hardware will
calculate the checksum of whole packet in RX, and setup
the HNS3_RXD_L2_CSUM_B flag in the descriptor, so add
support to utilize this checksum.
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c| 21
This series includes some updates for the HNS3 ethernet driver.
#1~#6: add some updates related to the checksum offload.
#7: add support for multiple TCs' MAC pauce mode.
Huazhong Tan (6):
net: hns3: add support for RX completion checksum
net: hns3: add support for TX hardware checksum
For the device whose version is above V3(include V3), the hardware
can do checksum offload for the non-tunnel udp packet, who has
a dest port as the IANA assigned. So add a check for devcie's verion
in hns3_tunnel_csum_bug().
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3
simple BD description is unsuitable, rename it as
HW TX CSUM.
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hnae3.h| 6 +--
drivers/net/ethernet/hisilicon/hns3/hns3_debugfs.c | 6 ++-
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c| 62
to the user settings.
Signed-off-by: Yonglong Liu
Signed-off-by: Huazhong Tan
---
.../net/ethernet/hisilicon/hns3/hns3pf/hclge_tm.c | 23 +-
1 file changed, 22 insertions(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_tm.c
b/drivers/net
For the device who has the capability to handle udp tunnel
checksum segmentation, add support for it.
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hnae3.h| 1 +
drivers/net/ethernet/hisilicon/hns3/hns3_debugfs.c | 6 +-
drivers/net/ethernet/hisilicon/hns3
Since TX hardware checksum and RX completion checksum have been
supported now, so add related information in hns3_dbg_bd_info().
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hns3_debugfs.c | 50 +-
1 file changed, 40 insertions(+), 10 deletions
and V2, add support for it later(when the device
has the ability to do that).
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c | 24 +---
1 file changed, 5 insertions(+), 19 deletions(-)
diff --git a/drivers/net/ethernet/hisilicon/hns3/hns3_enet.c
For the device whose version is above V3(include V3), the hardware
can do checksum offload for the non-tunnel udp packet, who has
a dest port as the IANA assigned. So add a check for devcie's verion
in hns3_tunnel_csum_bug().
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3
vbpf/cover/1606466842-57749-1-git-send-email-tanhuazh...@huawei.com/
Huazhong Tan (6):
net: hns3: add support for RX completion checksum
net: hns3: add support for TX hardware checksum offload
net: hns3: remove unsupported NETIF_F_GSO_UDP_TUNNEL_CSUM
net: hns3: add udp tunnel chec
In some cases (for example ip fragment), hardware will
calculate the checksum of whole packet in RX, and setup
the HNS3_RXD_L2_CSUM_B flag in the descriptor, so add
support to utilize this checksum.
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c| 21
Since TX hardware checksum and RX completion checksum have been
supported now, so add related information in hns3_dbg_bd_info().
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hns3_debugfs.c | 50 +-
1 file changed, 40 insertions(+), 10 deletions
and V2, add support for it later(when the device
has the ability to do that).
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c | 24 +---
1 file changed, 5 insertions(+), 19 deletions(-)
diff --git a/drivers/net/ethernet/hisilicon/hns3/hns3_enet.c
to the user settings.
Signed-off-by: Yonglong Liu
Signed-off-by: Huazhong Tan
---
.../net/ethernet/hisilicon/hns3/hns3pf/hclge_tm.c | 23 +-
1 file changed, 22 insertions(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_tm.c
b/drivers/net
simple BD description is unsuitable, rename it as
HW TX CSUM.
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hnae3.h| 6 +--
drivers/net/ethernet/hisilicon/hns3/hns3_debugfs.c | 6 ++-
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c| 62
For the device who has the capability to handle udp tunnel
checksum segmentation, add support for it.
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hnae3.h| 1 +
drivers/net/ethernet/hisilicon/hns3/hns3_debugfs.c | 6 +-
drivers/net/ethernet/hisilicon/hns3
Since user may need to check the current configuration of the
interrupt coalesce, so add debugfs support for query this info,
which includes DIM profile, coalesce configuration of both software
and hardware.
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hns3_debugfs.c
For device whose version is above V3(include V3), the GL can
select EQ or CQ mode, so adds support for it.
In CQ mode, the coalesced timer will restart upon new completion,
while in EQ mode, the timer will not restart.
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hnae3.h
Add dynamic interrupt moderation support for the HNS3 driver.
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/Kconfig | 1 +
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c | 87 -
drivers/net/ethernet/hisilicon/hns3/hns3_enet.h | 4 ++
3 files
To improve the readability and maintainability, add hns3_state_init()
to initialize the state.
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c | 14 +++---
1 file changed, 11 insertions(+), 3 deletions(-)
diff --git a/drivers/net/ethernet/hisilicon/hns3
For maintainability and compatibility, add support for querying
the maximum value of GL.
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hnae3.h | 1 +
drivers/net/ethernet/hisilicon/hns3/hns3_debugfs.c| 1 +
drivers/net/ethernet/hisilicon/hns3
For device whose version is above V3(include V3), the GL
configuration can set as 1us unit, so adds support for
configuring this field.
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c| 26 ++
drivers/net/ethernet/hisilicon/hns3/hns3_enet.h
Add a check for hns3_set_priv_flags() since if the capability
is unsupported its private flags should not be modified as well.
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hnae3.h| 1 +
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c| 1 +
drivers/net
Besides GL(Gap Limiting), QL(Quantity Limiting) can be modified
dynamically when DIM is supported. So rename gl_adapt_enable as
adapt_enable in struct hns3_enet_coalesce.
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c| 12 ++--
drivers/net/ethernet
Add a control private flag in ethtool for switching EQ/CQ mode.
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hnae3.h| 2 ++
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c| 19 --
drivers/net/ethernet/hisilicon/hns3/hns3_enet.h| 2
QL(quantity limiting) means that hardware supports the interrupt
coalesce based on the frame quantity. QL can be configured when
int_ql_max in device's specification is non-zero, so add support
to configure it. Also, rename two coalesce init function to fit
their purpose.
Signed-off-by: Huazhong
tate initialization.
#8 adds a check for the read-only private flag.
#9 & #10 adds support for EQ/CQ configuration, and adds a control
private flag in ethtool.
#11 adds debugfs support for interrupt coalesce.
Huazhong Tan (11):
net: hns3: add support for configuring interrupt quantity limiting
n
Add a control private flag in ethtool for enable/disable
DIM feature.
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hnae3.h| 7 +++
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c| 1 +
drivers/net/ethernet/hisilicon/hns3/hns3_ethtool.c | 71
QL(quantity limiting) means that hardware supports the interrupt
coalesce based on the frame quantity. QL can be configured when
int_ql_max in device's specification is non-zero, so add support
to configure it. Also, rename two coalesce init function to fit
their purpose.
Signed-off-by: Huazhong
Add a control private flag in ethtool for switching EQ/CQ mode.
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hnae3.h| 2 ++
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c| 19 +++--
drivers/net/ethernet/hisilicon/hns3/hns3_enet.h| 2
Add a control private flag in ethtool for enable/disable
DIM feature.
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hnae3.h| 7 +++
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c| 1 +
drivers/net/ethernet/hisilicon/hns3/hns3_ethtool.c | 71
Besides GL(Gap Limiting), QL(Quantity Limiting) can be modified
dynamically when DIM is supported. So rename gl_adapt_enable as
adapt_enable in struct hns3_enet_coalesce.
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c| 12 ++--
drivers/net/ethernet
Since user may need to check the current configuration of the
interrupt coalesce, so add debugfs support for query this info,
which includes DIM profile, coalesce configuration of both software
and hardware.
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hns3_debugfs.c
For maintainability and compatibility, add support for querying
the maximum value of GL.
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hnae3.h | 1 +
drivers/net/ethernet/hisilicon/hns3/hns3_debugfs.c| 1 +
drivers/net/ethernet/hisilicon/hns3
Add dynamic interrupt moderation support for the HNS3 driver.
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/Kconfig | 1 +
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c | 87 -
drivers/net/ethernet/hisilicon/hns3/hns3_enet.h | 4 ++
3 files
To improve the readability and maintainability, add hns3_state_init()
to initialize the state.
Signed-off-by: Huazhong Tan
---
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c | 14 +++---
1 file changed, 11 insertions(+), 3 deletions(-)
diff --git a/drivers/net/ethernet/hisilicon/hns3
1 - 100 of 632 matches
Mail list logo