diff options
author | James Smart <James.Smart@Emulex.Com> | 2008-12-04 22:39:35 -0500 |
---|---|---|
committer | James Bottomley <James.Bottomley@HansenPartnership.com> | 2008-12-29 12:24:27 -0500 |
commit | 5b75da2fa2c9570c3c3dbb2f63cae5b4183e0ca3 (patch) | |
tree | 618f67c4fd9cda1d60aa24d04262e4fb3ee2911f /drivers/scsi/lpfc/lpfc.h | |
parent | eaf15d5b5605e1a403f631489de30a49fd66905d (diff) |
[SCSI] lpfc 8.3.0 : Add active interrupt test for enabling MSI/MSI-X/INTx
Per the recent discussions at the Linux Plumbers Conference, when
enabling MSI or MSI-X, generate a test interrupt to verify the
interrupt routing is working properly. If the test interrupt fails,
fall back to MSI first, and if that fails as well, to INTx. If the
interrupt test fails with INTx, log an error and fail the PCI probe.
Also changed the use of spin_(lock|unlock) to the _irq(save|restore)
variants in the interrupt handlers because with multi-message MSI-X,
both interrupt handlers can now run in parallel.
Signed-off-by: James Smart <James.Smart@emulex.com>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
Diffstat (limited to 'drivers/scsi/lpfc/lpfc.h')
-rw-r--r-- | drivers/scsi/lpfc/lpfc.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/scsi/lpfc/lpfc.h b/drivers/scsi/lpfc/lpfc.h index 030f9eb46f2a..fee14ae9353d 100644 --- a/drivers/scsi/lpfc/lpfc.h +++ b/drivers/scsi/lpfc/lpfc.h | |||
@@ -592,6 +592,8 @@ struct lpfc_hba { | |||
592 | 592 | ||
593 | struct fc_host_statistics link_stats; | 593 | struct fc_host_statistics link_stats; |
594 | enum intr_type_t intr_type; | 594 | enum intr_type_t intr_type; |
595 | uint32_t intr_mode; | ||
596 | #define LPFC_INTR_ERROR 0xFFFFFFFF | ||
595 | struct msix_entry msix_entries[LPFC_MSIX_VECTORS]; | 597 | struct msix_entry msix_entries[LPFC_MSIX_VECTORS]; |
596 | 598 | ||
597 | struct list_head port_list; | 599 | struct list_head port_list; |