diff options
Diffstat (limited to 'drivers/scsi/libata-bmdma.c')
-rw-r--r-- | drivers/scsi/libata-bmdma.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/drivers/scsi/libata-bmdma.c b/drivers/scsi/libata-bmdma.c index 9ce221f25954..3482abbc6e09 100644 --- a/drivers/scsi/libata-bmdma.c +++ b/drivers/scsi/libata-bmdma.c | |||
@@ -1016,11 +1016,14 @@ int ata_pci_init_one (struct pci_dev *pdev, struct ata_port_info **port_info, | |||
1016 | res.start = 0x1f0; | 1016 | res.start = 0x1f0; |
1017 | res.end = 0x1f0 + 8 - 1; | 1017 | res.end = 0x1f0 + 8 - 1; |
1018 | conflict = ____request_resource(&ioport_resource, &res); | 1018 | conflict = ____request_resource(&ioport_resource, &res); |
1019 | while (conflict->child) | ||
1020 | conflict = ____request_resource(conflict, &res); | ||
1019 | if (!strcmp(conflict->name, "libata")) | 1021 | if (!strcmp(conflict->name, "libata")) |
1020 | legacy_mode |= (1 << 0); | 1022 | legacy_mode |= (1 << 0); |
1021 | else { | 1023 | else { |
1022 | disable_dev_on_err = 0; | 1024 | disable_dev_on_err = 0; |
1023 | printk(KERN_WARNING "ata: 0x1f0 IDE port busy\n"); | 1025 | printk(KERN_WARNING "ata: 0x1f0 IDE port busy\n" \ |
1026 | "ata: conflict with %s\n", conflict->name); | ||
1024 | } | 1027 | } |
1025 | } else | 1028 | } else |
1026 | legacy_mode |= (1 << 0); | 1029 | legacy_mode |= (1 << 0); |
@@ -1030,11 +1033,14 @@ int ata_pci_init_one (struct pci_dev *pdev, struct ata_port_info **port_info, | |||
1030 | res.start = 0x170; | 1033 | res.start = 0x170; |
1031 | res.end = 0x170 + 8 - 1; | 1034 | res.end = 0x170 + 8 - 1; |
1032 | conflict = ____request_resource(&ioport_resource, &res); | 1035 | conflict = ____request_resource(&ioport_resource, &res); |
1036 | while (conflict->child) | ||
1037 | conflict = ____request_resource(conflict, &res); | ||
1033 | if (!strcmp(conflict->name, "libata")) | 1038 | if (!strcmp(conflict->name, "libata")) |
1034 | legacy_mode |= (1 << 1); | 1039 | legacy_mode |= (1 << 1); |
1035 | else { | 1040 | else { |
1036 | disable_dev_on_err = 0; | 1041 | disable_dev_on_err = 0; |
1037 | printk(KERN_WARNING "ata: 0x170 IDE port busy\n"); | 1042 | printk(KERN_WARNING "ata: 0x170 IDE port busy\n" \ |
1043 | "ata: conflict with %s\n", conflict->name); | ||
1038 | } | 1044 | } |
1039 | } else | 1045 | } else |
1040 | legacy_mode |= (1 << 1); | 1046 | legacy_mode |= (1 << 1); |