diff options
author | Alexandre Rames <arames@solarflare.com> | 2013-03-21 17:41:43 +0100 |
---|---|---|
committer | Ben Hutchings <bhutchings@solarflare.com> | 2013-06-24 20:58:25 +0200 |
commit | b28405b0f25c91b52350fd558c219f08e5033eaf (patch) | |
tree | aaf3d37c96a0a789ae23dd4f751cd9c57f24a1c8 /drivers/net/ethernet/sfc/efx.h | |
parent | bnx2x: Fix compilation with no IOV support (diff) | |
download | linux-b28405b0f25c91b52350fd558c219f08e5033eaf.tar.xz linux-b28405b0f25c91b52350fd558c219f08e5033eaf.zip |
sfc: Fix EEH with legacy interrupts.
PCI legacy interrupts are level-triggered, and we cannot mask them up
on an isolated device. Instead, disable the IRQ at the controller
until we have recovered.
Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Diffstat (limited to 'drivers/net/ethernet/sfc/efx.h')
-rw-r--r-- | drivers/net/ethernet/sfc/efx.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/ethernet/sfc/efx.h b/drivers/net/ethernet/sfc/efx.h index 8372da239b43..bdb30bbb0c97 100644 --- a/drivers/net/ethernet/sfc/efx.h +++ b/drivers/net/ethernet/sfc/efx.h @@ -124,6 +124,7 @@ extern const struct ethtool_ops efx_ethtool_ops; extern int efx_reset(struct efx_nic *efx, enum reset_type method); extern void efx_reset_down(struct efx_nic *efx, enum reset_type method); extern int efx_reset_up(struct efx_nic *efx, enum reset_type method, bool ok); +extern int efx_try_recovery(struct efx_nic *efx); /* Global */ extern void efx_schedule_reset(struct efx_nic *efx, enum reset_type type); |