]> bbs.cooldavid.org Git - net-next-2.6.git/blobdiff - drivers/ata/libata-sff.c
libata,pata_via: revert ata_wait_idle() removal from ata_sff/via_tf_load()
[net-next-2.6.git] / drivers / ata / libata-sff.c
index 3b82d8ef76f0ffc81e6bb62e9d3ea19d1be57195..dee3c2c5256206028c82a1c91733aa61635805a5 100644 (file)
@@ -418,6 +418,7 @@ void ata_sff_tf_load(struct ata_port *ap, const struct ata_taskfile *tf)
                if (ioaddr->ctl_addr)
                        iowrite8(tf->ctl, ioaddr->ctl_addr);
                ap->last_ctl = tf->ctl;
+               ata_wait_idle(ap);
        }
 
        if (is_addr && (tf->flags & ATA_TFLAG_LBA48)) {
@@ -453,6 +454,8 @@ void ata_sff_tf_load(struct ata_port *ap, const struct ata_taskfile *tf)
                iowrite8(tf->device, ioaddr->device_addr);
                VPRINTK("device 0x%X\n", tf->device);
        }
+
+       ata_wait_idle(ap);
 }
 EXPORT_SYMBOL_GPL(ata_sff_tf_load);