driver_lab_rust/driver_lab_lib.rs
1// Copyright 2026 The Fuchsia Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5//! Embedded Fuchsia driver library (`driver_lab_rust`) and shared runtime
6//! backends for `driver-lab`.
7//!
8//! This library provides:
9//! - [`platform_provider::MappedMmio`]: pre-mapped MMIO adapter via VMO
10//! duplication (`zx::Rights::SAME_RIGHTS`) so an active driver can share
11//! its MMIO banks without perturbing its own mappings.
12//! - [`fuchsia_backends`]: Fuchsia FIDL protocol backends (GPIO, I2C, SPI,
13//! Clock, Reset, Serial).
14//! - [`server`]: `fuchsia.driver.lab` FIDL service and session server.
15//! - [`trace`]: mirrors audit records into the `driver_lab` and
16//! `driver_lab:irq` trace categories.
17
18pub mod embedded;
19pub mod fuchsia_backends;
20pub mod platform_provider;
21pub mod server;
22pub mod trace;
23
24pub use embedded::{DriverLabBuilder, EmbeddedLabServer};
25pub use fuchsia_backends::LiveBackend;
26pub use lab_proxy_core as core;
27pub use platform_provider::MappedMmio;