[roll] Roll fuchsia [display][amlogic] Stop relying on RDMA IRQ for config reporting

The amlogic-display driver's vsync pipeline no longer depends on status
updates over the RDMA irq to determine the most recently applied config,
which has been determined to be unreliable, especially in certain
conditions in which the entire state machine can stall indefinitely.
This CL makes the following changes as we continue to investigate the
root causes of the RDMA stall:

1. The RDMA IRQ is now only used for diagnostics.
2. The RDMA register configuration and the determination of the most
recently applied image is now performed entirely on each vsync IRQ.
Since the RDMA control and status registers are only written from the
vsync thread (in the general case outside of shutdown), their state is
deterministic.
3. It has been experimentally determined that any scheduled RDMA is
often complete by the time the vsync IRQ handler executes. Thus, the
condition-variable-based signaling of RDMA completion has been removed.
4. The existing `rdma_stalls` metric is now defunct. This has been
replaced by two counters that track submitted RDMA requests and
interrupts. A new stall metric can be built by measuring a sustained
difference between the two counters.

Original-Bug: 80995, b/189400236
Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/570066
Original-Revision: 723e0f29cd28460c5c30fdbbe00642d588a167da
GitOrigin-RevId: 3031874e0afe26f292f5381f41ee47353f5c492a
Change-Id: I4b273f01c8577bfa03d4fd7161dd829108e87229
1 file changed
tree: bf11f7a213904ca024e38f66c86e15bee9e8531e
  1. garnet/
  2. infra/
  3. peridot/
  4. third_party/
  5. topaz/
  6. zircon/
  7. firmware
  8. flower
  9. jiri.lock
  10. minimal
  11. prebuilts
  12. README.md
  13. stem
  14. test_durations
README.md

Integration

This repository contains Fuchsia's Global Integration manifest files.

Making changes

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.

Obtaining the source

First install Jiri.

Next run:

$ jiri init
$ jiri import minimal https://fuchsia.googlesource.com/integration
$ jiri update

Third party

Third party projects should have their own subdirectory in ./third_party.