summaryrefslogtreecommitdiff
path: root/services/powermanager/IPowerManager.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'services/powermanager/IPowerManager.cpp')
-rw-r--r--services/powermanager/IPowerManager.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/services/powermanager/IPowerManager.cpp b/services/powermanager/IPowerManager.cpp
index 9f60e7524c..5ecd299a5c 100644
--- a/services/powermanager/IPowerManager.cpp
+++ b/services/powermanager/IPowerManager.cpp
@@ -32,6 +32,7 @@ enum {
ACQUIRE_WAKE_LOCK = IBinder::FIRST_CALL_TRANSACTION,
ACQUIRE_WAKE_LOCK_UID = IBinder::FIRST_CALL_TRANSACTION + 1,
RELEASE_WAKE_LOCK = IBinder::FIRST_CALL_TRANSACTION + 2,
+ UPDATE_WAKE_LOCK_UIDS = IBinder::FIRST_CALL_TRANSACTION + 3,
};
class BpPowerManager : public BpInterface<IPowerManager>
@@ -78,6 +79,16 @@ public:
data.writeInt32(flags);
return remote()->transact(RELEASE_WAKE_LOCK, data, &reply);
}
+
+ virtual status_t updateWakeLockUids(const sp<IBinder>& lock, int len, const int *uids) {
+ Parcel data, reply;
+ data.writeInterfaceToken(IPowerManager::getInterfaceDescriptor());
+ data.writeStrongBinder(lock);
+ data.writeInt32Array(len, uids);
+ // We don't really care too much if this succeeds (there's nothing we can do if it doesn't)
+ // but it should return ASAP
+ return remote()->transact(UPDATE_WAKE_LOCK_UIDS, data, &reply, IBinder::FLAG_ONEWAY);
+ }
};
IMPLEMENT_META_INTERFACE(PowerManager, "android.os.IPowerManager");