diff options
Diffstat (limited to 'drivers/ide')
-rw-r--r-- | drivers/ide/ide-io.c | 13 | ||||
-rw-r--r-- | drivers/ide/ide-tape.c | 2 | ||||
-rw-r--r-- | drivers/ide/ide.c | 4 |
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 | ||
142 | static void ide_complete_power_step(ide_drive_t *drive, struct request *rq, u8 stat, u8 error) | 142 | static 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 | ||
165 | static ide_startstop_t ide_start_power_step(ide_drive_t *drive, struct request *rq) | 165 | static 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 | ||
934 | static void ide_check_pm_state(ide_drive_t *drive, struct request *rq) | 934 | static 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 | ||