diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2018-08-14 16:12:24 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2018-08-14 16:12:24 -0400 |
| commit | b018fc9800557bd14a40d69501e19c340eb2c521 (patch) | |
| tree | 541109645e83725699d2b091a1c6c4816fdc6649 /include/linux/device.h | |
| parent | c07b3682cd12a017f976ec63bbd4758dc4c5100e (diff) | |
| parent | 7425ecd5e3e8c9d84f399a102282a23a90a19278 (diff) | |
Merge tag 'pm-4.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm
Pull power management updates from Rafael Wysocki:
"These add a new framework for CPU idle time injection, to be used by
all of the idle injection code in the kernel in the future, fix some
issues and add a number of relatively small extensions in multiple
places.
Specifics:
- Add a new framework for CPU idle time injection (Daniel Lezcano).
- Add AVS support to the armada-37xx cpufreq driver (Gregory
CLEMENT).
- Add support for current CPU frequency reporting to the ACPI CPPC
cpufreq driver (George Cherian).
- Rework the cooling device registration in the imx6q/thermal driver
(Bastian Stender).
- Make the pcc-cpufreq driver refuse to work with dynamic scaling
governors on systems with many CPUs to avoid scalability issues
with it (Rafael Wysocki).
- Fix the intel_pstate driver to report different maximum CPU
frequencies on systems where they really are different and to
ignore the turbo active ratio if hardware-managend P-states (HWP)
are in use; make it use the match_string() helper (Xie Yisheng,
Srinivas Pandruvada).
- Fix a minor deferred probe issue in the qcom-kryo cpufreq driver
(Niklas Cassel).
- Add a tracepoint for the tracking of frequency limits changes (from
Andriod) to the cpufreq core (Ruchi Kandoi).
- Fix a circular lock dependency between CPU hotplug and sysfs
locking in the cpufreq core reported by lockdep (Waiman Long).
- Avoid excessive error reports on driver registration failures in
the ARM cpuidle driver (Sudeep Holla).
- Add a new device links flag to the driver core to make links go
away automatically on supplier driver removal (Vivek Gautam).
- Eliminate potential race condition between system-wide power
management transitions and system shutdown (Pingfan Liu).
- Add a quirk to save NVS memory on system suspend for the ASUS 1025C
laptop (Willy Tarreau).
- Make more systems use suspend-to-idle (instead of ACPI S3) by
default (Tristian Celestin).
- Get rid of stack VLA usage in the low-level hibernation code on
64-bit x86 (Kees Cook).
- Fix error handling in the hibernation core and mark an expected
fall-through switch in it (Chengguang Xu, Gustavo Silva).
- Extend the generic power domains (genpd) framework to support
attaching a device to a power domain by name (Ulf Hansson).
- Fix device reference counting and user limits initialization in the
devfreq core (Arvind Yadav, Matthias Kaehlcke).
- Fix a few issues in the rk3399_dmc devfreq driver and improve its
documentation (Enric Balletbo i Serra, Lin Huang, Nick Milner).
- Drop a redundant error message from the exynos-ppmu devfreq driver
(Markus Elfring)"
* tag 'pm-4.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (35 commits)
PM / reboot: Eliminate race between reboot and suspend
PM / hibernate: Mark expected switch fall-through
cpufreq: intel_pstate: Ignore turbo active ratio in HWP
cpufreq: Fix a circular lock dependency problem
cpu/hotplug: Add a cpus_read_trylock() function
x86/power/hibernate_64: Remove VLA usage
cpufreq: trace frequency limits change
cpufreq: intel_pstate: Show different max frequency with turbo 3 and HWP
cpufreq: pcc-cpufreq: Disable dynamic scaling on many-CPU systems
cpufreq: qcom-kryo: Silently error out on EPROBE_DEFER
cpufreq / CPPC: Add cpuinfo_cur_freq support for CPPC
cpufreq: armada-37xx: Add AVS support
dt-bindings: marvell: Add documentation for the Armada 3700 AVS binding
PM / devfreq: rk3399_dmc: Fix duplicated opp table on reload.
PM / devfreq: Init user limits from OPP limits, not viceversa
PM / devfreq: rk3399_dmc: fix spelling mistakes.
PM / devfreq: rk3399_dmc: do not print error when get supply and clk defer.
dt-bindings: devfreq: rk3399_dmc: move interrupts to be optional.
PM / devfreq: rk3399_dmc: remove wait for dcf irq event.
dt-bindings: clock: add rk3399 DDR3 standard speed bins.
...
Diffstat (limited to 'include/linux/device.h')
| -rw-r--r-- | include/linux/device.h | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/include/linux/device.h b/include/linux/device.h index b42c301c0f90..eb91127cc791 100644 --- a/include/linux/device.h +++ b/include/linux/device.h | |||
| @@ -90,7 +90,7 @@ extern void bus_remove_file(struct bus_type *, struct bus_attribute *); | |||
| 90 | * @num_vf: Called to find out how many virtual functions a device on this | 90 | * @num_vf: Called to find out how many virtual functions a device on this |
| 91 | * bus supports. | 91 | * bus supports. |
| 92 | * @dma_configure: Called to setup DMA configuration on a device on | 92 | * @dma_configure: Called to setup DMA configuration on a device on |
| 93 | this bus. | 93 | * this bus. |
| 94 | * @pm: Power management operations of this bus, callback the specific | 94 | * @pm: Power management operations of this bus, callback the specific |
| 95 | * device driver's pm-ops. | 95 | * device driver's pm-ops. |
| 96 | * @iommu_ops: IOMMU specific operations for this bus, used to attach IOMMU | 96 | * @iommu_ops: IOMMU specific operations for this bus, used to attach IOMMU |
| @@ -784,14 +784,16 @@ enum device_link_state { | |||
| 784 | * Device link flags. | 784 | * Device link flags. |
| 785 | * | 785 | * |
| 786 | * STATELESS: The core won't track the presence of supplier/consumer drivers. | 786 | * STATELESS: The core won't track the presence of supplier/consumer drivers. |
| 787 | * AUTOREMOVE: Remove this link automatically on consumer driver unbind. | 787 | * AUTOREMOVE_CONSUMER: Remove the link automatically on consumer driver unbind. |
| 788 | * PM_RUNTIME: If set, the runtime PM framework will use this link. | 788 | * PM_RUNTIME: If set, the runtime PM framework will use this link. |
| 789 | * RPM_ACTIVE: Run pm_runtime_get_sync() on the supplier during link creation. | 789 | * RPM_ACTIVE: Run pm_runtime_get_sync() on the supplier during link creation. |
| 790 | * AUTOREMOVE_SUPPLIER: Remove the link automatically on supplier driver unbind. | ||
| 790 | */ | 791 | */ |
| 791 | #define DL_FLAG_STATELESS BIT(0) | 792 | #define DL_FLAG_STATELESS BIT(0) |
| 792 | #define DL_FLAG_AUTOREMOVE BIT(1) | 793 | #define DL_FLAG_AUTOREMOVE_CONSUMER BIT(1) |
| 793 | #define DL_FLAG_PM_RUNTIME BIT(2) | 794 | #define DL_FLAG_PM_RUNTIME BIT(2) |
| 794 | #define DL_FLAG_RPM_ACTIVE BIT(3) | 795 | #define DL_FLAG_RPM_ACTIVE BIT(3) |
| 796 | #define DL_FLAG_AUTOREMOVE_SUPPLIER BIT(4) | ||
| 795 | 797 | ||
| 796 | /** | 798 | /** |
| 797 | * struct device_link - Device link representation. | 799 | * struct device_link - Device link representation. |
