ide: use ide_complete_cmd() for REQ_UNPARK_HEADS
PATCH 1/1 ide: use ide_complete_cmd() for REQ_UNPARK_HEADS
From: Bartlomiej Zolnierkiewicz <[email protected]>
Subject: [PATCH] ide: use ide_complete_cmd() for REQ_UNPARK_HEADS
* Fixup ->tf_flags in ide_do_park_unpark() to match their current use.
* Use ide_complete_cmd() for REQ_UNPARK_HEADS.
While at it:
* No need to read Error register for PM requests in task_no_data_intr().
Signed-off-by Bartlomiej Zolnierkiewicz <[email protected]>
---
replaces "ide: use ide_complete_cmd() for PM commands" patch
[ as a result of 'take 2' of "ide: move request type specific
code from ide_end_drive_cmd() to callers" patch ]
drivers/ide/ide-park.c | 4 ++-- drivers/ide/ide-taskfile.c | 10 +++++----- 2 files changed, 7 insertions(+), 7 deletions(-)
drivers/ide/ide-park.c +2 -2
@@ -74,11 +74,11 @@ ide_startstop_t ide_do_park_unpark(ide_d tf->lbal =0x4c ; tf->lbam =0x4e ; tf->lbah =0x55 ; - cmd.tf_flags |=IDE_TFLAG_CUSTOM_HANDLER ; + cmd.tf_flags =IDE_TFLAG_TF |IDE_TFLAG_DEVICE ; }else /* cmd == REQ_UNPARK_HEADS */ tf->command =ATA_CMD_CHK_POWER ; - cmd.tf_flags |=IDE_TFLAG_TF |IDE_TFLAG_DEVICE ; + cmd.tf_flags |=IDE_TFLAG_CUSTOM_HANDLER ; cmd.protocol =ATA_PROT_NODATA ; cmd.rq = rq;
drivers/ide/ide-taskfile.c +5 -5
@@ -149,16 +149,16 @@ static ide_startstop_t task_no_data_intrif (custom && tf->command ==ATA_CMD_SET_MULTI ) drive->mult_count = drive->mult_req; -if (custom ==0 || tf->command ==ATA_CMD_IDLEIMMEDIATE ) { +if (custom ==0 || tf->command ==ATA_CMD_IDLEIMMEDIATE || + tf->command ==ATA_CMD_CHK_POWER ) {struct request *rq = hwif->rq; -u8 err =ide_read_error (drive);if (blk_pm_request (rq))ide_complete_pm_rq (drive, rq);else { -if (rq->cmd_type ==REQ_TYPE_ATA_TASKFILE || - tf->command ==ATA_CMD_IDLEIMMEDIATE ) -ide_complete_cmd (drive, cmd, stat, err); +u8 err =ide_read_error (drive); + +ide_complete_cmd (drive, cmd, stat, err);ide_complete_rq (drive, err); } }