diff options
-rw-r--r-- | drivers/ide/arm/icside.c | 1 | ||||
-rw-r--r-- | drivers/ide/ide-probe.c | 3 | ||||
-rw-r--r-- | drivers/ide/ide.c | 4 | ||||
-rw-r--r-- | drivers/ide/mips/swarm.c | 1 | ||||
-rw-r--r-- | drivers/ide/ppc/pmac.c | 15 | ||||
-rw-r--r-- | include/linux/ide.h | 1 |
6 files changed, 11 insertions, 14 deletions
diff --git a/drivers/ide/arm/icside.c b/drivers/ide/arm/icside.c index b219818a400a..51d4efb4d794 100644 --- a/drivers/ide/arm/icside.c +++ b/drivers/ide/arm/icside.c | |||
@@ -424,7 +424,6 @@ icside_setup(void __iomem *base, struct cardinfo *info, struct expansion_card *e | |||
424 | } | 424 | } |
425 | hwif->io_ports[IDE_CONTROL_OFFSET] = (unsigned long)base + info->ctrloffset; | 425 | hwif->io_ports[IDE_CONTROL_OFFSET] = (unsigned long)base + info->ctrloffset; |
426 | hwif->irq = ec->irq; | 426 | hwif->irq = ec->irq; |
427 | hwif->noprobe = 0; | ||
428 | hwif->chipset = ide_acorn; | 427 | hwif->chipset = ide_acorn; |
429 | hwif->gendev.parent = &ec->dev; | 428 | hwif->gendev.parent = &ec->dev; |
430 | hwif->dev = &ec->dev; | 429 | hwif->dev = &ec->dev; |
diff --git a/drivers/ide/ide-probe.c b/drivers/ide/ide-probe.c index dfe516fdd079..c3ecc43b894b 100644 --- a/drivers/ide/ide-probe.c +++ b/drivers/ide/ide-probe.c | |||
@@ -773,8 +773,7 @@ static int ide_probe_port(ide_hwif_t *hwif) | |||
773 | 773 | ||
774 | BUG_ON(hwif->present); | 774 | BUG_ON(hwif->present); |
775 | 775 | ||
776 | if (hwif->noprobe || | 776 | if (hwif->drives[0].noprobe && hwif->drives[1].noprobe) |
777 | (hwif->drives[0].noprobe && hwif->drives[1].noprobe)) | ||
778 | return -EACCES; | 777 | return -EACCES; |
779 | 778 | ||
780 | /* | 779 | /* |
diff --git a/drivers/ide/ide.c b/drivers/ide/ide.c index 91a3c8aff1e2..3be049067520 100644 --- a/drivers/ide/ide.c +++ b/drivers/ide/ide.c | |||
@@ -454,7 +454,6 @@ void ide_init_port_hw(ide_hwif_t *hwif, hw_regs_t *hw) | |||
454 | { | 454 | { |
455 | memcpy(hwif->io_ports, hw->io_ports, sizeof(hwif->io_ports)); | 455 | memcpy(hwif->io_ports, hw->io_ports, sizeof(hwif->io_ports)); |
456 | hwif->irq = hw->irq; | 456 | hwif->irq = hw->irq; |
457 | hwif->noprobe = 0; | ||
458 | hwif->chipset = hw->chipset; | 457 | hwif->chipset = hw->chipset; |
459 | hwif->gendev.parent = hw->dev; | 458 | hwif->gendev.parent = hw->dev; |
460 | hwif->ack_intr = hw->ack_intr; | 459 | hwif->ack_intr = hw->ack_intr; |
@@ -1006,14 +1005,12 @@ static int __init ide_setup(char *s) | |||
1006 | goto done; | 1005 | goto done; |
1007 | case -3: /* "nowerr" */ | 1006 | case -3: /* "nowerr" */ |
1008 | drive->bad_wstat = BAD_R_STAT; | 1007 | drive->bad_wstat = BAD_R_STAT; |
1009 | hwif->noprobe = 0; | ||
1010 | goto done; | 1008 | goto done; |
1011 | case -4: /* "cdrom" */ | 1009 | case -4: /* "cdrom" */ |
1012 | drive->present = 1; | 1010 | drive->present = 1; |
1013 | drive->media = ide_cdrom; | 1011 | drive->media = ide_cdrom; |
1014 | /* an ATAPI device ignores DRDY */ | 1012 | /* an ATAPI device ignores DRDY */ |
1015 | drive->ready_stat = 0; | 1013 | drive->ready_stat = 0; |
1016 | hwif->noprobe = 0; | ||
1017 | goto done; | 1014 | goto done; |
1018 | case -5: /* nodma */ | 1015 | case -5: /* nodma */ |
1019 | drive->nodma = 1; | 1016 | drive->nodma = 1; |
@@ -1044,7 +1041,6 @@ static int __init ide_setup(char *s) | |||
1044 | drive->sect = drive->bios_sect = vals[2]; | 1041 | drive->sect = drive->bios_sect = vals[2]; |
1045 | drive->present = 1; | 1042 | drive->present = 1; |
1046 | drive->forced_geom = 1; | 1043 | drive->forced_geom = 1; |
1047 | hwif->noprobe = 0; | ||
1048 | goto done; | 1044 | goto done; |
1049 | default: | 1045 | default: |
1050 | goto bad_option; | 1046 | goto bad_option; |
diff --git a/drivers/ide/mips/swarm.c b/drivers/ide/mips/swarm.c index bbe8d5853348..4769ec2ff290 100644 --- a/drivers/ide/mips/swarm.c +++ b/drivers/ide/mips/swarm.c | |||
@@ -113,7 +113,6 @@ static int __devinit swarm_ide_probe(struct device *dev) | |||
113 | /* Prevent resource map manipulation. */ | 113 | /* Prevent resource map manipulation. */ |
114 | hwif->mmio = 1; | 114 | hwif->mmio = 1; |
115 | hwif->chipset = ide_generic; | 115 | hwif->chipset = ide_generic; |
116 | hwif->noprobe = 0; | ||
117 | 116 | ||
118 | for (i = IDE_DATA_OFFSET; i <= IDE_STATUS_OFFSET; i++) | 117 | for (i = IDE_DATA_OFFSET; i <= IDE_STATUS_OFFSET; i++) |
119 | hwif->io_ports[i] = | 118 | hwif->io_ports[i] = |
diff --git a/drivers/ide/ppc/pmac.c b/drivers/ide/ppc/pmac.c index 3277bf2d66a5..4e0583907413 100644 --- a/drivers/ide/ppc/pmac.c +++ b/drivers/ide/ppc/pmac.c | |||
@@ -1049,17 +1049,22 @@ pmac_ide_setup_device(pmac_ide_hwif_t *pmif, ide_hwif_t *hwif, hw_regs_t *hw) | |||
1049 | hwif->mmio = 1; | 1049 | hwif->mmio = 1; |
1050 | hwif->hwif_data = pmif; | 1050 | hwif->hwif_data = pmif; |
1051 | ide_init_port_hw(hwif, hw); | 1051 | ide_init_port_hw(hwif, hw); |
1052 | hwif->noprobe = pmif->mediabay; | ||
1053 | hwif->cbl = pmif->cable_80 ? ATA_CBL_PATA80 : ATA_CBL_PATA40; | 1052 | hwif->cbl = pmif->cable_80 ? ATA_CBL_PATA80 : ATA_CBL_PATA40; |
1054 | 1053 | ||
1055 | printk(KERN_INFO "ide%d: Found Apple %s controller, bus ID %d%s, irq %d\n", | 1054 | printk(KERN_INFO "ide%d: Found Apple %s controller, bus ID %d%s, irq %d\n", |
1056 | hwif->index, model_name[pmif->kind], pmif->aapl_bus_id, | 1055 | hwif->index, model_name[pmif->kind], pmif->aapl_bus_id, |
1057 | pmif->mediabay ? " (mediabay)" : "", hwif->irq); | 1056 | pmif->mediabay ? " (mediabay)" : "", hwif->irq); |
1058 | 1057 | ||
1058 | if (pmif->mediabay) { | ||
1059 | #ifdef CONFIG_PMAC_MEDIABAY | 1059 | #ifdef CONFIG_PMAC_MEDIABAY |
1060 | if (pmif->mediabay && check_media_bay_by_base(pmif->regbase, MB_CD) == 0) | 1060 | if (check_media_bay_by_base(pmif->regbase, MB_CD)) { |
1061 | hwif->noprobe = 0; | 1061 | #else |
1062 | #endif /* CONFIG_PMAC_MEDIABAY */ | 1062 | if (1) { |
1063 | #endif | ||
1064 | hwif->drives[0].noprobe = 1; | ||
1065 | hwif->drives[1].noprobe = 1; | ||
1066 | } | ||
1067 | } | ||
1063 | 1068 | ||
1064 | #ifdef CONFIG_BLK_DEV_IDEDMA_PMAC | 1069 | #ifdef CONFIG_BLK_DEV_IDEDMA_PMAC |
1065 | if (pmif->cable_80 == 0) | 1070 | if (pmif->cable_80 == 0) |
diff --git a/include/linux/ide.h b/include/linux/ide.h index b594f04a67f4..a612c898baeb 100644 --- a/include/linux/ide.h +++ b/include/linux/ide.h | |||
@@ -515,7 +515,6 @@ typedef struct hwif_s { | |||
515 | unsigned long extra_base; /* extra addr for dma ports */ | 515 | unsigned long extra_base; /* extra addr for dma ports */ |
516 | unsigned extra_ports; /* number of extra dma ports */ | 516 | unsigned extra_ports; /* number of extra dma ports */ |
517 | 517 | ||
518 | unsigned noprobe : 1; /* don't probe for this interface */ | ||
519 | unsigned present : 1; /* this interface exists */ | 518 | unsigned present : 1; /* this interface exists */ |
520 | unsigned serialized : 1; /* serialized all channel operation */ | 519 | unsigned serialized : 1; /* serialized all channel operation */ |
521 | unsigned sharing_irq: 1; /* 1 = sharing irq with another hwif */ | 520 | unsigned sharing_irq: 1; /* 1 = sharing irq with another hwif */ |