30 releases

0.9.1 Sep 9, 2022
0.8.7 Aug 17, 2022
0.8.6 Jul 31, 2022
0.8.2 May 13, 2021
0.5.2 Feb 25, 2021

#13 in #os

Download history 12/week @ 2023-02-01 46/week @ 2023-02-08 137/week @ 2023-02-15 34/week @ 2023-02-22 5/week @ 2023-03-01 3/week @ 2023-03-08 6/week @ 2023-03-15 4/week @ 2023-03-22 11/week @ 2023-03-29 39/week @ 2023-04-05 23/week @ 2023-04-12 32/week @ 2023-04-19 8/week @ 2023-04-26 36/week @ 2023-05-03 43/week @ 2023-05-10 8/week @ 2023-05-17

95 downloads per month

MIT/Apache

165KB
4K SLoC

Workflow Status Crates.io Crates.io docs.rs

xhci

A library to handle xHCI.

This crate provides types of the xHCI structures, such as the Registers and Contexts. Users can use this library to implement a USB device deriver on your own OS.

This crate is #![no_std] compatible.

Examples

let mut r = unsafe { xhci::Registers::new(MMIO_BASE, mapper) };
let o = &mut r.operational;

o.usbcmd.update(|u| {
    u.set_run_stop();
});
while o.usbsts.read().hc_halted() {}

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Dependencies

~1–1.4MB
~33K SLoC