linux/drivers/net/dsa/qca
Christian Marangi a4165830ca net: dsa: qca8k: improve mdio master read/write by using single lo/hi
Improve mdio master read/write by using singe mii read/write lo/hi.

In a read and write we need to poll the mdio master regs in a busy loop
to check for a specific bit present in the upper half of the reg. We can
ignore the other half since it won't contain useful data. This will save
an additional useless read for each read and write operation.

In a read operation the returned data is present in the mdio master reg
lower half. We can ignore the other half since it won't contain useful
data. This will save an additional useless read for each read operation.

In a read operation it's needed to just set the hi half of the mdio
master reg as the lo half will be replaced by the result. This will save
an additional useless write for each read operation.

Tested-by: Ronald Wahl <ronald.wahl@raritan.com>
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2023-01-01 09:27:12 +00:00
..
ar9331.c net: dsa: ar9331: remove unnecessary dev_set_drvdata() 2022-09-22 19:30:38 -07:00
Kconfig net: dsa: qca8k: move driver to qca dir 2022-07-15 11:57:13 +01:00
Makefile net: dsa: qca8k: move mib struct to common code 2022-07-28 22:24:38 -07:00
qca8k-8xxx.c net: dsa: qca8k: improve mdio master read/write by using single lo/hi 2023-01-01 09:27:12 +00:00
qca8k-common.c net: dsa: propagate extack to port_lag_join 2022-09-20 10:32:36 +02:00
qca8k.h Revert "net: dsa: qca8k: cache lo and hi for mdio write" 2023-01-01 09:27:12 +00:00