diff options
author | sos <sos@FreeBSD.org> | 2005-05-17 12:31:54 +0000 |
---|---|---|
committer | sos <sos@FreeBSD.org> | 2005-05-17 12:31:54 +0000 |
commit | b33daefd830ed7a39c89fd5442c381a82796a87f (patch) | |
tree | 4dc57f2c5ffe6aed7123d5c0197fbda9724e0022 | |
parent | 22196abfb60c07d4d4ea45b39f23b151af9c4266 (diff) | |
download | FreeBSD-src-b33daefd830ed7a39c89fd5442c381a82796a87f.zip FreeBSD-src-b33daefd830ed7a39c89fd5442c381a82796a87f.tar.gz |
Make certain the the 48bit flag is reset if we dont translate LBA.
-rw-r--r-- | sys/dev/ata/ata-all.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/dev/ata/ata-all.c b/sys/dev/ata/ata-all.c index 6b70448..1e74e01 100644 --- a/sys/dev/ata/ata-all.c +++ b/sys/dev/ata/ata-all.c @@ -705,6 +705,8 @@ ata_modify_if_48bit(struct ata_request *request) struct ata_device *atadev = device_get_softc(request->dev); u_int8_t command = request->u.ata.command; + atadev->flags &= ~ATA_D_48BIT_ACTIVE; + if ((request->u.ata.lba >= ATA_MAX_28BIT_LBA || request->u.ata.count > 256) && atadev->param.support.command2 & ATA_SUPPORT_ADDRESS48) { @@ -734,8 +736,6 @@ ata_modify_if_48bit(struct ata_request *request) } atadev->flags |= ATA_D_48BIT_ACTIVE; } - else - atadev->flags &= ~ATA_D_48BIT_ACTIVE; return command; } |