summaryrefslogtreecommitdiffstats
path: root/power-common.c
Commit message (Collapse)AuthorAgeFilesLines
* power: Prepare for power profile supportdianlujitao2019-10-231-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add support for system performance profiles and CPU boost. * Uses mpctl to configure the CPUs in the appropriate modes. * Implement binderized Lineage power HAL. Author: Steve Kondik <shade@chemlab.org> Date: Sat May 17 03:37:53 2014 -0700 power: Add support for CPU boost hint Change-Id: I07c3e8daf8a5f3b568e27334f26d4ba8f4cf40c4 Author: Steve Kondik <shade@chemlab.org> Date: Sun May 18 23:55:23 2014 -0700 power: Add power hint to set profile * A PowerHAL can implement support for this hint to receive power profile changes from the framework. Change-Id: Ie1e9e3b827c731cf5a817a0491677e3451fe8678 Author: Steve Kondik <shade@chemlab.org> Date: Mon May 19 17:26:34 2014 -0700 power: Add support for SET_PROFILE hints * Add support for system performance profiles. * Uses mpctl to configure the CPUs in the appropriate modes. * PERFORMANCE = all cores at max * POWER_SAVE = max two cores at non-turbo voltage * If a custom profile is set, don't honor any other hints * Clean up the code and firm up the locking. Change-Id: Ie6acada805780c9ae6e6bc2002843aef638ca63b Author: Steve Kondik <steve@cyngn.com> Date: Tue Nov 3 03:27:42 2015 -0800 power: Update for PerformanceManager changes * Undo damage caused by the previous patch which broke all hint arguments. We were actually using these wrong to begin with anyway. * Add support for get_profile * Clean up code Change-Id: Ibc3f21bfb7aa46ec97b9b63d09737d4331a5a714 Author: dianlujitao <dianlujitao@lineageos.org> Date: Sat Feb 23 20:24:57 2019 +0800 power: Pass NULL parameter in powerHint if data is zero * This restores the behavior in AOSP and CAF power HAL to avoid confusion. Change-Id: I72f5bb9286e2f57121e39eea82d2fe8854989393 Change-Id: I7ae614667e3182eaf0a90b81e8ed839689cfbf28
* power: Clean up and fix set_interactive_overrideMichael Bestas2019-10-231-2/+2
| | | | | | | | | | | * Remove debug logs and useless comments * Consistent return values * Add back display hints for legacy platforms, they used to live in power-common.c but removed in commit 561cffcbfa66192e839e040d2da3bff2ecf8dcac * Check if set_interactive_override handled hints and print info message if it didn't Change-Id: Iff9f7327ba71c282e34ff3143c45a3f40f72fc92
* power: Drop default POWER_HINT_INTERACTION routinedianlujitao2019-10-231-6/+0
| | | | | | | | | | | | | | | * These boost resources were introduced years ago and are no longer suitable for modern SoCs. Each SoC should implement its own boost resource in either platform specific power HAL source file or perf HAL. * Starting from LineageOS 15.1, recent SoCs no longer handle POWER_HINT_INTERACTION in the power HAL, so power_hint_override returns HINT_NONE and the default routine is always executed. E.g, on msm8996 little cluster is always boosted to max frequency on touch, which causes a huge battery drain. * As a bonus, the "Failed to apply optimization" errors are gone. Change-Id: I322f23f40fc5da7485f2c7a6cf8ee952d0fb94c6
* power: Simplify display_hint_sentZhao Wei Liew2019-10-231-0/+10
| | | | | | | | | | | Check for whether the display hint has been sent at the start of the set_interactive() function in the common powerHAL. This gets rid of the need to replicate the same variable in every target-specific powerHAL that implements the set_interactive_override() function. Change-Id: If7dd11fcb578211f4f83847f9257232c4138ce53
* power: Avoid interaction build errorsMichael Bestas2019-10-231-3/+0
| | | | Change-Id: I77942f23a9c617abac1a8533cfc1fd7bfa7f66e8
* power: clang-formatMichael Bestas2019-10-231-35/+25
| | | | | | | * Using AOSP interface .clang-format * Clean Android.mk while we are at it Change-Id: I630f72e3dffb676ca1930e72945e897f62103ada
* power: Allow device specific hooks for set_interactiveSteve Kondik2019-10-231-0/+8
| | | | | | * Some devices may want to implement custom hooks Change-Id: I9be8023c8134b3c262f27b43a28bec0e14c0fd7f
* power: Refactor TARGET_TAP_TO_WAKE_NODEKeith Mok2019-10-231-0/+5
| | | | | | | | | | | Add TARGET_POWER_SET_FEATURE_LIB, since other devices are not simply writing a 0/1 to a device node. TARGET_TAP_TO_WAKE_NODE is still valid and both TARGET_TAP_TO_WAKE_NODE and TARGET_POWER_SET_FEATURE_LIB are allowed to coexist. (Currently set_feature only has double tap to wake, but it may be extended in future) Change-Id: I5c6204fd38a6fbe48e8aac49843bfa047c4b6436
* power: Use log/log.h instead of utils/Log.hEthan Chen2019-10-231-1/+1
| | | | Change-Id: I827c7f5ab27548eec8d6e4ee27a72fa883025002
* power: Fix a few compiler warningsPaul Keith2019-10-231-7/+8
| | | | | | * And unify styling a little bit Change-Id: I7f9bb43a534e352fdd7693ff975749864f8addb3
* power: Fix power hal compiler warningsAdrian Salido2019-10-231-3/+3
| | | | | | Bug: 30432975 Test: compile power hal for walleye without warnings Change-Id: I0d90c26462c662690f8a179250000b9a449a109f
* power: Introducing PowerHAL binderized serviceAnanth Raghavan Subramanian2019-01-171-0/+135
Moving from the default implementation to a binderized service with no wrapping. Now using 1.2 implementation of the IPower interface. Change-Id: Ibefd916544f51545e6889684a051b2ecc5867fe2