Skip to content

Commit 2b8fe0f

Browse files
committed
test_bins: Add Framework 16 AI 300 PD test bin
Signed-off-by: Daniel Schaefer <dhs@frame.work>
1 parent 1f15f9b commit 2b8fe0f

File tree

2 files changed

+62
-0
lines changed

2 files changed

+62
-0
lines changed

framework_lib/src/ccgx/binary.rs

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -577,6 +577,68 @@ mod tests {
577577
);
578578
}
579579

580+
#[test]
581+
fn can_parse_ccg8_binary_fl16_ai300() {
582+
let mut pd_bin_path = PathBuf::from(env!("CARGO_MANIFEST_DIR"));
583+
pd_bin_path.push("test_bins/fl16-ai300-pd-0.0.22.bin");
584+
585+
let data = fs::read(pd_bin_path).unwrap();
586+
let ccg3_ver = read_versions(&data, SiliconId::Ccg3);
587+
let ccg5_ver = read_versions(&data, SiliconId::Ccg5);
588+
let ccg6_ver = read_versions(&data, SiliconId::Ccg6);
589+
let ccg8_ver = read_versions(&data, SiliconId::Ccg8);
590+
assert!(ccg3_ver.is_none());
591+
assert!(ccg5_ver.is_none());
592+
assert!(ccg6_ver.is_none());
593+
assert!(ccg8_ver.is_some());
594+
595+
assert_eq!(
596+
ccg8_ver,
597+
Some({
598+
PdFirmwareFile {
599+
backup_fw: PdFirmware {
600+
silicon_id: 0x11C5,
601+
silicon_family: 0x3580,
602+
base_version: BaseVersion {
603+
major: 3,
604+
minor: 7,
605+
patch: 0,
606+
build_number: 407,
607+
},
608+
app_version: AppVersion {
609+
application: Application::Notebook,
610+
major: 0,
611+
minor: 0,
612+
circuit: 0x22,
613+
},
614+
start_row: 290,
615+
size: 129912,
616+
row_size: 0x100,
617+
},
618+
main_fw: PdFirmware {
619+
silicon_id: 0x11C5,
620+
silicon_family: 0x3580,
621+
base_version: BaseVersion {
622+
major: 3,
623+
minor: 7,
624+
patch: 0,
625+
build_number: 407,
626+
},
627+
app_version: AppVersion {
628+
application: Application::Notebook,
629+
major: 0,
630+
minor: 0,
631+
circuit: 0x22,
632+
},
633+
start_row: 29,
634+
size: 42816,
635+
row_size: 0x100,
636+
},
637+
}
638+
})
639+
);
640+
}
641+
580642
#[test]
581643
fn can_parse_ccg8_binary_gnss() {
582644
let mut pd_bin_path = PathBuf::from(env!("CARGO_MANIFEST_DIR"));
256 KB
Binary file not shown.

0 commit comments

Comments
 (0)