Skip to content

Commit bfa4ada

Browse files
committed
--capsule: Fix GUID matching
Signed-off-by: Daniel Schaefer <dhs@frame.work>
1 parent 67fe7c4 commit bfa4ada

1 file changed

Lines changed: 65 additions & 25 deletions

File tree

  • framework_lib/src/commandline

framework_lib/src/commandline/mod.rs

Lines changed: 65 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -2333,53 +2333,93 @@ pub fn analyze_capsule(data: &[u8]) -> Option<capsule::EfiCapsuleHeader> {
23332333
let header = capsule::parse_capsule_header(data)?;
23342334
capsule::print_capsule_header(&header);
23352335

2336-
match GUID::from(header.capsule_guid) {
2337-
esrt::TGL_BIOS_GUID => {
2338-
println!(" Type: Framework TGL Insyde BIOS");
2336+
let guid_kind = esrt::match_guid_kind(&header.capsule_guid);
2337+
match guid_kind {
2338+
esrt::FrameworkGuidKind::TglBios => {
2339+
println!(" Type: Framework 13 TGL Insyde BIOS");
23392340
}
2340-
esrt::ADL_BIOS_GUID => {
2341-
println!(" Type: Framework ADL Insyde BIOS");
2341+
esrt::FrameworkGuidKind::AdlBios => {
2342+
println!(" Type: Framework 13 ADL Insyde BIOS");
23422343
}
2343-
esrt::RPL_BIOS_GUID => {
2344-
println!(" Type: Framework RPL Insyde BIOS");
2344+
esrt::FrameworkGuidKind::RplBios => {
2345+
println!(" Type: Framework 13 RPL Insyde BIOS");
23452346
}
2346-
esrt::TGL_RETIMER01_GUID => {
2347-
println!(" Type: Framework TGL Retimer01 (Right)");
2347+
esrt::FrameworkGuidKind::MtlBios => {
2348+
println!(" Type: Framework 13 MTL Insyde BIOS");
23482349
}
2349-
esrt::TGL_RETIMER23_GUID => {
2350-
println!(" Type: Framework TGL Retimer23 (Left)");
2350+
esrt::FrameworkGuidKind::Fw12RplBios => {
2351+
println!(" Type: Framework 12 RPL Insyde BIOS");
23512352
}
2352-
esrt::ADL_RETIMER01_GUID => {
2353-
println!(" Type: Framework ADL Retimer01 (Right)");
2353+
esrt::FrameworkGuidKind::Fl16Bios => {
2354+
println!(" Type: Framework 16 AMD Insyde BIOS");
23542355
}
2355-
esrt::ADL_RETIMER23_GUID => {
2356-
println!(" Type: Framework ADL Retimer23 (Left)");
2356+
esrt::FrameworkGuidKind::Amd16Ai300Bios => {
2357+
println!(" Type: Framework 16 AMD AI 300 Insyde BIOS");
23572358
}
2358-
esrt::RPL_RETIMER01_GUID => {
2359-
println!(" Type: Framework RPL Retimer01 (Right)");
2359+
esrt::FrameworkGuidKind::Amd13Ryzen7040Bios => {
2360+
println!(" Type: Framework 13 AMD Ryzen 7040 Insyde BIOS");
23602361
}
2361-
esrt::RPL_RETIMER23_GUID => {
2362-
println!(" Type: Framework RPL Retimer23 (Left)");
2362+
esrt::FrameworkGuidKind::Amd13Ai300Bios => {
2363+
println!(" Type: Framework 13 AMD AI 300 Insyde BIOS");
23632364
}
2364-
esrt::WINUX_GUID => {
2365-
println!(" Type: Windows UX capsule");
2365+
esrt::FrameworkGuidKind::DesktopAmdAi300Bios => {
2366+
println!(" Type: Framework Desktop AMD AI 300 Insyde BIOS");
2367+
}
2368+
esrt::FrameworkGuidKind::TglRetimer01 => {
2369+
println!(" Type: Framework TGL Retimer01 (Right)");
2370+
}
2371+
esrt::FrameworkGuidKind::TglRetimer23 => {
2372+
println!(" Type: Framework TGL Retimer23 (Left)");
2373+
}
2374+
esrt::FrameworkGuidKind::AdlRetimer01 => {
2375+
println!(" Type: Framework ADL Retimer01 (Right)");
2376+
}
2377+
esrt::FrameworkGuidKind::AdlRetimer23 => {
2378+
println!(" Type: Framework ADL Retimer23 (Left)");
2379+
}
2380+
esrt::FrameworkGuidKind::RplRetimer01 => {
2381+
println!(" Type: Framework RPL Retimer01 (Right)");
2382+
}
2383+
esrt::FrameworkGuidKind::RplRetimer23 => {
2384+
println!(" Type: Framework RPL Retimer23 (Left)");
2385+
}
2386+
esrt::FrameworkGuidKind::MtlRetimer01 => {
2387+
println!(" Type: Framework MTL Retimer01 (Right)");
2388+
}
2389+
esrt::FrameworkGuidKind::MtlRetimer23 => {
2390+
println!(" Type: Framework MTL Retimer23 (Left)");
2391+
}
2392+
esrt::FrameworkGuidKind::RplCsme => {
2393+
println!(" Type: Framework RPL CSME");
2394+
}
2395+
esrt::FrameworkGuidKind::RplUCsme => {
2396+
println!(" Type: Framework RPL-U CSME");
2397+
}
2398+
esrt::FrameworkGuidKind::MtlCsme => {
2399+
println!(" Type: Framework MTL CSME");
2400+
}
2401+
esrt::FrameworkGuidKind::WinUx => {
2402+
println!(" Type: Windows UX capsule");
23662403
let ux_header = capsule::parse_ux_header(data);
23672404
capsule::print_ux_header(&ux_header);
23682405
}
2369-
_ => {
2406+
esrt::FrameworkGuidKind::Unknown => {
23702407
println!(" Type: Unknown");
23712408
}
23722409
}
23732410

2374-
match esrt::match_guid_kind(&header.capsule_guid) {
2411+
// Extract retimer version if this is a retimer capsule
2412+
match guid_kind {
23752413
esrt::FrameworkGuidKind::TglRetimer01
23762414
| esrt::FrameworkGuidKind::TglRetimer23
23772415
| esrt::FrameworkGuidKind::AdlRetimer01
23782416
| esrt::FrameworkGuidKind::AdlRetimer23
23792417
| esrt::FrameworkGuidKind::RplRetimer01
2380-
| esrt::FrameworkGuidKind::RplRetimer23 => {
2418+
| esrt::FrameworkGuidKind::RplRetimer23
2419+
| esrt::FrameworkGuidKind::MtlRetimer01
2420+
| esrt::FrameworkGuidKind::MtlRetimer23 => {
23812421
if let Some(ver) = find_retimer_version(data) {
2382-
println!(" Version: {:>18?}", ver);
2422+
println!(" Retimer Version: {:>15}", ver);
23832423
}
23842424
}
23852425
_ => {}

0 commit comments

Comments
 (0)