Skip to content

Commit

Permalink
Added documentation for the two parsers (ELF and FDT).
Browse files Browse the repository at this point in the history
  • Loading branch information
dgarske authored and danielinux committed Jan 17, 2024
1 parent dec2653 commit 4a85d2e
Show file tree
Hide file tree
Showing 3 changed files with 54 additions and 1 deletion.
2 changes: 1 addition & 1 deletion tools/elf-parser/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

CC=gcc
CFLAGS=-Wall -g -ggdb
CFLAGS+=-I../../include -DWOLFBOOT_ELF -DELF_PARSER -DDEBUG_ELF -DPRINTF_ENABLED
CFLAGS+=-I../../include -DWOLFBOOT_ELF -DELF_PARSER -DPRINTF_ENABLED
EXE=elf-parser

LIBS=
Expand Down
23 changes: 23 additions & 0 deletions tools/elf-parser/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# ELF Parser Tool

This tool demonstrates parsing ELF32/ELF64, showing the clear/load sections and entry point.

## Building elf-parser

From root: `make elf-parser`
OR
From `tools/elf-parser` use `make clean && make`

## Example Output

```sh
% ./tools/elf-parser/elf-parser wolfboot.elf
ELF Parser:
Loading elf at 0x7f9a18008000
Found valid elf32 (little endian)
Program Headers 2 (size 32)
Load 18340 bytes (offset 0x10000) to 0x8000000 (p 0x8000000)
Clear 72 bytes at 0x20000000 (p 0x80047a4)
Entry point 0x8000000
Return 0, Load 0x8000000
```
30 changes: 30 additions & 0 deletions tools/fdt-parser/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
# Flattened Device Tree (FDT) Parser

This tool uses our internal FDT (fdt.c) parsing code to dump the device tree. There is also a `-t` option that tests making several updates to the device tree.

## Building fdt-parser

From root: `make fdt-parser`
OR
From `tools/fdt-parser` use `make clean && make`

## Example Output

```sh
% ./tools/fdt-parser/fdt-parser ./tools/fdt-parser/nxp_t1024.dtb
FDT Parser (./tools/fdt-parser/nxp_t1024.dtb):
FDT Version 17, Size 31102
root (node offset 0, depth 1, len 0):
compatible (prop offset 8, len 13): fsl,T1024RDB
#address-cells (prop offset 36, len 4): ....| 00 00 00 02
#size-cells (prop offset 52, len 4): ....| 00 00 00 02
interrupt-parent (prop offset 68, len 4): ....| 00 00 00 01
model (prop offset 84, len 13): fsl,T1024RDB
cpus (node offset 112, depth 2, len 4):
power-isa-version (prop offset 124, len 5): 2.06
power-isa-b (prop offset 144, len 0): NULL
power-isa-e (prop offset 156, len 0): NULL
power-isa-atb (prop offset 168, len 0): NULL
power-isa-cs (prop offset 180, len 0): NULL
...
```

0 comments on commit 4a85d2e

Please sign in to comment.