linux-ide.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 10/15] ide: use IDE_TFLAG_LBA48 for REQ_TYPE_ATA_TASKFILE requests
@ 2007-10-27 17:46 Bartlomiej Zolnierkiewicz
  0 siblings, 0 replies; only message in thread
From: Bartlomiej Zolnierkiewicz @ 2007-10-27 17:46 UTC (permalink / raw)
  To: linux-ide


* Use IDE_TFLAG_LBA48 for REQ_TYPE_ATA_TASKFILE requests in ide_end_drive_cmd()
  to decide whether we need to read HOB taskfile registers.

* Update execute_drive_cmd() accordingly.

This is a preparation for the next patch which removes unnecessary writes to
HOB taskfile registers for some ATA commands.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
---
 drivers/ide/ide-io.c |    8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

Index: b/drivers/ide/ide-io.c
===================================================================
--- a/drivers/ide/ide-io.c
+++ b/drivers/ide/ide-io.c
@@ -374,7 +374,7 @@ void ide_end_drive_cmd (ide_drive_t *dri
 			tf->device = hwif->INB(IDE_SELECT_REG);
 			tf->status = stat;
 
-			if (drive->addressing == 1) {
+			if (args->tf_flags & IDE_TFLAG_LBA48) {
 				hwif->OUTB(drive->ctl|0x80, IDE_CONTROL_REG);
 				tf->hob_feature = hwif->INB(IDE_FEATURE_REG);
 				tf->hob_nsect   = hwif->INB(IDE_NSECTOR_REG);
@@ -872,13 +872,15 @@ static ide_startstop_t execute_drive_cmd
 		}
 
 		task->tf_flags |= IDE_TFLAG_OUT_DEVICE;
+		if (drive->addressing == 1)
+			task->tf_flags |= IDE_TFLAG_LBA48;
 
 		if (task->tf_flags & IDE_TFLAG_FLAGGED)
 			return flagged_taskfile(drive, task);
 
 		task->tf_flags |= IDE_TFLAG_OUT_TF;
-		if (drive->addressing == 1)
-			task->tf_flags |= (IDE_TFLAG_LBA48 | IDE_TFLAG_OUT_HOB);
+		if (task->tf_flags & IDE_TFLAG_LBA48)
+			task->tf_flags |= IDE_TFLAG_OUT_HOB;
 
 		return do_rw_taskfile(drive, task);
 	}

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2007-10-27 17:46 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-10-27 17:46 [PATCH 10/15] ide: use IDE_TFLAG_LBA48 for REQ_TYPE_ATA_TASKFILE requests Bartlomiej Zolnierkiewicz

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).