NTB: BWD Link Recovery
authorJon Mason <jon.mason@intel.com>
Sat, 17 Nov 2012 01:52:57 +0000 (18:52 -0700)
committerJon Mason <jon.mason@intel.com>
Tue, 3 Sep 2013 21:48:52 +0000 (14:48 -0700)
commit113bf1c9f1e035129f8631b032669d6ab36a14dd
tree839e4b16676e07112941bde5cc739e6fbf786942
parent948d3a65b6d164b34309625f57656cb9e8b1a908
NTB: BWD Link Recovery

The BWD NTB device will drop the link if an error is encountered on the
point-to-point PCI bridge.  The link will stay down until all errors are
cleared and the link is re-established.  On link down, check to see if
the error is detected, if so do the necessary housekeeping to try and
recover from the error and reestablish the link.

There is a potential race between the 2 NTB devices recovering at the
same time.  If the times are synchronized, the link will not recover and the
driver will be stuck in this loop forever.  Add a random interval to the
recovery time to prevent this race.

Signed-off-by: Jon Mason <jon.mason@intel.com>
drivers/ntb/ntb_hw.c
drivers/ntb/ntb_hw.h
drivers/ntb/ntb_regs.h