1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
//! Raw FDT parser without high-level abstractions.
//!
//! This crate provides a very low-level parser for Flattened Device Tree (FDT) files.
//! It is designed to be a minimal dependency that only handles the binary format
//! of device tree blobs without providing any node or property abstractions.
//!
//! # Features
//!
//! - `#![no_std]` compatible
//! - Zero-copy parsing where possible
//! - Direct access to the FDT structure blocks
//! - Minimal dependencies
//!
//! # Example
//!
//! ```no_run
//! use fdt_raw::{Fdt, Header};
//!
//! # fn main() -> Result<(), Box<dyn std::error::Error>> {
//! // Read FDT data from file or memory
//! let data = std::fs::read("path/to/device.dtb")?;
//!
//! // Parse the header
//! let header = Header::from_bytes(&data)?;
//!
//! println!("FDT version: {}", header.version);
//! println!("Total size: {} bytes", header.totalsize);
//!
//! // Create the FDT parser
//! let fdt = Fdt::from_bytes(&data)?;
//!
//! // Iterate over memory reservation entries
//! for rsv in fdt.memory_reservations() {
//! println!("Reserved: {:?} - {:?} bytes", rsv.address, rsv.size);
//! }
//! # Ok(())
//! # }
//! ```
pub use *;
pub use Fdt;
pub use Header;
pub use *;