diff options
Diffstat (limited to 'drivers/scsi/bfa/bfad_intr.c')
-rw-r--r-- | drivers/scsi/bfa/bfad_intr.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/drivers/scsi/bfa/bfad_intr.c b/drivers/scsi/bfa/bfad_intr.c index 7de8832f6fee..2b7dbecbebca 100644 --- a/drivers/scsi/bfa/bfad_intr.c +++ b/drivers/scsi/bfa/bfad_intr.c | |||
@@ -23,8 +23,10 @@ BFA_TRC_FILE(LDRV, INTR); | |||
23 | /** | 23 | /** |
24 | * bfa_isr BFA driver interrupt functions | 24 | * bfa_isr BFA driver interrupt functions |
25 | */ | 25 | */ |
26 | static int msix_disable; | 26 | static int msix_disable_cb; |
27 | module_param(msix_disable, int, S_IRUGO | S_IWUSR); | 27 | static int msix_disable_ct; |
28 | module_param(msix_disable_cb, int, S_IRUGO | S_IWUSR); | ||
29 | module_param(msix_disable_ct, int, S_IRUGO | S_IWUSR); | ||
28 | /** | 30 | /** |
29 | * Line based interrupt handler. | 31 | * Line based interrupt handler. |
30 | */ | 32 | */ |
@@ -141,6 +143,7 @@ bfad_setup_intr(struct bfad_s *bfad) | |||
141 | int error = 0; | 143 | int error = 0; |
142 | u32 mask = 0, i, num_bit = 0, max_bit = 0; | 144 | u32 mask = 0, i, num_bit = 0, max_bit = 0; |
143 | struct msix_entry msix_entries[MAX_MSIX_ENTRY]; | 145 | struct msix_entry msix_entries[MAX_MSIX_ENTRY]; |
146 | struct pci_dev *pdev = bfad->pcidev; | ||
144 | 147 | ||
145 | /* Call BFA to get the msix map for this PCI function. */ | 148 | /* Call BFA to get the msix map for this PCI function. */ |
146 | bfa_msix_getvecs(&bfad->bfa, &mask, &num_bit, &max_bit); | 149 | bfa_msix_getvecs(&bfad->bfa, &mask, &num_bit, &max_bit); |
@@ -148,7 +151,9 @@ bfad_setup_intr(struct bfad_s *bfad) | |||
148 | /* Set up the msix entry table */ | 151 | /* Set up the msix entry table */ |
149 | bfad_init_msix_entry(bfad, msix_entries, mask, max_bit); | 152 | bfad_init_msix_entry(bfad, msix_entries, mask, max_bit); |
150 | 153 | ||
151 | if (!msix_disable) { | 154 | if ((pdev->device == BFA_PCI_DEVICE_ID_CT && !msix_disable_ct) || |
155 | (pdev->device != BFA_PCI_DEVICE_ID_CT && !msix_disable_cb)) { | ||
156 | |||
152 | error = pci_enable_msix(bfad->pcidev, msix_entries, bfad->nvec); | 157 | error = pci_enable_msix(bfad->pcidev, msix_entries, bfad->nvec); |
153 | if (error) { | 158 | if (error) { |
154 | /* | 159 | /* |