diff options
author | 2024-11-16 19:26:34 -0800 | |
---|---|---|
committer | 2024-11-18 16:33:51 -0800 | |
commit | 8f997cbe9f33e7a2ae52d69ba7f17b83d297c665 (patch) | |
tree | 25907f5d95bbd4058c594a2bd65f943d30cd381a /services/powermanager/PowerHalWrapper.cpp | |
parent | fa8eb01f88bfc8ef61ba863d95c31605f563a721 (diff) |
Refactor initial support check to use SupportInfo
This change makes the intial support check when
APerformanceHintManager starts pass the SupportInfo
object instead of just relying on the preferred rate
Bug: 367803904
Test: atest PerformanceHintNativeTestCases
Test: atest HintManagerServiceTest
Flag: EXEMPT refactor
Change-Id: Iba93310c58896a2b1d02c6156b4e67eaa766af5b
Diffstat (limited to 'services/powermanager/PowerHalWrapper.cpp')
-rw-r--r-- | services/powermanager/PowerHalWrapper.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/services/powermanager/PowerHalWrapper.cpp b/services/powermanager/PowerHalWrapper.cpp index bd6685cbad..068c23f94a 100644 --- a/services/powermanager/PowerHalWrapper.cpp +++ b/services/powermanager/PowerHalWrapper.cpp @@ -18,6 +18,7 @@ #include <aidl/android/hardware/power/Boost.h> #include <aidl/android/hardware/power/IPowerHintSession.h> #include <aidl/android/hardware/power/Mode.h> +#include <aidl/android/hardware/power/SupportInfo.h> #include <powermanager/HalResult.h> #include <powermanager/PowerHalWrapper.h> #include <utils/Log.h> @@ -73,6 +74,11 @@ HalResult<void> EmptyHalWrapper::closeSessionChannel(int, int) { return HalResult<void>::unsupported(); } +HalResult<Aidl::SupportInfo> EmptyHalWrapper::getSupportInfo() { + ALOGV("Skipped getSupportInfo because %s", getUnsupportedMessage()); + return HalResult<Aidl::SupportInfo>::unsupported(); +} + const char* EmptyHalWrapper::getUnsupportedMessage() { return "Power HAL is not supported"; } @@ -280,6 +286,12 @@ HalResult<void> AidlHalWrapper::closeSessionChannel(int tgid, int uid) { return HalResult<void>::fromStatus(mHandle->closeSessionChannel(tgid, uid)); } +HalResult<Aidl::SupportInfo> AidlHalWrapper::getSupportInfo() { + Aidl::SupportInfo support; + auto result = mHandle->getSupportInfo(&support); + return HalResult<Aidl::SupportInfo>::fromStatus(result, std::move(support)); +} + const char* AidlHalWrapper::getUnsupportedMessage() { return "Power HAL doesn't support it"; } |