| 268 | } |
| 269 | |
| 270 | fn parse_metadata_ccg3(buffer: &[u8]) -> Option<(u32, u32)> { |
| 271 | let buffer = &buffer[CCG3_METADATA_OFFSET..]; |
| 272 | let (metadata, _) = CyAcdMetadata::read_from_prefix(buffer).ok()?; |
| 273 | trace!("Metadata: {:X?}", metadata); |
| 274 | if metadata.metadata_valid.get() == METADATA_MAGIC { |
| 275 | Some(( |
| 276 | 1 + metadata.boot_last_row.get() as u32, |
| 277 | metadata.fw_size.get(), |
| 278 | )) |
| 279 | } else { |
| 280 | None |
| 281 | } |
| 282 | } |
| 283 | |
| 284 | //fn parse_metadata(buffer: &[u8; 256]) -> Option<(u32, u32)> { |
| 285 | fn parse_metadata_cyacd(buffer: &[u8]) -> Option<(u32, u32)> { |