Am Dienstag 21 August 2012, 21:53:15 schrieb sreekanth.reddy@xxxxxxx: > 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 <sreekanth.reddy@xxxxxxx> > Cc: <stable@xxxxxxxxxx> > --- > > diff --git a/drivers/scsi/mpt2sas/mpt2sas_base.c > b/drivers/scsi/mpt2sas/mpt2sas_base.c index 6102ef2..fd2f4ad 100644 > --- a/drivers/scsi/mpt2sas/mpt2sas_base.c > +++ b/drivers/scsi/mpt2sas/mpt2sas_base.c > @@ -1207,6 +1207,15 @@ _base_check_enable_msix(struct MPT2SAS_ADAPTER *ioc) > { > 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); Nope. Just use ioc->pdev->revision here. > + if (ioc->pdev->device == MPI2_MFGPAGE_DEVID_SAS2008 && > + revision == 0x01) { > + return -EINVAL; > + } > > > base = pci_find_capability(ioc->pdev, PCI_CAP_ID_MSIX); Eike
Attachment:
signature.asc
Description: This is a digitally signed message part.