aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/pci
diff options
context:
space:
mode:
authorRafael J. Wysocki <rjw@sisk.pl>2010-12-29 07:21:23 -0500
committerJesse Barnes <jbarnes@virtuousgeek.org>2011-01-14 11:55:43 -0500
commitb6e335aeeb114dccb07eaa09e8b62ff9510cf745 (patch)
treef4292a579e594b6c0312e9c34467649cb978aea5 /drivers/pci
parentff29530e651a3449aea6b0ef4c7048db9e22ef27 (diff)
PCI/PM: Use pm_wakeup_event() directly for reporting wakeup events
After recent changes related to wakeup events pm_wakeup_event() automatically checks if the given device is configured to signal wakeup, so pci_wakeup_event() may be a static inline function calling pm_wakeup_event() directly. Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl> Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
Diffstat (limited to 'drivers/pci')
-rw-r--r--drivers/pci/pci.c16
-rw-r--r--drivers/pci/pci.h6
2 files changed, 6 insertions, 16 deletions
diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c
index 6762dcae90ab..bf7ad2c09955 100644
--- a/drivers/pci/pci.c
+++ b/drivers/pci/pci.c
@@ -1297,22 +1297,6 @@ bool pci_check_pme_status(struct pci_dev *dev)
1297 return ret; 1297 return ret;
1298} 1298}
1299 1299
1300/*
1301 * Time to wait before the system can be put into a sleep state after reporting
1302 * a wakeup event signaled by a PCI device.
1303 */
1304#define PCI_WAKEUP_COOLDOWN 100
1305
1306/**
1307 * pci_wakeup_event - Report a wakeup event related to a given PCI device.
1308 * @dev: Device to report the wakeup event for.
1309 */
1310void pci_wakeup_event(struct pci_dev *dev)
1311{
1312 if (device_may_wakeup(&dev->dev))
1313 pm_wakeup_event(&dev->dev, PCI_WAKEUP_COOLDOWN);
1314}
1315
1316/** 1300/**
1317 * pci_pme_wakeup - Wake up a PCI device if its PME Status bit is set. 1301 * pci_pme_wakeup - Wake up a PCI device if its PME Status bit is set.
1318 * @dev: Device to handle. 1302 * @dev: Device to handle.
diff --git a/drivers/pci/pci.h b/drivers/pci/pci.h
index 16ae9659346b..f69d6e0fda75 100644
--- a/drivers/pci/pci.h
+++ b/drivers/pci/pci.h
@@ -74,6 +74,12 @@ extern void pci_pm_init(struct pci_dev *dev);
74extern void platform_pci_wakeup_init(struct pci_dev *dev); 74extern void platform_pci_wakeup_init(struct pci_dev *dev);
75extern void pci_allocate_cap_save_buffers(struct pci_dev *dev); 75extern void pci_allocate_cap_save_buffers(struct pci_dev *dev);
76 76
77static inline void pci_wakeup_event(struct pci_dev *dev)
78{
79 /* Wait 100 ms before the system can be put into a sleep state. */
80 pm_wakeup_event(&dev->dev, 100);
81}
82
77static inline bool pci_is_bridge(struct pci_dev *pci_dev) 83static inline bool pci_is_bridge(struct pci_dev *pci_dev)
78{ 84{
79 return !!(pci_dev->subordinate); 85 return !!(pci_dev->subordinate);