Improve SATA core suspend/resume
Doing a full ata_busy_sleep() seems to get suspend and resume working fine on the Apple Mac Mini, at least. Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
427abfa28a
commit
1cca0ebbb7
1 changed files with 1 additions and 0 deletions
|
@ -4297,6 +4297,7 @@ static int ata_start_drive(struct ata_port *ap, struct ata_device *dev)
|
|||
int ata_device_resume(struct ata_port *ap, struct ata_device *dev)
|
||||
{
|
||||
if (ap->flags & ATA_FLAG_SUSPENDED) {
|
||||
ata_busy_sleep(ap, ATA_TMOUT_BOOT_QUICK, ATA_TMOUT_BOOT);
|
||||
ata_busy_wait(ap, ATA_BUSY | ATA_DRQ, 200000);
|
||||
ap->flags &= ~ATA_FLAG_SUSPENDED;
|
||||
ata_set_mode(ap);
|
||||
|
|
Loading…
Reference in a new issue