1. 04 Mar, 2019 3 commits
    • Rafael J. Wysocki's avatar
      Merge branch 'pm-cpufreq' · 6a558c72
      Rafael J. Wysocki authored
      * pm-cpufreq: (48 commits)
        cpufreq: kryo: Release OPP tables on module removal
        cpufreq: ap806: add missing of_node_put after of_device_is_available
        cpufreq: acpi-cpufreq: Report if CPU doesn't support boost technologies
        cpufreq: Pass updated policy to driver ->setpolicy() callback
        cpufreq: Fix two debug messages in cpufreq_set_policy()
        cpufreq: Reorder and simplify cpufreq_update_policy()
        cpufreq: Add kerneldoc comments for two core functions
        cpufreq: intel_pstate: Rework iowait boosting to be less aggressive
        cpufreq: intel_pstate: Eliminate intel_pstate_get_base_pstate()
        cpufreq: intel_pstate: Avoid redundant initialization of local vars
        cpufreq / cppc: Work around for Hisilicon CPPC cpufreq
        ACPI / CPPC: Add a helper to get desired performance
        cpufreq: davinci: move configuration to include/linux/platform_data
        cpufreq: speedstep: convert BUG() to BUG_ON()
        cpufreq: powernv: fix missing check of return value in init_powernv_pstates()
        cpufreq: longhaul: remove unneeded semicolon
        cpufreq: pcc-cpufreq: remove unneeded semicolon
        cpufreq: Replace double NOT (!!) with single NOT (!)
        cpufreq: intel_pstate: Add reasons for failure and debug messages
        cpufreq: dt: Implement online/offline() callbacks
        ...
      6a558c72
    • Rafael J. Wysocki's avatar
      Merge branches 'pm-cpuidle' and 'powercap' · 08a2e45a
      Rafael J. Wysocki authored
      * pm-cpuidle:
        ACPI / processor: Set P_LVL{2,3} idle state descriptions
        intel_idle: add support for Jacobsville
        cpuidle: dt: bail out if the idle-state DT node is not compatible
        cpuidle: use BIT() for idle state flags and remove CPUIDLE_DRIVER_FLAGS_MASK
        Documentation: driver-api: PM: Add cpuidle document
        cpuidle: New timer events oriented governor for tickless systems
      
      * powercap:
        powercap/intel_rapl: add Ice Lake mobile
        powercap: intel_rapl: add support for Jacobsville
      08a2e45a
    • Rafael J. Wysocki's avatar
      Merge branches 'pm-core', 'pm-sleep', 'pm-qos', 'pm-domains' and 'pm-em' · c3739c50
      Rafael J. Wysocki authored
      * pm-core:
        PM / core: Add support to skip power management in device/driver model
        PM / suspend: Print debug messages for device using direct-complete
        PM-runtime: update time accounting only when enabled
        PM-runtime: Switch accounting over to ktime_get_mono_fast_ns()
        PM-runtime: Optimize pm_runtime_autosuspend_expiration()
        PM-runtime: Replace jiffies-based accounting with ktime-based accounting
        PM-runtime: update accounting_timestamp on enable
        PM: clock_ops: fix missing clk_prepare() return value check
        drm/i915: Move on the new pm runtime interface
        PM-runtime: Add new interface to get accounted time
      
      * pm-sleep:
        PM / wakeup: fix kerneldoc comment for pm_wakeup_dev_event()
      
      * pm-qos:
        PM: QoS: no need to check return value of debugfs_create functions
      
      * pm-domains:
        PM / Domains: Mark "name" const in dev_pm_domain_attach_by_name()
        PM / Domains: Mark "name" const in genpd_dev_pm_attach_by_name()
        PM: domains: no need to check return value of debugfs_create functions
      
      * pm-em:
        PM / EM: Expose the Energy Model in debugfs
      c3739c50
  2. 01 Mar, 2019 1 commit
  3. 28 Feb, 2019 1 commit
    • Viresh Kumar's avatar
      cpufreq: kryo: Release OPP tables on module removal · 0334906c
      Viresh Kumar authored
      Commit 5ad7346b ("cpufreq: kryo: Add module remove and exit") made
      it possible to build the kryo cpufreq driver as a module, but it failed
      to release all the resources, i.e. OPP tables, when the module is
      unloaded.
      
      This patch fixes it by releasing the OPP tables, by calling
      dev_pm_opp_put_supported_hw() for them, from the
      qcom_cpufreq_kryo_remove() routine. The array of pointers to the OPP
      tables is also allocated dynamically now in qcom_cpufreq_kryo_probe(),
      as the pointers will be required while releasing the resources.
      
      Compile tested only.
      
      Cc: 4.18+ <stable@vger.kernel.org> # v4.18+
      Fixes: 5ad7346b ("cpufreq: kryo: Add module remove and exit")
      Reviewed-by: default avatarGeorgi Djakov <georgi.djakov@linaro.org>
      Signed-off-by: default avatarViresh Kumar <viresh.kumar@linaro.org>
      0334906c
  4. 25 Feb, 2019 1 commit
  5. 24 Feb, 2019 2 commits
  6. 22 Feb, 2019 1 commit
  7. 21 Feb, 2019 1 commit
  8. 20 Feb, 2019 5 commits
  9. 19 Feb, 2019 3 commits
    • Yangtao Li's avatar
      cpufreq: scmi: Fix use-after-free in scmi_cpufreq_exit() · 8cbd468b
      Yangtao Li authored
      This issue was detected with the help of Coccinelle. So
      change the order of function calls to fix it.
      
      Fixes: 1690d8bb (cpufreq: scpi/scmi: Fix freeing of dynamic OPPs)
      Signed-off-by: default avatarYangtao Li <tiny.windzz@gmail.com>
      Acked-by: default avatarViresh Kumar <viresh.kumar@linaro.org>
      Acked-by: default avatarSudeep Holla <sudeep.holla@arm.com>
      Cc: 4.20+ <stable@vger.kernel.org> # 4.20+
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      8cbd468b
    • Sudeep Holla's avatar
      PM / core: Add support to skip power management in device/driver model · 85945c28
      Sudeep Holla authored
      All device objects in the driver model contain fields that control the
      handling of various power management activities. However, it's not
      always useful. There are few instances where pseudo devices are added
      to the model just to take advantage of many other features like
      kobjects, udev events, and so on. One such example is cpu devices and
      their caches.
      
      The sysfs for the cpu caches are managed by adding devices with cpu
      as the parent in cpu_device_create() when secondary cpu is brought
      online. Generally when the secondary CPUs are hotplugged back in as part
      of resume from suspend-to-ram, we call cpu_device_create() from the cpu
      hotplug state machine while the cpu device associated with that CPU is
      not yet ready to be resumed as the device_resume() call happens bit
      later. It's not really needed to set the flag is_prepared for cpu
      devices as they are mostly pseudo device and hotplug framework deals
      with state machine and not managed through the cpu device.
      
      This often results in annoying warning when resuming:
      Enabling non-boot CPUs ...
      CPU1: Booted secondary processor
       cache: parent cpu1 should not be sleeping
      CPU1 is up
      CPU2: Booted secondary processor
       cache: parent cpu2 should not be sleeping
      CPU2 is up
      .... and so on.
      
      So in order to fix these kind of errors, we could just completely avoid
      doing any power management related initialisations and operations if
      they are not used by these devices.
      
      Add no_pm flags to indicate that the device doesn't require any sort of
      PM activities and all of them can be completely skipped. We can use the
      same flag to also avoid adding not used *power* sysfs entries for these
      devices. For now, lets use this for cpu cache devices.
      Reviewed-by: default avatarUlf Hansson <ulf.hansson@linaro.org>
      Signed-off-by: default avatarSudeep Holla <sudeep.holla@arm.com>
      Tested-by: default avatarEugeniu Rosca <erosca@de.adit-jv.com>
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      85945c28
    • Rafael J. Wysocki's avatar
      Merge branch 'cpufreq/arm/linux-next' of... · ab0ef5d5
      Rafael J. Wysocki authored
      Merge branch 'cpufreq/arm/linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/vireshk/pm into pm-cpufreq
      
      Pull cpufreq drivers material for v5.1 from Viresh Kumar:
      
      "This contains:
      
      - Minor cleanups for pcc, longhaul, powerenv and speedstep drivers (Yangtao Li).
      - Moving configuration data out of mach directory for davinci (Bartosz Golaszewski)."
      
      * 'cpufreq/arm/linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/vireshk/pm:
        cpufreq: davinci: move configuration to include/linux/platform_data
        cpufreq: speedstep: convert BUG() to BUG_ON()
        cpufreq: powernv: fix missing check of return value in init_powernv_pstates()
        cpufreq: longhaul: remove unneeded semicolon
        cpufreq: pcc-cpufreq: remove unneeded semicolon
      ab0ef5d5
  10. 18 Feb, 2019 13 commits
  11. 17 Feb, 2019 9 commits