aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/sfc/nic.h
diff options
context:
space:
mode:
authorBen Hutchings <bhutchings@solarflare.com>2013-01-03 18:36:57 -0500
committerBen Hutchings <bhutchings@solarflare.com>2013-08-21 14:48:24 -0400
commit1840667a851efb5f719d2c76b235c172104722e8 (patch)
tree0fb8df706a5cf5e9e7d0f0afa74372b9783ca6b7 /drivers/net/ethernet/sfc/nic.h
parentd829118705f8213ffeffa4fefa8931dea6b7f016 (diff)
sfc: Limit scope of a Falcon A1 IRQ workaround
We unconditionally acknowledge legacy interrupts just before disabling them. This workaround is needed on Falcon A1 but probably not on later chips where the legacy interrupt mechanism is different. It was also originally done after the IRQ handler was removed, not before. Restore the original behaviour for Falcon A1 only by doing this acknowledgement in the efx_nic_type::fini operation. Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Diffstat (limited to 'drivers/net/ethernet/sfc/nic.h')
-rw-r--r--drivers/net/ethernet/sfc/nic.h1
1 files changed, 0 insertions, 1 deletions
diff --git a/drivers/net/ethernet/sfc/nic.h b/drivers/net/ethernet/sfc/nic.h
index 9120e8b824e0..33aa120e3248 100644
--- a/drivers/net/ethernet/sfc/nic.h
+++ b/drivers/net/ethernet/sfc/nic.h
@@ -308,7 +308,6 @@ extern void efx_nic_disable_interrupts(struct efx_nic *efx);
308extern void efx_nic_fini_interrupt(struct efx_nic *efx); 308extern void efx_nic_fini_interrupt(struct efx_nic *efx);
309extern irqreturn_t efx_nic_fatal_interrupt(struct efx_nic *efx); 309extern irqreturn_t efx_nic_fatal_interrupt(struct efx_nic *efx);
310extern irqreturn_t falcon_legacy_interrupt_a1(int irq, void *dev_id); 310extern irqreturn_t falcon_legacy_interrupt_a1(int irq, void *dev_id);
311extern void falcon_irq_ack_a1(struct efx_nic *efx);
312 311
313static inline int efx_nic_event_test_irq_cpu(struct efx_channel *channel) 312static inline int efx_nic_event_test_irq_cpu(struct efx_channel *channel)
314{ 313{