Add CPU and GPU headroom HAL APIs

Bug: 346604998
Flag: EXEMPT HAL changes
Test: atest VtsHalPowerTargetTest
Change-Id: Ib6d6fd944238d37b33ace044c9a2d89c47861771
diff --git a/power/aidl/default/Power.cpp b/power/aidl/default/Power.cpp
index 36d0055..1fc0a0a 100644
--- a/power/aidl/default/Power.cpp
+++ b/power/aidl/default/Power.cpp
@@ -69,6 +69,27 @@
     return ScopedAStatus::ok();
 }
 
+ndk::ScopedAStatus Power::getCpuHeadroom(const CpuHeadroomParams& _,
+                                         std::vector<float>* _aidl_return) {
+    *_aidl_return = {0.5f};
+    return ndk::ScopedAStatus::ok();
+}
+
+ndk::ScopedAStatus Power::getGpuHeadroom(const GpuHeadroomParams& _, float* _aidl_return) {
+    *_aidl_return = 0.5f;
+    return ndk::ScopedAStatus::ok();
+}
+
+ndk::ScopedAStatus Power::getCpuHeadroomMinIntervalMillis(int64_t* _aidl_return) {
+    *_aidl_return = 1000;
+    return ndk::ScopedAStatus::ok();
+}
+
+ndk::ScopedAStatus Power::getGpuHeadroomMinIntervalMillis(int64_t* _aidl_return) {
+    *_aidl_return = 1000;
+    return ndk::ScopedAStatus::ok();
+}
+
 ScopedAStatus Power::createHintSession(int32_t, int32_t, const std::vector<int32_t>& tids, int64_t,
                                        std::shared_ptr<IPowerHintSession>* _aidl_return) {
     if (tids.size() == 0) {
diff --git a/power/aidl/default/Power.h b/power/aidl/default/Power.h
index ef524e1..a77a514 100644
--- a/power/aidl/default/Power.h
+++ b/power/aidl/default/Power.h
@@ -45,6 +45,12 @@
                                          ChannelConfig* _aidl_return) override;
     ndk::ScopedAStatus closeSessionChannel(int32_t tgid, int32_t uid) override;
     ndk::ScopedAStatus getSupportInfo(SupportInfo* _aidl_return) override;
+    ndk::ScopedAStatus getCpuHeadroom(const CpuHeadroomParams& params,
+                                      std::vector<float>* _aidl_return) override;
+    ndk::ScopedAStatus getGpuHeadroom(const GpuHeadroomParams& params,
+                                      float* _aidl_return) override;
+    ndk::ScopedAStatus getCpuHeadroomMinIntervalMillis(int64_t* _aidl_return) override;
+    ndk::ScopedAStatus getGpuHeadroomMinIntervalMillis(int64_t* _aidl_return) override;
 
   private:
     std::vector<std::shared_ptr<IPowerHintSession>> mPowerHintSessions;