From 23f7b9d92209dea1f3a020d4f228c677a156cd28 Mon Sep 17 00:00:00 2001 From: Jimmy Shiu Date: Thu, 18 Jul 2024 12:56:42 +0530 Subject: [PATCH] sm6375-common: power-libperfmgr: ADPF: fix no boost due to the big negative ILowLimit Tuning the PID control loop as the below: ILowLimit: -512 -> -120 kPOver: 2->5 kPunder: 2->3 kDOver: 1->5 kDUnder: 0->0 Bug: 193165816 Test: cuj/youtuble, cuj/facebook, PtsUiBench Change-Id: Icc1a9a8d04004f60e47cabb7c4131ea67585be53 --- power-libperfmgr/PowerHintSession.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/power-libperfmgr/PowerHintSession.cpp b/power-libperfmgr/PowerHintSession.cpp index e76d828..7a39dab 100644 --- a/power-libperfmgr/PowerHintSession.cpp +++ b/power-libperfmgr/PowerHintSession.cpp @@ -95,10 +95,10 @@ static double getDoubleProperty(const char *prop, double value) { return value; } -static double sPidPOver = getDoubleProperty(kPowerHalAdpfPidPOver, 2.0); -static double sPidPUnder = getDoubleProperty(kPowerHalAdpfPidPUnder, 2.0); +static double sPidPOver = getDoubleProperty(kPowerHalAdpfPidPOver, 5.0); +static double sPidPUnder = getDoubleProperty(kPowerHalAdpfPidPUnder, 3.0); static double sPidI = getDoubleProperty(kPowerHalAdpfPidI, 0.001); -static double sPidDOver = getDoubleProperty(kPowerHalAdpfPidDOver, 100.0); +static double sPidDOver = getDoubleProperty(kPowerHalAdpfPidDOver, 500.0); static double sPidDUnder = getDoubleProperty(kPowerHalAdpfPidDUnder, 0.0); static const int64_t sPidIInit = (sPidI == 0) ? 0 @@ -113,7 +113,7 @@ static const int64_t sPidIHighLimit = static const int64_t sPidILowLimit = (sPidI == 0) ? 0 : static_cast(::android::base::GetIntProperty( - kPowerHalAdpfPidILowLimit, -512) / + kPowerHalAdpfPidILowLimit, -120) / sPidI); static const int32_t sUclampMinHighLimit = ::android::base::GetUintProperty(kPowerHalAdpfUclampMinHighLimit, 512);