LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
* [PATCH net-next 00/11] net: stmmac: Selftests
@ 2019-05-08  7:51 Jose Abreu
  2019-05-08  7:51 ` [PATCH net-next 01/11] net: stmmac: Add MAC loopback callback to HWIF Jose Abreu
                   ` (13 more replies)
  0 siblings, 14 replies; 25+ messages in thread
From: Jose Abreu @ 2019-05-08  7:51 UTC (permalink / raw)
  To: netdev, linux-kernel
  Cc: Jose Abreu, Joao Pinto, David S . Miller, Giuseppe Cavallaro,
	Alexandre Torgue

[ Submitting with net-next closed for proper review and testing. ]

This introduces selftests support in stmmac driver. We add 4 basic sanity
checks and MAC loopback support for all cores within the driver. This way
more tests can easily be added in the future and can be run in virtually
any MAC/GMAC/QoS/XGMAC platform.

Having this we can find regressions and missing features in the driver
while at the same time we can check if the IP is correctly working.

We have been using this for some time now and I do have more tests to
submit in the feature. My experience is that although writing the tests
adds more development time, the gain results are obvious.

I let this feature optional within the driver under a Kconfig option.

For this series the output result will be something like this
(e.g. for dwmac1000):
----
# ethtool -t eth0
The test result is PASS
The test extra info:
1. MAC Loopback                 0
2. PHY Loopback                 -95
3. MMC Counters                 0
4. EEE                          -95
5. Hash Filter MC               0
6. Perfect Filter UC            0
7. Flow Control                 0
----

(Error code -95 means EOPNOTSUPP in current HW).

Cc: Joao Pinto <jpinto@synopsys.com>
Cc: David S. Miller <davem@davemloft.net>
Cc: Giuseppe Cavallaro <peppe.cavallaro@st.com>
Cc: Alexandre Torgue <alexandre.torgue@st.com>

Jose Abreu (11):
  net: stmmac: Add MAC loopback callback to HWIF
  net: stmmac: dwmac100: Add MAC loopback support
  net: stmmac: dwmac1000: Add MAC loopback support
  net: stmmac: dwmac4/5: Add MAC loopback support
  net: stmmac: dwxgmac2: Add MAC loopback support
  net: stmmac: Switch MMC functions to HWIF callbacks
  net: stmmac: dwmac1000: Also pass control frames while in promisc mode
  net: stmmac: dwmac4/5: Also pass control frames while in promisc mode
  net: stmmac: dwxgmac2: Also pass control frames while in promisc mode
  net: stmmac: Introduce selftests support
  net: stmmac: dwmac1000: Fix Hash Filter

 drivers/net/ethernet/stmicro/stmmac/Kconfig        |   9 +
 drivers/net/ethernet/stmicro/stmmac/Makefile       |   2 +
 drivers/net/ethernet/stmicro/stmmac/common.h       |   1 +
 drivers/net/ethernet/stmicro/stmmac/dwmac1000.h    |   1 +
 .../net/ethernet/stmicro/stmmac/dwmac1000_core.c   |  16 +-
 .../net/ethernet/stmicro/stmmac/dwmac100_core.c    |  13 +
 drivers/net/ethernet/stmicro/stmmac/dwmac4.h       |   2 +
 drivers/net/ethernet/stmicro/stmmac/dwmac4_core.c  |  17 +-
 drivers/net/ethernet/stmicro/stmmac/dwxgmac2.h     |   2 +
 .../net/ethernet/stmicro/stmmac/dwxgmac2_core.c    |  15 +-
 drivers/net/ethernet/stmicro/stmmac/hwif.c         |   9 +
 drivers/net/ethernet/stmicro/stmmac/hwif.h         |  21 +
 drivers/net/ethernet/stmicro/stmmac/mmc.h          |   4 -
 drivers/net/ethernet/stmicro/stmmac/mmc_core.c     |  13 +-
 drivers/net/ethernet/stmicro/stmmac/stmmac.h       |  22 +
 .../net/ethernet/stmicro/stmmac/stmmac_ethtool.c   |   8 +-
 drivers/net/ethernet/stmicro/stmmac/stmmac_main.c  |   4 +-
 .../net/ethernet/stmicro/stmmac/stmmac_selftests.c | 743 +++++++++++++++++++++
 18 files changed, 889 insertions(+), 13 deletions(-)
 create mode 100644 drivers/net/ethernet/stmicro/stmmac/stmmac_selftests.c

-- 
2.7.4


^ permalink raw reply	[flat|nested] 25+ messages in thread

end of thread, other threads:[~2019-05-09 18:00 UTC | newest]

Thread overview: 25+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-05-08  7:51 [PATCH net-next 00/11] net: stmmac: Selftests Jose Abreu
2019-05-08  7:51 ` [PATCH net-next 01/11] net: stmmac: Add MAC loopback callback to HWIF Jose Abreu
2019-05-08  7:51 ` [PATCH net-next 02/11] net: stmmac: dwmac100: Add MAC loopback support Jose Abreu
2019-05-08  7:51 ` [PATCH net-next 03/11] net: stmmac: dwmac1000: " Jose Abreu
2019-05-08  7:51 ` [PATCH net-next 04/11] net: stmmac: dwmac4/5: " Jose Abreu
2019-05-08  7:51 ` [PATCH net-next 05/11] net: stmmac: dwxgmac2: " Jose Abreu
2019-05-08  7:51 ` [PATCH net-next 06/11] net: stmmac: Switch MMC functions to HWIF callbacks Jose Abreu
2019-05-08  7:51 ` [PATCH net-next 07/11] net: stmmac: dwmac1000: Also pass control frames while in promisc mode Jose Abreu
2019-05-08 12:04   ` Andrew Lunn
2019-05-08 14:53     ` Jose Abreu
2019-05-08  7:51 ` [PATCH net-next 08/11] net: stmmac: dwmac4/5: " Jose Abreu
2019-05-08  7:51 ` [PATCH net-next 09/11] net: stmmac: dwxgmac2: " Jose Abreu
2019-05-08  7:51 ` [PATCH net-next 10/11] net: stmmac: Introduce selftests support Jose Abreu
2019-05-09  2:23   ` Andrew Lunn
2019-05-09  8:25     ` Jose Abreu
2019-05-09 12:21       ` Andrew Lunn
2019-05-09 15:11         ` Jose Abreu
2019-05-08  7:51 ` [PATCH net-next 11/11] net: stmmac: dwmac1000: Fix Hash Filter Jose Abreu
2019-05-08 15:46 ` [PATCH net-next 00/11] net: stmmac: Selftests David Miller
2019-05-08 19:50 ` Andrew Lunn
2019-05-09  8:17   ` Jose Abreu
2019-05-09 16:05     ` Jose Abreu
2019-05-09  9:04 ` Corentin Labbe
2019-05-09 10:11   ` Jose Abreu
2019-05-09 18:00     ` Corentin Labbe

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).