| commit | b8dcd7261a5a65b7f443ae10ef409e733fbc1b51 | [log] [tgz] |
|---|---|---|
| author | Yilong Li <liyl@fuchsia.infra.roller.google.com> | Wed Mar 20 21:16:22 2024 +0000 |
| committer | Copybara-Service <copybara-worker@google.com> | Wed Mar 20 14:18:25 2024 -0700 |
| tree | 0ca5481db97a7cd1d71afe8a4725de99e56d6e45 | |
| parent | c1545487dd03cdd51f595bc136ba60dfc67f12e1 [diff] |
[roll] Roll fuchsia [display][banjo] Merge DisplayCaptureInterface into
DisplayControllerInterface.
Both DisplayControllerInterface and DisplayCaptureInterface banjo
protocols were "callback interfaces", which were workarounds for the
display engine drivers to emit events that could be handled by the
display coordinator. In the fuchsia.hardware.display.engine FIDL
library where real FIDL events are supported, all the callback
methods are defined in the Engine protocol as FIDL events.
The SetDisplayCaptureInterface() method in the DisplayControllerImpl
served two purposes: The display coordinator used this method to
(explicitly, as indicated by the method name) set the event callback
handlers on display engine drivers, and (implicitly) check whether
the display capture feature is supported.
To make it easier for display engine drivers to migrate from banjo
to FIDL, this change makes the following changes to the fuchsia.
hardware.display.controller banjo protocol:
- It merges the DisplayCaptureInterface protocol into
DisplayControllerInterface, so that there is only one callback
interface between the display coordinator and the engine drivers.
- It removes the SetDisplayCaptureInterface() banjo method from the
DisplayControllerImpl banjo protocol. The deleted banjo method
is replaced by the following methods:
* A new method IsCaptureSupported() is added for the display
coordinator to check whether the capture feature is supported on
a specific display engine.
* SetDisplayControllerInterface() now sets the capture callback
handler as well.
Test: display-tool squares on:
- core.vim3 (using amlogic-display)
- core.x64 on NUC11 (using intel-i915)
- core.x64 on AEMU (using goldfish-display)
- core.x64 on QEMU using virtio-gpu
- core.x64 on QEMU using standard VGA display (simple-display)
Test: flatland_display_compositor_pixeltest (to test display capture)
on core.vim3
Original-Bug: 314126494
Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/1011278
Original-Revision: 5015f57d00a55f4bdc0bde1a95e04e12d28a4f01
GitOrigin-RevId: 038c926e2499a9dc2049639c6293eea7d594f2b5
Change-Id: I012f2c05256ca5d2acc09a071aa4988f50aa2a79
This repository contains Fuchsia's Global Integration manifest files.
All changes should be made to the internal version of this repository. Our infrastructure automatically updates this version when the internal one changes.
Currently all changes must be made by a Google employee. Non-Google employees wishing to make a change can ask for assistance via the IRC channel #fuchsia on Freenode.
First install Jiri.
Next run:
$ jiri init $ jiri import minimal https://fuchsia.googlesource.com/integration $ jiri update
Third party projects should have their own subdirectory in ./third_party.