Get ME FWSTS info from SMBIOS tables
(smbios: &SmbiosStore)
| 604 | |
| 605 | /// Get ME FWSTS info from SMBIOS tables |
| 606 | pub fn me_fwsts_from_smbios(smbios: &SmbiosStore) -> Option<MeSmbiosInfo> { |
| 607 | // For type 0xDB, we look for any table with MEI1 component |
| 608 | // (unlike 0xDD, the 0xDB table doesn't need handle validation from Type 14) |
| 609 | for result in smbios.structures() { |
| 610 | if let Ok(Structure::Other(ref raw)) = result { |
| 611 | if raw.info == InfoType::Oem(SMBIOS_TYPE_ME_FWSTS) { |
| 612 | if let Some(info) = parse_me_fwsts(raw) { |
| 613 | // Only return if we found a MEI1 record |
| 614 | if info.mei1().is_some() { |
| 615 | return Some(info); |
| 616 | } |
| 617 | } |
| 618 | } |
| 619 | } |
| 620 | } |
| 621 | None |
| 622 | } |
| 623 | |
| 624 | pub struct CsmeInfo { |
| 625 | /// Whether the CSME is currently enabled or not |