mbox series

[v3,net-next,0/4] net: dsa: microchip: add MIB counters support

Message ID 1550786597-591-1-git-send-email-Tristram.Ha@microchip.com
Headers show
Series net: dsa: microchip: add MIB counters support | expand


Tristram.Ha@microchip.com Feb. 21, 2019, 10:03 p.m. UTC
From: Tristram Ha <Tristram.Ha@microchip.com>

This series of patches is to modify the KSZ9477 DSA driver to read MIB
counters periodically to avoid overflow.

The MIB counters should be read only when there is link.  Otherwise it is
a waste of time as hardware never increases the counters.

Functions are added to check the port link status so that MIB counters
read call is used efficiently.

- Use netif_carrier_ok instead of checking the phy device pointer

- Create macro similar to readx_poll_timeout to use with switch
- Create ksz_port_cleanup function so that variables like on_ports and
  live_ports can be updated inside it

- Use readx_poll_timeout
- Do not clear MIB counters when port is enabled
- Do not advertise 1000 half-duplex mode when port is enabled
- Do not use freeze function as MIB counters may miss counts

Tristram Ha (4):
  net: dsa: microchip: prepare PHY for proper advertisement
  net: dsa: microchip: add MIB counter reading support
  net: dsa: microchip: get port link status
  net: dsa: microchip: remove unnecessary include headers

 drivers/net/dsa/microchip/ksz9477.c    | 137 +++++++++++++++++----------
 drivers/net/dsa/microchip/ksz_common.c | 163 ++++++++++++++++++++++++++++++++-
 drivers/net/dsa/microchip/ksz_common.h |  27 +++++-
 drivers/net/dsa/microchip/ksz_priv.h   |  14 +--
 4 files changed, 284 insertions(+), 57 deletions(-)