[PATCH net-next 0/9] Add support of VF Reset to HNS3 VF driver
From: Salil Mehta
Date: Thu Mar 22 2018 - 10:30:13 EST
This patch-set adds the support of VF reset to the existing VF driver.
VF Reset can be triggered due to TX watchdog firing as a result of TX
data-path not working. VF reset could also be a result of some internal
configuration changes if that requires reset, or as a result of the
PF/Core/Global/IMP(Integrated Management Processor) reset happened in
the PF.
Summary of Patches:
* Watchdog timer trigger chnages are present in Patch 1.
* Reset Service Task and related Event handling is present in Patches {2,3}
* Changes to send reset request to PF, reset stack and re-initialization
of the hclge device is present in Patches {4,5,6}
* Changes related to ARQ (Asynchronous Receive Queue) and its event handling
are present in Patches {7,8}
* Changes required in PF to handle the VF Reset request and actually perform
hardware VF reset is there in Patch 9.
NOTE: This patch depends upon "[PATCH net-next 00/11] fix some bugs for HNS3 driver"
Link: https://lkml.org/lkml/2018/3/21/72
Salil Mehta (9):
net: hns3: Changes to make enet watchdog timeout func common for PF/VF
net: hns3: Add VF Reset Service Task to support event handling
net: hns3: Add VF Reset device state and its handling
net: hns3: Add support to request VF Reset to PF
net: hns3: Add support to reset the enet/ring mgmt layer
net: hns3: Add support to re-initialize the hclge device
net: hns3: Changes to support ARQ(Asynchronous Receive Queue)
net: hns3: Add *Asserting Reset* mailbox message & handling in VF
net: hns3: Changes required in PF mailbox to support VF reset
drivers/net/ethernet/hisilicon/hns3/hclge_mbx.h | 16 +
drivers/net/ethernet/hisilicon/hns3/hnae3.h | 8 +-
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c | 30 +-
drivers/net/ethernet/hisilicon/hns3/hns3_enet.h | 2 -
.../ethernet/hisilicon/hns3/hns3pf/hclge_main.c | 38 +--
.../ethernet/hisilicon/hns3/hns3pf/hclge_main.h | 1 +
.../net/ethernet/hisilicon/hns3/hns3pf/hclge_mbx.c | 42 +++
.../ethernet/hisilicon/hns3/hns3vf/hclgevf_cmd.c | 6 +
.../ethernet/hisilicon/hns3/hns3vf/hclgevf_main.c | 336 +++++++++++++++++++--
.../ethernet/hisilicon/hns3/hns3vf/hclgevf_main.h | 31 ++
.../ethernet/hisilicon/hns3/hns3vf/hclgevf_mbx.c | 95 +++++-
11 files changed, 534 insertions(+), 71 deletions(-)
--
2.7.4