Revision tags: v5.14.4, v5.10.65 |
|
#
427900d2 |
| 13-Sep-2021 |
Jiaran Zhang <zhangjiaran@huawei.com> |
net: hns3: fix the timing issue of VF clearing interrupt sources
Currently, the VF does not clear the interrupt source immediately after receiving the interrupt. As a result, if the second interrupt
net: hns3: fix the timing issue of VF clearing interrupt sources
Currently, the VF does not clear the interrupt source immediately after receiving the interrupt. As a result, if the second interrupt task is triggered when processing the first interrupt task, clearing the interrupt source before exiting will clear the interrupt sources of the two tasks at the same time. As a result, no interrupt is triggered for the second task. The VF detects the missed message only when the next interrupt is generated.
Clearing it immediately after executing check_evt_cause ensures that: 1. Even if two interrupt tasks are triggered at the same time, they can be processed. 2. If the second task is triggered during the processing of the first task and the interrupt source is not cleared, the interrupt is reported after vector0 is enabled.
Fixes: b90fcc5bd904 ("net: hns3: add reset handling for VF when doing Core/Global/IMP reset") Signed-off-by: Jiaran Zhang <zhangjiaran@huawei.com> Signed-off-by: Guangbin Huang <huangguangbin2@huawei.com> Signed-off-by: David S. Miller <davem@davemloft.net>
show more ...
|
Revision tags: v5.14.3, v5.10.64, v5.14.2, v5.10.63, v5.14.1, v5.10.62, v5.14 |
|
#
5a24b1fd |
| 27-Aug-2021 |
Peng Li <lipeng321@huawei.com> |
net: hns3: merge some repetitive macros
There are some repetitive macros have same meaning and value, this patch merges them to make code clean.
Signed-off-by: Peng Li <lipeng321@huawei.com> Signed
net: hns3: merge some repetitive macros
There are some repetitive macros have same meaning and value, this patch merges them to make code clean.
Signed-off-by: Peng Li <lipeng321@huawei.com> Signed-off-by: Guangbin Huang <huangguangbin2@huawei.com> Signed-off-by: David S. Miller <davem@davemloft.net>
show more ...
|
Revision tags: v5.10.61 |
|
#
3462207d |
| 26-Aug-2021 |
Yufeng Mo <moyufeng@huawei.com> |
net: hns3: fix GRO configuration error after reset
The GRO configuration is enabled by default after reset. This is incorrect and should be restored to the user-configured value. So this restoration
net: hns3: fix GRO configuration error after reset
The GRO configuration is enabled by default after reset. This is incorrect and should be restored to the user-configured value. So this restoration is added during reset initialization.
Signed-off-by: Yufeng Mo <moyufeng@huawei.com> Signed-off-by: Guangbin Huang <huangguangbin2@huawei.com> Signed-off-by: Jakub Kicinski <kuba@kernel.org>
show more ...
|
#
b15c072a |
| 26-Aug-2021 |
Yonglong Liu <liuyonglong@huawei.com> |
net: hns3: fix speed unknown issue in bond 4
In bond 4, when the link goes down and up repeatedly, the bond may get an unknown speed, and then this port can not work.
The driver notify netif_carrie
net: hns3: fix speed unknown issue in bond 4
In bond 4, when the link goes down and up repeatedly, the bond may get an unknown speed, and then this port can not work.
The driver notify netif_carrier_on() before update the link state, when the bond receive carrier on, will query the speed of the port, if the query operation happens before updating the link state, will get an unknown speed. So need to notify netif_carrier_on() after update the link state.
Fixes: 46a3df9f9718 ("net: hns3: Add HNS3 Acceleration Engine & Compatibility Layer Support") Fixes: e2cb1dec9779 ("net: hns3: Add HNS3 VF HCL(Hardware Compatibility Layer) Support") Signed-off-by: Yonglong Liu <liuyonglong@huawei.com> Signed-off-by: Guangbin Huang <huangguangbin2@huawei.com> Signed-off-by: Jakub Kicinski <kuba@kernel.org>
show more ...
|
#
9f0c6f4b |
| 20-Aug-2021 |
Yufeng Mo <moyufeng@huawei.com> |
net: hns3: add support for EQE/CQE mode configuration
For device whose version is above V3(include V3), the GL can select EQE or CQE mode, so adds support for it.
In CQE mode, the coalesced timer w
net: hns3: add support for EQE/CQE mode configuration
For device whose version is above V3(include V3), the GL can select EQE or CQE mode, so adds support for it.
In CQE mode, the coalesced timer will restart when the first new completion occurs, while in EQE mode, the timer will not restart.
Signed-off-by: Yufeng Mo <moyufeng@huawei.com> Signed-off-by: Huazhong Tan <tanhuazhong@huawei.com> Signed-off-by: Jakub Kicinski <kuba@kernel.org>
show more ...
|
Revision tags: v5.10.60 |
|
#
cd624299 |
| 25-Jul-2021 |
Yufeng Mo <moyufeng@huawei.com> |
net: hns3: add support for registering devlink for VF
Add devlink register support for HNS3 ethernet VF driver.
Signed-off-by: Yufeng Mo <moyufeng@huawei.com> Signed-off-by: Guangbin Huang <huanggu
net: hns3: add support for registering devlink for VF
Add devlink register support for HNS3 ethernet VF driver.
Signed-off-by: Yufeng Mo <moyufeng@huawei.com> Signed-off-by: Guangbin Huang <huangguangbin2@huawei.com> Signed-off-by: David S. Miller <davem@davemloft.net>
show more ...
|
Revision tags: v5.10.53, v5.10.52 |
|
#
bbfd4506 |
| 19-Jul-2021 |
Jian Shen <shenjian15@huawei.com> |
net: hns3: fix rx VLAN offload state inconsistent issue
Currently, VF doesn't enable rx VLAN offload when initializating, and PF does it for VFs. If user disable the rx VLAN offload for VF with etht
net: hns3: fix rx VLAN offload state inconsistent issue
Currently, VF doesn't enable rx VLAN offload when initializating, and PF does it for VFs. If user disable the rx VLAN offload for VF with ethtool -K, and reload the VF driver, it may cause the rx VLAN offload state being inconsistent between hardware and software.
Fixes it by enabling rx VLAN offload when VF initializing.
Fixes: e2cb1dec9779 ("net: hns3: Add HNS3 VF HCL(Hardware Compatibility Layer) Support") Signed-off-by: Jian Shen <shenjian15@huawei.com> Signed-off-by: Guangbin Huang <huangguangbin2@huawei.com> Signed-off-by: Jakub Kicinski <kuba@kernel.org>
show more ...
|
Revision tags: v5.10.51, v5.10.50, v5.10.49, v5.13, v5.10.46, v5.10.43 |
|
#
49768ce9 |
| 09-Jun-2021 |
Baokun Li <libaokun1@huawei.com> |
net: hns3: use list_move_tail instead of list_del/list_add_tail in hclgevf_main.c
Using list_move_tail() instead of list_del() + list_add_tail() in hclgevf_main.c.
Reported-by: Hulk Robot <hulkci@h
net: hns3: use list_move_tail instead of list_del/list_add_tail in hclgevf_main.c
Using list_move_tail() instead of list_del() + list_add_tail() in hclgevf_main.c.
Reported-by: Hulk Robot <hulkci@huawei.com> Signed-off-by: Baokun Li <libaokun1@huawei.com> Signed-off-by: David S. Miller <davem@davemloft.net>
show more ...
|
Revision tags: v5.10.42 |
|
#
fa6a262a |
| 30-May-2021 |
Jian Shen <shenjian15@huawei.com> |
net: hns3: add support for VF modify VLAN filter state
Previously, there is hardware limitation for VF to modify the VLAN filter state, and the VLAN filter state is default enabled. Now the limitati
net: hns3: add support for VF modify VLAN filter state
Previously, there is hardware limitation for VF to modify the VLAN filter state, and the VLAN filter state is default enabled. Now the limitation has been removed in some device, so add capability flag to check whether the device supports modify VLAN filter state. If flag on, user will be able to modify the VLAN filter state by ethtool -K. VF needs to send mailbox to request the PF to modify the VLAN filter state for it.
Signed-off-by: Jian Shen <shenjian15@huawei.com> Signed-off-by: Huazhong Tan <tanhuazhong@huawei.com> Signed-off-by: Jakub Kicinski <kuba@kernel.org>
show more ...
|
#
32e6d104 |
| 30-May-2021 |
Jian Shen <shenjian15@huawei.com> |
net: hns3: add query basic info support for VF
There are some features of VF depend on PF, so it's necessary for VF to know whether PF supports. For compatibility, modify the mailbox HCLGE_MBX_GET_T
net: hns3: add query basic info support for VF
There are some features of VF depend on PF, so it's necessary for VF to know whether PF supports. For compatibility, modify the mailbox HCLGE_MBX_GET_TCINFO, extend its function, use to get the basic information of PF, including mailbox api version and PF capabilities.
Signed-off-by: Jian Shen <shenjian15@huawei.com> Signed-off-by: Huazhong Tan <tanhuazhong@huawei.com> Signed-off-by: Jakub Kicinski <kuba@kernel.org>
show more ...
|
Revision tags: v5.10.41, v5.10.40, v5.10.39, v5.4.119 |
|
#
79664077 |
| 13-May-2021 |
Huazhong Tan <tanhuazhong@huawei.com> |
net: hns3: support RXD advanced layout
Currently, the driver gets packet type by parsing the L3_ID/L4_ID/OL3_ID/OL4_ID from RX descriptor, it's time-consuming.
Now some new devices support RXD adva
net: hns3: support RXD advanced layout
Currently, the driver gets packet type by parsing the L3_ID/L4_ID/OL3_ID/OL4_ID from RX descriptor, it's time-consuming.
Now some new devices support RXD advanced layout, which combines previous OL3_ID/OL4_ID to 8bit ptype field, so the driver gets packet type by looking up only one table, and L3_ID/L4_ID become reserved fields.
Considering compatibility, the firmware will report capability of RXD advanced layout, the driver will identify and enable it by default. This patch provides basic function: identify and enable the RXD advanced layout, and refactor out hns3_rx_checksum() by using ptype table to handle RX checksum if supported.
Signed-off-by: Huazhong Tan <tanhuazhong@huawei.com> Signed-off-by: David S. Miller <davem@davemloft.net>
show more ...
|
Revision tags: v5.10.36, v5.10.35, v5.10.34, v5.4.116, v5.10.33, v5.12, v5.10.32 |
|
#
e407efdd |
| 17-Apr-2021 |
Huazhong Tan <tanhuazhong@huawei.com> |
net: hns3: change the value of the SEPARATOR_VALUE macro in hclgevf_main.c
The SEPARATOR_VALUE macro is used as separator when getting the register value, but the value of this macro is different be
net: hns3: change the value of the SEPARATOR_VALUE macro in hclgevf_main.c
The SEPARATOR_VALUE macro is used as separator when getting the register value, but the value of this macro is different between pf and vf, it is a bit confusing for the user, so synchronize the value of vf with pf.
Signed-off-by: Huazhong Tan <tanhuazhong@huawei.com> Signed-off-by: David S. Miller <davem@davemloft.net>
show more ...
|
Revision tags: v5.10.31 |
|
#
01305e16 |
| 14-Apr-2021 |
Guangbin Huang <huangguangbin2@huawei.com> |
net: hns3: VF not request link status when PF support push link status feature
To reduce the processing of unnecessary mailbox command when PF supports actively push its link status to VFs, VFs stop
net: hns3: VF not request link status when PF support push link status feature
To reduce the processing of unnecessary mailbox command when PF supports actively push its link status to VFs, VFs stop sending request link status command in periodic service task in this case.
Signed-off-by: Guangbin Huang <huangguangbin2@huawei.com> Signed-off-by: Huazhong Tan <tanhuazhong@huawei.com> Signed-off-by: David S. Miller <davem@davemloft.net>
show more ...
|
Revision tags: v5.10.30 |
|
#
cd7e963d |
| 09-Apr-2021 |
Salil Mehta <salil.mehta@huawei.com> |
net: hns3: Trivial spell fix in hns3 driver
Some trivial spelling mistakes which caught my eye during the review of the code.
Signed-off-by: Salil Mehta <salil.mehta@huawei.com> Link: https://lore.
net: hns3: Trivial spell fix in hns3 driver
Some trivial spelling mistakes which caught my eye during the review of the code.
Signed-off-by: Salil Mehta <salil.mehta@huawei.com> Link: https://lore.kernel.org/r/20210409074223.32480-1-salil.mehta@huawei.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
show more ...
|
#
bb1890d5 |
| 07-Apr-2021 |
Jiaran Zhang <zhangjiaran@huawei.com> |
net: hns3: change flr_prepare/flr_done function names
The flr_prepare/flr_done functions are not only used in the FLR scenario, but also used in the suspend/resume.
Change the function names to pre
net: hns3: change flr_prepare/flr_done function names
The flr_prepare/flr_done functions are not only used in the FLR scenario, but also used in the suspend/resume.
Change the function names to prepare_for_reset/rebuild_for_reset, change the flr_prepare/flr_done to reset_prepare/reset_done in hnae3_ae_ops.
Signed-off-by: Jiaran Zhang <zhangjiaran@huawei.com> Signed-off-by: Huazhong Tan <tanhuazhong@huawei.com> Signed-off-by: David S. Miller <davem@davemloft.net>
show more ...
|
#
ed7bedd2 |
| 06-Apr-2021 |
Guangbin Huang <huangguangbin2@huawei.com> |
net: hns3: clear VF down state bit before request link status
Currently, the VF down state bit is cleared after VF sending link status request command. There is problem that when VF gets link status
net: hns3: clear VF down state bit before request link status
Currently, the VF down state bit is cleared after VF sending link status request command. There is problem that when VF gets link status replied from PF, the down state bit may still set as 1. In this case, the link status replied from PF will be ignored and always set VF link status to down.
To fix this problem, clear VF down state bit before VF requests link status.
Fixes: e2cb1dec9779 ("net: hns3: Add HNS3 VF HCL(Hardware Compatibility Layer) Support") Signed-off-by: Guangbin Huang <huangguangbin2@huawei.com> Signed-off-by: Huazhong Tan <tanhuazhong@huawei.com> Signed-off-by: David S. Miller <davem@davemloft.net>
show more ...
|
Revision tags: v5.10.27 |
|
#
33a8f764 |
| 28-Mar-2021 |
Guojia Liao <liaoguojia@huawei.com> |
net: hns3: expand the tc config command
The device HNAE3_DEVICE_VERSION_V3 supports up to 1280 queues and qsets for one function, so the bitwidth of tc_offset, meaning the tqps index, needs to expan
net: hns3: expand the tc config command
The device HNAE3_DEVICE_VERSION_V3 supports up to 1280 queues and qsets for one function, so the bitwidth of tc_offset, meaning the tqps index, needs to expand from 10 bits to 11 bits.
The device HNAE3_DEVICE_VERSION_V3 supports up to 512 queues on one TC. The tc_size, meaning the exponent with base 2 of queues supported on TC, which needs to expand from 3 bits to 4 bits.
Signed-off-by: Guojia Liao <liaoguojia@huawei.com> Signed-off-by: Huazhong Tan <tanhuazhong@huawei.com> Signed-off-by: David S. Miller <davem@davemloft.net>
show more ...
|
#
8fa86551 |
| 28-Mar-2021 |
Yufeng Mo <moyufeng@huawei.com> |
net: hns3: optimize the process of queue reset
Currently, the queue reset process needs to be performed one by one, which is inefficient. However, the queue reset of the same function is always perf
net: hns3: optimize the process of queue reset
Currently, the queue reset process needs to be performed one by one, which is inefficient. However, the queue reset of the same function is always performed at the same time. Therefore, according to the UM, command HCLGE_OPC_CFG_RST_TRIGGER can be used to reset all queues of the same function at a time, in order to optimize the queue reset process.
Signed-off-by: Yufeng Mo <moyufeng@huawei.com> Signed-off-by: Huazhong Tan <tanhuazhong@huawei.com> Signed-off-by: David S. Miller <davem@davemloft.net>
show more ...
|
#
c0127115 |
| 25-Mar-2021 |
Peng Li <lipeng321@huawei.com> |
net: hns3: remove redundant blank lines
Remove some redundant blank lines.
Signed-off-by: Peng Li <lipeng321@huawei.com> Signed-off-by: Huazhong Tan <tanhuazhong@huawei.com> Signed-off-by: David S.
net: hns3: remove redundant blank lines
Remove some redundant blank lines.
Signed-off-by: Peng Li <lipeng321@huawei.com> Signed-off-by: Huazhong Tan <tanhuazhong@huawei.com> Signed-off-by: David S. Miller <davem@davemloft.net>
show more ...
|
Revision tags: v5.10.26, v5.10.25, v5.10.24, v5.10.23, v5.10.22, v5.10.21, v5.10.20, v5.10.19, v5.4.101, v5.10.18, v5.10.17, v5.11, v5.10.16 |
|
#
5fd0e7b4 |
| 11-Feb-2021 |
Huazhong Tan <tanhuazhong@huawei.com> |
net: hns3: refactor out hclgevf_set_rss_tuple()
To make it more readable and maintainable, split hclgevf_set_rss_tuple() into two parts.
Signed-off-by: Huazhong Tan <tanhuazhong@huawei.com> Signed-
net: hns3: refactor out hclgevf_set_rss_tuple()
To make it more readable and maintainable, split hclgevf_set_rss_tuple() into two parts.
Signed-off-by: Huazhong Tan <tanhuazhong@huawei.com> Signed-off-by: David S. Miller <davem@davemloft.net>
show more ...
|
#
73f7767e |
| 11-Feb-2021 |
Jian Shen <shenjian15@huawei.com> |
net: hns3: refactor out hclgevf_get_rss_tuple()
To improve code readability and maintainability, separate the flow type parsing part and the converting part from bloated hclgevf_get_rss_tuple().
Si
net: hns3: refactor out hclgevf_get_rss_tuple()
To improve code readability and maintainability, separate the flow type parsing part and the converting part from bloated hclgevf_get_rss_tuple().
Signed-off-by: Jian Shen <shenjian15@huawei.com> Signed-off-by: Huazhong Tan <tanhuazhong@huawei.com> Signed-off-by: David S. Miller <davem@davemloft.net>
show more ...
|
Revision tags: v5.10.15 |
|
#
55ff3ed5 |
| 08-Feb-2021 |
Jian Shen <shenjian15@huawei.com> |
net: hns3: cleanup for endian issue for VF RSS
Currently the RSS commands of VF are using host byte order. According to the user manual, it should use little endian in the command to firmware. For t
net: hns3: cleanup for endian issue for VF RSS
Currently the RSS commands of VF are using host byte order. According to the user manual, it should use little endian in the command to firmware. For the host and firmware are both using little endian, so it can work well in this case.
Do cleanup to make it more explicitly.
Signed-off-by: Jian Shen <shenjian15@huawei.com> Signed-off-by: Huazhong tan <tanhuazhong@huawei.com> Signed-off-by: David S. Miller <davem@davemloft.net>
show more ...
|
#
c5aaf176 |
| 08-Feb-2021 |
Jiaran Zhang <zhangjiaran@huawei.com> |
net: hns3: modify some unmacthed types print parameter
Fix an issue where the formatting symbol of the formatting input and output function does not match the actual type.
Signed-off-by: Jiaran Zha
net: hns3: modify some unmacthed types print parameter
Fix an issue where the formatting symbol of the formatting input and output function does not match the actual type.
Signed-off-by: Jiaran Zhang <zhangjiaran@huawei.com> Signed-off-by: Huazhong Tan <tanhuazhong@huawei.com> Signed-off-by: David S. Miller <davem@davemloft.net>
show more ...
|
Revision tags: v5.10.14 |
|
#
e070c8b9 |
| 05-Feb-2021 |
Yufeng Mo <moyufeng@huawei.com> |
net: hns3: add support for obtaining the maximum frame size
Since the newer hardware may supports different frame size, so add support to obtain the capability from the firmware instead of the fixed
net: hns3: add support for obtaining the maximum frame size
Since the newer hardware may supports different frame size, so add support to obtain the capability from the firmware instead of the fixed value.
Signed-off-by: Yufeng Mo <moyufeng@huawei.com> Signed-off-by: Huazhong Tan <tanhuazhong@huawei.com> Signed-off-by: Jakub Kicinski <kuba@kernel.org>
show more ...
|
#
87ce161e |
| 05-Feb-2021 |
Guangbin Huang <huangguangbin2@huawei.com> |
net: hns3: RSS indirection table use device specification
As RSS indirection table size may be different in different hardware. Instead of using macro, this value is better to use device specificati
net: hns3: RSS indirection table use device specification
As RSS indirection table size may be different in different hardware. Instead of using macro, this value is better to use device specification which querying from firmware.
BTW, RSS indirection table should be allocated by the queried size instead the static array.
.get_rss_indir_size in struct hnae3_ae_ops is not used now, so remove it as well.
Signed-off-by: Guangbin Huang <huangguangbin2@huawei.com> Signed-off-by: Huazhong Tan <tanhuazhong@huawei.com> Signed-off-by: Jakub Kicinski <kuba@kernel.org>
show more ...
|