Commit graph

1434 commits

Author SHA1 Message Date
Ady Abraham
fc1e3f11ad composer: vts: don't clear reader errors on teardown
Fixing a bug that caused Teardown to clear the errors before
checking them

Bug: 303735490
Test: presubmit
Change-Id: Ieb02ab3015fc21bcef6624f8f45c3b84549005c2
2024-01-10 18:13:59 +08:00
Manali Bhutiyani
e558994665 Merge "Update aidl documentation" into main 2024-01-09 21:52:38 +00:00
Manali Bhutiyani
3dc6dd2bd4 Update aidl documentation
Bug: 290685621
Test: N/A

Change-Id: I1d30c24e667ce02d7553462d663cf66a32aa4b4b
2024-01-09 20:14:14 +00:00
Leon Scroggins
50ede7f71a Merge "Avoid crashing when failing graphics VTS" into main 2024-01-09 19:00:47 +00:00
Leon Scroggins III
94f4b20dcf Avoid crashing when failing graphics VTS
When the tests fail, ensure we continue running so we can run the
remainder of the tests.

Bug: 304976052
Test: atest GraphicsComposerAidlCommandTest
Change-Id: Ia6ab2bbd284bb7eddeb49164dcbe7285829ad9c3
2024-01-09 12:39:11 -05:00
Wiwit Rifa'i
c67c887c5a composer: vts: update getClientTargetSupport tests
Ensure the primary display to set power on before running
getClientTargetSupport tests for VTS 2.1 - 2.3.

Bug: 308252481
Test: atest VtsHalGraphicsComposerV2_1TargetTest
Test: atest VtsHalGraphicsComposerV2_2TargetTest
Test: atest VtsHalGraphicsComposerV2_3TargetTest
Change-Id: I6b793537ee42c87f37c4c1d7141364541f448134
2024-01-05 16:29:12 +08:00
Ady Abraham
a00d246f27 composer: vts: add support for batched create/destroy layers
Bug: 315517904
Test: TBD
Change-Id: Ic3c0415612b1387671ab8efa0ec95ed727f6bf68
2023-12-27 22:32:45 +00:00
ramindani
52416e06ff [Composer3] Update notifyExpectedPresent parameter names
Update the timeoutNs description to specify what 0 and not absent value
expected behavior is
BUG: 294102485
Test: VTS

Change-Id: I3954c8f1efad8190ed6d608e2968fe1dc15c2f11
2023-12-21 08:58:00 -08:00
Treehugger Robot
59d64f830e Merge "[VTS] Update SetDisplayBrightness test item" into main 2023-12-19 11:27:19 +00:00
Peter Lin
b9fbd4e3c7 [VTS] Update SetDisplayBrightness test item
Ensure the primary display power on before run the
SetDisplayBrightness test item.

Bug: 313794734
Test: atest VtsHalGraphicsComposer3_TargetTest:PerInstance/
      GraphicsComposerAidlCommandTest#SetDisplayBrightness/
      0_android_hardware_graphics_composer3_IComposer_default
      -- --abi arm64-v8a
Change-Id: I94fb700704bcbd8543f2a608dd75b9e745e40e37
2023-12-14 06:03:58 +00:00
Ram Indani
730f86fe18 Merge changes from topic "RRN" into main
* changes:
  [Composer3-VTS] Test Composer3-V3 for refreshPeriodNanos and vsyncPeriodNanos
  [HWC3] AIDL change to add refreshPeriodNanos to RefreshRateChangedDebugData
2023-12-13 19:03:18 +00:00
ramindani
a2a6deaf50 [Composer3-VTS] Test Composer3-V3 for refreshPeriodNanos and
vsyncPeriodNanos

Test: atest VtsHalGraphicsComposer3_TargetTest
BUG: 314527560
Change-Id: If45c0d8c4b61b8c46c1e4336fe261d11414535e5
2023-12-13 01:14:10 +00:00
ramindani
1eb2ecfe4a [HWC3] AIDL change to add refreshPeriodNanos to RefreshRateChangedDebugData
Test: atest VtsHalGraphicsComposer3_TargetTest and device boots
BUG: 314527560
Change-Id: Iaf961ae6ad118c5cd99b07ec133023297dac7040
2023-12-13 01:07:58 +00:00
Manali Bhutiyani
e11bda9789 [aidl] add hwc batching capability
This CL adds the new aidl/apis for HWC command batching feature.

Bug: 290685621
Test: atest VtsHalGraphicsComposer3_TargetTest
      atest PerInstance/GraphicsComposerAidlBatchedCommandTest

Change-Id: Ibccc2cb30954f5d054f8e45e59a0b831fd15a304
2023-12-13 00:27:53 +00:00
Manali Bhutiyani
38565ccd51 [hwc-batching] AIDL changes for HWC command batching support.
This CL adds the new aidl/apis for HWC command batching feature.

Bug: 290685621
Test: atest VtsHalGraphicsComposer3_TargetTest
      atest PerInstance/GraphicsComposerAidlBatchedCommandTest
Change-Id: I9e8a8afefb03e04a4cd4d8db36d72e29d30e975f
2023-12-09 00:25:42 +00:00
Alec Mouri
8695c7bbc4 Merge "Support extended range fp16 ClientTargets in HWC" into main 2023-12-06 01:59:49 +00:00
Jason Macnak
73e5844464 Remove oneway from onHotplugEvent callback
IIUC, oneway makes the callback a non-blocking call. Hwcomposer
implementations are expected to call onHotplug/onHotplugEvent during
the initial hwcomposer->registerCallback(). However, a oneway callback
would not block and cause the hwcomposer's implementation of
registerCallback() to return immediately. Example log:

11-30 23:32:32.962   508   508 E RanchuHwc: registerCallback
11-30 23:32:32.962   508   508 E RanchuHwc: registerCallback:
display:0
11-30 23:32:32.962   508   508 E RanchuHwc: setCallbacks for display:0
11-30 23:32:32.962   508   508 E RanchuHwc: registerCallback:
display:1
11-30 23:32:32.962   508   508 E RanchuHwc: setCallbacks for display:1
11-30 23:32:32.962   508   508 E RanchuHwc: registerCallback initial
registration, hotplug connecting display:0
11-30 23:32:32.962   508   508 E RanchuHwc: registerCallback initial
registration, hotplug connecting display:1
11-30 23:32:32.962   572   592 E SurfaceFlinger: jasonjason
SurfaceFlinger::onComposerHalHotplugEvent()
11-30 23:32:32.962   572   572 F SurfaceFlinger: Initial display
configuration failed: HWC did not hotplug
11-30 23:32:32.962   572   592 E SurfaceFlinger: jasonjason SurfaceFlinger::onComposerHalHotplugEvent()
<SurfaceFlinger aborts from the Fatal "HWC did not hotplug">

Bug: b/314208907
Test: Launch Cuttlefish with ag/25521493 then
      vts -m VtsHalGraphicsComposer3_TargetTest
Change-Id: Ibfea0b21e1d4c8b0de17bbe25dc55483050700b7
2023-12-01 14:29:50 -08: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
Huihong Luo
5569efbc00 Add a new API to report display hotplug events
When a display is connected, error may occur, this new api introduces
an event variable to specify the hotplug event, including errors.

This new api should be used, and the old onHotplug method is deprecated.

Bug: 241286153
Test: manual
Change-Id: I20ea685c5012015836024e7cab4dc0e68ebb835f
2023-11-28 11:46:53 -08: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
ramindani
ac6e50ab4c Update ComposerClientWriter::validateDisplay with frameInterval
BUG: 284845445
Test: Manual test
Change-Id: I2f856ae4acd45cb2a9827c367d2d3185da859b8a
2023-11-07 16:54:04 -08:00
ramindani
72edecff8e Update ComposerClientWriter::presentOrValidate with frameInterval
BUG: 284845445
Test: Manual test
Change-Id: I096ef0d0523cf33a3867030339a18f9421b9ad2b
2023-11-07 16:53:45 -08:00
Treehugger Robot
6cd27b6f2a Merge "Reland "Add a DisplayCapability for multi-threaded present"" into main 2023-10-18 02:21:51 +00:00
Joen Chen
e0a962c8e3 Reland "Add a DisplayCapability for multi-threaded present"
Originally landed as I5dbb01fc23abd5e0108c565f96d25e62c77fc16d and
previously reverted in I6265f8de3db31f07506906cee82a91fe3baac0bc due to
timeline constraints.

Add a test presenting from multiple threads. Split up execute() so that
it can be called for a single display. Update MultiThreadedPresent
(test) to offload presentDisplay to a separate thread, similar to how
Ib9d074671e32c95875ef7e0791dd95d6e595e47a does it, as described in
go/multi-threaded-present.

Bug: 259132483
Bug: 284156408
Fixes: 251842321
Fixes: 295841597
Test: VtsHalGraphicsComposer3_TargetTest
Change-Id: If975ee9bb0b9c6f64ef50401e2aee32f934e3f08
2023-10-16 15:23:59 -04:00
Leon Scroggins III
79d7ae8207 Remove deprecated warnings for SKIP_VALIDATE
We deliberately use a deprecated API to test that it is not used. Ignore
warnings from using it in this test.

In PresentDisplayNoLayerStateChanges, remove the check for
SKIP_VALIDATE, removing the other warning. As written, the test would be
skipped without SKIP_VALIDATE support. But devices should *not* claim
Capability::SKIP_VALIDATE, meaning the test would always be skipped. The
docs state that the behavior previously indicated by SKIP_VALIDATE is
now the default, so we should always be running the test.

Bug: NA
Test: atest VtsHalGraphicsComposer3_TargetTest (no warnings)
Change-Id: Icc89a82b4850428c2f0940be0f78f5ebff1881b3
2023-10-12 08:38:12 -04:00
Jason Macnak
cde05dd247 Merge "Ensure AIMapper and underlying IMPL outlive IMapperProvider" into main am: b8c23a8a7d am: 4c11b51986 am: 8dcf909435 am: f5dbe8113a am: ba4b850b8a
Original change: https://android-review.googlesource.com/c/platform/hardware/interfaces/+/2781709

Change-Id: Ie4edc900be0e48bb00e3913ec75456347a58f81a
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-10-11 02:14:30 +00:00
Jason Macnak
8dcf909435 Merge "Ensure AIMapper and underlying IMPL outlive IMapperProvider" into main am: b8c23a8a7d am: 4c11b51986
Original change: https://android-review.googlesource.com/c/platform/hardware/interfaces/+/2781709

Change-Id: Ie96a5db1377ca841d493b168ffa4c6b2a5c90d8a
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-10-10 23:31:55 +00:00
Alec Mouri
b9556b3aba Merge "Start VTS for color management." into main 2023-10-10 20:40:46 +00:00
Jason Macnak
7d201b58fa Ensure AIMapper and underlying IMPL outlive IMapperProvider
... as a

  static vendor::mapper::IMapperProvider<IMPL> provider;

may be destructed during a clean process exit (during __cxa_finalize())
but the underlying IMPL may still be in use on other threads.

Bug: b/304343434
Test: boot Cuttlefish
Change-Id: I80687494c61210d527908b5a67375950ca45c8ea
2023-10-10 11:54:00 -07:00
Sergiu Ferentz
31b637fd90 Merge "Bump android.hardware.graphics.common V4->V5" into main 2023-10-09 08:27:26 +00:00
Sergiu Ferentz
d2075f0d14 Merge "Modifying Dataspace.aidl to add additional HAL_ Datapoints present in graphics/**/swapchain.cpp" into main 2023-10-09 08:27:26 +00: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
3e82b63ae8 Merge "Setting layer brightness doesn't need nit info for readback tests" into stage-aosp-udc-ts-dev am: be23bf4f23 am: 2d96a0a082
Original change: https://googleplex-android-review.googlesource.com/c/platform/hardware/interfaces/+/24944166

Change-Id: If96b68cdef28070dba0a446b57bea4581e1b3b40
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-10-05 20:41:40 +00:00
Alec Mouri
a47d46affb 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
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:712b3d9880b6aff51ab17d539bfcbdf3785cc6ca)
Merged-In: I770dc5620648df2eab608e030c5e76cf190f315d
Change-Id: I770dc5620648df2eab608e030c5e76cf190f315d
2023-10-04 21:14:06 +00:00
sergiuferentz
14960cae33 Modifying Dataspace.aidl to add additional HAL_ Datapoints present in graphics/**/swapchain.cpp
Bug: 291142745
Change-Id: I54a41f3170b6c21f1c1b12aec40a8ce928f9163f
2023-10-03 16:14:06 +00:00
sergiuferentz
7d7a24d5f6 Bump android.hardware.graphics.common V4->V5
Test: Build
Bug: 291142745
Change-Id: Ib0002feb982ffcc37fa7b69493c644b7a835cf4f
2023-10-03 16:14:03 +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
Treehugger Robot
83dd5881a0 Merge "Add deprecation note" into main 2023-09-07 20:15:54 +00:00
Treehugger Robot
cb0d2eb323 Merge "Revert "[Composer AIDL] Rename notifyExpectedPresentTimeoutNs and"" into main 2023-09-01 23:58:48 +00:00
John Reck
89b26e7623 Add deprecation note
Flag: DOCS_ONLY
Test: doc-only && make
Change-Id: I16638c3772269e4946a002a7e821735423df5084
2023-09-01 16:32:53 -04:00
Ram Indani
82426a4a40 Revert "[Composer AIDL] Rename notifyExpectedPresentTimeoutNs and"
This reverts commit f850701be0.

Reason for revert: Delaying rename to avoid churn for external partner work.

Change-Id: If96786d074a61ac0f781540e98d020a6f7fd673b
2023-09-01 20:02:50 +00:00
Treehugger Robot
7445bd7b80 Merge "Clarify GPU API requirements for BufferUsage" into main 2023-09-01 16:13:38 +00:00
John Reck
9db00ec784 Clarify GPU API requirements for BufferUsage
Bug: 283989374
Test: n/a doc only change
Change-Id: I4caec722420d4fa2089d1f297f377408a1e674ae
2023-08-31 17:42:05 -04:00
ramindani
f850701be0 [Composer AIDL] Rename notifyExpectedPresentTimeoutNs and
notifyExpectedPresentHeadsUpNs
Renamed to timeoutNs and headsUpNs respectively

BUG: 294102485
Test: atest VtsHalGraphicsComposer3_TargetTest
Change-Id: Id890d9634d80700ad2515c9b4fe2a423b6b75d96
2023-08-30 18:51:19 -07:00
ramindani
2b2ec50b56 [Composer VTS] Check Vrr mode is the only mode in the Config Group
BUG: 296636107
Test: atest VtsHalGraphicsComposer3_TargetTest
Change-Id: I4bdf7b0988673a13297d648dcf3360a6821aaecb
2023-08-25 18:48:47 -07:00
Xin Li
879960bdce Merge Android U (ab/10368041)
Bug: 291102124
Merged-In: I7b6fffac2ada0e039f79bad8cc9b4d954e9c3460
Change-Id: I9466127d8d0fa38df36ca99f704853b2db871e67
2023-08-25 13:29:30 -07:00
Alec Mouri
19698cdd0e Merge "Adjust documentation for UNKNOWN dataspaces." into main 2023-08-24 17:44:49 +00:00
Alec Mouri
75a546270a Remove useFramebufferCache parameter in drawLayers()
GLESRenderEngine used it, but GLESRenderEngine is no more.

Bug: 199918329
Test: builds
Change-Id: I9c735e5820bd187f910905e7e77f9445f0ff30db
2023-08-18 15:01:52 +00:00
Alec Mouri
6dd267ee95 Merge "Remove color management configuration in VTS" into main 2023-08-15 15:52:36 +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