1. 30 Jun, 2013 1 commit
    • Srivatsa S. Bhat's avatar
      cpufreq: Fix cpufreq regression after suspend/resume · f51e1eb6
      Srivatsa S. Bhat authored
      Toralf Förster reported that the cpufreq ondemand governor behaves erratically
      (doesn't scale well) after a suspend/resume cycle. The problem was that the
      cpufreq subsystem's idea of the cpu frequencies differed from the actual
      frequencies set in the hardware after a suspend/resume cycle. Toralf bisected
      the problem to commit a66b2e5 (cpufreq: Preserve sysfs files across
      suspend/resume).
      
      Among other (harmless) things, that commit skipped the call to
      cpufreq_update_policy() in the resume path. But cpufreq_update_policy() plays
      an important role during resume, because it is responsible for checking if
      the BIOS changed the cpu frequencies behind our back and resynchronize the
      cpufreq subsystem's knowledge of the cpu frequencies, and update them
      accordingly.
      
      So, restore the call to cpufreq_update_policy() in the resume path to fix
      the cpufreq regression.
      Reported-and-tested-by: default avatarToralf Förster <toralf.foerster@gmx.de>
      Signed-off-by: default avatarSrivatsa S. Bhat <srivatsa.bhat@linux.vnet.ibm.com>
      Cc: 3.10+ <stable@vger.kernel.org>
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      f51e1eb6
  2. 27 Jun, 2013 7 commits
    • Jacob Shin's avatar
      cpufreq: don't leave stale policy pointer in cdbs->cur_policy · 419e1721
      Jacob Shin authored
      Clear ->cur_policy when stopping a governor, or the ->cur_policy
      pointer may be stale on systems with have_governor_per_policy when a
      new policy is allocated due to CPU hotplug offline/online.
      
      [rjw: Changelog]
      Suggested-by: default avatarViresh Kumar <viresh.kumar@linaro.org>
      Signed-off-by: default avatarJacob Shin <jacob.shin@amd.com>
      Acked-by: default avatarViresh Kumar <viresh.kumar@linaro.org>
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      419e1721
    • Rafael J. Wysocki's avatar
      Merge branch 'pm-fixes' into pm-cpufreq · 874e628f
      Rafael J. Wysocki authored
      A subsequent commit depends on the 'pm-fixes' commits.
      874e628f
    • Lan Tianyu's avatar
      acpi-cpufreq: Add new sysfs attribute freqdomain_cpus · f4fd3797
      Lan Tianyu authored
      Commits fcf80582 (cpufreq: Simplify cpufreq_add_dev()) and aa77a527
      (cpufreq: acpi-cpufreq: Don't set policy->related_cpus from .init())
      changed the contents of the "related_cpus" sysfs attribute on systems
      where acpi-cpufreq is used and user space can't get the list of CPUs
      which are in the same hardware coordination CPU domain (provided by
      the ACPI AML method _PSD) via "related_cpus" any more.
      
      To make up for that loss add a new sysfs attribute "freqdomian_cpus"
      for the acpi-cpufreq driver which exposes the list of CPUs in the
      same domain regardless of whether it is coordinated by hardware or
      software.
      
      [rjw: Changelog, documentation]
      References: https://bugzilla.kernel.org/show_bug.cgi?id=58761Reported-by: default avatarJean-Philippe Halimi <jean-philippe.halimi@exascale-computing.eu>
      Signed-off-by: default avatarLan Tianyu <tianyu.lan@intel.com>
      Acked-by: default avatarViresh Kumar <viresh.kumar@linaro.org>
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      f4fd3797
    • Viresh Kumar's avatar
      cpufreq: make sure frequency transitions are serialized · 7c30ed53
      Viresh Kumar authored
      Whenever we are changing frequency of a cpu, we are calling PRECHANGE and
      POSTCHANGE notifiers. They must be serialized. i.e. PRECHANGE or POSTCHANGE
      shouldn't be called twice contiguously.
      
      This can happen due to bugs in users of __cpufreq_driver_target() or actual
      cpufreq drivers who are sending these notifiers.
      
      This patch adds some protection against this. Now, we keep track of the last
      transaction and see if something went wrong.
      Signed-off-by: default avatarViresh Kumar <viresh.kumar@linaro.org>
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      7c30ed53
    • Rafael J. Wysocki's avatar
      Merge branch 'pm-cpufreq-arm' into pm-cpufreq · e11158c0
      Rafael J. Wysocki authored
      * pm-cpufreq-arm:
        cpufreq: tegra: call CPUFREQ_POSTCHANGE notfier in error cases
        cpufreq: s3c64xx: call CPUFREQ_POSTCHANGE notfier in error cases
        cpufreq: omap: call CPUFREQ_POSTCHANGE notfier in error cases
        cpufreq: imx6q: call CPUFREQ_POSTCHANGE notfier in error cases
        cpufreq: exynos: call CPUFREQ_POSTCHANGE notfier in error cases
        cpufreq: dbx500: call CPUFREQ_POSTCHANGE notfier in error cases
        cpufreq: davinci: call CPUFREQ_POSTCHANGE notfier in error cases
        cpufreq: arm-big-little: call CPUFREQ_POSTCHANGE notfier in error cases
        cpufreq: s3c2416: fix forgotten driver_data conversions
      e11158c0
    • Rafael J. Wysocki's avatar
      Merge branch 'pm-cpufreq-assorted' into pm-cpufreq · 39a95f48
      Rafael J. Wysocki authored
      * pm-cpufreq-assorted: (21 commits)
        cpufreq: powernow-k8: call CPUFREQ_POSTCHANGE notfier in error cases
        cpufreq: pcc: call CPUFREQ_POSTCHANGE notfier in error cases
        cpufreq: e_powersaver: call CPUFREQ_POSTCHANGE notfier in error cases
        cpufreq: ACPI: call CPUFREQ_POSTCHANGE notfier in error cases
        cpufreq: make __cpufreq_notify_transition() static
        cpufreq: Fix minor formatting issues
        cpufreq: Fix governor start/stop race condition
        cpufreq: Simplify userspace governor
        cpufreq: powerpc: move cpufreq driver to drivers/cpufreq
        cpufreq: kirkwood: Select CPU_FREQ_TABLE option
        cpufreq: big.LITTLE needs cpufreq table
        cpufreq: SPEAr needs cpufreq table
        cpufreq: powerpc: Add cpufreq driver for Freescale e500mc SoCs
        cpufreq: remove unnecessary cpufreq_cpu_{get|put}() calls
        cpufreq: MAINTAINERS: Add git tree path for ARM specific updates
        cpufreq: rename index as driver_data in cpufreq_frequency_table
        cpufreq: Don't create empty /sys/devices/system/cpu/cpufreq directory
        cpufreq: Move get_cpu_idle_time() to cpufreq.c
        cpufreq: governors: Move get_governor_parent_kobj() to cpufreq.c
        cpufreq: Add EXPORT_SYMBOL_GPL for have_governor_per_policy
        ...
      39a95f48
    • Rafael J. Wysocki's avatar
      Merge branch 'pm-cpufreq-Kconfig' into pm-cpufreq · 7ae9b27b
      Rafael J. Wysocki authored
      * pm-cpufreq-Kconfig:
        cpufreq: X86_AMD_FREQ_SENSITIVITY: select CPU_FREQ_TABLE
        cpufreq: tegra: create CONFIG_ARM_TEGRA_CPUFREQ
        cpufreq: S3C2416/S3C64XX: select CPU_FREQ_TABLE
        cpufreq: pxa: select CPU_FREQ_TABLE
        cpufreq: powerpc: CBE_RAS: select CPU_FREQ_TABLE
        cpufreq: imx: select CPU_FREQ_TABLE
        cpufreq: highbank: remove select CPU_FREQ_TABLE
        cpufreq: exynos: select CPU_FREQ_TABLE
        cpufreq: davinci: select CPU_FREQ_TABLE
        cpufreq: cris: select CPU_FREQ_TABLE
        cpufreq: blackfin: enable driver for CONFIG_BFIN_CPU_FREQ
      7ae9b27b
  3. 25 Jun, 2013 1 commit
  4. 24 Jun, 2013 15 commits
  5. 22 Jun, 2013 9 commits
  6. 21 Jun, 2013 7 commits