libata-core: use ATA_LBA in ata_build_rw_tf()
authorSergei Shtylyov <sshtylyov@ru.mvista.com>
Tue, 21 Aug 2012 18:18:50 +0000 (22:18 +0400)
committerJeff Garzik <jgarzik@redhat.com>
Thu, 13 Sep 2012 05:10:23 +0000 (01:10 -0400)
Since READ/WRITE FPDMA QUEUED commands are 48-bit, bit 6 of the device register
means LBA, the same as for READ/WRITE DMA EXT commands. So use ATA_LBA instead
of the bare number in ata_build_rw_tf()'s branch dedicated to the NCQ commands.

Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
drivers/ata/libata-core.c

index 25daf39368f6ca66108b0eecce62c6c64aea31ad..2c270169f35f08bcece66258b93bc1c82e10db92 100644 (file)
@@ -774,7 +774,7 @@ int ata_build_rw_tf(struct ata_taskfile *tf, struct ata_device *dev,
                tf->lbam = (block >> 8) & 0xff;
                tf->lbal = block & 0xff;
 
-               tf->device = 1 << 6;
+               tf->device = ATA_LBA;
                if (tf->flags & ATA_TFLAG_FUA)
                        tf->device |= 1 << 7;
        } else if (dev->flags & ATA_DFLAG_LBA) {