summaryrefslogtreecommitdiffstats
path: root/drivers/ieee1394/ohci1394.c
diff options
context:
space:
mode:
authorStefan Richter <stefanr@s5r6.in-berlin.de>2006-10-29 19:52:49 +0100
committerStefan Richter <stefanr@s5r6.in-berlin.de>2006-10-29 20:02:23 +0100
commit346f5c7ee7fa4ebee0e4c96415a7e59716bfa1d0 (patch)
tree2370f68940fa91b962b324d5f9cf6448dc6d504c /drivers/ieee1394/ohci1394.c
parent5211e6e6c671f0d4b1e1a1023384d20227d8ee65 (diff)
downloadlinux-346f5c7ee7fa4ebee0e4c96415a7e59716bfa1d0.tar.gz
linux-346f5c7ee7fa4ebee0e4c96415a7e59716bfa1d0.tar.bz2
linux-346f5c7ee7fa4ebee0e4c96415a7e59716bfa1d0.zip
ieee1394: ohci1394: revert fail on error in suspend
Some errors during preparation for suspended state can be skipped with a warning instead of a failure of the whole suspend transition, notably an error in pci_set_power_state. Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
Diffstat (limited to 'drivers/ieee1394/ohci1394.c')
-rw-r--r--drivers/ieee1394/ohci1394.c19
1 files changed, 14 insertions, 5 deletions
diff --git a/drivers/ieee1394/ohci1394.c b/drivers/ieee1394/ohci1394.c
index dea13525df88..6e8ea9110c46 100644
--- a/drivers/ieee1394/ohci1394.c
+++ b/drivers/ieee1394/ohci1394.c
@@ -3552,12 +3552,21 @@ static int ohci1394_pci_suspend (struct pci_dev *pdev, pm_message_t state)
{
int err;
+ printk(KERN_INFO "%s does not fully support suspend and resume yet\n",
+ OHCI1394_DRIVER_NAME);
+
err = pci_save_state(pdev);
- if (err)
- goto out;
+ if (err) {
+ printk(KERN_ERR "%s: pci_save_state failed with %d\n",
+ OHCI1394_DRIVER_NAME, err);
+ return err;
+ }
err = pci_set_power_state(pdev, pci_choose_state(pdev, state));
+#ifdef OHCI1394_DEBUG
if (err)
- goto out;
+ printk(KERN_DEBUG "%s: pci_set_power_state failed with %d\n",
+ OHCI1394_DRIVER_NAME, err);
+#endif /* OHCI1394_DEBUG */
/* PowerMac suspend code comes last */
#ifdef CONFIG_PPC_PMAC
@@ -3570,8 +3579,8 @@ static int ohci1394_pci_suspend (struct pci_dev *pdev, pm_message_t state)
pmac_call_feature(PMAC_FTR_1394_ENABLE, of_node, 0, 0);
}
#endif /* CONFIG_PPC_PMAC */
-out:
- return err;
+
+ return 0;
}
#endif /* CONFIG_PM */