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:
Carlos Llamas 2021-04-13 17:01:33 +00:00 committed by Todd Kjos
commit 14f2208945
2 changed files with 0 additions and 49 deletions

View file

@ -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);

View file

@ -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