diff options
author | 2022-09-08 19:48:15 +0300 | |
---|---|---|
committer | 2022-09-09 10:59:12 +0100 | |
commit | b69cf1c675723b1417e018971faf2bcb1620ee7a (patch) | |
tree | 89ec09cfa78e611ba420e6ddfee274f071a2aa8f /drivers/net/dsa/microchip | |
parent | net: mscc: ocelot: harmonize names of SYS_COUNT_TX_AGING and OCELOT_STAT_TX_AGED (diff) | |
download | linux-dev-b69cf1c675723b1417e018971faf2bcb1620ee7a.tar.xz linux-dev-b69cf1c675723b1417e018971faf2bcb1620ee7a.zip |
net: mscc: ocelot: minimize definitions for stats
The current definition of struct ocelot_stat_layout is long-winded (4
lines per entry, and we have hundreds of entries), so we could make an
effort to use the C preprocessor and reduce the line count.
Create an implicit correspondence between enum ocelot_reg, which tells
us the register address (SYS_COUNT_RX_OCTETS etc) and enum ocelot_stat
which allows us to index the ocelot->stats array (OCELOT_STAT_RX_OCTETS
etc), and don't require us to specify both when we define what stats
each switch family has.
Create an OCELOT_STAT() macro that pairs only an enum ocelot_stat to an
enum ocelot_reg, and an OCELOT_STAT_ETHTOOL() macro which also contains
a name exported to the unstructured ethtool -S stringset API. For now,
we define all counters as having the OCELOT_STAT_ETHTOOL() kind, but we
will add more counters in the future which are not exported to the
unstructured ethtool -S.
Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/dsa/microchip')
0 files changed, 0 insertions, 0 deletions