Rust implementation of the Firmware Handoff specification

Clone this repo:

Branches

  1. 943085e Initial implemention for TransferList by Ludovic Mermod · 3 weeks ago main
  2. e881d5a Initial empty repository by Bálint Dobszay · 6 months ago

Firmware Handoff Transfer List

This crate is a Rust implementation of the Transfer List (TL) datastructure and related operation described in the Firmware Handoff specification, which aims at unifying how different firmware stages pass data from one to another.

The main feature of the crate is the [TransferList][crate::TransferList] structure, which wraps a memory region and provides methods to enact the operations available on a TL, as well as other utility methods to navigate its entries (TLEs - Transfer List Entry).

Testing

Unit testing is handle by cargo test. Test data can be generated by the test_data/generate.sh script, which requires the tlc executable from the Transfer List Library to be in the PATH.

Implemented features

  • Zero-copy parsing of the TL and common entries.
  • Insantiating a new TL.
  • TL Entry allocation.
  • TL Entry navigation.

License

The project is MIT and Apache-2.0 dual licensed, see LICENSE-APACHE and LICENSE-MIT.

Maintainers

arm-tf-firmware-handoff is a trustedfirmware.org maintained project. All contributions are ultimately merged by the maintainers listed below.

Contributing

Please follow the directions of the Trusted Firmware Processes

Contributions are handled through review.trustedfirmware.org.


Copyright The tf-firmware-handoff Contributors.