summaryrefslogtreecommitdiffstats
path: root/power-8974.c
Commit message (Collapse)AuthorAgeFilesLines
* power: Support power profiles on legacy platformsMichael Bestas2019-10-231-0/+103
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Author: Michael Bestas <mkbestas@lineageos.org> Date: Mon Mar 26 01:52:03 2018 +0300 power: apq8084: Add support for power profile & boost * Based on msm8974 HAL. Change-Id: I88ce707b022f7b122ad7a2fcfc67fde0075d7e7a Author: Michael Bestas <mkbestas@lineageos.org> Date: Fri May 25 21:30:28 2018 +0300 power: Spring cleanup * Cleanup SoC specific files: - Fix code spacing and indentation - Remove dead code - Remove useless comments - Remove useless logs - Make code uniform between the files so it's easier to diff - Use declared enums when possible for power hints Change-Id: Ie1378c94c53b33299927c5eb1bfc19f1a42b8743 Author: Stefan Assmann <sassmann@kpanic.de> Date: Mon Jul 23 18:42:02 2018 +0200 power-8084: rework power profiles profile_power_save: 2 cores max freq 1,2GHz profile_bias_power: 2 cores max freq 2,4GHz profile_bias_performance: 4 cores min freq 1,2GHz (2 active) profile_high_performance: 4 cores min freq 1,5GHz (4 active) - rearranged profiles in ascending order - fixed typo in profile_bias_performance Change-Id: I6f5d34e797c4f1f7ce9f7344f7f489c40debd094 Author: Corinna Vinschen <xda@vinschen.de> Date: Thu Aug 9 12:51:12 2018 +0200 power-8084: document performance settings Change-Id: Ic6dbe8511d694be0c0883f3052c612aa0a30c581 Signed-off-by: Corinna Vinschen <xda@vinschen.de> Author: Michael Bestas <mkbestas@lineageos.org> Date: Mon Mar 26 02:07:03 2018 +0300 power: msm8226: Add support for power profile & boost * Based on legacy HAL implementation Change-Id: Ifb93945e4e4005ef922cacee95e51bb95d5df9e3 Author: Michael Bestas <mkbestas@lineageos.org> Date: Mon Mar 26 02:13:51 2018 +0300 power: msm8610: Add support for power profile & boost * Based on legacy HAL implementation Change-Id: If778938b9703fd01185c2448bc83a09f04348333 Author: dianlujitao <dianlujitao@lineageos.org> Date: Sun Mar 25 18:08:45 2018 +0800 power: msm8916: Add support for power profile & boost * Based on legacy HAL implementation Change-Id: I20225ae9244023555724c76df5e208fd60eb3841 Author: Corinna Vinschen <xda@vinschen.de> Date: Wed Aug 29 14:18:03 2018 +0200 power-8916: fix using wrong array size in perform_hint_action * Fix a copy/paste bug using the wrong array size Change-Id: I07172b8e857ad3e6ad7761b3e090b518005ba26b Author: Ethan Chen <intervigil@gmail.com> Date: Sun Feb 25 20:46:37 2018 -0800 msm8952: Support power profiles * Add support for power profiles Change-Id: I0ce3578530dd8618468fd97b1e49ba512cb8fa83 Author: Zhao Wei Liew <zhaoweiliew@gmail.com> Date: Tue Nov 17 17:45:03 2015 +0800 power: msm8960: Implement performance profiles * Based on legacy HAL implementation Change-Id: Id7d16f97c177a790427d848e8ccea3286cf37a4e Author: Michael Bestas <mkbestas@lineageos.org> Date: Mon Jan 22 02:30:25 2018 +0200 power: msm8974: Add support for power profile * Based on Steve Kondik's and Zhao Wei Liew's implementation from the legacy HAL. Change-Id: Ie2a28b589537349cbcefc5b64e5404d346edf2c2 Author: dianlujitao <dianlujitao@lineageos.org> Date: Fri Mar 2 12:40:04 2018 +0800 power: Don't advertise power profile when interaction boost disabled * Power profile is fake news without interaction boost. Change-Id: Iceea885e6cb176f0620e76cfc335b7da500a0c2b Author: Michael Bestas <mkbestas@lineageos.org> Date: Mon Mar 26 03:00:15 2018 +0300 power: msm8992: Add support for power profile & boost * Based on legacy HAL implementation Change-Id: I9ebb44c1e215a76a95180a6188e80cb24f0b03ba Author: Michael Bestas <mkbestas@lineageos.org> Date: Mon Mar 26 03:00:30 2018 +0300 power: msm8994: Add support for power profile & boost * Based on legacy HAL implementation Change-Id: I5aa0b75b493825f2d87ce6eea0f3c3b1c3bba135 Author: Han Wang <wanghan1995315@gmail.com> Date: Tue Jul 24 17:12:14 2018 +0200 power: Fix several typos in power profiles Change-Id: I8302d41a902a037548ab52dc68ab8a0d7ca47861 Author: Corinna Vinschen <xda@vinschen.de> Date: Sun Aug 26 22:11:49 2018 +0200 power: set_power_profile: handle errors * Make sure current_power_profile reflects actual setting. * Propagate error condition up to caller. * Handle error from set_power_profile in power_hint_override. Change-Id: I8518d921a94c912c75f59fbf993a8f44116bdca9 Signed-off-by: Corinna Vinschen <xda@vinschen.de> 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: Ic483c0aa5e095f29f5de450472a6243d663468b6
* power: Handle launch and interaction hints for legacy platformsMichael Bestas2019-10-231-0/+99
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Author: Michael Bestas <mkbestas@lineageos.org> Date: Mon Mar 26 01:52:03 2018 +0300 power: apq8084: Add support for power profile & boost * Based on msm8974 HAL. Change-Id: I88ce707b022f7b122ad7a2fcfc67fde0075d7e7a Author: Michael Bestas <mkbestas@lineageos.org> Date: Mon Mar 26 02:07:03 2018 +0300 power: msm8226: Add support for power profile & boost * Based on legacy HAL implementation Change-Id: Ifb93945e4e4005ef922cacee95e51bb95d5df9e3 Author: Michael Bestas <mkbestas@lineageos.org> Date: Mon Mar 26 02:13:51 2018 +0300 power: msm8610: Add support for power profile & boost * Based on legacy HAL implementation Change-Id: If778938b9703fd01185c2448bc83a09f04348333 Author: dianlujitao <dianlujitao@lineageos.org> Date: Sun Mar 25 18:08:45 2018 +0800 power: msm8916: Add support for power profile & boost * Based on legacy HAL implementation Change-Id: I20225ae9244023555724c76df5e208fd60eb3841 Author: Michael Bestas <mkbestas@lineageos.org> Date: Mon Jan 22 02:30:25 2018 +0200 power: msm8974: Add support for power profile * Based on Steve Kondik's and Zhao Wei Liew's implementation from the legacy HAL. Change-Id: Ie2a28b589537349cbcefc5b64e5404d346edf2c2 Author: Michael Bestas <mkbestas@lineageos.org> Date: Mon Mar 26 03:24:26 2018 +0300 power: msm8974: POWER_HINT_INTERACTION improvements Change-Id: I9bde2a1d62fcb9e987741b5932f8f50a019cdfd2 Author: Craig Tatlor <ctatlor97@gmail.com> Date: Mon May 21 17:22:31 2018 +0100 power: msm8974: Build with with BOARD_VNDK_VERSION time.h isnt included by default when vndk is enabled. Change-Id: I7ca6ca601a8d25557bd1bb0484766121a9ae5633 Author: Michael Bestas <mkbestas@lineageos.org> Date: Mon Mar 26 03:00:15 2018 +0300 power: msm8992: Add support for power profile & boost * Based on legacy HAL implementation Change-Id: I9ebb44c1e215a76a95180a6188e80cb24f0b03ba Author: Michael Bestas <mkbestas@lineageos.org> Date: Mon Mar 26 03:00:30 2018 +0300 power: msm8994: Add support for power profile & boost * Based on legacy HAL implementation Change-Id: I5aa0b75b493825f2d87ce6eea0f3c3b1c3bba135 Author: Michael Bestas <mkbestas@lineageos.org> Date: Fri May 25 21:30:28 2018 +0300 power: Spring cleanup * Cleanup SoC specific files: - Fix code spacing and indentation - Remove dead code - Remove useless comments - Remove useless logs - Make code uniform between the files so it's easier to diff - Use declared enums when possible for power hints Change-Id: Ie1378c94c53b33299927c5eb1bfc19f1a42b8743 Author: Corinna Vinschen <xda@vinschen.de> Date: Mon Aug 6 21:14:12 2018 +0200 power-8084: clean up code * express interactive boost frequencies as descriptive symbolic values rather than arbitrary hex numbers * express durations as descriptive symbolic values rather than just numbers in the code Change-Id: I47a92bd4c9b0b86ae0444d87345daf4e94d56126 Signed-off-by: Corinna Vinschen <xda@vinschen.de> Author: Corinna Vinschen <xda@vinschen.de> Date: Mon Aug 6 10:58:20 2018 +0200 power-8084: reduce interactive boost * 1,1 GHz min freq is more than enough for interactive boost on apq8084 * default duration is unnecessarily long, reduce to 200 ms * 1,5 GHz min freq on 2 CPUs for 1 sec is entirely sufficient for launch action Change-Id: I5e51267ed32a3e50899627e4281321820fac237f Signed-off-by: Corinna Vinschen <xda@vinschen.de> Author: Corinna Vinschen <xda@vinschen.de> Date: Mon Aug 6 16:52:08 2018 +0200 power-8084: drop POWER_HINT_LAUNCH handling * kernel governor is doing well by itself, but thanks all the same Change-Id: I64fa61a1d8ff0f20bac9e5c32c56b031570a564f Signed-off-by: Corinna Vinschen <xda@vinschen.de> Author: Corinna Vinschen <xda@vinschen.de> Date: Fri Oct 12 21:40:24 2018 +0200 power-8084: Revert POWER_HINT_LAUNCH handling This effectively reverts commit 0ef4cb429ff3d42e8f8bd27d749ecd80f2911dc5. Users (including myself) noticed some laggy behaviour. The patch reverts to some more oomph at launch time, trying for a compromise between performance and power saving. Change-Id: I2d07686a131dcb75c9e590d99764d2a650cae507 Author: Craig Tatlor <ctatlor97@gmail.com> Date: Mon May 21 17:22:31 2018 +0100 power: Build with with BOARD_VNDK_VERSION time.h isnt included by default when vndk is enabled. Change-Id: I949ed271d7e7ed31e186019b0289299c1c8ff940 Author: tomascus <arbiter1000@gmail.com> Date: Tue Feb 19 17:15:58 2019 +1100 power: Release launch boost perflock when launch is completed Currently, the launch boost perflock is held for a fixed duration, either specified in perfboostsconfig.xml for perf HAL platforms or hardcoded in the powerHAL for non-perf HAL platforms. Using a fixed duration for this perflock has two shortcomings: * perflock can be held for too long, causing the CPU freq and other resources to be boosted for too long even if the application has finished launching, resulting in excessive battery drainage * perflock can be held not long enough if it takes more than the timeout time to finish launch The framework sends out a powerhint for both when launch starts and when launch ends. The launch finish hint can be used to signal when to release the perflock. Reference: Wahoo power-libperfmgr Change-Id: I405cc453c5f58d9fb2583b9c6017f3964a0ce024 Change-Id: I8a1d8101bc40d3fc169a0f1f2982a5cac76e6a13
* power: Clean up and fix set_interactive_overrideMichael Bestas2019-10-231-4/+10
| | | | | | | | | | | * 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: Clean up and fix video encode/decode hint handlingMichael Bestas2019-10-231-0/+91
| | | | | | | | * Unify code style for non legacy SoCs * Restore legacy SoC handling which used to live in power-common.c but was removed in commit 561cffcbfa66192e839e040d2da3bff2ecf8dcac Change-Id: Ieb84e6d6c8d762614e21267e81e6057aa64b36dd
* power: Use ARRAY_SIZE macro where possibleZhao Wei Liew2019-10-231-1/+1
| | | | Change-Id: Ie47d0e6b91b7bba378b0fdf53a345a021b0c2d48
* power: Cache SOC ID checks for future queriesZhao Wei Liew2019-10-231-6/+5
| | | | | | | | | | | | | | Currently, get_soc_id() is queried on every SOC ID check in the SDM660, MSM8916, MSM8952, MSM8953 and MSM8974-family HALs. This results in extraneous file operations on every SOC ID check. Cache the result of get_soc_id() during the first query to reduce the number of file operations being made. This also brings back the behaviour in LineageOS 15.1 when the HALs were still stored in device/qcom/common. Change-Id: Ic17dbf12e7f9ecdb47b73a580f467df9ad630aa0
* power: Add back display_boost checksZhao Wei Liew2019-10-231-3/+18
| | | | | | | | - Remove 8084 check as all 8084s make use of the display boost - Convert the display_boost check to an soc_id check for 8974pro - Add back display_boost (now soc_id) check to 8974's HAL Change-Id: I237b9108e666f4cb0051d1c1bb22453d55ffcdc7
* power: Simplify display_hint_sentZhao Wei Liew2019-10-231-7/+2
| | | | | | | | | | | 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: Remove leftover support for ondemand governorMichael Bestas2019-10-231-23/+0
| | | | Change-Id: Id4c2aa5efa7101535a7311e34529e0b90c7491f1
* power: clang-formatMichael Bestas2019-10-231-16/+16
| | | | | | | * Using AOSP interface .clang-format * Clean Android.mk while we are at it Change-Id: I630f72e3dffb676ca1930e72945e897f62103ada
* power: Remove unused arg from power_hint_override/set_interactive_overrideRashed Abdel-Tawab2019-10-231-1/+1
| | | | Change-Id: If45b59915022b563d4c5c9bf454b02b431a97833
* power: Use log/log.h instead of utils/Log.hEthan Chen2019-10-231-1/+1
| | | | Change-Id: I827c7f5ab27548eec8d6e4ee27a72fa883025002
* Relocate power HAL from device/qcom/commonDavid Ng2018-05-241-0/+114
Split module from combined device/qcom/common project into its own project. Relocation of some files from device/qcom/common at b5ce80cb1f60759a142a9338104d3adf3303ec0c. Change-Id: I6c13729a822f6fb9b5574b759ae9ec12154be464