diff --git a/Android.bp b/Android.bp
index d196ee6..4ddf7e6 100644
--- a/Android.bp
+++ b/Android.bp
@@ -36,8 +36,8 @@
     srcs: ["power_test.cpp"],
     static_libs: ["libpower"],
     shared_libs: [
+        "android.system.suspend.control.internal-cpp",
         "android.system.suspend@1.0",
-        "suspend_control_aidl_interface-cpp",
     ],
     test_suites: ["device-tests"],
     require_root: true,
diff --git a/block_suspend.cpp b/block_suspend.cpp
index 99341b8..18c93d4 100644
--- a/block_suspend.cpp
+++ b/block_suspend.cpp
@@ -14,6 +14,8 @@
  * limitations under the License.
  */
 
+#include <unistd.h>
+
 #include <iostream>
 
 #include <wakelock/wakelock.h>
@@ -33,7 +35,7 @@
     }
 
     android::wakelock::WakeLock wl{gWakeLockName};  // RAII object
-    while (true) {};
+    while (true) { sleep(1000000); };
     std::abort();  // should never reach here
     return 0;
 }
diff --git a/power_test.cpp b/power_test.cpp
index d6e414d..32cff70 100644
--- a/power_test.cpp
+++ b/power_test.cpp
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-#include <android/system/suspend/ISuspendControlService.h>
+#include <android/system/suspend/internal/ISuspendControlServiceInternal.h>
 #include <binder/IServiceManager.h>
 #include <gtest/gtest.h>
 #include <hardware_legacy/power.h>
@@ -27,8 +27,8 @@
 #include <vector>
 
 using android::sp;
-using android::system::suspend::ISuspendControlService;
-using android::system::suspend::WakeLockInfo;
+using android::system::suspend::internal::ISuspendControlServiceInternal;
+using android::system::suspend::internal::WakeLockInfo;
 using namespace std::chrono_literals;
 
 namespace android {
@@ -94,13 +94,13 @@
    public:
     virtual void SetUp() override {
         sp<IBinder> control =
-            android::defaultServiceManager()->getService(android::String16("suspend_control"));
-        ASSERT_NE(control, nullptr) << "failed to get the suspend control service";
-        controlService = interface_cast<ISuspendControlService>(control);
+            android::defaultServiceManager()->getService(android::String16("suspend_control_internal"));
+        ASSERT_NE(control, nullptr) << "failed to get the internal suspend control service";
+        controlService = interface_cast<ISuspendControlServiceInternal>(control);
     }
 
     // Returns true iff found.
-    bool findWakeLockInfoByName(const sp<ISuspendControlService>& service, const std::string& name,
+    bool findWakeLockInfoByName(const sp<ISuspendControlServiceInternal>& service, const std::string& name,
                                 WakeLockInfo* info) {
         std::vector<WakeLockInfo> wlStats;
         service->getWakeLockStats(&wlStats);
@@ -114,7 +114,7 @@
     }
 
     // All userspace wake locks are registered with system suspend.
-    sp<ISuspendControlService> controlService;
+    sp<ISuspendControlServiceInternal> controlService;
 };
 
 // Test RAII properties of WakeLock destructor.
