Skip to content

Commit

Permalink
ide: fix PIO setup on resume for ATAPI devices
Browse files Browse the repository at this point in the history
PIO should be restored also for ATAPI devices during resume, fix it.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
  • Loading branch information
Bartlomiej Zolnierkiewicz committed May 9, 2007
1 parent 6d208b3 commit 317a46a
Showing 1 changed file with 7 additions and 10 deletions.
17 changes: 7 additions & 10 deletions drivers/ide/ide-io.c
Original file line number Diff line number Diff line change
Expand Up @@ -172,15 +172,6 @@ static ide_startstop_t ide_start_power_step(ide_drive_t *drive, struct request *

memset(args, 0, sizeof(*args));

if (drive->media != ide_disk) {
/*
* skip idedisk_pm_restore_pio and idedisk_pm_idle for ATAPI
* devices
*/
if (pm->pm_step == idedisk_pm_restore_pio)
pm->pm_step = ide_pm_restore_dma;
}

switch (pm->pm_step) {
case ide_pm_flush_cache: /* Suspend step 1 (flush cache) */
if (drive->media != ide_disk)
Expand All @@ -207,7 +198,13 @@ static ide_startstop_t ide_start_power_step(ide_drive_t *drive, struct request *
case idedisk_pm_restore_pio: /* Resume step 1 (restore PIO) */
if (drive->hwif->tuneproc != NULL)
drive->hwif->tuneproc(drive, 255);
ide_complete_power_step(drive, rq, 0, 0);
/*
* skip idedisk_pm_idle for ATAPI devices
*/
if (drive->media != ide_disk)
pm->pm_step = ide_pm_restore_dma;
else
ide_complete_power_step(drive, rq, 0, 0);
return ide_stopped;

case idedisk_pm_idle: /* Resume step 2 (idle) */
Expand Down

0 comments on commit 317a46a

Please sign in to comment.