diff --git a/drivers/ide/arm/bast-ide.c b/drivers/ide/arm/bast-ide.c
index d2196436788b4595b3ea69b74ab13a94019a5712..ec46c44b061cfaa27342ce31e03ef7a2b9c2f9e4 100644
--- a/drivers/ide/arm/bast-ide.c
+++ b/drivers/ide/arm/bast-ide.c
@@ -49,7 +49,7 @@ static int __init bastide_register(unsigned int base, unsigned int aux, int irq)
 
 	if (hwif->present)
 		ide_unregister(i);
-	else if (!hwif->hold)
+	else
 		ide_init_port_data(hwif, i);
 
 	ide_init_port_hw(hwif, &hw);
diff --git a/drivers/ide/arm/palm_bk3710.c b/drivers/ide/arm/palm_bk3710.c
index 73899ef4ab0dbb71650bf6692cc6299d71e19671..474162cdf66599ab8b581e37def8f89a0668ff40 100644
--- a/drivers/ide/arm/palm_bk3710.c
+++ b/drivers/ide/arm/palm_bk3710.c
@@ -386,7 +386,7 @@ static int __devinit palm_bk3710_probe(struct platform_device *pdev)
 
 	if (hwif->present)
 		ide_unregister(i);
-	else if (!hwif->hold)
+	else
 		ide_init_port_data(hwif, i);
 
 	ide_init_port_hw(hwif, &hw);
diff --git a/drivers/ide/legacy/ide-cs.c b/drivers/ide/legacy/ide-cs.c
index 2b0b4958881ae5429aaf1f8be5593eebb3fccd39..9a23b94f293950f960a0e7aa8ea85d14002fee93 100644
--- a/drivers/ide/legacy/ide-cs.c
+++ b/drivers/ide/legacy/ide-cs.c
@@ -164,7 +164,7 @@ static int idecs_register(unsigned long io, unsigned long ctl, unsigned long irq
 
     if (hwif->present)
 	ide_unregister(i);
-    else if (!hwif->hold)
+    else
 	ide_init_port_data(hwif, i);
 
     ide_init_port_hw(hwif, &hw);
diff --git a/drivers/ide/mips/au1xxx-ide.c b/drivers/ide/mips/au1xxx-ide.c
index ee76023f3737454c7e908c6a5a3b6415c0a4cf1b..9b628248f2f4a8c174c32b027671a21303317c21 100644
--- a/drivers/ide/mips/au1xxx-ide.c
+++ b/drivers/ide/mips/au1xxx-ide.c
@@ -613,9 +613,6 @@ static int au_ide_probe(struct device *dev)
 
 	hwif->dev = dev;
 
-	/* hold should be on in all cases */
-	hwif->hold                      = 1;
-
 	hwif->mmio  = 1;
 
 	/* If the user has selected DDMA assisted copies,
diff --git a/drivers/ide/pci/delkin_cb.c b/drivers/ide/pci/delkin_cb.c
index 89570df52f0a5703785835e7a3fb34b25fe3b7af..961698d655eb6f2a9df206c726ce2ec0f14f055a 100644
--- a/drivers/ide/pci/delkin_cb.c
+++ b/drivers/ide/pci/delkin_cb.c
@@ -86,7 +86,7 @@ delkin_cb_probe (struct pci_dev *dev, const struct pci_device_id *id)
 
 	if (hwif->present)
 		ide_unregister(i);
-	else if (!hwif->hold)
+	else
 		ide_init_port_data(hwif, i);
 
 	ide_init_port_hw(hwif, &hw);
diff --git a/drivers/ide/ppc/pmac.c b/drivers/ide/ppc/pmac.c
index 7889f5f5c49a1449e279bc2b6d1dad84a4b7d0fc..b37dcfbdaad6b0a5585db7977bf4e89880df1255 100644
--- a/drivers/ide/ppc/pmac.c
+++ b/drivers/ide/ppc/pmac.c
@@ -1120,7 +1120,6 @@ pmac_ide_setup_device(pmac_ide_hwif_t *pmif, ide_hwif_t *hwif, hw_regs_t *hw)
 	hwif->hwif_data = pmif;
 	ide_init_port_hw(hwif, hw);
 	hwif->noprobe = pmif->mediabay;
-	hwif->hold = pmif->mediabay;
 	hwif->cbl = pmif->cable_80 ? ATA_CBL_PATA80 : ATA_CBL_PATA40;
 	hwif->set_pio_mode = pmac_ide_set_pio_mode;
 	if (pmif->kind == controller_un_ata6
diff --git a/include/linux/ide.h b/include/linux/ide.h
index 478ddf7e21d518626273e65c5cb8e12fc98fce97..7744ac9d1ff9037a7efbd1ec0324913e2a96801e 100644
--- a/include/linux/ide.h
+++ b/include/linux/ide.h
@@ -571,7 +571,6 @@ typedef struct hwif_s {
 
 	unsigned	noprobe    : 1;	/* don't probe for this interface */
 	unsigned	present    : 1;	/* this interface exists */
-	unsigned	hold       : 1; /* this interface is always present */
 	unsigned	serialized : 1;	/* serialized all channel operation */
 	unsigned	sharing_irq: 1;	/* 1 = sharing irq with another hwif */
 	unsigned	reset      : 1;	/* reset after probe */