diff options
| author | Stefan Richter <stefanr@s5r6.in-berlin.de> | 2006-10-29 13:52:49 -0500 |
|---|---|---|
| committer | Stefan Richter <stefanr@s5r6.in-berlin.de> | 2006-12-07 15:32:36 -0500 |
| commit | 2a3f8ad3a94c784f57958bd692428cb342ce4114 (patch) | |
| tree | 5ecd1d5a178a38fa1a9671b45aa4fef89be2d17f | |
| parent | def4d8733b8b8fed521957a7fd546714dd491b91 (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.c | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/drivers/ieee1394/ohci1394.c b/drivers/ieee1394/ohci1394.c index a12802553b4b..44adefd71684 100644 --- a/drivers/ieee1394/ohci1394.c +++ b/drivers/ieee1394/ohci1394.c | |||
| @@ -3534,6 +3534,9 @@ static int ohci1394_pci_suspend(struct pci_dev *pdev, pm_message_t state) | |||
| 3534 | int err; | 3534 | int err; |
| 3535 | struct ti_ohci *ohci = pci_get_drvdata(pdev); | 3535 | struct ti_ohci *ohci = pci_get_drvdata(pdev); |
| 3536 | 3536 | ||
| 3537 | printk(KERN_INFO "%s does not fully support suspend and resume yet\n", | ||
| 3538 | OHCI1394_DRIVER_NAME); | ||
| 3539 | |||
| 3537 | PRINT(KERN_DEBUG, "suspend called"); | 3540 | PRINT(KERN_DEBUG, "suspend called"); |
| 3538 | if (!ohci) | 3541 | if (!ohci) |
| 3539 | return -ENXIO; | 3542 | return -ENXIO; |
| @@ -3558,11 +3561,17 @@ static int ohci1394_pci_suspend(struct pci_dev *pdev, pm_message_t state) | |||
| 3558 | ohci_soft_reset(ohci); | 3561 | ohci_soft_reset(ohci); |
| 3559 | 3562 | ||
| 3560 | err = pci_save_state(pdev); | 3563 | err = pci_save_state(pdev); |
| 3561 | if (err) | 3564 | if (err) { |
| 3565 | printk(KERN_ERR "%s: pci_save_state failed with %d\n", | ||
| 3566 | OHCI1394_DRIVER_NAME, err); | ||
| 3562 | return err; | 3567 | return err; |
| 3568 | } | ||
| 3563 | err = pci_set_power_state(pdev, pci_choose_state(pdev, state)); | 3569 | err = pci_set_power_state(pdev, pci_choose_state(pdev, state)); |
| 3570 | #ifdef OHCI1394_DEBUG | ||
| 3564 | if (err) | 3571 | if (err) |
| 3565 | return err; | 3572 | printk(KERN_DEBUG "%s: pci_set_power_state failed with %d\n", |
| 3573 | OHCI1394_DRIVER_NAME, err); | ||
| 3574 | #endif /* OHCI1394_DEBUG */ | ||
| 3566 | 3575 | ||
| 3567 | /* PowerMac suspend code comes last */ | 3576 | /* PowerMac suspend code comes last */ |
| 3568 | #ifdef CONFIG_PPC_PMAC | 3577 | #ifdef CONFIG_PPC_PMAC |
