* [PATCH 01/15] PM / Domains: Remove the pm_genpd_add|remove_callbacks APIs
2014-09-03 10:52 [PATCH 00/15] PM / Domains: Cleanups and remove superfluous APIs Ulf Hansson
@ 2014-09-03 10:52 ` Ulf Hansson
2014-09-03 10:52 ` [PATCH 02/15] PM / Domains: Ignore callbacks for subsys generic_pm_domain_data Ulf Hansson
` (16 subsequent siblings)
17 siblings, 0 replies; 26+ messages in thread
From: Ulf Hansson @ 2014-09-03 10:52 UTC (permalink / raw)
To: linux-arm-kernel
There are no users of these APIs. To simplify the generic power domain
let's remove them.
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
---
drivers/base/power/domain.c | 106 --------------------------------------------
include/linux/pm_domain.h | 19 --------
2 files changed, 125 deletions(-)
diff --git a/drivers/base/power/domain.c b/drivers/base/power/domain.c
index eee55c1..e613e3c 100644
--- a/drivers/base/power/domain.c
+++ b/drivers/base/power/domain.c
@@ -1744,112 +1744,6 @@ int pm_genpd_remove_subdomain(struct generic_pm_domain *genpd,
}
/**
- * pm_genpd_add_callbacks - Add PM domain callbacks to a given device.
- * @dev: Device to add the callbacks to.
- * @ops: Set of callbacks to add.
- * @td: Timing data to add to the device along with the callbacks (optional).
- *
- * Every call to this routine should be balanced with a call to
- * __pm_genpd_remove_callbacks() and they must not be nested.
- */
-int pm_genpd_add_callbacks(struct device *dev, struct gpd_dev_ops *ops,
- struct gpd_timing_data *td)
-{
- struct generic_pm_domain_data *gpd_data_new, *gpd_data = NULL;
- int ret = 0;
-
- if (!(dev && ops))
- return -EINVAL;
-
- gpd_data_new = __pm_genpd_alloc_dev_data(dev);
- if (!gpd_data_new)
- return -ENOMEM;
-
- pm_runtime_disable(dev);
- device_pm_lock();
-
- ret = dev_pm_get_subsys_data(dev);
- if (ret)
- goto out;
-
- spin_lock_irq(&dev->power.lock);
-
- if (dev->power.subsys_data->domain_data) {
- gpd_data = to_gpd_data(dev->power.subsys_data->domain_data);
- } else {
- gpd_data = gpd_data_new;
- dev->power.subsys_data->domain_data = &gpd_data->base;
- }
- gpd_data->refcount++;
- gpd_data->ops = *ops;
- if (td)
- gpd_data->td = *td;
-
- spin_unlock_irq(&dev->power.lock);
-
- out:
- device_pm_unlock();
- pm_runtime_enable(dev);
-
- if (gpd_data != gpd_data_new)
- __pm_genpd_free_dev_data(dev, gpd_data_new);
-
- return ret;
-}
-EXPORT_SYMBOL_GPL(pm_genpd_add_callbacks);
-
-/**
- * __pm_genpd_remove_callbacks - Remove PM domain callbacks from a given device.
- * @dev: Device to remove the callbacks from.
- * @clear_td: If set, clear the device's timing data too.
- *
- * This routine can only be called after pm_genpd_add_callbacks().
- */
-int __pm_genpd_remove_callbacks(struct device *dev, bool clear_td)
-{
- struct generic_pm_domain_data *gpd_data = NULL;
- bool remove = false;
- int ret = 0;
-
- if (!(dev && dev->power.subsys_data))
- return -EINVAL;
-
- pm_runtime_disable(dev);
- device_pm_lock();
-
- spin_lock_irq(&dev->power.lock);
-
- if (dev->power.subsys_data->domain_data) {
- gpd_data = to_gpd_data(dev->power.subsys_data->domain_data);
- gpd_data->ops = (struct gpd_dev_ops){ NULL };
- if (clear_td)
- gpd_data->td = (struct gpd_timing_data){ 0 };
-
- if (--gpd_data->refcount == 0) {
- dev->power.subsys_data->domain_data = NULL;
- remove = true;
- }
- } else {
- ret = -EINVAL;
- }
-
- spin_unlock_irq(&dev->power.lock);
-
- device_pm_unlock();
- pm_runtime_enable(dev);
-
- if (ret)
- return ret;
-
- dev_pm_put_subsys_data(dev);
- if (remove)
- __pm_genpd_free_dev_data(dev, gpd_data);
-
- return 0;
-}
-EXPORT_SYMBOL_GPL(__pm_genpd_remove_callbacks);
-
-/**
* pm_genpd_attach_cpuidle - Connect the given PM domain with cpuidle.
* @genpd: PM domain to be connected with cpuidle.
* @state: cpuidle state this domain can disable/enable.
diff --git a/include/linux/pm_domain.h b/include/linux/pm_domain.h
index 7c1d252..0aa9ad9 100644
--- a/include/linux/pm_domain.h
+++ b/include/linux/pm_domain.h
@@ -151,10 +151,6 @@ extern int pm_genpd_add_subdomain_names(const char *master_name,
const char *subdomain_name);
extern int pm_genpd_remove_subdomain(struct generic_pm_domain *genpd,
struct generic_pm_domain *target);
-extern int pm_genpd_add_callbacks(struct device *dev,
- struct gpd_dev_ops *ops,
- struct gpd_timing_data *td);
-extern int __pm_genpd_remove_callbacks(struct device *dev, bool clear_td);
extern int pm_genpd_attach_cpuidle(struct generic_pm_domain *genpd, int state);
extern int pm_genpd_name_attach_cpuidle(const char *name, int state);
extern int pm_genpd_detach_cpuidle(struct generic_pm_domain *genpd);
@@ -217,16 +213,6 @@ static inline int pm_genpd_remove_subdomain(struct generic_pm_domain *genpd,
{
return -ENOSYS;
}
-static inline int pm_genpd_add_callbacks(struct device *dev,
- struct gpd_dev_ops *ops,
- struct gpd_timing_data *td)
-{
- return -ENOSYS;
-}
-static inline int __pm_genpd_remove_callbacks(struct device *dev, bool clear_td)
-{
- return -ENOSYS;
-}
static inline int pm_genpd_attach_cpuidle(struct generic_pm_domain *genpd, int st)
{
return -ENOSYS;
@@ -281,11 +267,6 @@ static inline int pm_genpd_name_add_device(const char *domain_name,
return __pm_genpd_name_add_device(domain_name, dev, NULL);
}
-static inline int pm_genpd_remove_callbacks(struct device *dev)
-{
- return __pm_genpd_remove_callbacks(dev, true);
-}
-
#ifdef CONFIG_PM_GENERIC_DOMAINS_RUNTIME
extern void genpd_queue_power_off_work(struct generic_pm_domain *genpd);
extern void pm_genpd_poweroff_unused(void);
--
1.9.1
^ permalink raw reply related [flat|nested] 26+ messages in thread
* [PATCH 02/15] PM / Domains: Ignore callbacks for subsys generic_pm_domain_data
2014-09-03 10:52 [PATCH 00/15] PM / Domains: Cleanups and remove superfluous APIs Ulf Hansson
2014-09-03 10:52 ` [PATCH 01/15] PM / Domains: Remove the pm_genpd_add|remove_callbacks APIs Ulf Hansson
@ 2014-09-03 10:52 ` Ulf Hansson
2014-09-03 10:52 ` [PATCH 03/15] PM / Domains: Remove system PM callbacks from gpd_dev_ops Ulf Hansson
` (15 subsequent siblings)
17 siblings, 0 replies; 26+ messages in thread
From: Ulf Hansson @ 2014-09-03 10:52 UTC (permalink / raw)
To: linux-arm-kernel
In a step of simplifying the generic power domain let's move away from
using these callbacks.
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
---
drivers/base/power/domain.c | 131 +++-----------------------------------------
include/linux/pm_domain.h | 1 -
2 files changed, 8 insertions(+), 124 deletions(-)
diff --git a/drivers/base/power/domain.c b/drivers/base/power/domain.c
index e613e3c..aa5b14c 100644
--- a/drivers/base/power/domain.c
+++ b/drivers/base/power/domain.c
@@ -25,10 +25,6 @@
__routine = genpd->dev_ops.callback; \
if (__routine) { \
__ret = __routine(dev); \
- } else { \
- __routine = dev_gpd_data(dev)->ops.callback; \
- if (__routine) \
- __ret = __routine(dev); \
} \
__ret; \
})
@@ -1871,10 +1867,6 @@ static int pm_genpd_default_save_state(struct device *dev)
{
int (*cb)(struct device *__dev);
- cb = dev_gpd_data(dev)->ops.save_state;
- if (cb)
- return cb(dev);
-
if (dev->type && dev->type->pm)
cb = dev->type->pm->runtime_suspend;
else if (dev->class && dev->class->pm)
@@ -1898,10 +1890,6 @@ static int pm_genpd_default_restore_state(struct device *dev)
{
int (*cb)(struct device *__dev);
- cb = dev_gpd_data(dev)->ops.restore_state;
- if (cb)
- return cb(dev);
-
if (dev->type && dev->type->pm)
cb = dev->type->pm->runtime_resume;
else if (dev->class && dev->class->pm)
@@ -1917,109 +1905,6 @@ static int pm_genpd_default_restore_state(struct device *dev)
return cb ? cb(dev) : 0;
}
-#ifdef CONFIG_PM_SLEEP
-
-/**
- * pm_genpd_default_suspend - Default "device suspend" for PM domians.
- * @dev: Device to handle.
- */
-static int pm_genpd_default_suspend(struct device *dev)
-{
- int (*cb)(struct device *__dev) = dev_gpd_data(dev)->ops.suspend;
-
- return cb ? cb(dev) : pm_generic_suspend(dev);
-}
-
-/**
- * pm_genpd_default_suspend_late - Default "late device suspend" for PM domians.
- * @dev: Device to handle.
- */
-static int pm_genpd_default_suspend_late(struct device *dev)
-{
- int (*cb)(struct device *__dev) = dev_gpd_data(dev)->ops.suspend_late;
-
- return cb ? cb(dev) : pm_generic_suspend_late(dev);
-}
-
-/**
- * pm_genpd_default_resume_early - Default "early device resume" for PM domians.
- * @dev: Device to handle.
- */
-static int pm_genpd_default_resume_early(struct device *dev)
-{
- int (*cb)(struct device *__dev) = dev_gpd_data(dev)->ops.resume_early;
-
- return cb ? cb(dev) : pm_generic_resume_early(dev);
-}
-
-/**
- * pm_genpd_default_resume - Default "device resume" for PM domians.
- * @dev: Device to handle.
- */
-static int pm_genpd_default_resume(struct device *dev)
-{
- int (*cb)(struct device *__dev) = dev_gpd_data(dev)->ops.resume;
-
- return cb ? cb(dev) : pm_generic_resume(dev);
-}
-
-/**
- * pm_genpd_default_freeze - Default "device freeze" for PM domians.
- * @dev: Device to handle.
- */
-static int pm_genpd_default_freeze(struct device *dev)
-{
- int (*cb)(struct device *__dev) = dev_gpd_data(dev)->ops.freeze;
-
- return cb ? cb(dev) : pm_generic_freeze(dev);
-}
-
-/**
- * pm_genpd_default_freeze_late - Default "late device freeze" for PM domians.
- * @dev: Device to handle.
- */
-static int pm_genpd_default_freeze_late(struct device *dev)
-{
- int (*cb)(struct device *__dev) = dev_gpd_data(dev)->ops.freeze_late;
-
- return cb ? cb(dev) : pm_generic_freeze_late(dev);
-}
-
-/**
- * pm_genpd_default_thaw_early - Default "early device thaw" for PM domians.
- * @dev: Device to handle.
- */
-static int pm_genpd_default_thaw_early(struct device *dev)
-{
- int (*cb)(struct device *__dev) = dev_gpd_data(dev)->ops.thaw_early;
-
- return cb ? cb(dev) : pm_generic_thaw_early(dev);
-}
-
-/**
- * pm_genpd_default_thaw - Default "device thaw" for PM domians.
- * @dev: Device to handle.
- */
-static int pm_genpd_default_thaw(struct device *dev)
-{
- int (*cb)(struct device *__dev) = dev_gpd_data(dev)->ops.thaw;
-
- return cb ? cb(dev) : pm_generic_thaw(dev);
-}
-
-#else /* !CONFIG_PM_SLEEP */
-
-#define pm_genpd_default_suspend NULL
-#define pm_genpd_default_suspend_late NULL
-#define pm_genpd_default_resume_early NULL
-#define pm_genpd_default_resume NULL
-#define pm_genpd_default_freeze NULL
-#define pm_genpd_default_freeze_late NULL
-#define pm_genpd_default_thaw_early NULL
-#define pm_genpd_default_thaw NULL
-
-#endif /* !CONFIG_PM_SLEEP */
-
/**
* pm_genpd_init - Initialize a generic I/O PM domain object.
* @genpd: PM domain object to initialize.
@@ -2071,14 +1956,14 @@ void pm_genpd_init(struct generic_pm_domain *genpd,
genpd->domain.ops.complete = pm_genpd_complete;
genpd->dev_ops.save_state = pm_genpd_default_save_state;
genpd->dev_ops.restore_state = pm_genpd_default_restore_state;
- genpd->dev_ops.suspend = pm_genpd_default_suspend;
- genpd->dev_ops.suspend_late = pm_genpd_default_suspend_late;
- genpd->dev_ops.resume_early = pm_genpd_default_resume_early;
- genpd->dev_ops.resume = pm_genpd_default_resume;
- genpd->dev_ops.freeze = pm_genpd_default_freeze;
- genpd->dev_ops.freeze_late = pm_genpd_default_freeze_late;
- genpd->dev_ops.thaw_early = pm_genpd_default_thaw_early;
- genpd->dev_ops.thaw = pm_genpd_default_thaw;
+ genpd->dev_ops.suspend = pm_generic_suspend;
+ genpd->dev_ops.suspend_late = pm_generic_suspend_late;
+ genpd->dev_ops.resume_early = pm_generic_resume_early;
+ genpd->dev_ops.resume = pm_generic_resume;
+ genpd->dev_ops.freeze = pm_generic_freeze;
+ genpd->dev_ops.freeze_late = pm_generic_freeze_late;
+ genpd->dev_ops.thaw_early = pm_generic_thaw_early;
+ genpd->dev_ops.thaw = pm_generic_thaw;
mutex_lock(&gpd_list_lock);
list_add(&genpd->gpd_list_node, &gpd_list);
mutex_unlock(&gpd_list_lock);
diff --git a/include/linux/pm_domain.h b/include/linux/pm_domain.h
index 0aa9ad9..a54bbbe 100644
--- a/include/linux/pm_domain.h
+++ b/include/linux/pm_domain.h
@@ -108,7 +108,6 @@ struct gpd_timing_data {
struct generic_pm_domain_data {
struct pm_domain_data base;
- struct gpd_dev_ops ops;
struct gpd_timing_data td;
struct notifier_block nb;
struct mutex lock;
--
1.9.1
^ permalink raw reply related [flat|nested] 26+ messages in thread
* [PATCH 03/15] PM / Domains: Remove system PM callbacks from gpd_dev_ops
2014-09-03 10:52 [PATCH 00/15] PM / Domains: Cleanups and remove superfluous APIs Ulf Hansson
2014-09-03 10:52 ` [PATCH 01/15] PM / Domains: Remove the pm_genpd_add|remove_callbacks APIs Ulf Hansson
2014-09-03 10:52 ` [PATCH 02/15] PM / Domains: Ignore callbacks for subsys generic_pm_domain_data Ulf Hansson
@ 2014-09-03 10:52 ` Ulf Hansson
2014-09-03 10:52 ` [PATCH 04/15] ARM: shmobile: Drop dev_irq_safe from r8a7779 genpd config Ulf Hansson
` (14 subsequent siblings)
17 siblings, 0 replies; 26+ messages in thread
From: Ulf Hansson @ 2014-09-03 10:52 UTC (permalink / raw)
To: linux-arm-kernel
There no users of these callbacks, let's simplify the generic power
domain by removing them.
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
---
drivers/base/power/domain.c | 64 ++++++---------------------------------------
include/linux/pm_domain.h | 8 ------
2 files changed, 8 insertions(+), 64 deletions(-)
diff --git a/drivers/base/power/domain.c b/drivers/base/power/domain.c
index aa5b14c..e777609 100644
--- a/drivers/base/power/domain.c
+++ b/drivers/base/power/domain.c
@@ -770,46 +770,6 @@ static bool genpd_dev_active_wakeup(struct generic_pm_domain *genpd,
return GENPD_DEV_CALLBACK(genpd, bool, active_wakeup, dev);
}
-static int genpd_suspend_dev(struct generic_pm_domain *genpd, struct device *dev)
-{
- return GENPD_DEV_CALLBACK(genpd, int, suspend, dev);
-}
-
-static int genpd_suspend_late(struct generic_pm_domain *genpd, struct device *dev)
-{
- return GENPD_DEV_CALLBACK(genpd, int, suspend_late, dev);
-}
-
-static int genpd_resume_early(struct generic_pm_domain *genpd, struct device *dev)
-{
- return GENPD_DEV_CALLBACK(genpd, int, resume_early, dev);
-}
-
-static int genpd_resume_dev(struct generic_pm_domain *genpd, struct device *dev)
-{
- return GENPD_DEV_CALLBACK(genpd, int, resume, dev);
-}
-
-static int genpd_freeze_dev(struct generic_pm_domain *genpd, struct device *dev)
-{
- return GENPD_DEV_CALLBACK(genpd, int, freeze, dev);
-}
-
-static int genpd_freeze_late(struct generic_pm_domain *genpd, struct device *dev)
-{
- return GENPD_DEV_CALLBACK(genpd, int, freeze_late, dev);
-}
-
-static int genpd_thaw_early(struct generic_pm_domain *genpd, struct device *dev)
-{
- return GENPD_DEV_CALLBACK(genpd, int, thaw_early, dev);
-}
-
-static int genpd_thaw_dev(struct generic_pm_domain *genpd, struct device *dev)
-{
- return GENPD_DEV_CALLBACK(genpd, int, thaw, dev);
-}
-
/**
* pm_genpd_sync_poweroff - Synchronously power off a PM domain and its masters.
* @genpd: PM domain to power off, if possible.
@@ -991,7 +951,7 @@ static int pm_genpd_suspend(struct device *dev)
if (IS_ERR(genpd))
return -EINVAL;
- return genpd->suspend_power_off ? 0 : genpd_suspend_dev(genpd, dev);
+ return genpd->suspend_power_off ? 0 : pm_generic_suspend(dev);
}
/**
@@ -1012,7 +972,7 @@ static int pm_genpd_suspend_late(struct device *dev)
if (IS_ERR(genpd))
return -EINVAL;
- return genpd->suspend_power_off ? 0 : genpd_suspend_late(genpd, dev);
+ return genpd->suspend_power_off ? 0 : pm_generic_suspend_late(dev);
}
/**
@@ -1099,7 +1059,7 @@ static int pm_genpd_resume_early(struct device *dev)
if (IS_ERR(genpd))
return -EINVAL;
- return genpd->suspend_power_off ? 0 : genpd_resume_early(genpd, dev);
+ return genpd->suspend_power_off ? 0 : pm_generic_resume_early(dev);
}
/**
@@ -1120,7 +1080,7 @@ static int pm_genpd_resume(struct device *dev)
if (IS_ERR(genpd))
return -EINVAL;
- return genpd->suspend_power_off ? 0 : genpd_resume_dev(genpd, dev);
+ return genpd->suspend_power_off ? 0 : pm_generic_resume(dev);
}
/**
@@ -1141,7 +1101,7 @@ static int pm_genpd_freeze(struct device *dev)
if (IS_ERR(genpd))
return -EINVAL;
- return genpd->suspend_power_off ? 0 : genpd_freeze_dev(genpd, dev);
+ return genpd->suspend_power_off ? 0 : pm_generic_freeze(dev);
}
/**
@@ -1163,7 +1123,7 @@ static int pm_genpd_freeze_late(struct device *dev)
if (IS_ERR(genpd))
return -EINVAL;
- return genpd->suspend_power_off ? 0 : genpd_freeze_late(genpd, dev);
+ return genpd->suspend_power_off ? 0 : pm_generic_freeze_late(dev);
}
/**
@@ -1227,7 +1187,7 @@ static int pm_genpd_thaw_early(struct device *dev)
if (IS_ERR(genpd))
return -EINVAL;
- return genpd->suspend_power_off ? 0 : genpd_thaw_early(genpd, dev);
+ return genpd->suspend_power_off ? 0 : pm_generic_thaw_early(dev);
}
/**
@@ -1248,7 +1208,7 @@ static int pm_genpd_thaw(struct device *dev)
if (IS_ERR(genpd))
return -EINVAL;
- return genpd->suspend_power_off ? 0 : genpd_thaw_dev(genpd, dev);
+ return genpd->suspend_power_off ? 0 : pm_generic_thaw(dev);
}
/**
@@ -1956,14 +1916,6 @@ void pm_genpd_init(struct generic_pm_domain *genpd,
genpd->domain.ops.complete = pm_genpd_complete;
genpd->dev_ops.save_state = pm_genpd_default_save_state;
genpd->dev_ops.restore_state = pm_genpd_default_restore_state;
- genpd->dev_ops.suspend = pm_generic_suspend;
- genpd->dev_ops.suspend_late = pm_generic_suspend_late;
- genpd->dev_ops.resume_early = pm_generic_resume_early;
- genpd->dev_ops.resume = pm_generic_resume;
- genpd->dev_ops.freeze = pm_generic_freeze;
- genpd->dev_ops.freeze_late = pm_generic_freeze_late;
- genpd->dev_ops.thaw_early = pm_generic_thaw_early;
- genpd->dev_ops.thaw = pm_generic_thaw;
mutex_lock(&gpd_list_lock);
list_add(&genpd->gpd_list_node, &gpd_list);
mutex_unlock(&gpd_list_lock);
diff --git a/include/linux/pm_domain.h b/include/linux/pm_domain.h
index a54bbbe..fd5efc8 100644
--- a/include/linux/pm_domain.h
+++ b/include/linux/pm_domain.h
@@ -35,14 +35,6 @@ struct gpd_dev_ops {
int (*stop)(struct device *dev);
int (*save_state)(struct device *dev);
int (*restore_state)(struct device *dev);
- int (*suspend)(struct device *dev);
- int (*suspend_late)(struct device *dev);
- int (*resume_early)(struct device *dev);
- int (*resume)(struct device *dev);
- int (*freeze)(struct device *dev);
- int (*freeze_late)(struct device *dev);
- int (*thaw_early)(struct device *dev);
- int (*thaw)(struct device *dev);
bool (*active_wakeup)(struct device *dev);
};
--
1.9.1
^ permalink raw reply related [flat|nested] 26+ messages in thread
* [PATCH 04/15] ARM: shmobile: Drop dev_irq_safe from r8a7779 genpd config
2014-09-03 10:52 [PATCH 00/15] PM / Domains: Cleanups and remove superfluous APIs Ulf Hansson
` (2 preceding siblings ...)
2014-09-03 10:52 ` [PATCH 03/15] PM / Domains: Remove system PM callbacks from gpd_dev_ops Ulf Hansson
@ 2014-09-03 10:52 ` Ulf Hansson
2014-09-03 10:52 ` [PATCH 05/15] ARM: shmobile: Drop dev_irq_safe from R-mobile " Ulf Hansson
` (13 subsequent siblings)
17 siblings, 0 replies; 26+ messages in thread
From: Ulf Hansson @ 2014-09-03 10:52 UTC (permalink / raw)
To: linux-arm-kernel
The dev_irq_safe configuration is redundant, genpd don't have any
special treatmeant for handling it. Let's remove it.
Cc: Simon Horman <horms@verge.net.au>
Cc: Magnus Damm <magnus.damm@gmail.com>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
---
arch/arm/mach-shmobile/pm-r8a7779.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/arch/arm/mach-shmobile/pm-r8a7779.c b/arch/arm/mach-shmobile/pm-r8a7779.c
index 69f70b7..82fe3d7 100644
--- a/arch/arm/mach-shmobile/pm-r8a7779.c
+++ b/arch/arm/mach-shmobile/pm-r8a7779.c
@@ -87,7 +87,6 @@ static void r8a7779_init_pm_domain(struct r8a7779_pm_domain *r8a7779_pd)
genpd->dev_ops.stop = pm_clk_suspend;
genpd->dev_ops.start = pm_clk_resume;
genpd->dev_ops.active_wakeup = pd_active_wakeup;
- genpd->dev_irq_safe = true;
genpd->power_off = pd_power_down;
genpd->power_on = pd_power_up;
--
1.9.1
^ permalink raw reply related [flat|nested] 26+ messages in thread
* [PATCH 05/15] ARM: shmobile: Drop dev_irq_safe from R-mobile genpd config
2014-09-03 10:52 [PATCH 00/15] PM / Domains: Cleanups and remove superfluous APIs Ulf Hansson
` (3 preceding siblings ...)
2014-09-03 10:52 ` [PATCH 04/15] ARM: shmobile: Drop dev_irq_safe from r8a7779 genpd config Ulf Hansson
@ 2014-09-03 10:52 ` Ulf Hansson
2014-09-03 10:52 ` [PATCH 06/15] PM / Domains: Remove dev_irq_safe from " Ulf Hansson
` (12 subsequent siblings)
17 siblings, 0 replies; 26+ messages in thread
From: Ulf Hansson @ 2014-09-03 10:52 UTC (permalink / raw)
To: linux-arm-kernel
The dev_irq_safe configuration is redundant, genpd don't have any
special treatmeant for handling it. Let's remove it.
Cc: Simon Horman <horms@verge.net.au>
Cc: Magnus Damm <magnus.damm@gmail.com>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
---
arch/arm/mach-shmobile/pm-rmobile.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/arch/arm/mach-shmobile/pm-rmobile.c b/arch/arm/mach-shmobile/pm-rmobile.c
index ebdd16e..818de2f 100644
--- a/arch/arm/mach-shmobile/pm-rmobile.c
+++ b/arch/arm/mach-shmobile/pm-rmobile.c
@@ -111,7 +111,6 @@ static void rmobile_init_pm_domain(struct rmobile_pm_domain *rmobile_pd)
genpd->dev_ops.stop = pm_clk_suspend;
genpd->dev_ops.start = pm_clk_resume;
genpd->dev_ops.active_wakeup = rmobile_pd_active_wakeup;
- genpd->dev_irq_safe = true;
genpd->power_off = rmobile_pd_power_down;
genpd->power_on = rmobile_pd_power_up;
__rmobile_pd_power_up(rmobile_pd, false);
--
1.9.1
^ permalink raw reply related [flat|nested] 26+ messages in thread
* [PATCH 06/15] PM / Domains: Remove dev_irq_safe from genpd config
2014-09-03 10:52 [PATCH 00/15] PM / Domains: Cleanups and remove superfluous APIs Ulf Hansson
` (4 preceding siblings ...)
2014-09-03 10:52 ` [PATCH 05/15] ARM: shmobile: Drop dev_irq_safe from R-mobile " Ulf Hansson
@ 2014-09-03 10:52 ` Ulf Hansson
2014-09-03 10:52 ` [PATCH 07/15] PM / Domains: Remove redundant check for CONFIG_PM Ulf Hansson
` (11 subsequent siblings)
17 siblings, 0 replies; 26+ messages in thread
From: Ulf Hansson @ 2014-09-03 10:52 UTC (permalink / raw)
To: linux-arm-kernel
The genpd dev_irq_safe configuration somewhat overlaps with the runtime
PM pm_runtime_irq_safe() option. Also, currently genpd don't have a
good way to deal with these device. So, until we figured out if and how
to support this in genpd, let's remove the option to configure it.
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
---
drivers/base/power/domain.c | 4 ----
include/linux/pm_domain.h | 1 -
2 files changed, 5 deletions(-)
diff --git a/drivers/base/power/domain.c b/drivers/base/power/domain.c
index e777609..4298a2b 100644
--- a/drivers/base/power/domain.c
+++ b/drivers/base/power/domain.c
@@ -615,8 +615,6 @@ static int pm_genpd_runtime_suspend(struct device *dev)
if (IS_ERR(genpd))
return -EINVAL;
- might_sleep_if(!genpd->dev_irq_safe);
-
stop_ok = genpd->gov ? genpd->gov->stop_ok : NULL;
if (stop_ok && !stop_ok(dev))
return -EBUSY;
@@ -661,8 +659,6 @@ static int pm_genpd_runtime_resume(struct device *dev)
if (IS_ERR(genpd))
return -EINVAL;
- might_sleep_if(!genpd->dev_irq_safe);
-
/* If power.irq_safe, the PM domain is never powered off. */
if (dev->power.irq_safe)
return genpd_start_dev_no_timing(genpd, dev);
diff --git a/include/linux/pm_domain.h b/include/linux/pm_domain.h
index fd5efc8..f2545a8 100644
--- a/include/linux/pm_domain.h
+++ b/include/linux/pm_domain.h
@@ -63,7 +63,6 @@ struct generic_pm_domain {
unsigned int suspended_count; /* System suspend device counter */
unsigned int prepared_count; /* Suspend counter of prepared devices */
bool suspend_power_off; /* Power status before system suspend */
- bool dev_irq_safe; /* Device callbacks are IRQ-safe */
int (*power_off)(struct generic_pm_domain *domain);
s64 power_off_latency_ns;
int (*power_on)(struct generic_pm_domain *domain);
--
1.9.1
^ permalink raw reply related [flat|nested] 26+ messages in thread
* [PATCH 07/15] PM / Domains: Remove redundant check for CONFIG_PM
2014-09-03 10:52 [PATCH 00/15] PM / Domains: Cleanups and remove superfluous APIs Ulf Hansson
` (5 preceding siblings ...)
2014-09-03 10:52 ` [PATCH 06/15] PM / Domains: Remove dev_irq_safe from " Ulf Hansson
@ 2014-09-03 10:52 ` Ulf Hansson
2014-09-03 10:52 ` [PATCH 08/15] PM / Domains: Remove pm_genpd_syscore_switch() API Ulf Hansson
` (10 subsequent siblings)
17 siblings, 0 replies; 26+ messages in thread
From: Ulf Hansson @ 2014-09-03 10:52 UTC (permalink / raw)
To: linux-arm-kernel
CONFIG_PM_GENERIC_DOMAINS depends on CONFIG_PM, thus there are no need
to check explicity for it.
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
---
drivers/base/power/domain.c | 4 ----
1 file changed, 4 deletions(-)
diff --git a/drivers/base/power/domain.c b/drivers/base/power/domain.c
index 4298a2b..b910d0f 100644
--- a/drivers/base/power/domain.c
+++ b/drivers/base/power/domain.c
@@ -66,8 +66,6 @@ static struct generic_pm_domain *pm_genpd_lookup_name(const char *domain_name)
return genpd;
}
-#ifdef CONFIG_PM
-
struct generic_pm_domain *dev_to_genpd(struct device *dev)
{
if (IS_ERR_OR_NULL(dev->pm_domain))
@@ -281,8 +279,6 @@ int pm_genpd_name_poweron(const char *domain_name)
return genpd ? pm_genpd_poweron(genpd) : -EINVAL;
}
-#endif /* CONFIG_PM */
-
#ifdef CONFIG_PM_RUNTIME
static int genpd_start_dev_no_timing(struct generic_pm_domain *genpd,
--
1.9.1
^ permalink raw reply related [flat|nested] 26+ messages in thread
* [PATCH 08/15] PM / Domains: Remove pm_genpd_syscore_switch() API
2014-09-03 10:52 [PATCH 00/15] PM / Domains: Cleanups and remove superfluous APIs Ulf Hansson
` (6 preceding siblings ...)
2014-09-03 10:52 ` [PATCH 07/15] PM / Domains: Remove redundant check for CONFIG_PM Ulf Hansson
@ 2014-09-03 10:52 ` Ulf Hansson
2014-09-03 10:52 ` [PATCH 09/15] PM / Domains: Remove genpd_queue_power_off_work() API Ulf Hansson
` (9 subsequent siblings)
17 siblings, 0 replies; 26+ messages in thread
From: Ulf Hansson @ 2014-09-03 10:52 UTC (permalink / raw)
To: linux-arm-kernel
The pm_genpd_syscore_poweroff() API and pm_genpd_syscore_poweron() API
makes the pm_genpd_syscore_switch() API redundant.
Moreover, since there are no active users, let's just remove it.
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
---
drivers/base/power/domain.c | 17 ++++++++++++++---
include/linux/pm_domain.h | 16 ++++------------
2 files changed, 18 insertions(+), 15 deletions(-)
diff --git a/drivers/base/power/domain.c b/drivers/base/power/domain.c
index b910d0f..601e35b 100644
--- a/drivers/base/power/domain.c
+++ b/drivers/base/power/domain.c
@@ -1292,13 +1292,13 @@ static void pm_genpd_complete(struct device *dev)
}
/**
- * pm_genpd_syscore_switch - Switch power during system core suspend or resume.
+ * genpd_syscore_switch - Switch power during system core suspend or resume.
* @dev: Device that normally is marked as "always on" to switch power for.
*
* This routine may only be called during the system core (syscore) suspend or
* resume phase for devices whose "always on" flags are set.
*/
-void pm_genpd_syscore_switch(struct device *dev, bool suspend)
+static void genpd_syscore_switch(struct device *dev, bool suspend)
{
struct generic_pm_domain *genpd;
@@ -1314,7 +1314,18 @@ void pm_genpd_syscore_switch(struct device *dev, bool suspend)
genpd->suspended_count--;
}
}
-EXPORT_SYMBOL_GPL(pm_genpd_syscore_switch);
+
+void pm_genpd_syscore_poweroff(struct device *dev)
+{
+ genpd_syscore_switch(dev, true);
+}
+EXPORT_SYMBOL_GPL(pm_genpd_syscore_poweroff);
+
+void pm_genpd_syscore_poweron(struct device *dev)
+{
+ genpd_syscore_switch(dev, false);
+}
+EXPORT_SYMBOL_GPL(pm_genpd_syscore_poweron);
#else
diff --git a/include/linux/pm_domain.h b/include/linux/pm_domain.h
index f2545a8..eeba1a4 100644
--- a/include/linux/pm_domain.h
+++ b/include/linux/pm_domain.h
@@ -266,19 +266,11 @@ static inline void pm_genpd_poweroff_unused(void) {}
#endif
#ifdef CONFIG_PM_GENERIC_DOMAINS_SLEEP
-extern void pm_genpd_syscore_switch(struct device *dev, bool suspend);
+extern void pm_genpd_syscore_poweroff(struct device *dev);
+extern void pm_genpd_syscore_poweron(struct device *dev);
#else
-static inline void pm_genpd_syscore_switch(struct device *dev, bool suspend) {}
+static inline void pm_genpd_syscore_poweroff(struct device *dev) {}
+static inline void pm_genpd_syscore_poweron(struct device *dev) {}
#endif
-static inline void pm_genpd_syscore_poweroff(struct device *dev)
-{
- pm_genpd_syscore_switch(dev, true);
-}
-
-static inline void pm_genpd_syscore_poweron(struct device *dev)
-{
- pm_genpd_syscore_switch(dev, false);
-}
-
#endif /* _LINUX_PM_DOMAIN_H */
--
1.9.1
^ permalink raw reply related [flat|nested] 26+ messages in thread
* [PATCH 09/15] PM / Domains: Remove genpd_queue_power_off_work() API
2014-09-03 10:52 [PATCH 00/15] PM / Domains: Cleanups and remove superfluous APIs Ulf Hansson
` (7 preceding siblings ...)
2014-09-03 10:52 ` [PATCH 08/15] PM / Domains: Remove pm_genpd_syscore_switch() API Ulf Hansson
@ 2014-09-03 10:52 ` Ulf Hansson
2014-09-03 10:52 ` [PATCH 10/15] PM / Domains: Add late_initcall to disable unused PM domains Ulf Hansson
` (8 subsequent siblings)
17 siblings, 0 replies; 26+ messages in thread
From: Ulf Hansson @ 2014-09-03 10:52 UTC (permalink / raw)
To: linux-arm-kernel
There are no active users of this API. Let's remove it and if future
needs shows up we could consider to have a get/put API instead.
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
---
drivers/base/power/domain.c | 5 ++++-
include/linux/pm_domain.h | 2 --
2 files changed, 4 insertions(+), 3 deletions(-)
diff --git a/drivers/base/power/domain.c b/drivers/base/power/domain.c
index 601e35b..d71d045 100644
--- a/drivers/base/power/domain.c
+++ b/drivers/base/power/domain.c
@@ -422,7 +422,7 @@ static bool genpd_abort_poweroff(struct generic_pm_domain *genpd)
* Queue up the execution of pm_genpd_poweroff() unless it's already been done
* before.
*/
-void genpd_queue_power_off_work(struct generic_pm_domain *genpd)
+static void genpd_queue_power_off_work(struct generic_pm_domain *genpd)
{
queue_work(pm_wq, &genpd->power_off_work);
}
@@ -729,6 +729,9 @@ static inline int genpd_dev_pm_qos_notifier(struct notifier_block *nb,
return NOTIFY_DONE;
}
+static inline void
+genpd_queue_power_off_work(struct generic_pm_domain *genpd) {}
+
static inline void genpd_power_off_work_fn(struct work_struct *work) {}
#define pm_genpd_runtime_suspend NULL
diff --git a/include/linux/pm_domain.h b/include/linux/pm_domain.h
index eeba1a4..abeb5dc 100644
--- a/include/linux/pm_domain.h
+++ b/include/linux/pm_domain.h
@@ -258,10 +258,8 @@ static inline int pm_genpd_name_add_device(const char *domain_name,
}
#ifdef CONFIG_PM_GENERIC_DOMAINS_RUNTIME
-extern void genpd_queue_power_off_work(struct generic_pm_domain *genpd);
extern void pm_genpd_poweroff_unused(void);
#else
-static inline void genpd_queue_power_off_work(struct generic_pm_domain *gpd) {}
static inline void pm_genpd_poweroff_unused(void) {}
#endif
--
1.9.1
^ permalink raw reply related [flat|nested] 26+ messages in thread
* [PATCH 10/15] PM / Domains: Add late_initcall to disable unused PM domains
2014-09-03 10:52 [PATCH 00/15] PM / Domains: Cleanups and remove superfluous APIs Ulf Hansson
` (8 preceding siblings ...)
2014-09-03 10:52 ` [PATCH 09/15] PM / Domains: Remove genpd_queue_power_off_work() API Ulf Hansson
@ 2014-09-03 10:52 ` Ulf Hansson
2014-09-03 10:52 ` [PATCH 11/15] ARM: exynos: Leave disabling of unused PM domains to genpd Ulf Hansson
` (7 subsequent siblings)
17 siblings, 0 replies; 26+ messages in thread
From: Ulf Hansson @ 2014-09-03 10:52 UTC (permalink / raw)
To: linux-arm-kernel
As default behavior let genpd at late init try to disable the unused
PM domains.
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
---
drivers/base/power/domain.c | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/drivers/base/power/domain.c b/drivers/base/power/domain.c
index d71d045..cf4651a 100644
--- a/drivers/base/power/domain.c
+++ b/drivers/base/power/domain.c
@@ -721,6 +721,13 @@ void pm_genpd_poweroff_unused(void)
mutex_unlock(&gpd_list_lock);
}
+static int __init genpd_poweroff_unused(void)
+{
+ pm_genpd_poweroff_unused();
+ return 0;
+}
+late_initcall(genpd_poweroff_unused);
+
#else
static inline int genpd_dev_pm_qos_notifier(struct notifier_block *nb,
--
1.9.1
^ permalink raw reply related [flat|nested] 26+ messages in thread
* [PATCH 11/15] ARM: exynos: Leave disabling of unused PM domains to genpd
2014-09-03 10:52 [PATCH 00/15] PM / Domains: Cleanups and remove superfluous APIs Ulf Hansson
` (9 preceding siblings ...)
2014-09-03 10:52 ` [PATCH 10/15] PM / Domains: Add late_initcall to disable unused PM domains Ulf Hansson
@ 2014-09-03 10:52 ` Ulf Hansson
2014-09-03 10:52 ` [PATCH 12/15] ARM: s3c64xx: " Ulf Hansson
` (6 subsequent siblings)
17 siblings, 0 replies; 26+ messages in thread
From: Ulf Hansson @ 2014-09-03 10:52 UTC (permalink / raw)
To: linux-arm-kernel
Since genpd at late init, will try to disable unused PM domains we
don't need to do it from here as well.
Cc: Kukjin Kim <kgene.kim@samsung.com>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
---
arch/arm/mach-exynos/exynos.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/arch/arm/mach-exynos/exynos.c b/arch/arm/mach-exynos/exynos.c
index 6a24e11..b89e5f3 100644
--- a/arch/arm/mach-exynos/exynos.c
+++ b/arch/arm/mach-exynos/exynos.c
@@ -193,7 +193,6 @@ static void __init exynos_init_late(void)
/* to be supported later */
return;
- pm_genpd_poweroff_unused();
exynos_pm_init();
}
--
1.9.1
^ permalink raw reply related [flat|nested] 26+ messages in thread
* [PATCH 12/15] ARM: s3c64xx: Leave disabling of unused PM domains to genpd
2014-09-03 10:52 [PATCH 00/15] PM / Domains: Cleanups and remove superfluous APIs Ulf Hansson
` (10 preceding siblings ...)
2014-09-03 10:52 ` [PATCH 11/15] ARM: exynos: Leave disabling of unused PM domains to genpd Ulf Hansson
@ 2014-09-03 10:52 ` Ulf Hansson
2014-09-03 10:52 ` [PATCH 13/15] drivers: sh: " Ulf Hansson
` (5 subsequent siblings)
17 siblings, 0 replies; 26+ messages in thread
From: Ulf Hansson @ 2014-09-03 10:52 UTC (permalink / raw)
To: linux-arm-kernel
Since genpd at late init, will try to disable unused PM domains we
don't need to do it from the machine specific code as well.
Cc: Ben Dooks <ben-linux@fluff.org>
Cc: Kukjin Kim <kgene.kim@samsung.com>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
---
arch/arm/mach-s3c64xx/common.c | 5 -----
arch/arm/mach-s3c64xx/common.h | 7 -------
arch/arm/mach-s3c64xx/mach-anw6410.c | 1 -
arch/arm/mach-s3c64xx/mach-crag6410.c | 1 -
arch/arm/mach-s3c64xx/mach-hmt.c | 1 -
arch/arm/mach-s3c64xx/mach-mini6410.c | 1 -
arch/arm/mach-s3c64xx/mach-ncp.c | 1 -
arch/arm/mach-s3c64xx/mach-real6410.c | 1 -
arch/arm/mach-s3c64xx/mach-smartq5.c | 1 -
arch/arm/mach-s3c64xx/mach-smartq7.c | 1 -
arch/arm/mach-s3c64xx/mach-smdk6400.c | 1 -
arch/arm/mach-s3c64xx/mach-smdk6410.c | 1 -
arch/arm/mach-s3c64xx/pm.c | 7 -------
13 files changed, 29 deletions(-)
diff --git a/arch/arm/mach-s3c64xx/common.c b/arch/arm/mach-s3c64xx/common.c
index 5c45aae..16547f2 100644
--- a/arch/arm/mach-s3c64xx/common.c
+++ b/arch/arm/mach-s3c64xx/common.c
@@ -440,8 +440,3 @@ void s3c64xx_restart(enum reboot_mode mode, const char *cmd)
/* if all else fails, or mode was for soft, jump to 0 */
soft_restart(0);
}
-
-void __init s3c64xx_init_late(void)
-{
- s3c64xx_pm_late_initcall();
-}
diff --git a/arch/arm/mach-s3c64xx/common.h b/arch/arm/mach-s3c64xx/common.h
index 7043e7a..9eb8644 100644
--- a/arch/arm/mach-s3c64xx/common.h
+++ b/arch/arm/mach-s3c64xx/common.h
@@ -23,7 +23,6 @@ void s3c64xx_init_irq(u32 vic0, u32 vic1);
void s3c64xx_init_io(struct map_desc *mach_desc, int size);
void s3c64xx_restart(enum reboot_mode mode, const char *cmd);
-void s3c64xx_init_late(void);
void s3c64xx_clk_init(struct device_node *np, unsigned long xtal_f,
unsigned long xusbxti_f, bool is_s3c6400, void __iomem *reg_base);
@@ -52,12 +51,6 @@ extern void s3c6410_map_io(void);
#define s3c6410_init NULL
#endif
-#ifdef CONFIG_PM
-int __init s3c64xx_pm_late_initcall(void);
-#else
-static inline int s3c64xx_pm_late_initcall(void) { return 0; }
-#endif
-
#ifdef CONFIG_S3C64XX_PL080
extern struct pl08x_platform_data s3c64xx_dma0_plat_data;
extern struct pl08x_platform_data s3c64xx_dma1_plat_data;
diff --git a/arch/arm/mach-s3c64xx/mach-anw6410.c b/arch/arm/mach-s3c64xx/mach-anw6410.c
index 60576df..6224c67 100644
--- a/arch/arm/mach-s3c64xx/mach-anw6410.c
+++ b/arch/arm/mach-s3c64xx/mach-anw6410.c
@@ -233,7 +233,6 @@ MACHINE_START(ANW6410, "A&W6410")
.init_irq = s3c6410_init_irq,
.map_io = anw6410_map_io,
.init_machine = anw6410_machine_init,
- .init_late = s3c64xx_init_late,
.init_time = samsung_timer_init,
.restart = s3c64xx_restart,
MACHINE_END
diff --git a/arch/arm/mach-s3c64xx/mach-crag6410.c b/arch/arm/mach-s3c64xx/mach-crag6410.c
index fe11633..10b913b 100644
--- a/arch/arm/mach-s3c64xx/mach-crag6410.c
+++ b/arch/arm/mach-s3c64xx/mach-crag6410.c
@@ -857,7 +857,6 @@ MACHINE_START(WLF_CRAGG_6410, "Wolfson Cragganmore 6410")
.init_irq = s3c6410_init_irq,
.map_io = crag6410_map_io,
.init_machine = crag6410_machine_init,
- .init_late = s3c64xx_init_late,
.init_time = samsung_timer_init,
.restart = s3c64xx_restart,
MACHINE_END
diff --git a/arch/arm/mach-s3c64xx/mach-hmt.c b/arch/arm/mach-s3c64xx/mach-hmt.c
index 19e8feb..e4b087c 100644
--- a/arch/arm/mach-s3c64xx/mach-hmt.c
+++ b/arch/arm/mach-s3c64xx/mach-hmt.c
@@ -277,7 +277,6 @@ MACHINE_START(HMT, "Airgoo-HMT")
.init_irq = s3c6410_init_irq,
.map_io = hmt_map_io,
.init_machine = hmt_machine_init,
- .init_late = s3c64xx_init_late,
.init_time = samsung_timer_init,
.restart = s3c64xx_restart,
MACHINE_END
diff --git a/arch/arm/mach-s3c64xx/mach-mini6410.c b/arch/arm/mach-s3c64xx/mach-mini6410.c
index 9cbc076..ab61af5 100644
--- a/arch/arm/mach-s3c64xx/mach-mini6410.c
+++ b/arch/arm/mach-s3c64xx/mach-mini6410.c
@@ -366,7 +366,6 @@ MACHINE_START(MINI6410, "MINI6410")
.init_irq = s3c6410_init_irq,
.map_io = mini6410_map_io,
.init_machine = mini6410_machine_init,
- .init_late = s3c64xx_init_late,
.init_time = samsung_timer_init,
.restart = s3c64xx_restart,
MACHINE_END
diff --git a/arch/arm/mach-s3c64xx/mach-ncp.c b/arch/arm/mach-s3c64xx/mach-ncp.c
index 4bae7dc..80cb144 100644
--- a/arch/arm/mach-s3c64xx/mach-ncp.c
+++ b/arch/arm/mach-s3c64xx/mach-ncp.c
@@ -103,7 +103,6 @@ MACHINE_START(NCP, "NCP")
.init_irq = s3c6410_init_irq,
.map_io = ncp_map_io,
.init_machine = ncp_machine_init,
- .init_late = s3c64xx_init_late,
.init_time = samsung_timer_init,
.restart = s3c64xx_restart,
MACHINE_END
diff --git a/arch/arm/mach-s3c64xx/mach-real6410.c b/arch/arm/mach-s3c64xx/mach-real6410.c
index fbad2af..85fa959 100644
--- a/arch/arm/mach-s3c64xx/mach-real6410.c
+++ b/arch/arm/mach-s3c64xx/mach-real6410.c
@@ -335,7 +335,6 @@ MACHINE_START(REAL6410, "REAL6410")
.init_irq = s3c6410_init_irq,
.map_io = real6410_map_io,
.init_machine = real6410_machine_init,
- .init_late = s3c64xx_init_late,
.init_time = samsung_timer_init,
.restart = s3c64xx_restart,
MACHINE_END
diff --git a/arch/arm/mach-s3c64xx/mach-smartq5.c b/arch/arm/mach-s3c64xx/mach-smartq5.c
index dec4c08..33224ab 100644
--- a/arch/arm/mach-s3c64xx/mach-smartq5.c
+++ b/arch/arm/mach-s3c64xx/mach-smartq5.c
@@ -156,7 +156,6 @@ MACHINE_START(SMARTQ5, "SmartQ 5")
.init_irq = s3c6410_init_irq,
.map_io = smartq_map_io,
.init_machine = smartq5_machine_init,
- .init_late = s3c64xx_init_late,
.init_time = samsung_timer_init,
.restart = s3c64xx_restart,
MACHINE_END
diff --git a/arch/arm/mach-s3c64xx/mach-smartq7.c b/arch/arm/mach-s3c64xx/mach-smartq7.c
index 27b3220..fc7fece 100644
--- a/arch/arm/mach-s3c64xx/mach-smartq7.c
+++ b/arch/arm/mach-s3c64xx/mach-smartq7.c
@@ -172,7 +172,6 @@ MACHINE_START(SMARTQ7, "SmartQ 7")
.init_irq = s3c6410_init_irq,
.map_io = smartq_map_io,
.init_machine = smartq7_machine_init,
- .init_late = s3c64xx_init_late,
.init_time = samsung_timer_init,
.restart = s3c64xx_restart,
MACHINE_END
diff --git a/arch/arm/mach-s3c64xx/mach-smdk6400.c b/arch/arm/mach-s3c64xx/mach-smdk6400.c
index 9107497..6f42512 100644
--- a/arch/arm/mach-s3c64xx/mach-smdk6400.c
+++ b/arch/arm/mach-s3c64xx/mach-smdk6400.c
@@ -92,7 +92,6 @@ MACHINE_START(SMDK6400, "SMDK6400")
.init_irq = s3c6400_init_irq,
.map_io = smdk6400_map_io,
.init_machine = smdk6400_machine_init,
- .init_late = s3c64xx_init_late,
.init_time = samsung_timer_init,
.restart = s3c64xx_restart,
MACHINE_END
diff --git a/arch/arm/mach-s3c64xx/mach-smdk6410.c b/arch/arm/mach-s3c64xx/mach-smdk6410.c
index 1dc86d7..661eb66 100644
--- a/arch/arm/mach-s3c64xx/mach-smdk6410.c
+++ b/arch/arm/mach-s3c64xx/mach-smdk6410.c
@@ -705,7 +705,6 @@ MACHINE_START(SMDK6410, "SMDK6410")
.init_irq = s3c6410_init_irq,
.map_io = smdk6410_map_io,
.init_machine = smdk6410_machine_init,
- .init_late = s3c64xx_init_late,
.init_time = samsung_timer_init,
.restart = s3c64xx_restart,
MACHINE_END
diff --git a/arch/arm/mach-s3c64xx/pm.c b/arch/arm/mach-s3c64xx/pm.c
index 6b37694..aaf7bea 100644
--- a/arch/arm/mach-s3c64xx/pm.c
+++ b/arch/arm/mach-s3c64xx/pm.c
@@ -347,10 +347,3 @@ static __init int s3c64xx_pm_initcall(void)
return 0;
}
arch_initcall(s3c64xx_pm_initcall);
-
-int __init s3c64xx_pm_late_initcall(void)
-{
- pm_genpd_poweroff_unused();
-
- return 0;
-}
--
1.9.1
^ permalink raw reply related [flat|nested] 26+ messages in thread
* [PATCH 13/15] drivers: sh: Leave disabling of unused PM domains to genpd
2014-09-03 10:52 [PATCH 00/15] PM / Domains: Cleanups and remove superfluous APIs Ulf Hansson
` (11 preceding siblings ...)
2014-09-03 10:52 ` [PATCH 12/15] ARM: s3c64xx: " Ulf Hansson
@ 2014-09-03 10:52 ` Ulf Hansson
2014-09-04 0:33 ` Simon Horman
2014-09-03 10:52 ` [PATCH 14/15] PM / Domains: Remove default_stop_ok() API Ulf Hansson
` (4 subsequent siblings)
17 siblings, 1 reply; 26+ messages in thread
From: Ulf Hansson @ 2014-09-03 10:52 UTC (permalink / raw)
To: linux-arm-kernel
Since genpd at late init, will try to disable unused PM domains we
don't need to do it from here as well.
Cc: Simon Horman <horms@verge.net.au>
Cc: Magnus Damm <magnus.damm@gmail.com>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
---
drivers/sh/pm_runtime.c | 11 -----------
1 file changed, 11 deletions(-)
diff --git a/drivers/sh/pm_runtime.c b/drivers/sh/pm_runtime.c
index 72f6381..fe2c2d5 100644
--- a/drivers/sh/pm_runtime.c
+++ b/drivers/sh/pm_runtime.c
@@ -75,8 +75,6 @@ static struct pm_clk_notifier_block platform_bus_notifier = {
.con_ids = { NULL, },
};
-static bool default_pm_on;
-
static int __init sh_pm_runtime_init(void)
{
if (IS_ENABLED(CONFIG_ARCH_SHMOBILE_MULTI)) {
@@ -96,16 +94,7 @@ static int __init sh_pm_runtime_init(void)
return 0;
}
- default_pm_on = true;
pm_clk_add_notifier(&platform_bus_type, &platform_bus_notifier);
return 0;
}
core_initcall(sh_pm_runtime_init);
-
-static int __init sh_pm_runtime_late_init(void)
-{
- if (default_pm_on)
- pm_genpd_poweroff_unused();
- return 0;
-}
-late_initcall(sh_pm_runtime_late_init);
--
1.9.1
^ permalink raw reply related [flat|nested] 26+ messages in thread
* [PATCH 13/15] drivers: sh: Leave disabling of unused PM domains to genpd
2014-09-03 10:52 ` [PATCH 13/15] drivers: sh: " Ulf Hansson
@ 2014-09-04 0:33 ` Simon Horman
2014-09-05 8:23 ` Ulf Hansson
0 siblings, 1 reply; 26+ messages in thread
From: Simon Horman @ 2014-09-04 0:33 UTC (permalink / raw)
To: linux-arm-kernel
On Wed, Sep 03, 2014 at 12:52:29PM +0200, Ulf Hansson wrote:
> Since genpd at late init, will try to disable unused PM domains we
> don't need to do it from here as well.
>
> Cc: Simon Horman <horms@verge.net.au>
> Cc: Magnus Damm <magnus.damm@gmail.com>
> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Acked-by: Simon Horman <horms+renesas@verge.net.au>
> ---
> drivers/sh/pm_runtime.c | 11 -----------
> 1 file changed, 11 deletions(-)
>
> diff --git a/drivers/sh/pm_runtime.c b/drivers/sh/pm_runtime.c
> index 72f6381..fe2c2d5 100644
> --- a/drivers/sh/pm_runtime.c
> +++ b/drivers/sh/pm_runtime.c
> @@ -75,8 +75,6 @@ static struct pm_clk_notifier_block platform_bus_notifier = {
> .con_ids = { NULL, },
> };
>
> -static bool default_pm_on;
> -
> static int __init sh_pm_runtime_init(void)
> {
> if (IS_ENABLED(CONFIG_ARCH_SHMOBILE_MULTI)) {
> @@ -96,16 +94,7 @@ static int __init sh_pm_runtime_init(void)
> return 0;
> }
>
> - default_pm_on = true;
> pm_clk_add_notifier(&platform_bus_type, &platform_bus_notifier);
> return 0;
> }
> core_initcall(sh_pm_runtime_init);
> -
> -static int __init sh_pm_runtime_late_init(void)
> -{
> - if (default_pm_on)
> - pm_genpd_poweroff_unused();
> - return 0;
> -}
> -late_initcall(sh_pm_runtime_late_init);
> --
> 1.9.1
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-sh" in
> the body of a message to majordomo at vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
^ permalink raw reply [flat|nested] 26+ messages in thread
* [PATCH 13/15] drivers: sh: Leave disabling of unused PM domains to genpd
2014-09-04 0:33 ` Simon Horman
@ 2014-09-05 8:23 ` Ulf Hansson
0 siblings, 0 replies; 26+ messages in thread
From: Ulf Hansson @ 2014-09-05 8:23 UTC (permalink / raw)
To: linux-arm-kernel
On 4 September 2014 02:33, Simon Horman <horms@verge.net.au> wrote:
> On Wed, Sep 03, 2014 at 12:52:29PM +0200, Ulf Hansson wrote:
>> Since genpd at late init, will try to disable unused PM domains we
>> don't need to do it from here as well.
>>
>> Cc: Simon Horman <horms@verge.net.au>
>> Cc: Magnus Damm <magnus.damm@gmail.com>
>> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
>
>
> Acked-by: Simon Horman <horms+renesas@verge.net.au>
>
Simon, thanks for your ack!
When you have time, would you please also have a look at the two patches below:
[PATCH 04/15] ARM: shmobile: Drop dev_irq_safe from r8a7779 genpd config
[PATCH 05/15] ARM: shmobile: Drop dev_irq_safe from R-mobile genpd config
Kind regards
Uffe
>> ---
>> drivers/sh/pm_runtime.c | 11 -----------
>> 1 file changed, 11 deletions(-)
>>
>> diff --git a/drivers/sh/pm_runtime.c b/drivers/sh/pm_runtime.c
>> index 72f6381..fe2c2d5 100644
>> --- a/drivers/sh/pm_runtime.c
>> +++ b/drivers/sh/pm_runtime.c
>> @@ -75,8 +75,6 @@ static struct pm_clk_notifier_block platform_bus_notifier = {
>> .con_ids = { NULL, },
>> };
>>
>> -static bool default_pm_on;
>> -
>> static int __init sh_pm_runtime_init(void)
>> {
>> if (IS_ENABLED(CONFIG_ARCH_SHMOBILE_MULTI)) {
>> @@ -96,16 +94,7 @@ static int __init sh_pm_runtime_init(void)
>> return 0;
>> }
>>
>> - default_pm_on = true;
>> pm_clk_add_notifier(&platform_bus_type, &platform_bus_notifier);
>> return 0;
>> }
>> core_initcall(sh_pm_runtime_init);
>> -
>> -static int __init sh_pm_runtime_late_init(void)
>> -{
>> - if (default_pm_on)
>> - pm_genpd_poweroff_unused();
>> - return 0;
>> -}
>> -late_initcall(sh_pm_runtime_late_init);
>> --
>> 1.9.1
>>
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-sh" in
>> the body of a message to majordomo at vger.kernel.org
>> More majordomo info at http://vger.kernel.org/majordomo-info.html
>>
^ permalink raw reply [flat|nested] 26+ messages in thread
* [PATCH 14/15] PM / Domains: Remove default_stop_ok() API
2014-09-03 10:52 [PATCH 00/15] PM / Domains: Cleanups and remove superfluous APIs Ulf Hansson
` (12 preceding siblings ...)
2014-09-03 10:52 ` [PATCH 13/15] drivers: sh: " Ulf Hansson
@ 2014-09-03 10:52 ` Ulf Hansson
2014-09-03 13:15 ` Geert Uytterhoeven
2014-09-03 10:52 ` [PATCH 15/15] PM / Domains: Keep declaration of dev_power_governors together Ulf Hansson
` (3 subsequent siblings)
17 siblings, 1 reply; 26+ messages in thread
From: Ulf Hansson @ 2014-09-03 10:52 UTC (permalink / raw)
To: linux-arm-kernel
There are currently no need to export default_stop_ok() as an API,
instead let's keep it local to the PM domain governor.
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
---
drivers/base/power/domain_governor.c | 7 ++-----
include/linux/pm_domain.h | 6 ------
2 files changed, 2 insertions(+), 11 deletions(-)
diff --git a/drivers/base/power/domain_governor.c b/drivers/base/power/domain_governor.c
index a089e3b..d88a62e 100644
--- a/drivers/base/power/domain_governor.c
+++ b/drivers/base/power/domain_governor.c
@@ -42,7 +42,7 @@ static int dev_update_qos_constraint(struct device *dev, void *data)
* default_stop_ok - Default PM domain governor routine for stopping devices.
* @dev: Device to check.
*/
-bool default_stop_ok(struct device *dev)
+static bool default_stop_ok(struct device *dev)
{
struct gpd_timing_data *td = &dev_gpd_data(dev)->td;
unsigned long flags;
@@ -229,10 +229,7 @@ static bool always_on_power_down_ok(struct dev_pm_domain *domain)
#else /* !CONFIG_PM_RUNTIME */
-bool default_stop_ok(struct device *dev)
-{
- return false;
-}
+static inline bool default_stop_ok(struct device *dev) { return false; }
#define default_power_down_ok NULL
#define always_on_power_down_ok NULL
diff --git a/include/linux/pm_domain.h b/include/linux/pm_domain.h
index abeb5dc..ebf52ae 100644
--- a/include/linux/pm_domain.h
+++ b/include/linux/pm_domain.h
@@ -151,8 +151,6 @@ extern void pm_genpd_init(struct generic_pm_domain *genpd,
extern int pm_genpd_poweron(struct generic_pm_domain *genpd);
extern int pm_genpd_name_poweron(const char *domain_name);
-extern bool default_stop_ok(struct device *dev);
-
extern struct dev_power_governor pm_domain_always_on_gov;
#else
@@ -231,10 +229,6 @@ static inline int pm_genpd_name_poweron(const char *domain_name)
{
return -ENOSYS;
}
-static inline bool default_stop_ok(struct device *dev)
-{
- return false;
-}
#define simple_qos_governor NULL
#define pm_domain_always_on_gov NULL
#endif
--
1.9.1
^ permalink raw reply related [flat|nested] 26+ messages in thread
* [PATCH 14/15] PM / Domains: Remove default_stop_ok() API
2014-09-03 10:52 ` [PATCH 14/15] PM / Domains: Remove default_stop_ok() API Ulf Hansson
@ 2014-09-03 13:15 ` Geert Uytterhoeven
2014-09-04 19:49 ` Rafael J. Wysocki
0 siblings, 1 reply; 26+ messages in thread
From: Geert Uytterhoeven @ 2014-09-03 13:15 UTC (permalink / raw)
To: linux-arm-kernel
Hi Ulf,
On Wed, Sep 3, 2014 at 12:52 PM, Ulf Hansson <ulf.hansson@linaro.org> wrote:
> --- a/drivers/base/power/domain_governor.c
> +++ b/drivers/base/power/domain_governor.c
> @@ -229,10 +229,7 @@ static bool always_on_power_down_ok(struct dev_pm_domain *domain)
>
> #else /* !CONFIG_PM_RUNTIME */
>
> -bool default_stop_ok(struct device *dev)
> -{
> - return false;
> -}
> +static inline bool default_stop_ok(struct device *dev) { return false; }
The "inline" doesn't make much sense here. This function is only
referenced from places that need its address:
struct dev_power_governor simple_qos_governor = {
.stop_ok = default_stop_ok,
.power_down_ok = default_power_down_ok,
};
and
struct dev_power_governor pm_domain_always_on_gov = {
.power_down_ok = always_on_power_down_ok,
.stop_ok = default_stop_ok,
};
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert at linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
^ permalink raw reply [flat|nested] 26+ messages in thread
* [PATCH 14/15] PM / Domains: Remove default_stop_ok() API
2014-09-03 13:15 ` Geert Uytterhoeven
@ 2014-09-04 19:49 ` Rafael J. Wysocki
2014-09-05 8:16 ` Ulf Hansson
0 siblings, 1 reply; 26+ messages in thread
From: Rafael J. Wysocki @ 2014-09-04 19:49 UTC (permalink / raw)
To: linux-arm-kernel
On Wednesday, September 03, 2014 03:15:59 PM Geert Uytterhoeven wrote:
> Hi Ulf,
>
> On Wed, Sep 3, 2014 at 12:52 PM, Ulf Hansson <ulf.hansson@linaro.org> wrote:
> > --- a/drivers/base/power/domain_governor.c
> > +++ b/drivers/base/power/domain_governor.c
>
> > @@ -229,10 +229,7 @@ static bool always_on_power_down_ok(struct dev_pm_domain *domain)
> >
> > #else /* !CONFIG_PM_RUNTIME */
> >
> > -bool default_stop_ok(struct device *dev)
> > -{
> > - return false;
> > -}
> > +static inline bool default_stop_ok(struct device *dev) { return false; }
>
> The "inline" doesn't make much sense here.
But then it doesn't hurt either I suppose?
Anyway, Ulf, are you going to update this patch?
--
I speak only for myself.
Rafael J. Wysocki, Intel Open Source Technology Center.
^ permalink raw reply [flat|nested] 26+ messages in thread
* [PATCH 14/15] PM / Domains: Remove default_stop_ok() API
2014-09-04 19:49 ` Rafael J. Wysocki
@ 2014-09-05 8:16 ` Ulf Hansson
0 siblings, 0 replies; 26+ messages in thread
From: Ulf Hansson @ 2014-09-05 8:16 UTC (permalink / raw)
To: linux-arm-kernel
On 4 September 2014 21:49, Rafael J. Wysocki <rjw@rjwysocki.net> wrote:
> On Wednesday, September 03, 2014 03:15:59 PM Geert Uytterhoeven wrote:
>> Hi Ulf,
>>
>> On Wed, Sep 3, 2014 at 12:52 PM, Ulf Hansson <ulf.hansson@linaro.org> wrote:
>> > --- a/drivers/base/power/domain_governor.c
>> > +++ b/drivers/base/power/domain_governor.c
>>
>> > @@ -229,10 +229,7 @@ static bool always_on_power_down_ok(struct dev_pm_domain *domain)
>> >
>> > #else /* !CONFIG_PM_RUNTIME */
>> >
>> > -bool default_stop_ok(struct device *dev)
>> > -{
>> > - return false;
>> > -}
>> > +static inline bool default_stop_ok(struct device *dev) { return false; }
>>
>> The "inline" doesn't make much sense here.
>
> But then it doesn't hurt either I suppose?
>
> Anyway, Ulf, are you going to update this patch?
Unless there are other comments, I would prefer to not update. :-)
Kind regards
Uffe
^ permalink raw reply [flat|nested] 26+ messages in thread
* [PATCH 15/15] PM / Domains: Keep declaration of dev_power_governors together
2014-09-03 10:52 [PATCH 00/15] PM / Domains: Cleanups and remove superfluous APIs Ulf Hansson
` (13 preceding siblings ...)
2014-09-03 10:52 ` [PATCH 14/15] PM / Domains: Remove default_stop_ok() API Ulf Hansson
@ 2014-09-03 10:52 ` Ulf Hansson
2014-09-03 11:10 ` [PATCH 00/15] PM / Domains: Cleanups and remove superfluous APIs Arnd Bergmann
` (2 subsequent siblings)
17 siblings, 0 replies; 26+ messages in thread
From: Ulf Hansson @ 2014-09-03 10:52 UTC (permalink / raw)
To: linux-arm-kernel
This is a pure code cleanup in the header file for the PM domain. No
functional change.
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
---
include/linux/pm_domain.h | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/include/linux/pm_domain.h b/include/linux/pm_domain.h
index ebf52ae..324b927 100644
--- a/include/linux/pm_domain.h
+++ b/include/linux/pm_domain.h
@@ -117,8 +117,6 @@ static inline struct generic_pm_domain_data *dev_gpd_data(struct device *dev)
return to_gpd_data(dev->power.subsys_data->domain_data);
}
-extern struct dev_power_governor simple_qos_governor;
-
extern struct generic_pm_domain *dev_to_genpd(struct device *dev);
extern int __pm_genpd_add_device(struct generic_pm_domain *genpd,
struct device *dev,
@@ -151,6 +149,7 @@ extern void pm_genpd_init(struct generic_pm_domain *genpd,
extern int pm_genpd_poweron(struct generic_pm_domain *genpd);
extern int pm_genpd_name_poweron(const char *domain_name);
+extern struct dev_power_governor simple_qos_governor;
extern struct dev_power_governor pm_domain_always_on_gov;
#else
--
1.9.1
^ permalink raw reply related [flat|nested] 26+ messages in thread
* [PATCH 00/15] PM / Domains: Cleanups and remove superfluous APIs
2014-09-03 10:52 [PATCH 00/15] PM / Domains: Cleanups and remove superfluous APIs Ulf Hansson
` (14 preceding siblings ...)
2014-09-03 10:52 ` [PATCH 15/15] PM / Domains: Keep declaration of dev_power_governors together Ulf Hansson
@ 2014-09-03 11:10 ` Arnd Bergmann
2014-09-04 8:40 ` Geert Uytterhoeven
2014-09-05 15:35 ` Kevin Hilman
17 siblings, 0 replies; 26+ messages in thread
From: Arnd Bergmann @ 2014-09-03 11:10 UTC (permalink / raw)
To: linux-arm-kernel
On Wednesday 03 September 2014 12:52:16 Ulf Hansson wrote:
>
> arch/arm/mach-exynos/exynos.c | 1 -
> arch/arm/mach-s3c64xx/common.c | 5 -
> arch/arm/mach-s3c64xx/common.h | 7 -
> arch/arm/mach-s3c64xx/mach-anw6410.c | 1 -
> arch/arm/mach-s3c64xx/mach-crag6410.c | 1 -
> arch/arm/mach-s3c64xx/mach-hmt.c | 1 -
> arch/arm/mach-s3c64xx/mach-mini6410.c | 1 -
> arch/arm/mach-s3c64xx/mach-ncp.c | 1 -
> arch/arm/mach-s3c64xx/mach-real6410.c | 1 -
> arch/arm/mach-s3c64xx/mach-smartq5.c | 1 -
> arch/arm/mach-s3c64xx/mach-smartq7.c | 1 -
> arch/arm/mach-s3c64xx/mach-smdk6400.c | 1 -
> arch/arm/mach-s3c64xx/mach-smdk6410.c | 1 -
> arch/arm/mach-s3c64xx/pm.c | 7 -
> arch/arm/mach-shmobile/pm-r8a7779.c | 1 -
> arch/arm/mach-shmobile/pm-rmobile.c | 1 -
> drivers/base/power/domain.c | 322 ++++------------------------------
> drivers/base/power/domain_governor.c | 7 +-
> drivers/sh/pm_runtime.c | 11 --
> include/linux/pm_domain.h | 56 +-----
> 20 files changed, 40 insertions(+), 388 deletions(-)
>
Wow, great diffstat!
I have no idea what this series really does, but I love it ;-)
Arnd
^ permalink raw reply [flat|nested] 26+ messages in thread
* [PATCH 00/15] PM / Domains: Cleanups and remove superfluous APIs
2014-09-03 10:52 [PATCH 00/15] PM / Domains: Cleanups and remove superfluous APIs Ulf Hansson
` (15 preceding siblings ...)
2014-09-03 11:10 ` [PATCH 00/15] PM / Domains: Cleanups and remove superfluous APIs Arnd Bergmann
@ 2014-09-04 8:40 ` Geert Uytterhoeven
2014-09-05 15:35 ` Kevin Hilman
17 siblings, 0 replies; 26+ messages in thread
From: Geert Uytterhoeven @ 2014-09-04 8:40 UTC (permalink / raw)
To: linux-arm-kernel
Hi Ulf,
On Wed, Sep 3, 2014 at 12:52 PM, Ulf Hansson <ulf.hansson@linaro.org> wrote:
> This patchset has a bit of a history and some parts of it has been posted
> earlier.
> http://lists.infradead.org/pipermail/linux-arm-kernel/2014-June/262725.html
>
> The intent is to simplify code for the generic power domain and also some of
> the machine specific code that uses the generic power domain.
>
> Do note, there are dependencies through this patchset, especially related to
> the ARM SoC changes, thus they all need to be kept together.
Thanks for your patch series!
I gave this series (on top of "[PATCH v2 0/9] PM / Domains: Generic OF-based
support", with one minor conflict) a quick run on r8a7791/koelsch-reference,
r8a7740/armadillo-legacy, and r8a7740/armadillo-multiplatform.
Everything looks fine.
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert at linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
^ permalink raw reply [flat|nested] 26+ messages in thread
* [PATCH 00/15] PM / Domains: Cleanups and remove superfluous APIs
2014-09-03 10:52 [PATCH 00/15] PM / Domains: Cleanups and remove superfluous APIs Ulf Hansson
` (16 preceding siblings ...)
2014-09-04 8:40 ` Geert Uytterhoeven
@ 2014-09-05 15:35 ` Kevin Hilman
2014-09-08 23:07 ` Rafael J. Wysocki
17 siblings, 1 reply; 26+ messages in thread
From: Kevin Hilman @ 2014-09-05 15:35 UTC (permalink / raw)
To: linux-arm-kernel
Ulf Hansson <ulf.hansson@linaro.org> writes:
> This patchset has a bit of a history and some parts of it has been posted
> earlier.
> http://lists.infradead.org/pipermail/linux-arm-kernel/2014-June/262725.html
>
> The intent is to simplify code for the generic power domain and also some of
> the machine specific code that uses the generic power domain.
>
> Do note, there are dependencies through this patchset, especially related to
> the ARM SoC changes, thus they all need to be kept together.
Reviewed-by: Kevin Hilman <khilman@linaro.org>
^ permalink raw reply [flat|nested] 26+ messages in thread
* [PATCH 00/15] PM / Domains: Cleanups and remove superfluous APIs
2014-09-05 15:35 ` Kevin Hilman
@ 2014-09-08 23:07 ` Rafael J. Wysocki
2014-09-09 15:05 ` Kevin Hilman
0 siblings, 1 reply; 26+ messages in thread
From: Rafael J. Wysocki @ 2014-09-08 23:07 UTC (permalink / raw)
To: linux-arm-kernel
On Friday, September 05, 2014 08:35:56 AM Kevin Hilman wrote:
> Ulf Hansson <ulf.hansson@linaro.org> writes:
>
> > This patchset has a bit of a history and some parts of it has been posted
> > earlier.
> > http://lists.infradead.org/pipermail/linux-arm-kernel/2014-June/262725.html
> >
> > The intent is to simplify code for the generic power domain and also some of
> > the machine specific code that uses the generic power domain.
> >
> > Do note, there are dependencies through this patchset, especially related to
> > the ARM SoC changes, thus they all need to be kept together.
>
> Reviewed-by: Kevin Hilman <khilman@linaro.org>
My understanding is that this is for the whole series.
Which I'm queuing up for 3.18, thanks!
--
I speak only for myself.
Rafael J. Wysocki, Intel Open Source Technology Center.
^ permalink raw reply [flat|nested] 26+ messages in thread
* [PATCH 00/15] PM / Domains: Cleanups and remove superfluous APIs
2014-09-08 23:07 ` Rafael J. Wysocki
@ 2014-09-09 15:05 ` Kevin Hilman
0 siblings, 0 replies; 26+ messages in thread
From: Kevin Hilman @ 2014-09-09 15:05 UTC (permalink / raw)
To: linux-arm-kernel
"Rafael J. Wysocki" <rjw@rjwysocki.net> writes:
> On Friday, September 05, 2014 08:35:56 AM Kevin Hilman wrote:
>> Ulf Hansson <ulf.hansson@linaro.org> writes:
>>
>> > This patchset has a bit of a history and some parts of it has been posted
>> > earlier.
>> > http://lists.infradead.org/pipermail/linux-arm-kernel/2014-June/262725.html
>> >
>> > The intent is to simplify code for the generic power domain and also some of
>> > the machine specific code that uses the generic power domain.
>> >
>> > Do note, there are dependencies through this patchset, especially related to
>> > the ARM SoC changes, thus they all need to be kept together.
>>
>> Reviewed-by: Kevin Hilman <khilman@linaro.org>
>
> My understanding is that this is for the whole series.
Correct.
Kevin
^ permalink raw reply [flat|nested] 26+ messages in thread