aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/aic94xx/aic94xx_init.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/scsi/aic94xx/aic94xx_init.c')
-rw-r--r--drivers/scsi/aic94xx/aic94xx_init.c42
1 files changed, 18 insertions, 24 deletions
diff --git a/drivers/scsi/aic94xx/aic94xx_init.c b/drivers/scsi/aic94xx/aic94xx_init.c
index 63bcde246447..b70d6e7f96e9 100644
--- a/drivers/scsi/aic94xx/aic94xx_init.c
+++ b/drivers/scsi/aic94xx/aic94xx_init.c
@@ -583,7 +583,7 @@ static int __devinit asd_pci_probe(struct pci_dev *dev,
583 asd_ha = kzalloc(sizeof(*asd_ha), GFP_KERNEL); 583 asd_ha = kzalloc(sizeof(*asd_ha), GFP_KERNEL);
584 if (!asd_ha) { 584 if (!asd_ha) {
585 asd_printk("out of memory\n"); 585 asd_printk("out of memory\n");
586 goto Err; 586 goto Err_put;
587 } 587 }
588 asd_ha->pcidev = dev; 588 asd_ha->pcidev = dev;
589 asd_ha->sas_ha.dev = &asd_ha->pcidev->dev; 589 asd_ha->sas_ha.dev = &asd_ha->pcidev->dev;
@@ -600,14 +600,12 @@ static int __devinit asd_pci_probe(struct pci_dev *dev,
600 shost->max_cmd_len = 16; 600 shost->max_cmd_len = 16;
601 601
602 err = scsi_add_host(shost, &dev->dev); 602 err = scsi_add_host(shost, &dev->dev);
603 if (err) { 603 if (err)
604 scsi_host_put(shost);
605 goto Err_free; 604 goto Err_free;
606 }
607 605
608 err = asd_dev->setup(asd_ha); 606 err = asd_dev->setup(asd_ha);
609 if (err) 607 if (err)
610 goto Err_free; 608 goto Err_remove;
611 609
612 err = -ENODEV; 610 err = -ENODEV;
613 if (!pci_set_dma_mask(dev, DMA_64BIT_MASK) 611 if (!pci_set_dma_mask(dev, DMA_64BIT_MASK)
@@ -618,14 +616,14 @@ static int __devinit asd_pci_probe(struct pci_dev *dev,
618 ; 616 ;
619 else { 617 else {
620 asd_printk("no suitable DMA mask for %s\n", pci_name(dev)); 618 asd_printk("no suitable DMA mask for %s\n", pci_name(dev));
621 goto Err_free; 619 goto Err_remove;
622 } 620 }
623 621
624 pci_set_drvdata(dev, asd_ha); 622 pci_set_drvdata(dev, asd_ha);
625 623
626 err = asd_map_ha(asd_ha); 624 err = asd_map_ha(asd_ha);
627 if (err) 625 if (err)
628 goto Err_free; 626 goto Err_remove;
629 627
630 err = asd_create_ha_caches(asd_ha); 628 err = asd_create_ha_caches(asd_ha);
631 if (err) 629 if (err)
@@ -692,9 +690,12 @@ Err_free_cache:
692 asd_destroy_ha_caches(asd_ha); 690 asd_destroy_ha_caches(asd_ha);
693Err_unmap: 691Err_unmap:
694 asd_unmap_ha(asd_ha); 692 asd_unmap_ha(asd_ha);
693Err_remove:
694 scsi_remove_host(shost);
695Err_free: 695Err_free:
696 kfree(asd_ha); 696 kfree(asd_ha);
697 scsi_remove_host(shost); 697Err_put:
698 scsi_host_put(shost);
698Err: 699Err:
699 pci_disable_device(dev); 700 pci_disable_device(dev);
700 return err; 701 return err;
@@ -829,22 +830,15 @@ static struct sas_domain_function_template aic94xx_transport_functions = {
829}; 830};
830 831
831static const struct pci_device_id aic94xx_pci_table[] __devinitdata = { 832static const struct pci_device_id aic94xx_pci_table[] __devinitdata = {
832 {PCI_DEVICE(PCI_VENDOR_ID_ADAPTEC2, PCI_DEVICE_ID_ADAPTEC2_RAZOR10), 833 {PCI_DEVICE(PCI_VENDOR_ID_ADAPTEC2, 0x410),0, 0, 1},
833 0, 0, 1}, 834 {PCI_DEVICE(PCI_VENDOR_ID_ADAPTEC2, 0x412),0, 0, 1},
834 {PCI_DEVICE(PCI_VENDOR_ID_ADAPTEC2, PCI_DEVICE_ID_ADAPTEC2_RAZOR12), 835 {PCI_DEVICE(PCI_VENDOR_ID_ADAPTEC2, 0x416),0, 0, 1},
835 0, 0, 1}, 836 {PCI_DEVICE(PCI_VENDOR_ID_ADAPTEC2, 0x41E),0, 0, 1},
836 {PCI_DEVICE(PCI_VENDOR_ID_ADAPTEC2, PCI_DEVICE_ID_ADAPTEC2_RAZOR1E), 837 {PCI_DEVICE(PCI_VENDOR_ID_ADAPTEC2, 0x41F),0, 0, 1},
837 0, 0, 1}, 838 {PCI_DEVICE(PCI_VENDOR_ID_ADAPTEC2, 0x430),0, 0, 2},
838 {PCI_DEVICE(PCI_VENDOR_ID_ADAPTEC2, PCI_DEVICE_ID_ADAPTEC2_RAZOR1F), 839 {PCI_DEVICE(PCI_VENDOR_ID_ADAPTEC2, 0x432),0, 0, 2},
839 0, 0, 1}, 840 {PCI_DEVICE(PCI_VENDOR_ID_ADAPTEC2, 0x43E),0, 0, 2},
840 {PCI_DEVICE(PCI_VENDOR_ID_ADAPTEC2, PCI_DEVICE_ID_ADAPTEC2_RAZOR30), 841 {PCI_DEVICE(PCI_VENDOR_ID_ADAPTEC2, 0x43F),0, 0, 2},
841 0, 0, 2},
842 {PCI_DEVICE(PCI_VENDOR_ID_ADAPTEC2, PCI_DEVICE_ID_ADAPTEC2_RAZOR32),
843 0, 0, 2},
844 {PCI_DEVICE(PCI_VENDOR_ID_ADAPTEC2, PCI_DEVICE_ID_ADAPTEC2_RAZOR3E),
845 0, 0, 2},
846 {PCI_DEVICE(PCI_VENDOR_ID_ADAPTEC2, PCI_DEVICE_ID_ADAPTEC2_RAZOR3F),
847 0, 0, 2},
848 {} 842 {}
849}; 843};
850 844