mirror of
git://nv-tegra.nvidia.com/linux-nv-oot.git
synced 2025-12-25 02:32:08 +03:00
nvethernet: Add MACSec counters to ethtool stats
Bug 4915922 Change-Id: I21920fe788d8a3789faeaa13a82d6961ee1371a4 Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/3233767 Reviewed-by: Bhadram Varka <vbhadram@nvidia.com> GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com> Tested-by: Sanath Kumar Gampa <sgampa@nvidia.com> Reviewed-by: Sanath Kumar Gampa <sgampa@nvidia.com> Reviewed-by: Srinivas Ramachandran <srinivasra@nvidia.com>
This commit is contained in:
committed by
Jon Hunter
parent
a47c3ef56d
commit
6ca5a03728
@@ -327,6 +327,16 @@ static const struct ether_stats ether_gstrings_stats[] = {
|
||||
{ #c, sizeof_field(struct osi_mmc_counters, c), \
|
||||
offsetof(struct osi_core_priv_data, mmc.c)}
|
||||
|
||||
#ifdef MACSEC_SUPPORT
|
||||
#define MACSEC_MMC_STAT(c) \
|
||||
{ #c, sizeof_field(struct osi_macsec_mmc_counters, c), \
|
||||
offsetof(struct osi_core_priv_data, macsec_mmc.c)}
|
||||
|
||||
#define MACSEC_IRQ_STAT(c) \
|
||||
{ #c, sizeof_field(struct osi_macsec_irq_stats, c), \
|
||||
offsetof(struct osi_core_priv_data, macsec_irq_stats.c)}
|
||||
#endif /* MACSEC_SUPPORT */
|
||||
|
||||
/**
|
||||
* @brief MMC statistics
|
||||
*/
|
||||
@@ -504,6 +514,426 @@ static const struct ether_stats ether_mmc[] = {
|
||||
ETHER_MMC_STAT(mmc_rx_packet_smd_err_cnt),
|
||||
ETHER_MMC_STAT(mmc_rx_packet_asm_ok_cnt),
|
||||
ETHER_MMC_STAT(mmc_rx_fpe_fragment_cnt),
|
||||
#ifdef MACSEC_SUPPORT
|
||||
/* MACSEC MMC */
|
||||
MACSEC_MMC_STAT(tx_octets_protected),
|
||||
MACSEC_MMC_STAT(tx_octets_encrypted),
|
||||
MACSEC_MMC_STAT(rx_octets_validated),
|
||||
MACSEC_MMC_STAT(rx_octets_decrypted),
|
||||
MACSEC_MMC_STAT(rx_pkts_no_tag),
|
||||
MACSEC_MMC_STAT(rx_pkts_untagged),
|
||||
MACSEC_MMC_STAT(rx_pkts_bad_tag),
|
||||
MACSEC_MMC_STAT(rx_pkts_no_sa_err),
|
||||
MACSEC_MMC_STAT(rx_pkts_no_sa),
|
||||
MACSEC_MMC_STAT(rx_pkts_overrun),
|
||||
MACSEC_MMC_STAT(tx_pkts_untaged),
|
||||
MACSEC_MMC_STAT(tx_pkts_too_long),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[0]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[1]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[2]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[3]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[4]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[5]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[6]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[7]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[8]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[9]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[10]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[11]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[12]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[13]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[14]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[15]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[16]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[17]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[18]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[19]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[20]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[21]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[22]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[23]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[24]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[25]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[26]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[27]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[28]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[29]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[30]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[31]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[32]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[33]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[34]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[35]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[36]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[37]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[38]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[39]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[40]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[41]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[42]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[43]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[44]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[45]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[46]),
|
||||
MACSEC_MMC_STAT(rx_pkts_late[47]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[0]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[1]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[2]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[3]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[4]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[5]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[6]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[7]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[8]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[9]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[10]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[11]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[12]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[13]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[14]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[15]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[16]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[17]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[18]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[19]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[20]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[21]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[22]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[23]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[24]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[25]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[26]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[27]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[28]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[29]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[30]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[31]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[32]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[33]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[34]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[35]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[36]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[37]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[38]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[39]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[40]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[41]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[42]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[43]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[44]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[45]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[46]),
|
||||
MACSEC_MMC_STAT(rx_pkts_not_valid[47]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[0]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[1]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[2]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[3]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[4]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[5]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[6]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[7]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[8]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[9]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[10]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[11]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[12]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[13]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[14]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[15]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[16]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[17]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[18]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[19]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[20]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[21]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[22]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[23]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[24]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[25]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[26]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[27]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[28]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[29]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[30]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[31]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[32]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[33]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[34]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[35]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[36]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[37]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[38]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[39]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[40]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[41]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[42]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[43]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[44]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[45]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[46]),
|
||||
MACSEC_MMC_STAT(in_pkts_invalid[47]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[0]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[1]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[2]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[3]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[4]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[5]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[6]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[7]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[8]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[9]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[10]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[11]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[12]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[13]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[14]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[15]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[16]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[17]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[18]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[19]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[20]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[21]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[22]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[23]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[24]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[25]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[26]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[27]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[28]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[29]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[30]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[31]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[32]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[33]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[34]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[35]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[36]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[37]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[38]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[39]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[40]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[41]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[42]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[43]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[44]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[45]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[46]),
|
||||
MACSEC_MMC_STAT(rx_pkts_delayed[47]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[0]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[1]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[2]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[3]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[4]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[5]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[6]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[7]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[8]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[9]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[10]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[11]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[12]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[13]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[14]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[15]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[16]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[17]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[18]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[19]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[20]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[21]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[22]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[23]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[24]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[25]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[26]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[27]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[28]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[29]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[30]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[31]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[32]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[33]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[34]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[35]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[36]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[37]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[38]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[39]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[40]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[41]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[42]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[43]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[44]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[45]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[46]),
|
||||
MACSEC_MMC_STAT(rx_pkts_unchecked[47]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[0]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[1]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[2]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[3]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[4]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[5]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[6]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[7]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[8]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[9]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[10]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[11]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[12]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[13]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[14]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[15]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[16]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[17]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[18]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[19]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[20]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[21]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[22]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[23]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[24]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[25]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[26]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[27]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[28]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[29]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[30]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[31]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[32]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[33]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[34]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[35]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[36]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[37]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[38]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[39]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[40]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[41]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[42]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[43]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[44]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[45]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[46]),
|
||||
MACSEC_MMC_STAT(rx_pkts_ok[47]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[0]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[1]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[2]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[3]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[4]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[5]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[6]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[7]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[8]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[9]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[10]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[11]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[12]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[13]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[14]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[15]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[16]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[17]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[18]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[19]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[20]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[21]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[22]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[23]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[24]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[25]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[26]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[27]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[28]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[29]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[30]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[31]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[32]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[33]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[34]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[35]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[36]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[37]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[38]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[39]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[40]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[41]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[42]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[43]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[44]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[45]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[46]),
|
||||
MACSEC_MMC_STAT(tx_pkts_protected[47]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[0]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[1]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[2]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[3]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[4]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[5]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[6]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[7]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[8]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[9]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[10]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[11]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[12]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[13]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[14]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[15]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[16]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[17]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[18]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[19]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[20]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[21]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[22]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[23]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[24]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[25]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[26]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[27]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[28]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[29]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[30]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[31]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[32]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[33]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[34]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[35]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[36]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[37]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[38]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[39]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[40]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[41]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[42]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[43]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[44]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[45]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[46]),
|
||||
MACSEC_MMC_STAT(tx_pkts_encrypted[47]),
|
||||
/* MACSEC IRQ */
|
||||
MACSEC_IRQ_STAT(tx_mtu_check_fail),
|
||||
MACSEC_IRQ_STAT(tx_mac_crc_error),
|
||||
MACSEC_IRQ_STAT(tx_sc_an_not_valid),
|
||||
MACSEC_IRQ_STAT(tx_aes_gcm_buf_ovf),
|
||||
MACSEC_IRQ_STAT(tx_lkup_miss),
|
||||
MACSEC_IRQ_STAT(tx_uninit_key_slot),
|
||||
MACSEC_IRQ_STAT(tx_pn_threshold),
|
||||
MACSEC_IRQ_STAT(tx_pn_exhausted),
|
||||
MACSEC_IRQ_STAT(rx_icv_err_threshold),
|
||||
MACSEC_IRQ_STAT(rx_replay_error),
|
||||
MACSEC_IRQ_STAT(rx_mtu_check_fail),
|
||||
MACSEC_IRQ_STAT(rx_mac_crc_error),
|
||||
MACSEC_IRQ_STAT(rx_aes_gcm_buf_ovf),
|
||||
MACSEC_IRQ_STAT(rx_lkup_miss),
|
||||
MACSEC_IRQ_STAT(rx_uninit_key_slot),
|
||||
MACSEC_IRQ_STAT(rx_pn_exhausted),
|
||||
MACSEC_IRQ_STAT(secure_reg_viol),
|
||||
MACSEC_IRQ_STAT(rx_dbg_capture_done),
|
||||
MACSEC_IRQ_STAT(tx_dbg_capture_done),
|
||||
#endif /* MACSEC_SUPPORT */
|
||||
|
||||
};
|
||||
|
||||
/**
|
||||
@@ -648,6 +1078,15 @@ static void ether_get_ethtool_stats(struct net_device *dev,
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef MACSEC_SUPPORT
|
||||
ret = osi_macsec_read_mmc(osi_core);
|
||||
if (ret == -1) {
|
||||
dev_err(pdata->dev,
|
||||
"Fail to read macsec stats\n");
|
||||
return;
|
||||
}
|
||||
#endif /* MACSEC_SUPPORT */
|
||||
|
||||
for (i = 0; i < ETHER_MMC_STATS_LEN; i++) {
|
||||
char *p = (char *)osi_core + ether_mmc[i].stat_offset;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user