aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/ide/setup-pci.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/ide/setup-pci.c')
-rw-r--r--drivers/ide/setup-pci.c20
1 files changed, 1 insertions, 19 deletions
diff --git a/drivers/ide/setup-pci.c b/drivers/ide/setup-pci.c
index 634e3f6a9608..f7ede0e42881 100644
--- a/drivers/ide/setup-pci.c
+++ b/drivers/ide/setup-pci.c
@@ -41,17 +41,6 @@ static ide_hwif_t *ide_match_hwif(unsigned long io_base, u8 bootable, const char
41 ide_hwif_t *hwif; 41 ide_hwif_t *hwif;
42 42
43 /* 43 /*
44 * Look for a hwif with matching io_base specified using
45 * parameters to ide_setup().
46 */
47 for (h = 0; h < MAX_HWIFS; ++h) {
48 hwif = &ide_hwifs[h];
49 if (hwif->io_ports[IDE_DATA_OFFSET] == io_base) {
50 if (hwif->chipset == ide_forced)
51 return hwif; /* a perfect match */
52 }
53 }
54 /*
55 * Look for a hwif with matching io_base default value. 44 * Look for a hwif with matching io_base default value.
56 * If chipset is "ide_unknown", then claim that hwif slot. 45 * If chipset is "ide_unknown", then claim that hwif slot.
57 * Otherwise, some other chipset has already claimed it.. :( 46 * Otherwise, some other chipset has already claimed it.. :(
@@ -356,7 +345,6 @@ static ide_hwif_t *ide_hwif_configure(struct pci_dev *dev,
356 unsigned long ctl = 0, base = 0; 345 unsigned long ctl = 0, base = 0;
357 ide_hwif_t *hwif; 346 ide_hwif_t *hwif;
358 u8 bootable = (d->host_flags & IDE_HFLAG_BOOTABLE) ? 1 : 0; 347 u8 bootable = (d->host_flags & IDE_HFLAG_BOOTABLE) ? 1 : 0;
359 u8 oldnoprobe = 0;
360 struct hw_regs_s hw; 348 struct hw_regs_s hw;
361 349
362 if ((d->host_flags & IDE_HFLAG_ISA_PORTS) == 0) { 350 if ((d->host_flags & IDE_HFLAG_ISA_PORTS) == 0) {
@@ -382,19 +370,13 @@ static ide_hwif_t *ide_hwif_configure(struct pci_dev *dev,
382 return NULL; /* no room in ide_hwifs[] */ 370 return NULL; /* no room in ide_hwifs[] */
383 371
384 memset(&hw, 0, sizeof(hw)); 372 memset(&hw, 0, sizeof(hw));
385 hw.irq = hwif->irq ? hwif->irq : irq; 373 hw.irq = irq;
386 hw.dev = &dev->dev; 374 hw.dev = &dev->dev;
387 hw.chipset = d->chipset ? d->chipset : ide_pci; 375 hw.chipset = d->chipset ? d->chipset : ide_pci;
388 ide_std_init_ports(&hw, base, ctl | 2); 376 ide_std_init_ports(&hw, base, ctl | 2);
389 377
390 if (hwif->io_ports[IDE_DATA_OFFSET] == base &&
391 hwif->io_ports[IDE_CONTROL_OFFSET] == (ctl | 2))
392 oldnoprobe = hwif->noprobe;
393
394 ide_init_port_hw(hwif, &hw); 378 ide_init_port_hw(hwif, &hw);
395 379
396 hwif->noprobe = oldnoprobe;
397
398 hwif->dev = &dev->dev; 380 hwif->dev = &dev->dev;
399 hwif->cds = d; 381 hwif->cds = d;
400 382