diff options
author | Adam Gruchala <adam.gruchala@intel.com> | 2011-06-01 22:31:03 +0000 |
---|---|---|
committer | Dan Williams <dan.j.williams@intel.com> | 2011-07-03 04:04:50 -0700 |
commit | dbb0743a58825d94f1b3fdfa90a8d61dfef88f7b (patch) | |
tree | b7a69335b9480fae3c12380e94f22e8cfa197595 /drivers/scsi/isci/init.c | |
parent | 12ef65444de9d387a383b9991960848bed5bbe74 (diff) |
isci: Added support for C0 to SCU Driver
C0 silicon updates the pci revision id and requires new AFE parameters
for phy signal integrity. Support for previous silicon revisions is
deprecated (it's also broken for the theoretical case of multiple
controllers at different silicon revisions, all the more reason to get
it removed as soon as possible)
Signed-off-by: Adam Gruchala <adam.gruchala@intel.com>
[fixed up deprecated silicon support]
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Diffstat (limited to 'drivers/scsi/isci/init.c')
-rw-r--r-- | drivers/scsi/isci/init.c | 32 |
1 files changed, 16 insertions, 16 deletions
diff --git a/drivers/scsi/isci/init.c b/drivers/scsi/isci/init.c index bda701655b2..bbfb6e56320 100644 --- a/drivers/scsi/isci/init.c +++ b/drivers/scsi/isci/init.c @@ -437,27 +437,27 @@ static struct isci_host *isci_host_alloc(struct pci_dev *pdev, int id) static void check_si_rev(struct pci_dev *pdev) { - if (num_controllers(pdev) > 1) + switch (pdev->revision) { + case 0: + case 1: + /* if the id is ambiguous don't update isci_si_rev */ + break; + case 3: + isci_si_rev = ISCI_SI_REVA2; + break; + case 4: isci_si_rev = ISCI_SI_REVB0; - else { - switch (pdev->revision) { - case 0: - case 1: - /* if the id is ambiguous don't update isci_si_rev */ - break; - case 3: - isci_si_rev = ISCI_SI_REVA2; - break; - default: - case 4: - isci_si_rev = ISCI_SI_REVB0; - break; - } + break; + default: + case 5: + isci_si_rev = ISCI_SI_REVC0; + break; } dev_info(&pdev->dev, "driver configured for %s silicon (rev: %d)\n", isci_si_rev == ISCI_SI_REVA0 ? "A0" : - isci_si_rev == ISCI_SI_REVA2 ? "A2" : "B0", pdev->revision); + isci_si_rev == ISCI_SI_REVA2 ? "A2" : + isci_si_rev == ISCI_SI_REVB0 ? "B0" : "C0", pdev->revision); } |