Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

PM: wakeup: make device_wakeup_disable() return void

The device_wakeup_disable() call only returns an error if no dev exists,
but there's not much a user can do at that point.

Rather, make this function return void.

Signed-off-by: Dhruva Gole <d-gole@ti.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>

authored by

Dhruva Gole and committed by
Rafael J. Wysocki
afde996a 39cd87c4

+10 -8
+7 -4
drivers/base/power/wakeup.c
··· 451 451 * Detach the @dev's wakeup source object from it, unregister this wakeup source 452 452 * object and destroy it. 453 453 */ 454 - int device_wakeup_disable(struct device *dev) 454 + void device_wakeup_disable(struct device *dev) 455 455 { 456 456 struct wakeup_source *ws; 457 457 458 458 if (!dev || !dev->power.can_wakeup) 459 - return -EINVAL; 459 + return; 460 460 461 461 ws = device_wakeup_detach(dev); 462 462 wakeup_source_unregister(ws); 463 - return 0; 464 463 } 465 464 EXPORT_SYMBOL_GPL(device_wakeup_disable); 466 465 ··· 501 502 */ 502 503 int device_set_wakeup_enable(struct device *dev, bool enable) 503 504 { 504 - return enable ? device_wakeup_enable(dev) : device_wakeup_disable(dev); 505 + if (enable) 506 + return device_wakeup_enable(dev); 507 + 508 + device_wakeup_disable(dev); 509 + return 0; 505 510 } 506 511 EXPORT_SYMBOL_GPL(device_set_wakeup_enable); 507 512
+1 -1
drivers/mmc/host/sdhci-pci-core.c
··· 63 63 if ((pm_flags & MMC_PM_KEEP_POWER) && (pm_flags & MMC_PM_WAKE_SDIO_IRQ)) 64 64 return device_wakeup_enable(&chip->pdev->dev); 65 65 else if (!cap_cd_wake) 66 - return device_wakeup_disable(&chip->pdev->dev); 66 + device_wakeup_disable(&chip->pdev->dev); 67 67 68 68 return 0; 69 69 }
+2 -3
include/linux/pm_wakeup.h
··· 107 107 extern struct wakeup_source *wakeup_sources_walk_start(void); 108 108 extern struct wakeup_source *wakeup_sources_walk_next(struct wakeup_source *ws); 109 109 extern int device_wakeup_enable(struct device *dev); 110 - extern int device_wakeup_disable(struct device *dev); 110 + extern void device_wakeup_disable(struct device *dev); 111 111 extern void device_set_wakeup_capable(struct device *dev, bool capable); 112 112 extern int device_set_wakeup_enable(struct device *dev, bool enable); 113 113 extern void __pm_stay_awake(struct wakeup_source *ws); ··· 154 154 return 0; 155 155 } 156 156 157 - static inline int device_wakeup_disable(struct device *dev) 157 + static inline void device_wakeup_disable(struct device *dev) 158 158 { 159 159 dev->power.should_wakeup = false; 160 - return 0; 161 160 } 162 161 163 162 static inline int device_set_wakeup_enable(struct device *dev, bool enable)