summaryrefslogtreecommitdiff
path: root/graphics/composer/aidl
AgeCommit message (Collapse)Author
2022-06-29composer: vts: configure layer for DisplayDecorationMidas Chien
Some HW may not support crop function for decoration and current API can't query this capability. Configure decoration layer to full screen to avoid this limitation. Bug: 225765061 Test: VtsHalGraphicsComposer3_TargetTest --gtest_filter=*DisplayDecoration* Change-Id: If47154adf9d48f9c1b8390b4bee090d8bf40ff3b (cherry picked from commit 7d55d4269d5ec7247c00f9f1a84c33a6d6f53a00) Merged-In: If47154adf9d48f9c1b8390b4bee090d8bf40ff3b (cherry picked from commit 308f4ac90690febbac077c297302890772ada495) Merged-In: If47154adf9d48f9c1b8390b4bee090d8bf40ff3b
2022-04-25Check Exception Code for Service specific errorramindani
Before checking the service specific error we need to check that getExceptionCode returns EX_SERVICE_SPECIFIC error code. Added a method and used that to do the two checks together for exceptionCode and for the service specific error code, so that we don't repeat two lines in all the tests that need them. EXPECT_NO_FATAL_FAILURES print the correct line number of the test or iteration of the test when used with helper functions, and testing guidelines recommend it too here: go/gunitadvanced#propagating-fatal-failures Test: atest VtsHalGraphicsComposer3_TargetTest BUG: 205152739 Change-Id: I1d3c3aa9b34dcefb14be507ff61b73b6f08a5204
2022-04-22Set isOpaque For BlendMode::Noneramindani
Test: atest VtsHalGraphicsComposer3_TargetTest BUG: 216205298 BUG: 219576457 Change-Id: I479d8367e5abf8893b94ac64b7149a2f0e4cf75b
2022-04-19Merge "Move ComposerServiceWriter to composer3." into tm-devTreeHugger Robot
2022-04-11Merge "Send brightness nits to composer" into tm-devAlec Mouri
2022-04-08Move ComposerServiceWriter to composer3.Rachel Lee
It can be reused more easily. Bug: 216204575 Test: m; flashall Change-Id: I76b8533ba16ad1d01fcd182bf72b65982dce7c20
2022-03-31Freeze AIDL APIs for TMJiyong Park
Bug: 225941299 Test: m Change-Id: Ie41cc0797710f813f92c65c387f247c7806d8394
2022-03-31Send brightness nits to composerAlec Mouri
Bug: 220396224 Test: builds, boots Change-Id: I6866422130776ae25d791b3cfd0d1a754d2488b9
2022-03-24Clarify documentation for the dimming stage.Alec Mouri
Plumbing this enum to RenderEngine requires knowledge of the intended transfer function to apply the dimming stage in. Because this is expected to be a contrained use-case and because apis are frozen, document that RenderEngine is allowed to assume that the resulting dimming matrix may be gamma corrected using a 2.2 power function. Bug: 218954037 Test: builds Change-Id: Ie7d357f8ce79295af017d80c62a2759dbccce5d2
2022-03-16[HWC3.0] Add capability BOOT_DISPLAY_CONFIGramindani
This Capabiliy::BOOT_DISPLAY_CONFIG will make the display boot display config optional on the HWC3.0 BUG: 216113429 Test: atest VtsHalGraphicsComposer3_TargetTest Change-Id: I3be3383922fdd91e0bbccebd3c73e458753b749f
2022-03-08composer: minor documentation fixAdy Abraham
Bug: NA Change-Id: I167f6a1224ceed48723f3af15a07d71fbde168cc Test: NA
2022-03-02Vts BlendMode tests skip for UNSUPPORTED ColorModeramindani
BUG: 221887749 Test: atest VtsHalGraphicsComposer3_TargetTest Change-Id: I6c0a35c64883333c70451c717f50cb84d85ce994
2022-03-01Vts readback status check fixesramindani
When we query for the getReadbackBufferAttributes we can get EX_UNSUPPORTED error when not supported and when this happens readback should not be supported. EXPECT_TRUE for this failure case was causing the test to fail when we received an EX_UNSUPPORTED for this. See for documentation: https://source.corp.google.com/android/hardware/interfaces/graphics/composer/aidl/android/hardware/graphics/composer3/IComposerClient.aidl;rcl=e1f0950945f687ed374a45911e2d7786de724ca4;l=436 BUG: 221889462 Test: atest VtsHalGraphicsComposer3_TargetTest Test link for the cf_x86_64_phone-userdebug http://ab/I39800010022763398 All the other test failures are tracked else where. Change-Id: Idf352761c5cc808540edfe2042c5ee4602b5e96b
2022-02-25DisplayDecoration VTS: remove expected changed composition typesLeon Scroggins III
If validateDisplay returns an error, changed composition types are not propagated back to the caller. Remove the expectation that they will be. Fixes: 221406264 Test: this Change-Id: I3e07e40b0c12a2cf6eaa685435647aab93172bb0
2022-02-24Merge "Actually add DimmingStage to client target properties" into tm-devTreeHugger Robot
2022-02-24Merge "getDisplayDecorationSupport: expect IComposerClient::EX_UNSUPPORTED" ↵Leon Scroggins
into tm-dev
2022-02-24Actually add DimmingStage to client target propertiesAlec Mouri
This change was missed while cherry-picking I5675c16f0895f9958e3bee3ee4c85df8937ecdb7 due to merge conflicts. So...actually merge this. Bug: 218954037 Test: builds Change-Id: Idb3a518f7dfd4f4fd598672ee709ccd5b1f3f06a
2022-02-24Merge "Minor spelling fix" into tm-devJason Macnak
2022-02-24getDisplayDecorationSupport: expect IComposerClient::EX_UNSUPPORTEDLeon Scroggins III
This is the error returned by cuttlefish, not EX_UNSUPPORTED_OPERATION. This also matches other tests, e.g. SetDisplayBrightness. Bug: 209458568 Test: this Change-Id: I885767c4f1c42edfb11359b36852a863cbc8b0ed
2022-02-24Merge "Update the test directory structure" into tm-devTreeHugger Robot
2022-02-24Merge "Add composer API changes in accordance to partner feedback" into tm-devTreeHugger Robot
2022-02-24Merge "Remove concept of nits from the client target properties" into tm-devAlec Mouri
2022-02-24Add composer API changes in accordance to partner feedbackAlec Mouri
* Add a DimmingStage to the client target configuration reported by HWC, which may be used for some vendor color modes to configure when dimming should occur during client composition * Communicate the display brightness in nits, so that HWC implementations do not need to parse the per-display xml to map from display brightness to nits. Furthermore, this is more plausible for extensibility for external displays. Bug: 220396224 Bug: 218954037 Test: builds Change-Id: I5675c16f0895f9958e3bee3ee4c85df8937ecdb7
2022-02-23Remove concept of nits from the client target propertiesAlec Mouri
An earlier patch replaced white point nits with a per-layer brightness. This patch does the same for providing the brightness space of the client target relative to the display brightness. Bug: 217961164 Test: builds, boots Change-Id: I1be65f7c511fefa239305e0735637126a1cd6622 Merged-In: I1be65f7c511fefa239305e0735637126a1cd6622
2022-02-23Update the test directory structureramindani
vts is moved from aidl/android/ to aidl/vts functional, include & composer-vts directory is removed as well. BUG: 220171967 Test: atest VtsHalGraphicsComposer3_TargetTest Change-Id: I6cafbbd99374308a1cc06e27cc590e70618f7075
2022-02-23Minor spelling fixJason Macnak
Change-Id: Ibcad1d80e09ff547c2935bbc362809431a4c3f14
2022-02-23Merge "getDisplayDecorationSupport test: allow errors" into tm-devTreeHugger Robot
2022-02-23getDisplayDecorationSupport test: allow errorsLeon Scroggins III
Allow getDisplayDecorationSupport to return an error, and treat that as unsupported. This allows Cuttlefish, which, with I91105fc3345dbd75aeb0b102f3f0138fa33120c0, returns Unsupported, to pass the test. Bug: 209458568 Test: this Change-Id: I8e17d3c0ca0ac4eacb0b5e4c8ae540f271e68a23
2022-02-22composer: remove IComposer.dumpDebugInfoAdy Abraham
aidl already have a dump funciton, so there is no need to expose a custom dumpDebugInfo from IComposer. Bug: 220171623 Test: atest VtsHalGraphicsComposer3_TargetTest Test: adb shell dumpsys SurfaceFlinger Test: adb shell dumpsys android.hardware.graphics.composer3.IComposer/default Change-Id: I5036193c06ba9fdd8aa5f79cd756541d9edc146c
2022-02-17Merge "Add a VTS test for DISPLAY_DECORATION"TreeHugger Robot
2022-02-17Add a VTS test for DISPLAY_DECORATIONLeon Scroggins III
Check for support via getDisplayDecorationSupport. If it is supported, verify that we can allocate a buffer of the correct format and that Composition.DISPLAY_DECORATION can be used without error. If it's not supported, expect an error of EX_UNSUPPORTED_OPERATION. Bug: 209458568 Fixes: 209458568 Test: atest VtsHalGraphicsComposer3_TargetTest (this) Change-Id: I0a62a0ce3f8fd3a2d6088f94ce1ad0840d9c6faa
2022-02-16Merge "[VTS] Removes wait on buffer fence"Ram Indani
2022-02-16Merge "[VTS] BlendMode::Coverage test"Ram Indani
2022-02-16[VTS] Removes wait on buffer fenceramindani
When we have a fence created with GraphicBuffer We don't need to wait on it in VTS tests, the composer should be able to handle the fence in this case BUG: 219589185 Test: atest VtsHalGraphicsComposer3_TargetTest Change-Id: I688d695bb562dd1fe86cdceb642e746cbafe8b30
2022-02-16[VTS] BlendMode::Coverage testramindani
Enable BlendMode::Coverage test. Test pass: BlendMode/GraphicsBlendModeCompositionTest#Premultiplied/0: PASSED (930ms) BlendMode/GraphicsBlendModeCompositionTest#Premultiplied/1: PASSED (933ms) BUG: 219737571 Test: atest VtsHalGraphicsComposer3_TargetTest Change-Id: I5f5bbf371c26933457eec0f3710d47ddadd06cdb
2022-02-16Merge "Use Vector instead of unordered_map for hotplug displays"Ram Indani
2022-02-16Merge "BlendMode VTS tests"Ram Indani
2022-02-15Use Vector instead of unordered_map for hotplug displaysramindani
For multi-display order of the hotplug matters, and vector maintains the order that we need for the multi-display. see: ag/1921760 for partner cl on HIDL. BUG: 210920960 BUG: 209409863 Test: atest VtsHalGraphicsComposer3_TargetTest Change-Id: I4f9a86413f20c860fc0bc3850a14335d62de881a
2022-02-15BlendMode VTS testsramindani
BlendMode::Coverage and BlendMode::Premultiplied test fix HIDL only worked on SRGB for this test and as HIDL this also passes just the Coverage and Premultiplied with the colorMode SRGB see: https://source.corp.google.com/android/hardware/interfaces/graphics/composer/2.2/vts/functional/VtsHalGraphicsComposerV2_2ReadbackTest.cpp;rcl=ddbbf784a80979fd0b2d926a1e3cdb68d0a49b61;l=938 BUG: 216172840 Test: atest VtsHalGraphicsComposer3_TargetTest Change-Id: Iec16fc112d3ab6ee37e55ca9f3fa760a439e52eb
2022-02-15Merge "Provide dimming ratio instead of white point nits in composer"TreeHugger Robot
2022-02-14ClientComposition test fixramindani
Client composition test was broken because there was a buffer created at the test creation and this is not how this test works for client composition trigger. And for the fence that was used is different from what it needs previously fence was acquired through gralloc but now it's internal to the Graphic Buffer and we no longer have to  wait for the fence to signal it's taken care by the graphicBuffer->unlock call, the unlock call waits for us. See for unlock https://source.corp.google.com/android/frameworks/native/libs/ui/GraphicBufferMapper.cpp;rcl=HEAD;l=139 BUG: 216170021 Test: atest VtsHalGraphicsComposer3_TargetTest Change-Id: I8fa25d8910a4e2b1df2f0e2270445a658e3b1a39
2022-02-14Clean up the GraphicBuffer.ramindani
HIDL tests don't have any buffer created when test execution starts and with GraphicBuffer that wasn't the case. We only initialize the buffer when required the way gralloc implementation did. BUG: 199413815 Test: atest VtsHalGraphicsComposer3_TargetTest Change-Id: I3aeec5b00e30e636de2e58cf7e6ced5539ae19b6
2022-02-10Provide dimming ratio instead of white point nits in composerAlec Mouri
There are several reasons for limiting the notion of white point nits in the composer interface: 1. Some KMS apis exposed by drivers only expose a notion of a per-plane brightness. While these are non-mobile drivers, e.g., nouveau, this does indicate that white point is not directly going to be understood by typical hardware 2. Changing the brightness without requiring a frame update introduces implicit state in composer. If the brightness and white point nits for a set of SDR layers are 200 nits, and the brightness changes to 205 nits to respond to ambient conditions, then composer must not dim the layers, and in fact DisplayManager will tell SurfaceFlinger that the SDR white point will be 205 nits. But SurfaceFlinger will not tell composer that the SDR white point changed as that would otherwise introduce a re-composition cycle, meaning that HW Composer must track somehow that the layer white point changed without a corresponding change on the layer data structure, which is confusing. 3. It's poorly defined what the dimming ratio should be if SurfaceFlinger provides the following inputs: Layer A has a white point of 200 nits, Layer B has a white point of 400 nits, and display brightness is 300 nits. Current implementations may clamp the brightness of Layer B to be 300 nits and dim layer A by 2/3s, but there is an equally valid interpretation which is just dim Layer A to be 50% of Layer B's brightness. 4. The problem indicated by (2) and (3) suggests that layer white point is really an up-stack concept, that SurfaceFlinger can be aware of for properly computing the dimming ratios it can send to composer, but the composer hal shouldn't really be speaking in terms of nits. Note that this patch does not yet change the interface for ClientTargetWithNits, which may be done in a follow-up patch. Bug: 217961164 Test: builds, boots Change-Id: I4a1b4e8c300d22599a5683bd44b7b8afa9a29425
2022-02-10Merge "Add a more detailed HAL for DISPLAY_DECORATION"Leon Scroggins
2022-02-10Merge "Assure width and height are always initialized"TreeHugger Robot
2022-02-09Assure width and height are always initializedGreg Kaiser
In case a user fails to call setDimensions() prior to several other methods on this class, we at least want to have consistent behavior that's easy to debug. Test: TreeHugger BUG: 199413815 Change-Id: Iee7681ed855cf6ebf9e436e0d2864e0fc9cb4025
2022-02-08Revert "composer: adds BufferAhead for the LayerCommand.aidl"Ady Abraham
This reverts commit d40304b574e19a7a458e365d4b8bdf495363179b. Reason for revert: Punting hal changes to future release Change-Id: I0980ac2d36962998472f46ece93f88f28fac4232
2022-02-08Remove test `GetDisplayAttributeConfigsInAGroupDifferOnlyByVsyncPeriod`ramindani
The test is removed from aosp so won't be required in HWC3.0 BUG: 200184776 Test: atest VtsHalGraphicsComposer3_TargetTest Change-Id: I21f0ccf94d1d92a730a41b579bf111fa0553f609
2022-02-08Use Wrapper in the readback tests.ramindani
BUG: 199413815 Test: atest VtsHalGraphicsComposer3_TargetTest Change-Id: I3a7e81f8c04971b178ae703a3eb83de50ae0810f
2022-02-08Use VtsComposerClient in Base testramindani
Makes corrections to the code such as checking EXPECT_TRUE, ASSERT_TRUE in certain cases, test name corrections, consolidate layer configurations. See comments in ag/16465080 for change refrences. BUG: 199413815 Test: atest VtsHalGraphicsComposer3_TargetTest Change-Id: I73c4621d8c525fdfbcd301d78a1ad97c142b2864