diff options
Diffstat (limited to 'drivers/ata/pata_it821x.c')
-rw-r--r-- | drivers/ata/pata_it821x.c | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/drivers/ata/pata_it821x.c b/drivers/ata/pata_it821x.c index 257951d03dbb..6bdbb7140dfa 100644 --- a/drivers/ata/pata_it821x.c +++ b/drivers/ata/pata_it821x.c | |||
@@ -759,6 +759,11 @@ static int it821x_init_one(struct pci_dev *pdev, const struct pci_device_id *id) | |||
759 | 759 | ||
760 | const struct ata_port_info *ppi[] = { NULL, NULL }; | 760 | const struct ata_port_info *ppi[] = { NULL, NULL }; |
761 | static char *mode[2] = { "pass through", "smart" }; | 761 | static char *mode[2] = { "pass through", "smart" }; |
762 | int rc; | ||
763 | |||
764 | rc = pcim_enable_device(pdev); | ||
765 | if (rc) | ||
766 | return rc; | ||
762 | 767 | ||
763 | /* Force the card into bypass mode if so requested */ | 768 | /* Force the card into bypass mode if so requested */ |
764 | if (it8212_noraid) { | 769 | if (it8212_noraid) { |
@@ -780,10 +785,17 @@ static int it821x_init_one(struct pci_dev *pdev, const struct pci_device_id *id) | |||
780 | #ifdef CONFIG_PM | 785 | #ifdef CONFIG_PM |
781 | static int it821x_reinit_one(struct pci_dev *pdev) | 786 | static int it821x_reinit_one(struct pci_dev *pdev) |
782 | { | 787 | { |
788 | struct ata_host *host = dev_get_drvdata(&pdev->dev); | ||
789 | int rc; | ||
790 | |||
791 | rc = ata_pci_device_do_resume(pdev); | ||
792 | if (rc) | ||
793 | return rc; | ||
783 | /* Resume - turn raid back off if need be */ | 794 | /* Resume - turn raid back off if need be */ |
784 | if (it8212_noraid) | 795 | if (it8212_noraid) |
785 | it821x_disable_raid(pdev); | 796 | it821x_disable_raid(pdev); |
786 | return ata_pci_device_resume(pdev); | 797 | ata_host_resume(host); |
798 | return rc; | ||
787 | } | 799 | } |
788 | #endif | 800 | #endif |
789 | 801 | ||