mlxsw: core: Expose MFDE.log_ip to devlink health
authorDanielle Ratson <danieller@nvidia.com>
Wed, 10 Mar 2021 11:02:19 +0000 (13:02 +0200)
committerDavid S. Miller <davem@davemloft.net>
Wed, 10 Mar 2021 21:04:57 +0000 (13:04 -0800)
Add the MFDE.log_ip field to devlink health reporter in order to ease
firmware debug. This field encodes the instruction pointer that triggered
the CR space timeout.

Signed-off-by: Danielle Ratson <danieller@nvidia.com>
Reviewed-by: Jiri Pirko <jiri@nvidia.com>
Signed-off-by: Ido Schimmel <idosch@nvidia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/mellanox/mlxsw/core.c

index 52fdc34..c53461a 100644 (file)
@@ -1806,6 +1806,10 @@ static int mlxsw_core_health_fw_fatal_dump(struct devlink_health_reporter *repor
                err = devlink_fmsg_u8_pair_put(fmsg, "log_irisc_id", val);
                if (err)
                        return err;
+               val = mlxsw_reg_mfde_log_ip_get(mfde_pl);
+               err = devlink_fmsg_u64_pair_put(fmsg, "log_ip", val);
+               if (err)
+                       return err;
        } else if (event_id == MLXSW_REG_MFDE_EVENT_ID_KVD_IM_STOP) {
                val = mlxsw_reg_mfde_pipes_mask_get(mfde_pl);
                err = devlink_fmsg_u32_pair_put(fmsg, "pipes_mask", val);