Loading graphics/composer/2.1/utils/vts/Android.bp +2 −0 Original line number Diff line number Diff line Loading @@ -27,12 +27,14 @@ cc_library_static { "android.hardware.graphics.composer@2.1", "android.hardware.graphics.mapper@2.0-vts", "android.hardware.graphics.mapper@3.0-vts", "android.hardware.graphics.mapper@4.0-vts", ], export_static_lib_headers: [ "VtsHalHidlTargetTestBase", "android.hardware.graphics.composer@2.1", "android.hardware.graphics.mapper@2.0-vts", "android.hardware.graphics.mapper@3.0-vts", "android.hardware.graphics.mapper@4.0-vts", ], header_libs: [ "android.hardware.graphics.composer@2.1-command-buffer", Loading graphics/composer/2.1/utils/vts/ComposerVts.cpp +35 −8 Original line number Diff line number Diff line Loading @@ -317,19 +317,32 @@ void ComposerClient::execute(TestCommandReader* reader, CommandWriterBase* write Gralloc::Gralloc() { [this] { ASSERT_NO_FATAL_FAILURE(mGralloc4 = std::make_shared<Gralloc4>("default", "default", /*errOnFailure=*/false)); if (mGralloc4->getAllocator() == nullptr || mGralloc4->getMapper() == nullptr) { mGralloc4 = nullptr; ASSERT_NO_FATAL_FAILURE(mGralloc3 = std::make_shared<Gralloc3>("default", "default", /*errOnFailure=*/false)); if (mGralloc3->getAllocator() == nullptr || mGralloc3->getMapper() == nullptr) { mGralloc3 = nullptr; ASSERT_NO_FATAL_FAILURE(mGralloc2 = std::make_shared<Gralloc2>()); } } }(); } const native_handle_t* Gralloc::allocate(uint32_t width, uint32_t height, uint32_t layerCount, PixelFormat format, uint64_t usage, bool import, uint32_t* outStride) { if (mGralloc3) { if (mGralloc4) { IMapper4::BufferDescriptorInfo info{}; info.width = width; info.height = height; info.layerCount = layerCount; info.format = static_cast<android::hardware::graphics::common::V1_2::PixelFormat>(format); info.usage = usage; return mGralloc4->allocate(info, import, outStride); } else if (mGralloc3) { IMapper3::BufferDescriptorInfo info{}; info.width = width; info.height = height; Loading @@ -350,7 +363,17 @@ const native_handle_t* Gralloc::allocate(uint32_t width, uint32_t height, uint32 void* Gralloc::lock(const native_handle_t* bufferHandle, uint64_t cpuUsage, const AccessRegion& accessRegionRect, int acquireFence) { if (mGralloc3) { if (mGralloc4) { IMapper4::Rect accessRegion; accessRegion.left = accessRegionRect.left; accessRegion.top = accessRegionRect.top; accessRegion.width = accessRegionRect.width; accessRegion.height = accessRegionRect.height; int32_t bytesPerPixel; int32_t bytesPerStride; return mGralloc4->lock(bufferHandle, cpuUsage, accessRegion, acquireFence, &bytesPerPixel, &bytesPerStride); } else if (mGralloc3) { IMapper3::Rect accessRegion; accessRegion.left = accessRegionRect.left; accessRegion.top = accessRegionRect.top; Loading @@ -371,7 +394,9 @@ void* Gralloc::lock(const native_handle_t* bufferHandle, uint64_t cpuUsage, } int Gralloc::unlock(const native_handle_t* bufferHandle) { if (mGralloc3) { if (mGralloc4) { return mGralloc4->unlock(bufferHandle); } else if (mGralloc3) { return mGralloc3->unlock(bufferHandle); } else { return mGralloc2->unlock(bufferHandle); Loading @@ -379,7 +404,9 @@ int Gralloc::unlock(const native_handle_t* bufferHandle) { } void Gralloc::freeBuffer(const native_handle_t* bufferHandle) { if (mGralloc3) { if (mGralloc4) { mGralloc4->freeBuffer(bufferHandle); } else if (mGralloc3) { mGralloc3->freeBuffer(bufferHandle); } else { mGralloc2->freeBuffer(bufferHandle); Loading graphics/composer/2.1/utils/vts/include/composer-vts/2.1/ComposerVts.h +4 −0 Original line number Diff line number Diff line Loading @@ -27,6 +27,7 @@ #include <composer-vts/2.1/TestCommandReader.h> #include <mapper-vts/2.0/MapperVts.h> #include <mapper-vts/3.0/MapperVts.h> #include <mapper-vts/4.0/MapperVts.h> #include <utils/StrongPointer.h> #include "gtest/gtest.h" Loading @@ -44,8 +45,10 @@ using android::hardware::graphics::common::V1_0::Hdr; using android::hardware::graphics::common::V1_0::PixelFormat; using IMapper2 = android::hardware::graphics::mapper::V2_0::IMapper; using IMapper3 = android::hardware::graphics::mapper::V3_0::IMapper; using IMapper4 = android::hardware::graphics::mapper::V4_0::IMapper; using Gralloc2 = android::hardware::graphics::mapper::V2_0::vts::Gralloc; using Gralloc3 = android::hardware::graphics::mapper::V3_0::vts::Gralloc; using Gralloc4 = android::hardware::graphics::mapper::V4_0::vts::Gralloc; class ComposerClient; Loading Loading @@ -153,6 +156,7 @@ class Gralloc { protected: std::shared_ptr<Gralloc2> mGralloc2 = nullptr; std::shared_ptr<Gralloc3> mGralloc3 = nullptr; std::shared_ptr<Gralloc4> mGralloc4 = nullptr; }; } // namespace vts Loading graphics/composer/2.1/vts/functional/Android.bp +5 −0 Original line number Diff line number Diff line Loading @@ -27,12 +27,17 @@ cc_test { static_libs: [ "android.hardware.graphics.allocator@2.0", "android.hardware.graphics.allocator@3.0", "android.hardware.graphics.allocator@4.0", "android.hardware.graphics.composer@2.1", "android.hardware.graphics.composer@2.1-vts", "android.hardware.graphics.mapper@2.0", "android.hardware.graphics.mapper@2.0-vts", "android.hardware.graphics.mapper@2.1", "android.hardware.graphics.mapper@2.1-vts", "android.hardware.graphics.mapper@3.0", "android.hardware.graphics.mapper@3.0-vts", "android.hardware.graphics.mapper@4.0", "android.hardware.graphics.mapper@4.0-vts", ], header_libs: [ "android.hardware.graphics.composer@2.1-command-buffer", Loading graphics/composer/2.1/vts/functional/VtsHalGraphicsComposerV2_1TargetTest.cpp +1 −0 Original line number Diff line number Diff line Loading @@ -22,6 +22,7 @@ #include <composer-vts/2.1/TestCommandReader.h> #include <mapper-vts/2.0/MapperVts.h> #include <mapper-vts/3.0/MapperVts.h> #include <mapper-vts/4.0/MapperVts.h> #include <VtsHalHidlTargetTestBase.h> #include <VtsHalHidlTargetTestEnvBase.h> Loading Loading
graphics/composer/2.1/utils/vts/Android.bp +2 −0 Original line number Diff line number Diff line Loading @@ -27,12 +27,14 @@ cc_library_static { "android.hardware.graphics.composer@2.1", "android.hardware.graphics.mapper@2.0-vts", "android.hardware.graphics.mapper@3.0-vts", "android.hardware.graphics.mapper@4.0-vts", ], export_static_lib_headers: [ "VtsHalHidlTargetTestBase", "android.hardware.graphics.composer@2.1", "android.hardware.graphics.mapper@2.0-vts", "android.hardware.graphics.mapper@3.0-vts", "android.hardware.graphics.mapper@4.0-vts", ], header_libs: [ "android.hardware.graphics.composer@2.1-command-buffer", Loading
graphics/composer/2.1/utils/vts/ComposerVts.cpp +35 −8 Original line number Diff line number Diff line Loading @@ -317,19 +317,32 @@ void ComposerClient::execute(TestCommandReader* reader, CommandWriterBase* write Gralloc::Gralloc() { [this] { ASSERT_NO_FATAL_FAILURE(mGralloc4 = std::make_shared<Gralloc4>("default", "default", /*errOnFailure=*/false)); if (mGralloc4->getAllocator() == nullptr || mGralloc4->getMapper() == nullptr) { mGralloc4 = nullptr; ASSERT_NO_FATAL_FAILURE(mGralloc3 = std::make_shared<Gralloc3>("default", "default", /*errOnFailure=*/false)); if (mGralloc3->getAllocator() == nullptr || mGralloc3->getMapper() == nullptr) { mGralloc3 = nullptr; ASSERT_NO_FATAL_FAILURE(mGralloc2 = std::make_shared<Gralloc2>()); } } }(); } const native_handle_t* Gralloc::allocate(uint32_t width, uint32_t height, uint32_t layerCount, PixelFormat format, uint64_t usage, bool import, uint32_t* outStride) { if (mGralloc3) { if (mGralloc4) { IMapper4::BufferDescriptorInfo info{}; info.width = width; info.height = height; info.layerCount = layerCount; info.format = static_cast<android::hardware::graphics::common::V1_2::PixelFormat>(format); info.usage = usage; return mGralloc4->allocate(info, import, outStride); } else if (mGralloc3) { IMapper3::BufferDescriptorInfo info{}; info.width = width; info.height = height; Loading @@ -350,7 +363,17 @@ const native_handle_t* Gralloc::allocate(uint32_t width, uint32_t height, uint32 void* Gralloc::lock(const native_handle_t* bufferHandle, uint64_t cpuUsage, const AccessRegion& accessRegionRect, int acquireFence) { if (mGralloc3) { if (mGralloc4) { IMapper4::Rect accessRegion; accessRegion.left = accessRegionRect.left; accessRegion.top = accessRegionRect.top; accessRegion.width = accessRegionRect.width; accessRegion.height = accessRegionRect.height; int32_t bytesPerPixel; int32_t bytesPerStride; return mGralloc4->lock(bufferHandle, cpuUsage, accessRegion, acquireFence, &bytesPerPixel, &bytesPerStride); } else if (mGralloc3) { IMapper3::Rect accessRegion; accessRegion.left = accessRegionRect.left; accessRegion.top = accessRegionRect.top; Loading @@ -371,7 +394,9 @@ void* Gralloc::lock(const native_handle_t* bufferHandle, uint64_t cpuUsage, } int Gralloc::unlock(const native_handle_t* bufferHandle) { if (mGralloc3) { if (mGralloc4) { return mGralloc4->unlock(bufferHandle); } else if (mGralloc3) { return mGralloc3->unlock(bufferHandle); } else { return mGralloc2->unlock(bufferHandle); Loading @@ -379,7 +404,9 @@ int Gralloc::unlock(const native_handle_t* bufferHandle) { } void Gralloc::freeBuffer(const native_handle_t* bufferHandle) { if (mGralloc3) { if (mGralloc4) { mGralloc4->freeBuffer(bufferHandle); } else if (mGralloc3) { mGralloc3->freeBuffer(bufferHandle); } else { mGralloc2->freeBuffer(bufferHandle); Loading
graphics/composer/2.1/utils/vts/include/composer-vts/2.1/ComposerVts.h +4 −0 Original line number Diff line number Diff line Loading @@ -27,6 +27,7 @@ #include <composer-vts/2.1/TestCommandReader.h> #include <mapper-vts/2.0/MapperVts.h> #include <mapper-vts/3.0/MapperVts.h> #include <mapper-vts/4.0/MapperVts.h> #include <utils/StrongPointer.h> #include "gtest/gtest.h" Loading @@ -44,8 +45,10 @@ using android::hardware::graphics::common::V1_0::Hdr; using android::hardware::graphics::common::V1_0::PixelFormat; using IMapper2 = android::hardware::graphics::mapper::V2_0::IMapper; using IMapper3 = android::hardware::graphics::mapper::V3_0::IMapper; using IMapper4 = android::hardware::graphics::mapper::V4_0::IMapper; using Gralloc2 = android::hardware::graphics::mapper::V2_0::vts::Gralloc; using Gralloc3 = android::hardware::graphics::mapper::V3_0::vts::Gralloc; using Gralloc4 = android::hardware::graphics::mapper::V4_0::vts::Gralloc; class ComposerClient; Loading Loading @@ -153,6 +156,7 @@ class Gralloc { protected: std::shared_ptr<Gralloc2> mGralloc2 = nullptr; std::shared_ptr<Gralloc3> mGralloc3 = nullptr; std::shared_ptr<Gralloc4> mGralloc4 = nullptr; }; } // namespace vts Loading
graphics/composer/2.1/vts/functional/Android.bp +5 −0 Original line number Diff line number Diff line Loading @@ -27,12 +27,17 @@ cc_test { static_libs: [ "android.hardware.graphics.allocator@2.0", "android.hardware.graphics.allocator@3.0", "android.hardware.graphics.allocator@4.0", "android.hardware.graphics.composer@2.1", "android.hardware.graphics.composer@2.1-vts", "android.hardware.graphics.mapper@2.0", "android.hardware.graphics.mapper@2.0-vts", "android.hardware.graphics.mapper@2.1", "android.hardware.graphics.mapper@2.1-vts", "android.hardware.graphics.mapper@3.0", "android.hardware.graphics.mapper@3.0-vts", "android.hardware.graphics.mapper@4.0", "android.hardware.graphics.mapper@4.0-vts", ], header_libs: [ "android.hardware.graphics.composer@2.1-command-buffer", Loading
graphics/composer/2.1/vts/functional/VtsHalGraphicsComposerV2_1TargetTest.cpp +1 −0 Original line number Diff line number Diff line Loading @@ -22,6 +22,7 @@ #include <composer-vts/2.1/TestCommandReader.h> #include <mapper-vts/2.0/MapperVts.h> #include <mapper-vts/3.0/MapperVts.h> #include <mapper-vts/4.0/MapperVts.h> #include <VtsHalHidlTargetTestBase.h> #include <VtsHalHidlTargetTestEnvBase.h> Loading