aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStefan Richter <stefanr@s5r6.in-berlin.de>2006-10-29 13:52:49 -0500
committerStefan Richter <stefanr@s5r6.in-berlin.de>2006-10-29 14:02:23 -0500
commit346f5c7ee7fa4ebee0e4c96415a7e59716bfa1d0 (patch)
tree2370f68940fa91b962b324d5f9cf6448dc6d504c
parent5211e6e6c671f0d4b1e1a1023384d20227d8ee65 (diff)
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>
-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)
3552{ 3552{
3553 int err; 3553 int err;
3554 3554
3555 printk(KERN_INFO "%s does not fully support suspend and resume yet\n",
3556 OHCI1394_DRIVER_NAME);
3557
3555 err = pci_save_state(pdev); 3558 err = pci_save_state(pdev);
3556 if (err) 3559 if (err) {
3557 goto out; 3560 printk(KERN_ERR "%s: pci_save_state failed with %d\n",
3561 OHCI1394_DRIVER_NAME, err);
3562 return err;
3563 }
3558 err = pci_set_power_state(pdev, pci_choose_state(pdev, state)); 3564 err = pci_set_power_state(pdev, pci_choose_state(pdev, state));
3565#ifdef OHCI1394_DEBUG
3559 if (err) 3566 if (err)
3560 goto out; 3567 printk(KERN_DEBUG "%s: pci_set_power_state failed with %d\n",
3568 OHCI1394_DRIVER_NAME, err);
3569#endif /* OHCI1394_DEBUG */
3561 3570
3562/* PowerMac suspend code comes last */ 3571/* PowerMac suspend code comes last */
3563#ifdef CONFIG_PPC_PMAC 3572#ifdef CONFIG_PPC_PMAC
@@ -3570,8 +3579,8 @@ static int ohci1394_pci_suspend (struct pci_dev *pdev, pm_message_t state)
3570 pmac_call_feature(PMAC_FTR_1394_ENABLE, of_node, 0, 0); 3579 pmac_call_feature(PMAC_FTR_1394_ENABLE, of_node, 0, 0);
3571 } 3580 }
3572#endif /* CONFIG_PPC_PMAC */ 3581#endif /* CONFIG_PPC_PMAC */
3573out: 3582
3574 return err; 3583 return 0;
3575} 3584}
3576#endif /* CONFIG_PM */ 3585#endif /* CONFIG_PM */
3577 3586