summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEdwin Peer <edwin.peer@broadcom.com>2021-01-25 02:08:13 -0500
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2021-09-22 12:28:06 +0200
commitfad75e046363ebf37c42c04dc8e3f68e0ed4c130 (patch)
tree74056633455ac3357a9bf6d0973b85cab6fc24d4
parentf90a34fabaa5f6c62fb0dcf4990c10ad84678eff (diff)
downloadlinux-stable-fad75e046363ebf37c42c04dc8e3f68e0ed4c130.tar.gz
linux-stable-fad75e046363ebf37c42c04dc8e3f68e0ed4c130.tar.bz2
linux-stable-fad75e046363ebf37c42c04dc8e3f68e0ed4c130.zip
bnxt_en: log firmware debug notifications
[ Upstream commit a44daa8fcbcf572545c4c1a7908b3fbb38388048 ] Firmware is capable of generating asynchronous debug notifications. The event data is opaque to the driver and is simply logged. Debug notifications can be enabled by turning on hardware status messages using the ethtool msglvl interface. Reviewed-by: Pavan Chebbi <pavan.chebbi@broadcom.com> Signed-off-by: Edwin Peer <edwin.peer@broadcom.com> Signed-off-by: Michael Chan <michael.chan@broadcom.com> Acked-by: Willem de Bruijn <willemb@google.com> Signed-off-by: Jakub Kicinski <kuba@kernel.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
-rw-r--r--drivers/net/ethernet/broadcom/bnxt/bnxt.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.c b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
index 1def6caba349..621634d40966 100644
--- a/drivers/net/ethernet/broadcom/bnxt/bnxt.c
+++ b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
@@ -272,6 +272,7 @@ static const u16 bnxt_async_events_arr[] = {
ASYNC_EVENT_CMPL_EVENT_ID_PORT_PHY_CFG_CHANGE,
ASYNC_EVENT_CMPL_EVENT_ID_RESET_NOTIFY,
ASYNC_EVENT_CMPL_EVENT_ID_ERROR_RECOVERY,
+ ASYNC_EVENT_CMPL_EVENT_ID_DEBUG_NOTIFICATION,
ASYNC_EVENT_CMPL_EVENT_ID_RING_MONITOR_MSG,
};
@@ -2132,6 +2133,13 @@ static int bnxt_async_event_process(struct bnxt *bp,
bnxt_fw_health_readl(bp, BNXT_FW_RESET_CNT_REG);
goto async_event_process_exit;
}
+ case ASYNC_EVENT_CMPL_EVENT_ID_DEBUG_NOTIFICATION:
+ if (netif_msg_hw(bp)) {
+ netdev_notice(bp->dev,
+ "Received firmware debug notification, data1: 0x%x, data2: 0x%x\n",
+ data1, data2);
+ }
+ goto async_event_process_exit;
case ASYNC_EVENT_CMPL_EVENT_ID_RING_MONITOR_MSG: {
struct bnxt_rx_ring_info *rxr;
u16 grp_idx;