diff options
author | Dan Williams <dan.j.williams@intel.com> | 2011-07-01 22:41:21 +0400 |
---|---|---|
committer | Dan Williams <dan.j.williams@intel.com> | 2011-07-03 15:04:52 +0400 |
commit | dc00c8b6940aa10ab1ce6a4d10b1bfe7b848781b (patch) | |
tree | 2f62620a348a5f6635413db4f5a0725c248a222b /drivers/scsi/isci/init.c | |
parent | 4e4dca3de9658f364d34924e072f2b64e5c3d267 (diff) | |
download | linux-dc00c8b6940aa10ab1ce6a4d10b1bfe7b848781b.tar.xz |
isci: cleanup silicon revision detection
Perform checking per-pci device (even though all systems will only have
1 pci device in this generation), and delete support for silicon that
does not report a proper revision (i.e. A0).
Reported-by: Christoph Hellwig <hch@lst.de>
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 | 33 |
1 files changed, 2 insertions, 31 deletions
diff --git a/drivers/scsi/isci/init.c b/drivers/scsi/isci/init.c index 8d9a8bfff4d5..61e0d09e2b57 100644 --- a/drivers/scsi/isci/init.c +++ b/drivers/scsi/isci/init.c @@ -85,10 +85,6 @@ MODULE_DEVICE_TABLE(pci, isci_id_table); /* linux isci specific settings */ -int isci_si_rev = ISCI_SI_REVA2; -module_param(isci_si_rev, int, 0); -MODULE_PARM_DESC(isci_si_rev, "(deprecated) override default si rev (0: A0 1: A2 2: B0)"); - unsigned char no_outbound_task_to = 20; module_param(no_outbound_task_to, byte, 0); MODULE_PARM_DESC(no_outbound_task_to, "No Outbound Task Timeout (1us incr)"); @@ -435,32 +431,6 @@ static struct isci_host *isci_host_alloc(struct pci_dev *pdev, int id) return NULL; } -static void check_si_rev(struct pci_dev *pdev) -{ - 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; - 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" : - isci_si_rev == ISCI_SI_REVB0 ? "B0" : "C0", pdev->revision); - -} - static int __devinit isci_pci_probe(struct pci_dev *pdev, const struct pci_device_id *id) { struct isci_pci_info *pci_info; @@ -470,7 +440,8 @@ static int __devinit isci_pci_probe(struct pci_dev *pdev, const struct pci_devic struct isci_orom *orom = NULL; char *source = "(platform)"; - check_si_rev(pdev); + dev_info(&pdev->dev, "driver configured for rev: %d silicon\n", + pdev->revision); pci_info = devm_kzalloc(&pdev->dev, sizeof(*pci_info), GFP_KERNEL); if (!pci_info) |