RDMA/bnxt_re: Recover the device when FW error is detected
authorSelvin Xavier <selvin.xavier@broadcom.com>
Wed, 11 Sep 2024 04:08:30 +0000 (21:08 -0700)
committerLeon Romanovsky <leon@kernel.org>
Fri, 13 Sep 2024 05:29:34 +0000 (08:29 +0300)
commitcc5b9b48d44756a87170f3901c6c2fd99e6b89b2
tree06be2f545e30d8fe8f7163584cd5d82c42cbd049
parent94a9dc6ac8f7e6801c88d05c42ed9ceaa4b5f609
RDMA/bnxt_re: Recover the device when FW error is detected

If the FW crashes, L2 driver gets notified and it notifies
the RoCE driver. Currently driver doesn't re-initialize the
device. Add support for re-initialize the RoCE device.

RoCE device is removed and re-attached in the ulp_stop and
ulp_start respectively. The recovery logic expects the RoCE
driver to be registered with L2 driver while its being removed.
So the driver avoids unregistering with L2 driver in the
recovery path.

Signed-off-by: Chandramohan Akula <chandramohan.akula@broadcom.com>
Signed-off-by: Kalesh AP <kalesh-anakkur.purayil@broadcom.com>
Signed-off-by: Selvin Xavier <selvin.xavier@broadcom.com>
Link: https://patch.msgid.link/1726027710-2292-5-git-send-email-selvin.xavier@broadcom.com
Signed-off-by: Leon Romanovsky <leon@kernel.org>
drivers/infiniband/hw/bnxt_re/bnxt_re.h
drivers/infiniband/hw/bnxt_re/main.c
drivers/infiniband/hw/bnxt_re/qplib_res.h