diff options
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/ide/setup-pci.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/drivers/ide/setup-pci.c b/drivers/ide/setup-pci.c index 3dea5a59626e..166211f53f17 100644 --- a/drivers/ide/setup-pci.c +++ b/drivers/ide/setup-pci.c | |||
@@ -319,18 +319,18 @@ static ide_hwif_t *ide_hwif_configure(struct pci_dev *dev, | |||
319 | 319 | ||
320 | ctl = pci_resource_start(dev, 2*port+1); | 320 | ctl = pci_resource_start(dev, 2*port+1); |
321 | base = pci_resource_start(dev, 2*port); | 321 | base = pci_resource_start(dev, 2*port); |
322 | if ((ctl && !base) || (base && !ctl)) { | 322 | } else { |
323 | printk(KERN_ERR "%s: inconsistent baseregs (BIOS) " | ||
324 | "for port %d, skipping\n", d->name, port); | ||
325 | return NULL; | ||
326 | } | ||
327 | } | ||
328 | if (!ctl) { | ||
329 | /* Use default values */ | 323 | /* Use default values */ |
330 | ctl = port ? 0x374 : 0x3f4; | 324 | ctl = port ? 0x374 : 0x3f4; |
331 | base = port ? 0x170 : 0x1f0; | 325 | base = port ? 0x170 : 0x1f0; |
332 | } | 326 | } |
333 | 327 | ||
328 | if (!base || !ctl) { | ||
329 | printk(KERN_ERR "%s: bad PCI BARs for port %d, skipping\n", | ||
330 | d->name, port); | ||
331 | return NULL; | ||
332 | } | ||
333 | |||
334 | hwif = ide_find_port_slot(d); | 334 | hwif = ide_find_port_slot(d); |
335 | if (hwif == NULL) { | 335 | if (hwif == NULL) { |
336 | printk(KERN_ERR "%s: too many IDE interfaces, no room in " | 336 | printk(KERN_ERR "%s: too many IDE interfaces, no room in " |