diff options
| -rw-r--r-- | drivers/scsi/Kconfig | 2 | ||||
| -rw-r--r-- | drivers/scsi/gdth.c | 7 |
2 files changed, 6 insertions, 3 deletions
diff --git a/drivers/scsi/Kconfig b/drivers/scsi/Kconfig index a5f0aaaf0dd4..a7a0813b24cb 100644 --- a/drivers/scsi/Kconfig +++ b/drivers/scsi/Kconfig | |||
| @@ -722,7 +722,7 @@ config SCSI_FD_MCS | |||
| 722 | 722 | ||
| 723 | config SCSI_GDTH | 723 | config SCSI_GDTH |
| 724 | tristate "Intel/ICP (former GDT SCSI Disk Array) RAID Controller support" | 724 | tristate "Intel/ICP (former GDT SCSI Disk Array) RAID Controller support" |
| 725 | depends on (ISA || EISA || PCI) && SCSI && ISA_DMA_API && PCI_LEGACY | 725 | depends on (ISA || EISA || PCI) && SCSI && ISA_DMA_API |
| 726 | ---help--- | 726 | ---help--- |
| 727 | Formerly called GDT SCSI Disk Array Controller Support. | 727 | Formerly called GDT SCSI Disk Array Controller Support. |
| 728 | 728 | ||
diff --git a/drivers/scsi/gdth.c b/drivers/scsi/gdth.c index 7079fef383ec..6d67f5c0eb8e 100644 --- a/drivers/scsi/gdth.c +++ b/drivers/scsi/gdth.c | |||
| @@ -642,12 +642,15 @@ static void __init gdth_search_dev(gdth_pci_str *pcistr, ushort *cnt, | |||
| 642 | *cnt, vendor, device)); | 642 | *cnt, vendor, device)); |
| 643 | 643 | ||
| 644 | pdev = NULL; | 644 | pdev = NULL; |
| 645 | while ((pdev = pci_find_device(vendor, device, pdev)) | 645 | while ((pdev = pci_get_device(vendor, device, pdev)) |
| 646 | != NULL) { | 646 | != NULL) { |
| 647 | if (pci_enable_device(pdev)) | 647 | if (pci_enable_device(pdev)) |
| 648 | continue; | 648 | continue; |
| 649 | if (*cnt >= MAXHA) | 649 | if (*cnt >= MAXHA) { |
| 650 | pci_dev_put(pdev); | ||
| 650 | return; | 651 | return; |
| 652 | } | ||
| 653 | |||
| 651 | /* GDT PCI controller found, resources are already in pdev */ | 654 | /* GDT PCI controller found, resources are already in pdev */ |
| 652 | pcistr[*cnt].pdev = pdev; | 655 | pcistr[*cnt].pdev = pdev; |
| 653 | pcistr[*cnt].irq = pdev->irq; | 656 | pcistr[*cnt].irq = pdev->irq; |
