hermit-dtb 0.1.1

Crate to parse Flattened Device Trees (FDT) / Device Tree Blobs (DTB) in a `no_std` environment.
Documentation
  • Coverage
  • 0%
    0 out of 8 items documented0 out of 7 items with examples
  • Size
  • Source code size: 36.45 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 2.09 MB This is the summed size of all files generated by rustdoc for all configured targets
  • Links
  • hermit-os/hermit-dtb
    5 5 1
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • stlankes

hermit-dtb

Crate to parse Flattened Device Trees (FDT)/Device Tree Blobs (DTB) in a no_std environment. Performs no dynamic memory allocations and can therefore be universally used for operating system development. Originally written for the AArch64 port of HermitCore-rs, hence the name.

Features

  • Enumerating subnodes of a given path.
  • Enumerating properties of a given path.
  • Getting the data of a specific property.
  • Finding incomplete paths (e.g. looking for /uart@ reliably yields /uart@fe001000 if that is the only UART device).
  • Written in mostly safe Rust. unsafe is only used when accessing the in-memory DTB in the first place (unavoidable) and for performance reasons (e.g. str::from_utf8_unchecked).
  • parse_dtb example tool to demonstrate the features.

ToDo

  • Implement an iterator for the memory reservation block.
  • Implement a method to fetch the boot_cpuid_phys value.

References

Contact

The hermit-dtb crate has been written by Colin Finck (colin.finck@rwth-aachen.de).