[roll] Roll fuchsia [driver-lab] Core library & pre-mapped MMIO

Extract the shared Fuchsia runtime backends and server into the
driver_lab_rust library crate and implement the pre-mapped MMIO
adapter via VMO duplication per CS24 (Phase 2 Section 2.1).

- Add MappedMmio::from_vmo to duplicate an existing driver MMIO VMO
  handle (zx::Rights::SAME_RIGHTS) and map an independent local
  MmioRegion in the driver host process address space while
  preserving the VMO cache policy.
- Add ProvidedResources::embedded and resource registration helpers
  (add_mmio, add_protocol, add_interrupt) in lab_proxy_core.
- Extract rustc_library("driver_lab_rust") and share it with the
  standalone lab_proxy driver.
- Add unit tests for VMO duplication, independent mapping lifecycle,
  and embedded provider validation.

Original-Original-Bug: 537880816
Test: fx test --host lab_proxy_core_lib_test
Test: fx clippy //src/devices/driver-lab:driver_lab_rust
TAG: agy
CONV: 9b1bbaa3-45d2-403c-8062-97c6564470d6
Original-Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/1846007
Original-Original-Revision: 76f204f17c14c8e9dba6602989840231ceb58c37
GitOrigin-RevId: a4ce574d2767613cf5606794668e81849aa2c184
Change-Id: Ic03942877c752abacb9f964f7dec4681f4522872
Reviewed-on: https://fuchsia-review.googlesource.com/c/integration/+/1861256
Cr-Commit-Position: refs/heads/main@{#203904}
1 file changed
tree: bbbb8470b60f8bc3b0e49c6d7ea7d45903dadb6a
  1. ctf/
  2. git-hooks/
  3. infra/
  4. third_party/
  5. cobalt
  6. flower
  7. jiri.lock
  8. MILESTONE
  9. minimal
  10. prebuilts
  11. README.md
  12. stem
  13. 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 in one of the communication channels documented at get involved.

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.