1. 22 11月, 2020 1 次提交
    • Y
      net: hns3: add support for pf querying new interrupt resources · 3a6863e4
      Yufeng Mo 提交于
      For HNAE3_DEVICE_VERSION_V3, a maximum of 1281 interrupt
      resources are supported. To utilize these new resources,
      extend the corresponding field or variable to 16bit type,
      and remove the restriction of NIC client that only use a
      maximum of 65 interrupt vectors. In addition, the I/O address
      of the extended interrupt resources are different, so an extra
      handler is needed.
      
      Currently, the total number of interrupts is the sum of RoCE's
      number and RoCE's offset (RoCE is in front of NIC), since
      the number of both NIC and RoCE are same. For readability,
      rewrite the corresponding field of the command, rename the
      RoCE's offset field as the number of NIC interrupts, then
      the total number of interrupts is sum of the number of RoCE
      and NIC, and replace vport->back with hdev in
      hclge_init_roce_base_info() for simplifying the code.
      Signed-off-by: NYufeng Mo <moyufeng@huawei.com>
      Signed-off-by: NHuazhong Tan <tanhuazhong@huawei.com>
      Signed-off-by: NJakub Kicinski <kuba@kernel.org>
      3a6863e4
  2. 18 11月, 2020 3 次提交
  3. 30 9月, 2020 3 次提交
  4. 28 9月, 2020 2 次提交
  5. 25 9月, 2020 4 次提交
  6. 18 9月, 2020 6 次提交
  7. 09 9月, 2020 2 次提交
  8. 27 8月, 2020 1 次提交
  9. 26 8月, 2020 1 次提交
  10. 24 8月, 2020 1 次提交
  11. 29 7月, 2020 2 次提交
  12. 22 7月, 2020 3 次提交
  13. 07 7月, 2020 1 次提交
  14. 19 6月, 2020 5 次提交
  15. 31 5月, 2020 1 次提交
  16. 15 5月, 2020 1 次提交
  17. 26 4月, 2020 3 次提交
    • J
      net: hns3: optimize the filter table entries handling when resetting · 039ba863
      Jian Shen 提交于
      Currently, the PF driver removes all (including its VFs') MAC/VLAN
      flow director table entries when resetting, and restores them after
      reset completed.
      
      In fact, the hardware will clear all table entries only in IMP
      reset and global reset. So driver only needs to restore the table
      entries in these cases, and needs do nothing when PF reset, FLR
      or other function level reset.
      
      This patch optimizes it by removing unnecessary table entries clear
      and restoring handling in the reset flow, and doing the restoring
      after reset completed.
      Signed-off-by: NJian Shen <shenjian15@huawei.com>
      Signed-off-by: NHuazhong Tan <tanhuazhong@huawei.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      039ba863
    • J
      net: hns3: refactor the promisc mode setting · c631c696
      Jian Shen 提交于
      As the HNS3 driver doesn't update the MAC address directly in
      function hns3_set_rx_mode() now, it can't know whether the
      MAC table is full from __dev_uc_sync() and __dev_mc_sync(),
      so it's senseless to handle the overflow promisc here.
      
      This patch removes the handle of overflow promisc from function
      hns3_set_rx_mode(), and updates the promisc mode in the service
      task.
      Signed-off-by: NJian Shen <shenjian15@huawei.com>
      Signed-off-by: NHuazhong Tan <tanhuazhong@huawei.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      c631c696
    • J
      net: hns3: refactor the MAC address configure · ee4bcd3b
      Jian Shen 提交于
      Currently, the HNS3 driver sync and unsync MAC address in function
      hns3_set_rx_mode(). For PF, it adds and deletes MAC address directly
      in the path of dev_set_rx_mode(). If failed, it won't retry until
      next calling of hns3_set_rx_mode(). On the other hand, if request
      add and remove a same address many times at a short interval, each
      request must be done one by one, can't be merged. For VF, it sends
      mailbox messages to PF to request adding or deleting MAC address in
      the path of function hns3_set_rx_mode(), no matter the address is
      configured success.
      
      This patch refines it by recording the MAC address in function
      hns3_set_rx_mode(), and updating MAC address in the service task.
      If failed, it will retry by the next calling of periodical service
      task. It also uses some state to mark the state of each MAC address
      in the MAC list, which can help merge configure request for a same
      address. With these changes, when global reset or IMP reset occurs,
      we can restore the MAC table with the MAC list.
      Signed-off-by: NJian Shen <shenjian15@huawei.com>
      Signed-off-by: NHuazhong Tan <tanhuazhong@huawei.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      ee4bcd3b