diff options
Diffstat (limited to 'drivers/ata/pata_ali.c')
-rw-r--r-- | drivers/ata/pata_ali.c | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/drivers/ata/pata_ali.c b/drivers/ata/pata_ali.c index 511a830b6256..3814aebefb2d 100644 --- a/drivers/ata/pata_ali.c +++ b/drivers/ata/pata_ali.c | |||
@@ -637,6 +637,11 @@ static int ali_init_one(struct pci_dev *pdev, const struct pci_device_id *id) | |||
637 | const struct ata_port_info *ppi[] = { NULL, NULL }; | 637 | const struct ata_port_info *ppi[] = { NULL, NULL }; |
638 | u8 tmp; | 638 | u8 tmp; |
639 | struct pci_dev *isa_bridge; | 639 | struct pci_dev *isa_bridge; |
640 | int rc; | ||
641 | |||
642 | rc = pcim_enable_device(pdev); | ||
643 | if (rc) | ||
644 | return rc; | ||
640 | 645 | ||
641 | /* | 646 | /* |
642 | * The chipset revision selects the driver operations and | 647 | * The chipset revision selects the driver operations and |
@@ -672,8 +677,15 @@ static int ali_init_one(struct pci_dev *pdev, const struct pci_device_id *id) | |||
672 | #ifdef CONFIG_PM | 677 | #ifdef CONFIG_PM |
673 | static int ali_reinit_one(struct pci_dev *pdev) | 678 | static int ali_reinit_one(struct pci_dev *pdev) |
674 | { | 679 | { |
680 | struct ata_host *host = dev_get_drvdata(&pdev->dev); | ||
681 | int rc; | ||
682 | |||
683 | rc = ata_pci_device_do_resume(pdev); | ||
684 | if (rc) | ||
685 | return rc; | ||
675 | ali_init_chipset(pdev); | 686 | ali_init_chipset(pdev); |
676 | return ata_pci_device_resume(pdev); | 687 | ata_host_resume(host); |
688 | return 0; | ||
677 | } | 689 | } |
678 | #endif | 690 | #endif |
679 | 691 | ||