Skip to content

Update docs #176

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Jun 26, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
65 changes: 65 additions & 0 deletions EXAMPLES_ADVANCED.md
Original file line number Diff line number Diff line change
Expand Up @@ -100,3 +100,68 @@ Wrote 153 bytes to foo.bin
# Update everything from a file
> framework_tool --flash-gpu-descriptor-file pcie_4x2.bin
```

## Analyzing binaries

### EC

Note that only since Framework 13 Intel Core Ultra (and later) the version number embedded in the ED binary is meaningful. As you can see below, in this example on Intel Core 12th/13th Gen (hx30) it's always 0.0.1.
The commit hash though is accurate and reflects the git commit it was built from.

```
> framework-tool --ec--bin ec.bin
File
Size: 524288 B
Size: 512 KB
EC
Version: hx30_v0.0.1-7a61a89
RollbackVer: 0
Platform: hx30
Version: 0.0.1
Commit: 7a61a89
Size: 2868 B
Size: 2 KB
```

### PD

```
> framework_tool --pd-bin pd-0.1.14.bin
File
Size: 65536 B
Size: 64 KB
FW 1
Silicon ID: 0x3000
Version: 0.1.14
Row size: 128 B
Start Row: 22
Rows: 95
Size: 12160 B
Size: 11 KB
FW 2
Silicon ID: 0x3000
Version: 0.1.14
Row size: 128 B
Start Row: 118
Rows: 381
Size: 48768 B
Size: 47 KB
```

### UEFI Capsule

```
> framework_tool --capsule retimer23.cap
File
Size: 2232676 B
Size: 2180 KB
Capsule Header
Capsule GUID: (ba2e4e6e, 3b0c, 4f25, [8a,59,4c,55,3f,c8,6e,a2])
Header size: 28 B
Flags: 0x50000
Persist across reset (0x10000)
Initiate reset (0x40000)
Capsule Size: 2232676 B
Capsule Size: 2180 KB
Type: Framework Retimer23 (Right)
```
86 changes: 26 additions & 60 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,11 +13,32 @@ see the [Support Matrices](support-matrices.md).

###### Operating System Support

- [x] OS Tool (`framework_tool`)
- [x] Tested on Linux
- [x] Tested on Windows
- [x] Tested on FreeBSD
- [x] UEFI Shell tool (`framework_uefi`)
The following operating environments are supported.

- Linux
- Windows
- UEFI
- FreeBSD

Most functionality depends communication with the EC.
For Linux and Windows there are dedicated drivers.
On UEFI and FreeBSD raw port I/O is used - on Linux this can also be used as a fallback, if the driver is not available or not working.

| | Port I/O | Linux | Windows |
|---------------------|----------| ------|---------|
| Framework 12 | | | |
| Intel Core 12th Gen | Yes | [6.12](https://github.com/torvalds/linux/commit/62be134abf4250474a7a694837064bc783d2b291) | Yes |
| Framework 13 | | | |
| Intel Core 11th Gen | Yes | [6.11](https://github.com/torvalds/linux/commit/04ca0a51f1e63bd553fd4af8e9af0fe094fa4f0a) | Not yet |
| Intel Core 12th Gen | Yes | [6.13](https://github.com/torvalds/linux/commit/dcd59d0d7d51b2a4b768fc132b0d74a97dfd6d6a) | Not yet |
| Intel Core 13th Gen | Yes | [6.13](https://github.com/torvalds/linux/commit/dcd59d0d7d51b2a4b768fc132b0d74a97dfd6d6a) | Not yet |
| AMD Ryzen 7040 | Yes | [6.10](https://github.com/torvalds/linux/commit/c8f460d991df93d87de01a96b783cad5a2da9616) | Soon |
| Intel Core Ultra 1S | Yes | [6.12](https://github.com/torvalds/linux/commit/62be134abf4250474a7a694837064bc783d2b291) | Soon |
| AMD Ryzen AI 300 | Yes | [6.12](https://github.com/torvalds/linux/commit/62be134abf4250474a7a694837064bc783d2b291) | Yes |
| Framework 16 | | | |
| AMD Ryzen 7040 | Yes | [6.10](https://github.com/torvalds/linux/commit/c8f460d991df93d87de01a96b783cad5a2da9616) | Soon |
| Framework Desktop | | | |
| AMD Ryzen AI Max | Yes | [6.15](https://github.com/torvalds/linux/commit/d83c45aeec9b223fe6db4175e9d1c4f5699cc37a) | Yes |

###### Firmware Information

Expand Down Expand Up @@ -205,61 +226,6 @@ Many actions require root. First build with cargo and then run the binary with s
cargo build && sudo ./target/debug/framework_tool
```

Dumping version information from firmware binaries:

```
# Dumping PD FW Binary Information:
> cargo run -q -- --pd-bin pd-0.1.14.bin
File
Size: 65536 B
Size: 64 KB
FW 1
Silicon ID: 0x3000
Version: 0.1.14
Row size: 128 B
Start Row: 22
Rows: 95
Size: 12160 B
Size: 11 KB
FW 2
Silicon ID: 0x3000
Version: 0.1.14
Row size: 128 B
Start Row: 118
Rows: 381
Size: 48768 B
Size: 47 KB

# Dumping EC FW Binary Information
> cargo run -q -- --ec--bin ec.bin
File
Size: 524288 B
Size: 512 KB
EC
Version: hx30_v0.0.1-7a61a89
RollbackVer: 0
Platform: hx30
Version: 0.0.1
Commit: 7a61a89
Size: 2868 B
Size: 2 KB

# Dumping Capsule Binary Information:
> cargo run -q -- --capsule retimer23.cap
File
Size: 2232676 B
Size: 2180 KB
Capsule Header
Capsule GUID: (ba2e4e6e, 3b0c, 4f25, [8a,59,4c,55,3f,c8,6e,a2])
Header size: 28 B
Flags: 0x50000
Persist across reset (0x10000)
Initiate reset (0x40000)
Capsule Size: 2232676 B
Capsule Size: 2180 KB
Type: Framework Retimer23 (Right)
```

###### Running on Windows

On newly released systems since 2025 the Framework driver installer includes the EC driver.
Expand Down
Loading