Merge tag 'pm-extra-4.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael...
authorLinus Torvalds <torvalds@linux-foundation.org>
Mon, 10 Jul 2017 22:16:21 +0000 (15:16 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Mon, 10 Jul 2017 22:16:21 +0000 (15:16 -0700)
Pull more power management updates from Rafael Wysocki:
 "These revert one recent change in the generic power domains
  framework, fix a recently introduced build issue in there and
  constify attribute_group structures in some places.

  Specifics:

   - Revert a recent change in the generic power domains (genpd)
     framework that led to regressions and turned out the be misguided
     (Rafael Wysocki).

   - Fix a recently introduced build issue in the generic power domains
     (genpd) framework (Arnd Bergmann).

   - Constify attribute_group structures in the PM core, the cpufreq
     stats code and in intel_pstate (Arvind Yadav)"

* tag 'pm-extra-4.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
  cpufreq: intel_pstate: constify attribute_group structures
  cpufreq: cpufreq_stats: constify attribute_group structures
  PM / sleep: constify attribute_group structures
  PM / Domains: provide pm_genpd_poweroff_noirq() stub
  Revert "PM / Domains: Handle safely genpd_syscore_switch() call on non-genpd device"

drivers/base/power/domain.c
drivers/cpufreq/cpufreq_stats.c
drivers/cpufreq/intel_pstate.c
kernel/power/main.c

index 9649dce63e19068f853cb5a81ad19876b4775e55..3b8210ebb50ebfd1844622a883193fecdacaa282 100644 (file)
@@ -1148,8 +1148,8 @@ static void genpd_syscore_switch(struct device *dev, bool suspend)
 {
        struct generic_pm_domain *genpd;
 
-       genpd = genpd_lookup_dev(dev);
-       if (!genpd)
+       genpd = dev_to_genpd(dev);
+       if (!pm_genpd_present(genpd))
                return;
 
        if (suspend) {
@@ -1180,6 +1180,7 @@ EXPORT_SYMBOL_GPL(pm_genpd_syscore_poweron);
 #define pm_genpd_resume_noirq          NULL
 #define pm_genpd_freeze_noirq          NULL
 #define pm_genpd_thaw_noirq            NULL
+#define pm_genpd_poweroff_noirq                NULL
 #define pm_genpd_restore_noirq         NULL
 #define pm_genpd_complete              NULL
 
index f570ead624547e111d74911e722b31aabcfce117..d362739a71f3701e42d55f2ef508023c4de96cb2 100644 (file)
@@ -135,7 +135,7 @@ static struct attribute *default_attrs[] = {
        &trans_table.attr,
        NULL
 };
-static struct attribute_group stats_attr_group = {
+static const struct attribute_group stats_attr_group = {
        .attrs = default_attrs,
        .name = "stats"
 };
index 48a98f11a84ee79b9ccabcff6c6865a0c51a6e26..d6f323560da39f87d1219a158aabfaf35ceea07d 100644 (file)
@@ -1214,7 +1214,7 @@ static struct attribute *intel_pstate_attributes[] = {
        NULL
 };
 
-static struct attribute_group intel_pstate_attr_group = {
+static const struct attribute_group intel_pstate_attr_group = {
        .attrs = intel_pstate_attributes,
 };
 
index d401c21136d1c80b1996ce1c19c5b8f26bcf8adf..42bd800a6755be14cea9a296aa5c7db57bd7fdea 100644 (file)
@@ -705,7 +705,7 @@ static struct attribute * g[] = {
        NULL,
 };
 
-static struct attribute_group attr_group = {
+static const struct attribute_group attr_group = {
        .attrs = g,
 };