diff options
| author | 2024-06-18 14:13:37 -0700 | |
|---|---|---|
| committer | 2024-06-18 14:13:37 -0700 | |
| commit | bb1814a0b94e8efb3fa3843c3d6a6533a382cac3 (patch) | |
| tree | 27e66123b9acee1a608b520afebbce3b6cd3c037 /libs/graphicsenv/IGpuService.cpp | |
| parent | 13fde70bd413e24c6667ec8ad84ea0d9e07058d6 (diff) | |
| parent | 29f1274c966a27f929cf8d6f21a538d53a3f9ac3 (diff) | |
Merge 24Q3 (ab/11976889) to aosp-main-future
Bug: 347831320
Merged-In: I30f4c21dfee68603d0dad01d205f8a5581e6db31
Change-Id: I301c522ae67cc1f30fe0ddc819aa3dffd4c32d1a
Diffstat (limited to 'libs/graphicsenv/IGpuService.cpp')
| -rw-r--r-- | libs/graphicsenv/IGpuService.cpp | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/libs/graphicsenv/IGpuService.cpp b/libs/graphicsenv/IGpuService.cpp index 5dc195c438..42e7c378a9 100644 --- a/libs/graphicsenv/IGpuService.cpp +++ b/libs/graphicsenv/IGpuService.cpp @@ -77,6 +77,19 @@ public: IBinder::FLAG_ONEWAY); } + void addVulkanEngineName(const std::string& appPackageName, const uint64_t driverVersionCode, + const char* engineName) override { + Parcel data, reply; + data.writeInterfaceToken(IGpuService::getInterfaceDescriptor()); + + data.writeUtf8AsUtf16(appPackageName); + data.writeUint64(driverVersionCode); + data.writeCString(engineName); + + remote()->transact(BnGpuService::ADD_VULKAN_ENGINE_NAME, data, &reply, + IBinder::FLAG_ONEWAY); + } + void setUpdatableDriverPath(const std::string& driverPath) override { Parcel data, reply; data.writeInterfaceToken(IGpuService::getInterfaceDescriptor()); @@ -197,6 +210,21 @@ status_t BnGpuService::onTransact(uint32_t code, const Parcel& data, Parcel* rep return OK; } + case ADD_VULKAN_ENGINE_NAME: { + CHECK_INTERFACE(IGpuService, data, reply); + + std::string appPackageName; + if ((status = data.readUtf8FromUtf16(&appPackageName)) != OK) return status; + + uint64_t driverVersionCode; + if ((status = data.readUint64(&driverVersionCode)) != OK) return status; + + const char* engineName; + if ((engineName = data.readCString()) == nullptr) return BAD_VALUE; + + addVulkanEngineName(appPackageName, driverVersionCode, engineName); + return OK; + } case SET_UPDATABLE_DRIVER_PATH: { CHECK_INTERFACE(IGpuService, data, reply); |