diff options
author | Rajashekar Adi <radi@codeaurora.org> | 2019-09-19 13:49:12 +0530 |
---|---|---|
committer | Michael Bestas <mkbestas@lineageos.org> | 2020-03-08 02:31:32 +0200 |
commit | 338920c7488af69ad3fe17033a641103bba83f1a (patch) | |
tree | 3918f176d813fd5ca5442e88118e787d601e336d | |
parent | 0db671a26287909fd2a866bcac07268bfb696d22 (diff) | |
download | vendor_qcom_opensource_power-338920c7488af69ad3fe17033a641103bba83f1a.tar.gz vendor_qcom_opensource_power-338920c7488af69ad3fe17033a641103bba83f1a.tar.bz2 vendor_qcom_opensource_power-338920c7488af69ad3fe17033a641103bba83f1a.zip |
Power:Add powerhints to camera and VR
Add powerhint support for atoll
Change-Id: I7dd1ce7eba459e80ad08f0b97390cc265e0908fa
-rw-r--r-- | config/atoll/powerhint.xml | 271 | ||||
-rw-r--r-- | power-vendor-product.mk | 2 |
2 files changed, 273 insertions, 0 deletions
diff --git a/config/atoll/powerhint.xml b/config/atoll/powerhint.xml new file mode 100644 index 0000000..0b551ba --- /dev/null +++ b/config/atoll/powerhint.xml @@ -0,0 +1,271 @@ +<?xml version="1.0" encoding="utf-8" ?> + +<!-- +/* Copyright (c) 2016-2018, The Linux Foundation. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * * Neither the name of The Linux Foundation nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR + * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE + * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN + * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +--> +<HintConfigs> + <Powerhint> + + <!-- camera 30fps and camera preview --> + <!--L CPU CORE 0 SCHED LOAD BOOST --> + <!--L CPU CORE 1 SCHED LOAD BOOST --> + <!--L CPU CORE 2 SCHED LOAD BOOST --> + <!--L CPU CORE 3 SCHED LOAD BOOST --> + <!--L CPU CORE 4 SCHED LOAD BOOST --> + <!--L CPU CORE 5 SCHED LOAD BOOST --> + <!--L CPU Hispeed freq of 1017Mhz --> + <!--L CPU - Set hispeed load 95 --> + <!--CPU-LLCC BWMON - Set sample_ms 20 --> + <!--LLCC-DDR BWMON - Set sample_ms 20 --> + <!--CPU-LLCC BWMON - Set up_scale 0 --> + <Config + Id="0x00001331" Enable="true" Timeout="0" Target="atoll" + Resources="0x40C68100, 0xFFFFFFFA, 0x40C68110, 0xFFFFFFFA, 0x40C68120, 0xFFFFFFFA, + 0x40C68130, 0xFFFFFFFA, 0x40C68140, 0xFFFFFFFA, 0x40C68150, 0xFFFFFFFA, + 0x4143C100, 0x3F9, 0x41440100, 0x5F, 0x41820000, 0x14, 0x4300C000, 0x14, 0x4182C000, 0"/> + + <!-- camera 60 FPS --> + <!--L CPU CORE 0 SCHED LOAD BOOST --> + <!--L CPU CORE 1 SCHED LOAD BOOST --> + <!--L CPU CORE 2 SCHED LOAD BOOST --> + <!--L CPU CORE 3 SCHED LOAD BOOST --> + <!--L CPU CORE 4 SCHED LOAD BOOST --> + <!--L CPU CORE 5 SCHED LOAD BOOST --> + <!--CPU-LLCC BWMON - Set sample_ms 20 --> + <!--LLCC-DDR BWMON - Set sample ms 20 --> + <!--CPU-LLCC BWMON - Set up_scale 0 --> + <Config + Id="0x00001332" Enable="true" Timeout="0" Target="atoll" + Resources="0x40C68100, 0xFFFFFFFA, 0x40C68110, 0xFFFFFFFA, 0x40C68120, 0xFFFFFFFA, + 0x40C68130, 0xFFFFFFFA, 0x40C68140, 0xFFFFFFFA, 0x40C68150, 0xFFFFFFFA, + 0x41820000, 0x14, 0x4300C000, 0x14, 0x4182C000, 0"/> + + <!-- camera HFR --> + <!--L CPU CORE 0 SCHED LOAD BOOST --> + <!--L CPU CORE 1 SCHED LOAD BOOST --> + <!--L CPU CORE 2 SCHED LOAD BOOST --> + <!--L CPU CORE 3 SCHED LOAD BOOST --> + <!--L CPU CORE 4 SCHED LOAD BOOST --> + <!--L CPU CORE 5 SCHED LOAD BOOST --> + <!--CPU-LLCC BWMON - Set sample_ms 20 --> + <!--LLCC-DDR BWMON - Set sample ms 20 --> + <!--CPU-LLCC BWMON - Set up_scale 0 --> + <Config + Id="0x00001333" Enable="true" Timeout="0" Target="atoll" + Resources="0x40C68100, 0xFFFFFFFA, 0x40C68110, 0xFFFFFFFA, 0x40C68120, 0xFFFFFFFA, + 0x40C68130, 0xFFFFFFFA, 0x40C68140, 0xFFFFFFFA, 0x40C68150, 0xFFFFFFFA, + 0x41820000, 0x14, 0x4300C000, 0x14, 0x4182C000, 0"/> + + <!-- HFR 480fps --> + <!--L CPU CORE 0 SCHED LOAD BOOST --> + <!--L CPU CORE 1 SCHED LOAD BOOST --> + <!--L CPU CORE 2 SCHED LOAD BOOST --> + <!--L CPU CORE 3 SCHED LOAD BOOST --> + <!--L CPU CORE 4 SCHED LOAD BOOST --> + <!--L CPU CORE 5 SCHED LOAD BOOST --> + <!--CPU-LLCC BWMON - Set sample_ms 20 --> + <!--LLCC-DDR BWMON - Set sample ms 20 --> + <!--CPU CORE 0 Min freq to 1.2Ghz --> + <!--CPU-LLCC BWMON - Set up_scale 0 --> + <Config + Id="0x00001334" Enable="true" Timeout="0" Target="atoll" + Resources="0x40C68100, 0xFFFFFFFA, 0x40C68110, 0xFFFFFFFA, 0x40C68120, 0xFFFFFFFA, + 0x40C68130, 0xFFFFFFFA, 0x40C68140, 0xFFFFFFFA, 0x40C68150, 0xFFFFFFFA, + 0x41820000, 0x14, 0x4300C000, 0x14, 0x40800100, 0x4B9, 0x4182C000, 0"/> + + <!-- same settings for all the qvr power levels intentionally --> + <!-- qvr level cpu1 gpu1 --> + <!-- B CPU - Cluster min freq ~.806 Ghz --> + <!-- B CPU - Cluster max freq ~.2.169 Ghz --> + <!-- L CPU - Cluster min freq ~.576 Ghz --> + <!-- L CPU - Cluster max freq ~1.248 Ghz --> + <!-- GPU - min pwrlevel 7 (freq 180 Mhz) --> + <!-- GPU - max pwrlevel 0 (freq 825 Mhz) --> + <!-- Min Big CPUs 2 --> + <!-- Idefinite Duration --> + <Config + Id="0x0000130A" Enable="true" Target="atoll" Timeout="0" + Resources="0x40800000, 0x326, 0x40804000, 0x879, 0x40800100, 0x240, 0x40804100, 0x4E0, + 0x42804000, 0x7, 0x42808000, 0x0, 0x41000000, 0x2"/> + + <!-- qvr level cpu1 gpu2 --> + <!-- B CPU - Cluster min freq ~.806 Ghz --> + <!-- B CPU - Cluster max freq ~.2.169 Ghz --> + <!-- L CPU - Cluster min freq ~.576 Ghz --> + <!-- L CPU - Cluster max freq ~1.248 Ghz --> + <!-- GPU - min pwrlevel 7 (freq 180 Mhz) --> + <!-- GPU - max pwrlevel 0 (freq 825 Mhz) --> + <!-- Min Big CPUs 2 --> + <!-- Idefinite Duration --> + <Config + Id="0x0000130B" Enable="true" Target="atoll" Timeout="0" + Resources="0x40800000, 0x326, 0x40804000, 0x879, 0x40800100, 0x240, 0x40804100, 0x4E0, + 0x42804000, 0x7, 0x42808000, 0x0, 0x41000000, 0x2"/> + + <!-- qvr level cpu1 gpu3 --> + <!-- B CPU - Cluster min freq ~.806 Ghz --> + <!-- B CPU - Cluster max freq ~.2.169 Ghz --> + <!-- L CPU - Cluster min freq ~.576 Ghz --> + <!-- L CPU - Cluster max freq ~1.248 Ghz --> + <!-- GPU - min pwrlevel 7 (freq 180 Mhz) --> + <!-- GPU - max pwrlevel 0 (freq 825 Mhz) --> + <!-- Min Big CPUs 2 --> + <!-- Idefinite Duration --> + <Config + Id="0x0000130C" Enable="true" Target="atoll" Timeout="0" + Resources="0x40800000, 0x326, 0x40804000, 0x879, 0x40800100, 0x240, 0x40804100, 0x4E0, + 0x42804000, 0x7, 0x42808000, 0x0, 0x41000000, 0x2"/> + + <!-- qvr level cpu2 gpu1 --> + <!-- B CPU - Cluster min freq ~.806 Ghz --> + <!-- B CPU - Cluster max freq ~.2.169 Ghz --> + <!-- L CPU - Cluster min freq ~.576 Ghz --> + <!-- L CPU - Cluster max freq ~1.248 Ghz --> + <!-- GPU - min pwrlevel 7 (freq 180 Mhz) --> + <!-- GPU - max pwrlevel 0 (freq 825 Mhz) --> + <!-- Min Big CPUs 2 --> + <!-- Idefinite Duration --> + <Config + Id="0x0000130D" Enable="true" Target="atoll" Timeout="0" + Resources="0x40800000, 0x326, 0x40804000, 0x879, 0x40800100, 0x240, 0x40804100, 0x4E0, + 0x42804000, 0x7, 0x42808000, 0x0, 0x41000000, 0x2"/> + + <!-- qvr level cpu2 gpu2 --> + <!-- B CPU - Cluster min freq ~.806 Ghz --> + <!-- B CPU - Cluster max freq ~.2.169 Ghz --> + <!-- L CPU - Cluster min freq ~.576 Ghz --> + <!-- L CPU - Cluster max freq ~1.248 Ghz --> + <!-- GPU - min pwrlevel 7 (freq 180 Mhz) --> + <!-- GPU - max pwrlevel 0 (freq 825 Mhz) --> + <!-- Min Big CPUs 2 --> + <!-- Idefinite Duration --> + <Config + Id="0x0000130E" Enable="true" Target="atoll" Timeout="0" + Resources="0x40800000, 0x326, 0x40804000, 0x879, 0x40800100, 0x240, 0x40804100, 0x4E0, + 0x42804000, 0x7, 0x42808000, 0x0, 0x41000000, 0x2"/> + + <!-- qvr level cpu2 gpu3 --> + <!-- B CPU - Cluster min freq ~.806 Ghz --> + <!-- B CPU - Cluster max freq ~.2.169 Ghz --> + <!-- L CPU - Cluster min freq ~.576 Ghz --> + <!-- L CPU - Cluster max freq ~1.248 Ghz --> + <!-- GPU - min pwrlevel 7 (freq 180 Mhz) --> + <!-- GPU - max pwrlevel 0 (freq 825 Mhz) --> + <!-- Min Big CPUs 2 --> + <!-- Idefinite Duration --> + <Config + Id="0x0000130F" Enable="true" Target="atoll" Timeout="0" + Resources="0x40800000, 0x326, 0x40804000, 0x879, 0x40800100, 0x240, 0x40804100, 0x4E0, + 0x42804000, 0x7, 0x42808000, 0x0, 0x41000000, 0x2"/> + + <!-- qvr level cpu3 gpu1 --> + <!-- B CPU - Cluster min freq ~.806 Ghz --> + <!-- B CPU - Cluster max freq ~.2.169 Ghz --> + <!-- L CPU - Cluster min freq ~.576 Ghz --> + <!-- L CPU - Cluster max freq ~1.248 Ghz --> + <!-- GPU - min pwrlevel 7 (freq 180 Mhz) --> + <!-- GPU - max pwrlevel 0 (freq 825 Mhz) --> + <!-- Min Big CPUs 2 --> + <!-- Idefinite Duration --> + <Config + Id="0x00001310" Enable="true" Target="atoll" Timeout="0" + Resources="0x40800000, 0x326, 0x40804000, 0x879, 0x40800100, 0x240, 0x40804100, 0x4E0, + 0x42804000, 0x7, 0x42808000, 0x0, 0x41000000, 0x2"/> + + <!-- qvr level cpu3 gpu2 --> + <!-- B CPU - Cluster min freq ~.806 Ghz --> + <!-- B CPU - Cluster max freq ~.2.169 Ghz --> + <!-- L CPU - Cluster min freq ~.576 Ghz --> + <!-- L CPU - Cluster max freq ~1.248 Ghz --> + <!-- GPU - min pwrlevel 7 (freq 180 Mhz) --> + <!-- GPU - max pwrlevel 0 (freq 825 Mhz) --> + <!-- Min Big CPUs 2 --> + <!-- Idefinite Duration --> + <Config + Id="0x00001311" Enable="true" Target="atoll" Timeout="0" + Resources="0x40800000, 0x326, 0x40804000, 0x879, 0x40800100, 0x240, 0x40804100, 0x4E0, + 0x42804000, 0x7, 0x42808000, 0x0, 0x41000000, 0x2"/> + + <!-- qvr level cpu3 gpu3 --> + <!-- B CPU - Cluster min freq ~.806 Ghz --> + <!-- B CPU - Cluster max freq ~2.169 Ghz --> + <!-- L CPU - Cluster min freq ~.576 Ghz --> + <!-- L CPU - Cluster max freq ~1.248 Ghz --> + <!-- GPU - min pwrlevel 7 (freq 180 Mhz) --> + <!-- GPU - max pwrlevel 0 (freq 825 Mhz) --> + <!-- Min Big CPUs 2 --> + <!-- Idefinite Duration --> + <Config + Id="0x00001312" Enable="true" Target="atoll" Timeout="0" + Resources="0x40800000, 0x326, 0x40804000, 0x879, 0x40800100, 0x240, 0x40804100, 0x4E0, + 0x42804000, 0x7, 0x42808000, 0x0, 0x41000000, 0x2"/> + + <!-- sustained performance --> + <!-- B CPU - Cluster min freq uncapped --> + <!-- L CPU - Cluster min freq uncapped --> + <!-- B CPU - Cluster max freq ~1.22 GHz --> + <!-- L CPU - Cluster max freq ~1.22 Ghz --> + <!-- GPU - min freq 275Mhz --> + <!-- GPU - max freq 400Mhz --> + <!-- GPUBW freq uncapped --> + <Config + Id="0x00001206" Enable="true" Timeout="0" Target="atoll" + Resources="0x40800000, 0x0, 0x40800100, 0x0, 0x40804000, 0x4CC, 0x40804100, 0x4CC, + 0X4280C000, 0x113, 0X42810000, 0x190, 0x42814000, 0x0"/> + + <!-- vr mode --> + <!-- B CPU - Cluster min freq ~1.22 Ghz --> + <!-- L CPU - Cluster min freq ~0.940 Ghz --> + <!-- B CPU - Cluster max freq ~1.90 Ghz --> + <!-- L CPU - Cluster max freq ~1.70 Ghz --> + <!-- GPU - min freq 275Mhz --> + <!-- GPU - max freq 625Mhz --> + <!-- GPUBW uncapped --> + <Config + Id="0x00001207" Enable="true" Timeout="0" Target="atoll" + Resources="0x40800000, 0x4CC, 0x40800100, 0x3AC, 0x40804000, 0x76C, 0x40804100, 0x6C0, + 0X4280C000, 0x113, 0X4280C000, 0x271, 0x42814000, 0x0"/> + + <!-- vr mode sustained performance --> + <!-- B CPU - Cluster min freq ~1.22 Ghz --> + <!-- L CPU - Cluster min freq ~1.22 Ghz --> + <!-- B CPU - Cluster max freq ~1.22 Ghz --> + <!-- L CPU - Cluster max freq ~1.22 Ghz --> + <!-- GPU - min freq 400Mhz --> + <!-- GPU - max freq 400Mhz --> + <!-- GPUBW uncapped --> + <Config + Id="0x00001301" Enable="true" Timeout="0" Target="atoll" + Resources="0x40800000, 0x4CC, 0x40800100, 0x4CC, 0x40804000, 0x4CC, 0x40804100, 0x4CC, + 0X4280C000, 0x190, 0X42810000, 0x190, 0x42814000, 0x0"/> + + </Powerhint> +</HintConfigs> + + diff --git a/power-vendor-product.mk b/power-vendor-product.mk index 60691a4..8dda07e 100644 --- a/power-vendor-product.mk +++ b/power-vendor-product.mk @@ -9,4 +9,6 @@ else ifeq ($(TARGET_BOARD_PLATFORM),kona) PRODUCT_COPY_FILES += vendor/qcom/opensource/power/config/kona/powerhint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/powerhint.xml else ifeq ($(TARGET_BOARD_PLATFORM),lito) PRODUCT_COPY_FILES += vendor/qcom/opensource/power/config/lito/powerhint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/powerhint.xml +else ifeq ($(TARGET_BOARD_PLATFORM),atoll) +PRODUCT_COPY_FILES += vendor/qcom/opensource/power/config/atoll/powerhint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/powerhint.xml endif |