Fix for issue - Unable to boot from the SAS drive connected to HBA

This patch checks whether HBA is SAS2008 B0 controller.
if it is a SAS2008 B0 controller then it use IO-APIC interrupt instead of MSIX,
as SAS2008 B0 controller doesn't support MSIX interrupts.

Signed-off-by: Sreekanth Reddy <[email protected]>
Cc: <[email protected]>
---

diff -Nuarp old/mpt2sas/mpt2sas_base.c new/mpt2sas/mpt2sas_base.c
--- old/drivers/scsi/mpt2sas/mpt2sas_base.c     2012-08-02 10:53:59.000000000 
+0530
+++ new/drivers/scsi/mpt2sas/mpt2sas_base.c     2012-08-02 11:11:13.000000000 
+0530
@@ -1154,6 +1154,15 @@ mpt2sas_base_check_enable_msix(struct MP
 {
        int base;
        u16 message_control;
+       u8 revision;
+
+       /* Check whether controller SAS2008 B0 controller,
+          if it is a SAS2008 B0 controller use IO-APIC instead of MSIX */
+       pci_read_config_byte(ioc->pdev, PCI_CLASS_REVISION, &revision);
+       if (ioc->pdev->device == MPI2_MFGPAGE_DEVID_SAS2008 &&
+           revision == 0x01) {
+               return -EINVAL;
+       }
 
        base = pci_find_capability(ioc->pdev, PCI_CAP_ID_MSIX);
        if (!base) {
--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to