Revert "FROMLIST: PM / domains: inform PM domain of a device's next wakeup"
This reverts commit 7a9d53c2ea.
Drop [v6] patches in favor of upstream backports.
Bug: 170654157
Signed-off-by: Carlos Llamas <cmllamas@google.com>
Change-Id: I1ed4debfe724940b4c11c18f87ef97d046975918
This commit is contained in:
parent
f316415fb2
commit
14f2208945
2 changed files with 0 additions and 49 deletions
|
|
@ -423,46 +423,6 @@ int dev_pm_genpd_set_performance_state(struct device *dev, unsigned int state)
|
|||
}
|
||||
EXPORT_SYMBOL_GPL(dev_pm_genpd_set_performance_state);
|
||||
|
||||
/**
|
||||
* dev_pm_genpd_set_next_wakeup - Notify PM framework of an impending wakeup.
|
||||
*
|
||||
* @dev: Device to handle
|
||||
* @next: impending interrupt/wakeup for the device
|
||||
*
|
||||
* Allow devices to inform of the next wakeup. But, if the domain were already
|
||||
* powered off, we will not wakeup the domain to recompute it's idle duration.
|
||||
* Although devices are expected to update the next_wakeup after the end of
|
||||
* their usecase as well, it is possible the devices themselves may not know
|
||||
* about that. Stale @next will be ignored when powering off the domain.
|
||||
*/
|
||||
int dev_pm_genpd_set_next_wakeup(struct device *dev, ktime_t next)
|
||||
{
|
||||
struct generic_pm_domain *genpd;
|
||||
struct generic_pm_domain_data *gpd_data;
|
||||
int ret = -EINVAL;
|
||||
|
||||
genpd = dev_to_genpd_safe(dev);
|
||||
if (!genpd)
|
||||
return -ENODEV;
|
||||
|
||||
if (WARN_ON(!dev->power.subsys_data ||
|
||||
!dev->power.subsys_data->domain_data))
|
||||
return ret;
|
||||
|
||||
genpd_lock(genpd);
|
||||
gpd_data = to_gpd_data(dev->power.subsys_data->domain_data);
|
||||
if (ktime_before(ktime_get(), next)) {
|
||||
gpd_data->next_wakeup = next;
|
||||
genpd->flags |= GENPD_FLAG_GOV_NEXT_WAKEUP;
|
||||
ret = 0;
|
||||
}
|
||||
genpd_unlock(genpd);
|
||||
|
||||
return ret;
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(dev_pm_genpd_set_next_wakeup);
|
||||
|
||||
|
||||
static int _genpd_power_on(struct generic_pm_domain *genpd, bool timed)
|
||||
{
|
||||
unsigned int state_idx = genpd->state_idx;
|
||||
|
|
@ -1505,7 +1465,6 @@ static struct generic_pm_domain_data *genpd_alloc_dev_data(struct device *dev)
|
|||
gpd_data->td.constraint_changed = true;
|
||||
gpd_data->td.effective_constraint_ns = PM_QOS_RESUME_LATENCY_NO_CONSTRAINT_NS;
|
||||
gpd_data->nb.notifier_call = genpd_dev_pm_qos_notifier;
|
||||
gpd_data->next_wakeup = KTIME_MAX;
|
||||
|
||||
spin_lock_irq(&dev->power.lock);
|
||||
|
||||
|
|
|
|||
|
|
@ -9,7 +9,6 @@
|
|||
#define _LINUX_PM_DOMAIN_H
|
||||
|
||||
#include <linux/device.h>
|
||||
#include <linux/ktime.h>
|
||||
#include <linux/mutex.h>
|
||||
#include <linux/pm.h>
|
||||
#include <linux/err.h>
|
||||
|
|
@ -198,7 +197,6 @@ struct generic_pm_domain_data {
|
|||
struct notifier_block *power_nb;
|
||||
int cpu;
|
||||
unsigned int performance_state;
|
||||
ktime_t next_wakeup;
|
||||
void *data;
|
||||
};
|
||||
|
||||
|
|
@ -231,7 +229,6 @@ int dev_pm_genpd_set_performance_state(struct device *dev, unsigned int state);
|
|||
int dev_pm_genpd_add_notifier(struct device *dev, struct notifier_block *nb);
|
||||
int dev_pm_genpd_remove_notifier(struct device *dev);
|
||||
void genpd_enable_next_wakeup(struct generic_pm_domain *genpd, bool enable);
|
||||
int dev_pm_genpd_set_next_wakeup(struct device *dev, ktime_t next);
|
||||
|
||||
extern struct dev_power_governor simple_qos_governor;
|
||||
extern struct dev_power_governor pm_domain_always_on_gov;
|
||||
|
|
@ -294,11 +291,6 @@ static void genpd_enable_next_wakeup(struct generic_pm_domain *genpd,
|
|||
bool enable)
|
||||
{ }
|
||||
|
||||
static inline int dev_pm_genpd_set_next_wakeup(struct device *dev, ktime_t next)
|
||||
{
|
||||
return -EOPNOTSUPP;
|
||||
}
|
||||
|
||||
#define simple_qos_governor (*(struct dev_power_governor *)(NULL))
|
||||
#define pm_domain_always_on_gov (*(struct dev_power_governor *)(NULL))
|
||||
#endif
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue