diff options
author | Michael Chan <michael.chan@broadcom.com> | 2020-07-27 05:40:44 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2020-07-27 11:47:33 -0700 |
commit | a0c30621c28c6d8e9c572cd6139881f15c806792 (patch) | |
tree | 523373c3e16d517995127c79c0dc962d1fc6d0e7 /drivers/net/ethernet/broadcom/bnxt/bnxt.h | |
parent | fea6b3335527f41bc729466fb2a95e48a98827ac (diff) | |
download | lwn-a0c30621c28c6d8e9c572cd6139881f15c806792.tar.gz lwn-a0c30621c28c6d8e9c572cd6139881f15c806792.zip |
bnxt_en: Switch over to use the 64-bit software accumulated counters.
Now we can report all the full 64-bit CPU endian software accumulated
counters instead of the hw counters, some of which may be less than
64-bit wide. Define the necessary macros to access the software
counters.
Reviewed-by: Vasundhara Volam <vasundhara-v.volam@broadcom.com>
Signed-off-by: Michael Chan <michael.chan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/broadcom/bnxt/bnxt.h')
-rw-r--r-- | drivers/net/ethernet/broadcom/bnxt/bnxt.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.h b/drivers/net/ethernet/broadcom/bnxt/bnxt.h index 44c7812c525c..0c9b79b765ae 100644 --- a/drivers/net/ethernet/broadcom/bnxt/bnxt.h +++ b/drivers/net/ethernet/broadcom/bnxt/bnxt.h @@ -1928,6 +1928,15 @@ struct bnxt { struct device *hwmon_dev; }; +#define BNXT_GET_RING_STATS64(sw, counter) \ + (*((sw) + offsetof(struct ctx_hw_stats, counter) / 8)) + +#define BNXT_GET_RX_PORT_STATS64(sw, counter) \ + (*((sw) + offsetof(struct rx_port_stats, counter) / 8)) + +#define BNXT_GET_TX_PORT_STATS64(sw, counter) \ + (*((sw) + offsetof(struct tx_port_stats, counter) / 8)) + #define BNXT_PORT_STATS_SIZE \ (sizeof(struct rx_port_stats) + sizeof(struct tx_port_stats) + 1024) |