mlx4_en: Added self diagnostics test implementation
authorYevgeny Petrilin <yevgenyp@mellanox.co.il>
Tue, 24 Aug 2010 03:46:18 +0000 (03:46 +0000)
committerDavid S. Miller <davem@davemloft.net>
Tue, 24 Aug 2010 21:54:51 +0000 (14:54 -0700)
commite7c1c2c46201e46f8ce817196507d2ffd3dafd8e
tree33579da64d2c5dc4502518496097dcf9737e9eb4
parent3005ad40b95168aad530f1179cff47411b3ea8da
mlx4_en: Added self diagnostics test implementation

The selftest includes 5 features:
1. Interrupt test: Executing commands and receiving command completion
   on all our interrupt vectors.
2. Link test: Verifying we are connected to valid link partner.
3. Speed test: Check that we negotiated link speed correctly.
4. Registers test: Activate HW health check command.
5. Loopback test: Send a packet on loopback interface and catch it on RX side.

Signed-off-by: Yevgeny Petrilin <yevgenyp@mellanox.co.il>
Signed-off-by: David S. Miller <davem@davemloft.net>
15 files changed:
drivers/net/mlx4/Makefile
drivers/net/mlx4/en_ethtool.c
drivers/net/mlx4/en_netdev.c
drivers/net/mlx4/en_port.c
drivers/net/mlx4/en_port.h
drivers/net/mlx4/en_rx.c
drivers/net/mlx4/en_selftest.c [new file with mode: 0644]
drivers/net/mlx4/en_tx.c
drivers/net/mlx4/eq.c
drivers/net/mlx4/fw.c
drivers/net/mlx4/fw.h
drivers/net/mlx4/main.c
drivers/net/mlx4/mlx4_en.h
include/linux/mlx4/cmd.h
include/linux/mlx4/device.h