Commit Graph

1088 Commits

Author SHA1 Message Date
Leon Scroggins
3ea6e39979 Merge "Add a more detailed HAL for DISPLAY_DECORATION" 2022-02-10 11:56:31 +00:00
TreeHugger Robot
f3eadf62a2 Merge "Assure width and height are always initialized" 2022-02-10 08:21:27 +00:00
TreeHugger Robot
6cf6df7c4d Merge "Add explicit apex_available clauses" 2022-02-10 05:55:41 +00:00
Ray Essick
d1374e051c Add explicit apex_available clauses
add apex_available clauses to interfaces which were being allowed
by list stored within the apex toools

Bug: 215589022
Test: build
Change-Id: Iaf5d1b80e6b35f765d6b7a59ce7f28d4fa5098a4
2022-02-09 09:28:53 -08:00
Greg Kaiser
c20d70e09f Assure width and height are always initialized
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-09 07:11:33 -08:00
Ady Abraham
fac5544455 Revert "composer: adds BufferAhead for the LayerCommand.aidl"
This reverts commit d40304b574.

Reason for revert: Punting hal changes to future release

Change-Id: I0980ac2d36962998472f46ece93f88f28fac4232
2022-02-08 19:03:44 -08:00
Ram Indani
97c3ab2554 Merge changes from topic "vts-composerclient-wrapper"
* changes:
  Remove test `GetDisplayAttributeConfigsInAGroupDifferOnlyByVsyncPeriod`
  Use Wrapper in the readback tests.
  Use VtsComposerClient in Base test
  IComposerClient wrapper for VTS tests
2022-02-08 23:28:07 +00:00
ramindani
8bb4ce13a2 Remove test GetDisplayAttributeConfigsInAGroupDifferOnlyByVsyncPeriod
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-08 19:44:07 +00:00
ramindani
dcecfd46a1 Use Wrapper in the readback tests.
BUG: 199413815

Test: atest VtsHalGraphicsComposer3_TargetTest
Change-Id: I3a7e81f8c04971b178ae703a3eb83de50ae0810f
2022-02-08 19:44:06 +00:00
ramindani
431aad4a65 Use VtsComposerClient in Base test
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
2022-02-08 19:44:06 +00:00
ramindani
edf3ef9f93 IComposerClient wrapper for VTS tests
A wrapper helps with implementation details of IComposerClient and
improves re-usability with readback and base tests.

Changes from the original wrapper (ag/16578214):

Changed the createClient to return ScopedAStatus
as it helps more with the singleton test.
And updated getDisplays to go through all the configurations
and save it in the DisplayResources as we use
the properties like width, height, vsync later
in the test and we avoid querying to the composerClient for this.

With readback tests updated setReadbackBuffer method to use
const native_handle_t* buffer instead of const native_handle* buffer

BUG: 199413815

Test: atest VtsHalGraphicsComposer3_TargetTest
Change-Id: Ia33c9489bf15a52edcae55a91ec56666df3726c1
2022-02-08 19:32:11 +00:00
Leon Scroggins
dd2ad3c55c Merge "Add a Java backend for android.hardware.graphics.common AIDL" 2022-02-07 19:10:17 +00:00
John Reck
09028a0872 Merge "Address ANAPIC feedback" 2022-02-07 18:18:07 +00:00
Leon Scroggins III
e5c038e9ef Add a more detailed HAL for DISPLAY_DECORATION
Different hardware may prefer different formats for DISPLAY_DECORATION
layers. Add a new struct with two enums: one for the format, and one for
how to interpret the alpha. These two properties are orthogonal.

Add IComposerClient.getDisplayDecorationSupport for retrieving the
struct. I0c2fbc78cf5e4e97cede4762699a1ecc98620919 demonstrates a sample
implementation.

Remove the DisplayCapability.DISPLAY_DECORATION, which is replaced by
this.

Bug: 216644902
Test: manual
Change-Id: I27f119f927b23052c5fd8f068cbca75338fe7b91
2022-02-07 11:41:35 -05:00
John Reck
8920d2a1a6 Merge "Add minimal IAllocator AIDL VTS test" 2022-02-04 23:33:37 +00:00
Treehugger Robot
83c90e67a2 Merge "Add a top-level OWNERs" am: 95ad078d75 am: 8cf5b0071f am: dae5db1c87 am: 6d8c580ed3
Original change: https://android-review.googlesource.com/c/platform/hardware/interfaces/+/1972199

Change-Id: Ia90e92f75fa5a17c0fc55e1b4b9f7410890c89fd
2022-02-04 22:33:55 +00:00
Treehugger Robot
95ad078d75 Merge "Add a top-level OWNERs" 2022-02-04 21:38:21 +00:00
Leon Scroggins III
bab1ba54ed Add a Java backend for android.hardware.graphics.common AIDL
This will allow SysUI to access the same struct (in
I27f119f927b23052c5fd8f068cbca75338fe7b91) that HWC uses to describe
its support for DISPLAY_DECORATION.

@hide each API individually. SysUI can access hidden APIs. Otherwise
leave the AIDL files are unchanged.

Bug: 216644902
Test: make
Change-Id: Id33f76e4c55b22d007c7e2314a4dfb778562bace
2022-02-04 15:49:06 -05:00
John Reck
cd883bc17a Address ANAPIC feedback
Also adds recommended combination for FRONT_BUFFER as
that was feedback from implementers

Fixes: 217752219
Test: N/A doc only change
Change-Id: I086597d14cc7d9d1a0b620b73297aaa3e6288773
2022-02-03 21:01:03 -05:00
John Reck
d1431859b3 Add minimal IAllocator AIDL VTS test
Bug: 217776226
Test: this
Change-Id: I3cca43b435e05e3909a943991b5dad69c1e4e56e
2022-02-03 20:30:58 -05:00
John Reck
b09556a1e9 Add a top-level OWNERs
Test: N/A
Change-Id: I21cd4888b3141dd272fcc72e880402b2ca84bc50
2022-02-03 19:58:21 -05:00
TreeHugger Robot
66cb6f97d0 Merge "Revert "IComposerClient wrapper for VTS tests"" 2022-01-29 03:13:08 +00:00
Ram Indani
22884acd6a Revert "IComposerClient wrapper for VTS tests"
This reverts commit 634340d6a8.

Reason for revert: No one is using it, I will make a cl with usage of the wrapper along side this and reupload it.

Change-Id: I3ff3427fc9e81d53fd47a082ab027441f5dc8a66
2022-01-29 02:00:21 +00:00
Ram Indani
d1cbbea53f Merge "IComposerClient wrapper for VTS tests" 2022-01-29 01:52:29 +00:00
ramindani
634340d6a8 IComposerClient wrapper for VTS tests
A wrapper helps with implementation details of IComposerClient and
improves re-usability with readback and base tests.

BUG: 199413815

Test: atest VtsHalGraphicsComposer3_TargetTest
Change-Id: I627748d1c779eaacf92ff6fb5ccf3138a3024681
2022-01-28 23:13:18 +00:00
Ray Essick
2e47e06fd3 Merge "Add explicit apex_available clauses" 2022-01-28 12:46:59 +00:00
TreeHugger Robot
e8b2c912a2 Merge "composer3: update cursorPosition documentation" 2022-01-28 01:15:48 +00:00
Ady Abraham
ac1125cb98 composer3: update cursorPosition documentation
Remove the word asynchronous and insteam explain 
that the cursor position can be updated without a validate/present.

Change-Id: Ia01bc097bc335779dba4e06577c285ca133dfd02
Fixes: 209711877
Test: make
2022-01-27 22:57:43 +00:00
TreeHugger Robot
99684613d9 Merge "composer: adds BufferAhead for the LayerCommand.aidl" 2022-01-27 21:53:57 +00:00
ramindani
d40304b574 composer: adds BufferAhead for the LayerCommand.aidl
Adds a Capability param as BUFFER_AHEAD to check if
BufferAhead is supported.

Test: Device boots after these changes.
BUG: 198186628
Change-Id: Ic0f3e602635a2519f4e90c546dfca1af985116f9
2022-01-27 19:36:33 +00:00
Ray Essick
be6963a279 Add explicit apex_available clauses
So we can start deleting the lists embedded in the build tools

Bug: 215589022
Test: build
Change-Id: Ibea376e172d4def6d1dbb2b8e7a170afc356f59e
2022-01-26 09:50:04 -08:00
TreeHugger Robot
b20697869b Merge "composer: add API to control display idle timer" 2022-01-26 03:04:51 +00:00
TreeHugger Robot
e6db2b63f5 Merge "Clarify FRONT_BUFFER requirements" 2022-01-26 01:25:47 +00:00
John Reck
5ee4de588b Clarify FRONT_BUFFER requirements
Bug: 193558894
Test: N/A
Change-Id: I9c22df7b6a7a5facb37ab6fc37f926c484c2792b
2022-01-25 16:35:13 -05:00
TreeHugger Robot
47a1952f40 Merge "Skip expectedPresentTime_* tests when unreliable fences cap present" 2022-01-25 00:07:24 +00:00
TreeHugger Robot
9138a1382c Merge "Make retrieving SMPTE2094-10 metadata optional." 2022-01-24 23:33:39 +00:00
Treehugger Robot
08749b23ea Merge "Add OWNERS file for android/hardware/graphics/common" am: 5afd5eba36 am: 262e40b9ef am: bf1243dc01 am: b4f96158b0
Original change: https://android-review.googlesource.com/c/platform/hardware/interfaces/+/1912556

Change-Id: Id5bb6ff3a347f57606f9dd8d8a15c4ead8555b57
2022-01-24 22:56:15 +00:00
Jason Macnak
325e8235c3 Skip expectedPresentTime_* tests when unreliable fences cap present
... as these tests depends on present fence signal times.

Bug: b/193240715
Test: cvd start
Test: vts -m VtsHalGraphicsComposer3_TargetTest
Change-Id: Iad0b89daa85e01a287f045a91b1cbdb890fee05d
2022-01-24 14:51:19 -08:00
Treehugger Robot
5afd5eba36 Merge "Add OWNERS file for android/hardware/graphics/common" 2022-01-24 21:55:59 +00:00
Alec Mouri
9324749747 Make retrieving SMPTE2094-10 metadata optional.
Devices that do not support this metadata are not required to support
getting or setting it on gralloc buffers, as SMPTE2094-10 is only used
for some HDR standards that are not guaranteed to be supported.

Bug: 205245993
Test: builds
Change-Id: Ic3501230015ddce49ce977963356c0578af7c50f
2022-01-24 21:42:13 +00:00
Leon Scroggins III
38c446f3b7 Add OWNERS file for android/hardware/graphics/common
Suggested in I6f6b7f22e76609151a413ca6a6dbf55bd91911dd.

Bug: NA
Test: NA
Change-Id: Ifc55e56ee912d822adb458818da30b737a89ef5a
2022-01-24 19:58:39 +00:00
Alec Mouri
3e037cf683 Remove stride from VTS classes
Stride must be retrieved from the graphic buffer immediately prior to
CPU access. The previous code was tripped up by an error-prone situation
where stride was never initialized, causing UB.

Also this patch sneaks in a couple of const modifiers for methods that
pass-by-ref.

Bug: 213493262
Test: VtsHalGraphicsComposer3_TargetTest
Change-Id: Ic601cca128b71d36876ed25bd55140b02cb0ad0f
2022-01-24 10:58:41 -08:00
Treehugger Robot
fb7dff82ab Merge "composer: 2.4: vts: Add missing COMPOSER_OVERLAY allocation flag" am: 283a876e5a am: 0bda60d835 am: 59b38ef7b0 am: 82a2943aa3
Original change: https://android-review.googlesource.com/c/platform/hardware/interfaces/+/1954544

Change-Id: I953de2c90498daeee6b381df262c41063d005b95
2022-01-23 14:53:04 +00:00
Alec Mouri
710a50ae6b Merge "Fix asserts for GetReadbackBufferFenceInactive" 2022-01-21 21:17:31 +00:00
Alec Mouri
62ae37be3c Fix asserts for GetReadbackBufferFenceInactive
If there's no readback buffer, then the status is NOT ok(), and the
returned fence must be -1.

Bug: 213493262
Test: VtsHalGraphicsComposer3_TargetTest
Change-Id: Iff1b6e04126bfcc748f0f8d173f63244bfd83be4
2022-01-21 19:42:32 +00:00
Alec Mouri
f23f502fcc Merge changes from topic "whitepoint_readback_vts"
* changes:
  Cleanup for readback buffer management:
  Readback test support for per-layer dimming
2022-01-21 19:42:16 +00:00
Jason Macnak
82374526b5 Merge changes Ibf80a618,I0a2b90bc
* changes:
  Use IComposerClient::EX_UNSUPPORTED
  Check createComposer().isOk() in test setup
2022-01-21 16:38:26 +00:00
Roman Stratiienko
bf928e775d composer: 2.4: vts: Add missing COMPOSER_OVERLAY allocation flag
Without this flag, the composer will fail to PRESENT the buffer on
the systems that do not have IOMMU support and can scanout contiguous-
only buffers.

Signed-off-by: Roman Stratiienko <roman.o.stratiienko@globallogic.com>
Change-Id: I566534a2a1fb602c0ce69ef861805d4fb03d7c47
2022-01-21 10:49:47 +02:00
Midas Chien
a0b56bde11 composer: add API to control display idle timer
Add new functions to control display idle timer
- Adding an API to r configure display idle timer.
- Extend DisplayCapability to query display support idle timer.
- Adding an callback for notify client the display is idle, the refresh
  rate changed to a lower setting to preserve power and vsync cadence
  changed. The client can enable vsync callback to learn the new vsync
  cadence before sending a new frame.

Bug: 194068871
Bug: 198808492
Test: build, vts
Change-Id: I47649d222022922926a05f2d700ca798f8f48b35
2022-01-21 15:38:52 +08:00
Jason Macnak
062bc9a3a6 Use IComposerClient::EX_UNSUPPORTED
Bug: b/193240715
Test: cvd start
Test: vts -m VtsHalGraphicsComposer3_TargetTest
Change-Id: Ibf80a618dead09ffdea56d373a83a691124c7d2e
2022-01-20 15:00:09 -08:00