aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/ide
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/ide')
-rw-r--r--drivers/ide/ide-io.c13
-rw-r--r--drivers/ide/ide-tape.c2
-rw-r--r--drivers/ide/ide.c4
3 files changed, 9 insertions, 10 deletions
diff --git a/drivers/ide/ide-io.c b/drivers/ide/ide-io.c
index 3436b1f104eb..a3ffb04436bd 100644
--- a/drivers/ide/ide-io.c
+++ b/drivers/ide/ide-io.c
@@ -141,7 +141,7 @@ enum {
141 141
142static void ide_complete_power_step(ide_drive_t *drive, struct request *rq, u8 stat, u8 error) 142static void ide_complete_power_step(ide_drive_t *drive, struct request *rq, u8 stat, u8 error)
143{ 143{
144 struct request_pm_state *pm = rq->end_io_data; 144 struct request_pm_state *pm = rq->data;
145 145
146 if (drive->media != ide_disk) 146 if (drive->media != ide_disk)
147 return; 147 return;
@@ -164,7 +164,7 @@ static void ide_complete_power_step(ide_drive_t *drive, struct request *rq, u8 s
164 164
165static ide_startstop_t ide_start_power_step(ide_drive_t *drive, struct request *rq) 165static ide_startstop_t ide_start_power_step(ide_drive_t *drive, struct request *rq)
166{ 166{
167 struct request_pm_state *pm = rq->end_io_data; 167 struct request_pm_state *pm = rq->data;
168 ide_task_t *args = rq->special; 168 ide_task_t *args = rq->special;
169 169
170 memset(args, 0, sizeof(*args)); 170 memset(args, 0, sizeof(*args));
@@ -421,7 +421,7 @@ void ide_end_drive_cmd (ide_drive_t *drive, u8 stat, u8 err)
421 } 421 }
422 } 422 }
423 } else if (blk_pm_request(rq)) { 423 } else if (blk_pm_request(rq)) {
424 struct request_pm_state *pm = rq->end_io_data; 424 struct request_pm_state *pm = rq->data;
425#ifdef DEBUG_PM 425#ifdef DEBUG_PM
426 printk("%s: complete_power_step(step: %d, stat: %x, err: %x)\n", 426 printk("%s: complete_power_step(step: %d, stat: %x, err: %x)\n",
427 drive->name, rq->pm->pm_step, stat, err); 427 drive->name, rq->pm->pm_step, stat, err);
@@ -933,7 +933,7 @@ done:
933 933
934static void ide_check_pm_state(ide_drive_t *drive, struct request *rq) 934static void ide_check_pm_state(ide_drive_t *drive, struct request *rq)
935{ 935{
936 struct request_pm_state *pm = rq->end_io_data; 936 struct request_pm_state *pm = rq->data;
937 937
938 if (blk_pm_suspend_request(rq) && 938 if (blk_pm_suspend_request(rq) &&
939 pm->pm_step == ide_pm_state_start_suspend) 939 pm->pm_step == ide_pm_state_start_suspend)
@@ -1018,7 +1018,7 @@ static ide_startstop_t start_request (ide_drive_t *drive, struct request *rq)
1018 rq->cmd_type == REQ_TYPE_ATA_TASKFILE) 1018 rq->cmd_type == REQ_TYPE_ATA_TASKFILE)
1019 return execute_drive_cmd(drive, rq); 1019 return execute_drive_cmd(drive, rq);
1020 else if (blk_pm_request(rq)) { 1020 else if (blk_pm_request(rq)) {
1021 struct request_pm_state *pm = rq->end_io_data; 1021 struct request_pm_state *pm = rq->data;
1022#ifdef DEBUG_PM 1022#ifdef DEBUG_PM
1023 printk("%s: start_power_step(step: %d)\n", 1023 printk("%s: start_power_step(step: %d)\n",
1024 drive->name, rq->pm->pm_step); 1024 drive->name, rq->pm->pm_step);
@@ -1718,7 +1718,7 @@ int ide_do_drive_cmd (ide_drive_t *drive, struct request *rq, ide_action_t actio
1718 */ 1718 */
1719 if (must_wait) { 1719 if (must_wait) {
1720 rq->ref_count++; 1720 rq->ref_count++;
1721 rq->waiting = &wait; 1721 rq->end_io_data = &wait;
1722 rq->end_io = blk_end_sync_rq; 1722 rq->end_io = blk_end_sync_rq;
1723 } 1723 }
1724 1724
@@ -1736,7 +1736,6 @@ int ide_do_drive_cmd (ide_drive_t *drive, struct request *rq, ide_action_t actio
1736 err = 0; 1736 err = 0;
1737 if (must_wait) { 1737 if (must_wait) {
1738 wait_for_completion(&wait); 1738 wait_for_completion(&wait);
1739 rq->waiting = NULL;
1740 if (rq->errors) 1739 if (rq->errors)
1741 err = -EIO; 1740 err = -EIO;
1742 1741
diff --git a/drivers/ide/ide-tape.c b/drivers/ide/ide-tape.c
index 643e4b9ac651..66f9678d2f10 100644
--- a/drivers/ide/ide-tape.c
+++ b/drivers/ide/ide-tape.c
@@ -2773,7 +2773,7 @@ static void idetape_wait_for_request (ide_drive_t *drive, struct request *rq)
2773 return; 2773 return;
2774 } 2774 }
2775#endif /* IDETAPE_DEBUG_BUGS */ 2775#endif /* IDETAPE_DEBUG_BUGS */
2776 rq->waiting = &wait; 2776 rq->end_io_data = &wait;
2777 rq->end_io = blk_end_sync_rq; 2777 rq->end_io = blk_end_sync_rq;
2778 spin_unlock_irq(&tape->spinlock); 2778 spin_unlock_irq(&tape->spinlock);
2779 wait_for_completion(&wait); 2779 wait_for_completion(&wait);
diff --git a/drivers/ide/ide.c b/drivers/ide/ide.c
index 9384a3fdde6c..2b1a1389c318 100644
--- a/drivers/ide/ide.c
+++ b/drivers/ide/ide.c
@@ -1219,7 +1219,7 @@ static int generic_ide_suspend(struct device *dev, pm_message_t mesg)
1219 memset(&args, 0, sizeof(args)); 1219 memset(&args, 0, sizeof(args));
1220 rq.cmd_type = REQ_TYPE_PM_SUSPEND; 1220 rq.cmd_type = REQ_TYPE_PM_SUSPEND;
1221 rq.special = &args; 1221 rq.special = &args;
1222 rq.end_io_data = &rqpm; 1222 rq.data = &rqpm;
1223 rqpm.pm_step = ide_pm_state_start_suspend; 1223 rqpm.pm_step = ide_pm_state_start_suspend;
1224 if (mesg.event == PM_EVENT_PRETHAW) 1224 if (mesg.event == PM_EVENT_PRETHAW)
1225 mesg.event = PM_EVENT_FREEZE; 1225 mesg.event = PM_EVENT_FREEZE;
@@ -1240,7 +1240,7 @@ static int generic_ide_resume(struct device *dev)
1240 memset(&args, 0, sizeof(args)); 1240 memset(&args, 0, sizeof(args));
1241 rq.cmd_type = REQ_TYPE_PM_RESUME; 1241 rq.cmd_type = REQ_TYPE_PM_RESUME;
1242 rq.special = &args; 1242 rq.special = &args;
1243 rq.end_io_data = &rqpm; 1243 rq.data = &rqpm;
1244 rqpm.pm_step = ide_pm_state_start_resume; 1244 rqpm.pm_step = ide_pm_state_start_resume;
1245 rqpm.pm_state = PM_EVENT_ON; 1245 rqpm.pm_state = PM_EVENT_ON;
1246 1246