generic: ar8216: group MIB counters and use two basic ones only by default
authorChuanhong Guo <gch981213@gmail.com>
Thu, 11 Apr 2019 13:45:45 +0000 (21:45 +0800)
committerPetr Štetiar <ynezz@true.cz>
Mon, 20 May 2019 19:17:57 +0000 (21:17 +0200)
commit01c0d7f86f68ec355bb87b755d52c3dcf9fe68bd
tree9fa36eddb60ec6cae21bf66bd7da664d3f018e53
parent107dc4326ccfaff27bd1e698b8bc7fb942233559
generic: ar8216: group MIB counters and use two basic ones only by default

There are too many MIB counters that almost nobody needs since commit
d6366ce3665f ("generic: ar8216: mib_work_func: read all port mibs
everytime").

In the worker function to poll MIB data, it deals with all ports instead
of only one port every time, which introduces too many mdio operations
that it becomes a heavy CPU load even on not-emulated MDIO bus.

This commit groups MIB counters and enable only TxBytes and RxGoodBytes
by default (both of which are necessary to get swconfig led working.)
and adds an swconfig attribute to allow enabling all counters if users
need them.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
target/linux/generic/files/drivers/net/phy/ar8216.c
target/linux/generic/files/drivers/net/phy/ar8216.h
target/linux/generic/files/drivers/net/phy/ar8327.c