Commit Graph

19 Commits

Author SHA1 Message Date
Ady Abraham
530024ea4a composer: vts: add support for batched create/destroy layers
Bug: 315517904
Fixes: 329461909
Test: atest VtsHalGraphicsComposer3_TargetTest
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:a00d246f2725b22d32b2908230de7620238827ba)
Merged-In: Ic3c0415612b1387671ab8efa0ec95ed727f6bf68
Change-Id: Ic3c0415612b1387671ab8efa0ec95ed727f6bf68
2024-03-19 23:11:56 +00:00
Alec Mouri
8062f1feda Support extended range fp16 ClientTargets in HWC
Introduce the concept of hdrSdrRatio for ClientTargets, so that:

* 1.0 is treated as SDR luminance
* hdrSdrRatio is provided to scale the content into display luminance
  range during composition. That is, 1.0 maps to SDR max, and
  hdrSdrRatio maps to display max luminance

Bug: 236745178
Test: builds
Change-Id: Id82a102eaca82f85bf3982538786dd2ae6cb8e61
2023-11-29 17:32:58 +00:00
ramindani
cdcfcafc63 [VTS] Update validateDisplay with frameIntervalNs
Test: atest VtsHalGraphicsComposer3_TargetTest
BUG: 284845445
Change-Id: I4821a535518b113923fac02adadb3f4867ce922e
2023-11-09 10:01:28 -08:00
Alec Mouri
f6c039a49e Start VTS for color management.
Right now this only makes sure that extended sRGB buffers aren't
corrupted by the time it hits the display. This is especially important
for Ultra HDR, because display compensation is defined by the spec.

Bug: 276331687
Bug: 259144781
Test: VtsHalGraphicsComposer3_ReadbackTest
Change-Id: Ib6c39858289d5559ae76280ca1a0ef756f2daef0
2023-10-06 23:04:15 +00:00
Alec Mouri
712b3d9880 Setting layer brightness doesn't need nit info for readback tests
The nit information was used when we set exact nit values rather than a
relative brightness per layer. But we only need nit values for the
renderengine interface, which isn't tied to any hwc or panel
capabilities.

Bug: 301261125
Test: VtsHalGraphicsComposer3_TargetTest
Change-Id: I770dc5620648df2eab608e030c5e76cf190f315d
2023-09-29 00:21:37 +00:00
Alec Mouri
32a41abac3 Remove color management configuration in VTS
Color management is now turned on by default, so there's no reason to
explicitly enable it in renderengine.

Bug: 295966830
Test: builds
Change-Id: I42c8afb30950081cd57072680da06895dcc02f2c
2023-08-15 02:11:49 +00:00
Alec Mouri
be1b4d6cce Support per-port display configs in VTS
Bug: 277855934
Change-Id: I92e1615d8eb9466b40e02f8e2df8b3432e927af6
2023-07-21 21:12:16 +00:00
Huihong Luo
651806f263 Reset pending commands
Allow takePendingCommands to have ownership for mComamnds so commands
are reset on each call. Make reset method to be private.

Bug: 273525126
Test: manual
Change-Id: Ifecad733e5e85d475825969296ddf68081ce9e60
2023-04-22 04:09:10 +00:00
Brian Lindahl
e887a25203 Revert "Add VTS readback tests for buffer slot clearing"
This reverts commit d103cd6828.

NOTE: This is not a full revert, it leaves the production code in place and only reverts the VTS test changes.

Reason for revert: b/262370410

Test: atest VtsHalGraphicsComposerV2_1TargetTest on Oriole
Test: atest VtsHalGraphicsComposerV2_2TargetTest on Oriole
Test: atest VtsHalGraphicsComposerV2_3TargetTest on Oriole
Test: atest VtsHalGraphicsComposerV2_4TargetTest on Oriole
Bug: 262370410
Change-Id: I336beb9f0ed81b305b26c6d8e9da70cfabe04bbd
2023-01-18 21:18:21 +00:00
Brian Lindahl
952057044b Revert "Add VTS for new API for clearing buffer slots"
This reverts commit 78ff2d6491.

NOTE: This is not a full revert, it leaves the production code in place and only reverts the VTS test changes.

Reason for revert: b/262370410

Test: atest VtsHalGraphicsComposerV2_1TargetTest on Oriole
Test: atest VtsHalGraphicsComposerV2_2TargetTest on Oriole
Test: atest VtsHalGraphicsComposerV2_3TargetTest on Oriole
Test: atest VtsHalGraphicsComposerV2_4TargetTest on Oriole
Bug: 262370410
Change-Id: Ica725cfaae6e2a08ed9c53eb9f17d6db1656bc93
2023-01-18 21:16:20 +00:00
Brian Lindahl
78ff2d6491 Add VTS for new API for clearing buffer slots
Bug: 262041682
Bug: 258196272
Test: VtsHalGraphicsComposer3_TargetTest
Change-Id: If7e5fea56734f3ae7b4aae7378f4aea0eacc8e32
2022-12-19 16:52:33 -07:00
Brian Lindahl
d103cd6828 Add VTS readback tests for buffer slot clearing
Bug: 258196272
Test: atest VtsHalGraphicsComposer3_ReadbackTest
Test: atest VtsHalGraphicsComposerV2_2TargetTest
Change-Id: I95d24f9cf10d95e54bc228c02bedab9a8281cfd1
2022-12-09 14:31:39 -07:00
Leon Scroggins III
c3d695db50 ComposerClient[Writer/Reader]: enforce a specific display
Add a new parameter and member to ComposerClient[Writer/Reader]
representing the only display it should apply to. The caller is
responsible for ensuring that they only ever refer to that same display.
The display is recorded here for error checking. This isn't strictly
necessary, but crashing here verifies that we only use the proper
display.

This is helpful for use with DisplayCapability.MULTI_THREADED_PRESENT,
although it is fine to use a single display per writer/reader without
the capability.

For the Reader, make the display optional, so that a single reader can
continue to be used for multiple displays. This allows devices without
the new DisplayCapability to continue to work without changes.

Remove copy constructor and operator=. Add a move constructor. This
ensures it will be properly moved when used in containers.

Bug: 241285491
Test: make
Change-Id: Ic7116e64138280747a32500c67dedeeabd7c669b
2022-11-03 11:44:53 -04:00
ramindani
d575109c1e Check Exception Code for Service specific error
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-25 20:44:04 +00:00
ramindani
c7585d9dc4 Set isOpaque For BlendMode::None
Test: atest VtsHalGraphicsComposer3_TargetTest
BUG: 216205298
BUG: 219576457

Change-Id: I479d8367e5abf8893b94ac64b7149a2f0e4cf75b
2022-04-22 16:25:39 +00:00
Alec Mouri
03b6daac4a Send brightness nits to composer
Bug: 220396224
Test: builds, boots
Change-Id: I6866422130776ae25d791b3cfd0d1a754d2488b9
2022-03-31 01:12:34 +00:00
ramindani
a4e7636e62 Vts BlendMode tests skip for UNSUPPORTED ColorMode
BUG: 221887749
Test: atest VtsHalGraphicsComposer3_TargetTest
Change-Id: I6c0a35c64883333c70451c717f50cb84d85ce994
2022-03-02 04:14:18 +00:00
ramindani
44c952f69c Vts readback status check fixes
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-03-01 01:18:53 +00:00
ramindani
458e53e889 Update the test directory structure
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-23 22:33:25 +00:00