mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-19 12:28:39 +07:00
qed: collect GSI port statistics
The LL2 statistics already have place holders for these, but haven't populated them so far. Signed-off-by: Yuval Mintz <Yuval.Mintz@cavium.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
54f19f07ac
commit
fef1c3f7ac
@ -1902,6 +1902,27 @@ void qed_ll2_free(struct qed_hwfn *p_hwfn)
|
||||
p_hwfn->p_ll2_info = NULL;
|
||||
}
|
||||
|
||||
static void _qed_ll2_get_port_stats(struct qed_hwfn *p_hwfn,
|
||||
struct qed_ptt *p_ptt,
|
||||
struct qed_ll2_stats *p_stats)
|
||||
{
|
||||
struct core_ll2_port_stats port_stats;
|
||||
|
||||
memset(&port_stats, 0, sizeof(port_stats));
|
||||
qed_memcpy_from(p_hwfn, p_ptt, &port_stats,
|
||||
BAR0_MAP_REG_TSDM_RAM +
|
||||
TSTORM_LL2_PORT_STAT_OFFSET(MFW_PORT(p_hwfn)),
|
||||
sizeof(port_stats));
|
||||
|
||||
p_stats->gsi_invalid_hdr = HILO_64_REGPAIR(port_stats.gsi_invalid_hdr);
|
||||
p_stats->gsi_invalid_pkt_length =
|
||||
HILO_64_REGPAIR(port_stats.gsi_invalid_pkt_length);
|
||||
p_stats->gsi_unsupported_pkt_typ =
|
||||
HILO_64_REGPAIR(port_stats.gsi_unsupported_pkt_typ);
|
||||
p_stats->gsi_crcchksm_error =
|
||||
HILO_64_REGPAIR(port_stats.gsi_crcchksm_error);
|
||||
}
|
||||
|
||||
static void _qed_ll2_get_tstats(struct qed_hwfn *p_hwfn,
|
||||
struct qed_ptt *p_ptt,
|
||||
struct qed_ll2_info *p_ll2_conn,
|
||||
@ -1986,6 +2007,8 @@ int qed_ll2_get_stats(void *cxt,
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (p_ll2_conn->input.gsi_enable)
|
||||
_qed_ll2_get_port_stats(p_hwfn, p_ptt, p_stats);
|
||||
_qed_ll2_get_tstats(p_hwfn, p_ptt, p_ll2_conn, p_stats);
|
||||
_qed_ll2_get_ustats(p_hwfn, p_ptt, p_ll2_conn, p_stats);
|
||||
if (p_ll2_conn->tx_stats_en)
|
||||
|
Loading…
Reference in New Issue
Block a user