aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/isci/init.c
diff options
context:
space:
mode:
authorAdam Gruchala <adam.gruchala@intel.com>2011-06-01 18:31:03 -0400
committerDan Williams <dan.j.williams@intel.com>2011-07-03 07:04:50 -0400
commitdbb0743a58825d94f1b3fdfa90a8d61dfef88f7b (patch)
treeb7a69335b9480fae3c12380e94f22e8cfa197595 /drivers/scsi/isci/init.c
parent12ef65444de9d387a383b9991960848bed5bbe74 (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.c32
1 files changed, 16 insertions, 16 deletions
diff --git a/drivers/scsi/isci/init.c b/drivers/scsi/isci/init.c
index bda701655b25..bbfb6e563207 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)
437 437
438static void check_si_rev(struct pci_dev *pdev) 438static void check_si_rev(struct pci_dev *pdev)
439{ 439{
440 if (num_controllers(pdev) > 1) 440 switch (pdev->revision) {
441 case 0:
442 case 1:
443 /* if the id is ambiguous don't update isci_si_rev */
444 break;
445 case 3:
446 isci_si_rev = ISCI_SI_REVA2;
447 break;
448 case 4:
441 isci_si_rev = ISCI_SI_REVB0; 449 isci_si_rev = ISCI_SI_REVB0;
442 else { 450 break;
443 switch (pdev->revision) { 451 default:
444 case 0: 452 case 5:
445 case 1: 453 isci_si_rev = ISCI_SI_REVC0;
446 /* if the id is ambiguous don't update isci_si_rev */ 454 break;
447 break;
448 case 3:
449 isci_si_rev = ISCI_SI_REVA2;
450 break;
451 default:
452 case 4:
453 isci_si_rev = ISCI_SI_REVB0;
454 break;
455 }
456 } 455 }
457 456
458 dev_info(&pdev->dev, "driver configured for %s silicon (rev: %d)\n", 457 dev_info(&pdev->dev, "driver configured for %s silicon (rev: %d)\n",
459 isci_si_rev == ISCI_SI_REVA0 ? "A0" : 458 isci_si_rev == ISCI_SI_REVA0 ? "A0" :
460 isci_si_rev == ISCI_SI_REVA2 ? "A2" : "B0", pdev->revision); 459 isci_si_rev == ISCI_SI_REVA2 ? "A2" :
460 isci_si_rev == ISCI_SI_REVB0 ? "B0" : "C0", pdev->revision);
461 461
462} 462}
463 463