1#![cfg_attr(target_os = "none", no_std)]
2#![feature(iterator_try_collect)]
3
4#[macro_use]
5extern crate alloc;
6#[macro_use]
7extern crate log;
8#[macro_use]
9extern crate anyhow;
10
11use core::ptr::NonNull;
12
13pub use usb_if;
14
15#[macro_use]
16mod _macros;
17
18pub(crate) mod backend;
19pub mod device;
20pub mod err;
21mod host;
22
23pub use crate::backend::ty::Event;
24pub use crate::backend::ty::ep::{
25 EndpointBulkIn, EndpointBulkOut, EndpointControl, EndpointInterruptIn, EndpointInterruptOut,
26 EndpointIsoIn, EndpointIsoOut, EndpointKind,
27};
28pub use host::*;
29
30#[allow(unused_imports)]
31#[cfg(kmod)]
32pub use crate::backend::kmod::*;
33
34define_int_type!(BusAddr, u64);
35
36pub type Mmio = NonNull<u8>;