summaryrefslogtreecommitdiffstats
path: root/performance.h
Commit message (Collapse)AuthorAgeFilesLines
* power: Handle launch and interaction hints for perf HAL platformsBeYkeRYkt2019-10-231-0/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Author: BeYkeRYkt <beykerykt@gmail.com> Date: Thu Dec 13 06:42:35 2018 +0900 power: Handle launch and interaction hints for perf HAL platforms * MP-CTL does not handle POWER_HINT_INTERACTION and POWER_HINT_LAUNCH directly. Requests for processing are sent by Qualcomm BoostFramework (QPerformance) at the framework service level. Since we do not have BoostFramework, process POWER_HINT_INTERACTION and POWER_HINT_LAUNCH in PowerHAL to ensure a sufficient level of performance. * For proper operation, perfboostsconfig.xml file is required. Change-Id: I4c67d886c9dd74ae07094d32bdffc8ef403e04e7 Author: tomascus <arbiter1000@gmail.com> Date: Wed Feb 13 14:42:27 2019 +1100 power: don't use SCROLL_PREFILING The current use of the SCROLL_PREFILING hint hurts scroll performance and results in a lot of dropped frames. The hint ID corresponding to SCROLL_PREFILING only takes into effect for a default timeout value of 80 ms (as found in perfboostsconfig.xml), while the duration value in the process_interaction_hint function runs for a much longer time, from 1500 ms up to 5000 ms (bounds of kMinFlingDuration and kMaxInteractiveDuration). During the period of time, when the timeout value has elapsed and current time is less than duration, another interaction hint cannot be processed. Therefore, if the user decides to scroll during this period, high frame drops can be experienced as the CPU freq isn't raised by processing another hint to account for this additional scrolling. By only using SCROLL_VERTICAL, fluidity can be maintained, improving user experience. Furthmore, kMinInteractiveDuration has been lowered to 400 ms for some platforms as it is more than sufficient to maintain fluidity (minimal frames dropped) while scrolling. Change-Id: I42edd07a67c7dca43a10ae2fa1b44b64b7794b43 commit e9063a6956974a2e33652e2df0ecac991ee84c80 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: I8ef6a890bc191f9504980707107750a720b50da3
* power: Add known perf hint IDsdianlujitao2019-10-231-0/+90
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Author: Zhao Wei Liew <zhaoweiliew@gmail.com> Date: Tue Jun 21 10:44:49 2016 +0800 power: msm8996: Support boost and perf profile hints Change-Id: I010d4d1d3fb495e523b065c11ca95c4305530f9f Author: Zhao Wei Liew <zhaoweiliew@gmail.com> Date: Thu Oct 20 21:51:09 2016 +0800 power: msm8937: Improve boost values * Bring boost values more in line with CAF's recommended values * Make performance profile values saner Change-Id: I9827d25a347a8ab959c766a71e30b3d29267983f Author: Diogo Ferreira <diogo@underdev.org> Date: Sun May 7 11:00:12 2017 +0100 power: Use the correct opcode for STOR_CLK_SCALE_DIS This is actually wrong, 0x42C0C000 is the opcode for SWAP_RATIO and 0x42C10000 is the correct opcode for storage clock scale disabling. Change-Id: I6b1db525acf061ffe419011acd1f91525a27a35d Author: dianlujitao <dianlujitao@lineageos.org> Date: Wed Sep 20 16:40:57 2017 +0800 power: sdm660: Use declared enums Change-Id: I21691f9595f3730b9046012d1cae3951eb9da6a7 Author: dianlujitao <dianlujitao@lineageos.org> Date: Sat Sep 23 20:22:17 2017 +0800 power: sdm660: Support boost and power profiles * perfd needs /vendor/etc/appboosts.xml on sdm660 platform. Change-Id: I92632da032ebd1a629fcc0b9c7e1811dee9117fe Author: dianlujitao <dianlujitao@lineageos.org> Date: Thu Sep 6 21:43:14 2018 +0800 power: Clean up hint IDs * Group MPCTL v3 opcodes according to major type. * Remove some unused/dead opcodes. * Rename some misleading/inconsistency names. Change-Id: I3a06930c8fff18a50f77cb230951dbd43d62fed3 Change-Id: I611ef9651486f6f3caa6a6d6a08434912c114659
* power: Remove leftover support for ondemand governorMichael Bestas2019-10-231-10/+0
| | | | Change-Id: Id4c2aa5efa7101535a7311e34529e0b90c7491f1
* power: clang-formatMichael Bestas2019-10-231-6/+6
| | | | | | | * Using AOSP interface .clang-format * Clean Android.mk while we are at it Change-Id: I630f72e3dffb676ca1930e72945e897f62103ada
* power: Change the Hi-Speed freq to 800Mhz for camcorder casevaibhav bhalla2019-10-231-0/+1
| | | | | | | | Changes to set Hi-Speed freq for 8909 target as below: -Camcorder ON : set to 800Mhz -Camcorder OFF : set to 998.4Mhz. Change-Id: I8e4ca512c137a137fabe7762695e336a3ed37fdd
* Relocate power HAL from device/qcom/commonDavid Ng2018-05-241-0/+265
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