Skip to content
Open
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
24 changes: 12 additions & 12 deletions components/patina_samples/src/smbios_platform.rs
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ use patina_smbios::{
smbios_record::{
SmbiosRecordStructure, Type0PlatformFirmwareInformation, Type1SystemInformation, Type2BaseboardInformation,
Type3SystemEnclosure,
},
}, smbios_types::*,
};

/// Example custom vendor-specific OEM record (Type 0x80)
Expand Down Expand Up @@ -161,14 +161,14 @@ impl SmbiosExampleComponent {
bios_starting_address_segment: 0xE800,
firmware_release_date: 3,
firmware_rom_size: 0xFF, // 16MB
characteristics: 0x08, // PCI supported
characteristics_ext1: 0x03,
characteristics_ext2: 0x03,
characteristics: BiosCharacteristics::new(false,false,false, false, false, true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, 0, 0), // PCI supported
characteristics_ext1: BiosCharacteristicsExt1::new(true, true, false, false, false, false, false, true),
characteristics_ext2: BiosCharacteristicsExt2::new(true, false, false, true, false),
system_bios_major_release: 1,
system_bios_minor_release: 0,
embedded_controller_major_release: 0xFF,
embedded_controller_minor_release: 0xFF,
extended_bios_rom_size: 0,
extended_bios_rom_size: ExtendedBiosRomSize::new(0,0),
string_pool: vec![
String::from("Example Firmware Vendor"),
String::from("1.0.0"),
Expand Down Expand Up @@ -196,7 +196,7 @@ impl SmbiosExampleComponent {
version: 3,
serial_number: 4,
uuid: [0x12, 0x34, 0x56, 0x78, 0x9A, 0xBC, 0xDE, 0xF0, 0x12, 0x34, 0x56, 0x78, 0x9A, 0xBC, 0xDE, 0xF0],
wake_up_type: 0x06, // Power switch
wake_up_type: WakeUpType::PowerSwitch, // Power switch
sku_number: 5,
family: 6,
string_pool: vec![
Expand Down Expand Up @@ -229,10 +229,10 @@ impl SmbiosExampleComponent {
version: 3,
serial_number: 4,
asset_tag: 5,
feature_flags: 0x01, // Board is a hosting board
feature_flags: FeatureFlags::new(true, true, false, false, false), // Board is a hosting board
location_in_chassis: 6,
chassis_handle: 0x0003,
board_type: 0x0A, // Motherboard
board_type: BoardType::Motherboard, // Motherboard
contained_object_handles: 0,
string_pool: vec![
String::from("Example Corporation"),
Expand Down Expand Up @@ -264,10 +264,10 @@ impl SmbiosExampleComponent {
version: 2,
serial_number: 3,
asset_tag_number: 4,
bootup_state: 0x03,
power_supply_state: 0x03,
thermal_state: 0x03,
security_status: 0x02,
bootup_state: BootUpState::Desktop,
power_supply_state: PowerSupplyState::CentralProcessor,
thermal_state: ThermalState::Safe,
security_status: SecurityStatus::Unknown,
oem_defined: 0x00000000,
height: 0x00,
number_of_power_cords: 0x01,
Expand Down
1 change: 1 addition & 0 deletions components/patina_smbios/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ r-efi = { workspace = true }
spin = { workspace = true }
zerocopy = { workspace = true }
zerocopy-derive = { workspace = true }
bitfield = "0.17.0"
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you use bitfield-struct from the workspace? If not, can you add it to the workspace and then use bitfield = { workspace = true } here?


[dev-dependencies]
mockall = { workspace = true }
Expand Down
1 change: 1 addition & 0 deletions components/patina_smbios/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -319,5 +319,6 @@ pub mod component;
pub mod error;
pub mod service;
pub mod smbios_record;
pub mod smbios_types;

mod manager;
41 changes: 21 additions & 20 deletions components/patina_smbios/src/service.rs
Original file line number Diff line number Diff line change
Expand Up @@ -353,6 +353,7 @@ mod tests {
use std::format;

use crate::smbios_record::{SmbiosRecordStructure, Type0PlatformFirmwareInformation, Type127EndOfTable};
use crate::smbios_types;
use mockall::predicate::*;
use patina::{
boot_services::{MockBootServices, tpl::Tpl},
Expand Down Expand Up @@ -690,14 +691,14 @@ mod tests {
bios_starting_address_segment: 0xE800,
firmware_release_date: 3,
firmware_rom_size: 0xFF,
characteristics: 0x08,
characteristics_ext1: 0x03,
characteristics_ext2: 0x03,
characteristics: smbios_types::BiosCharacteristics(0x08),
characteristics_ext1: smbios_types::BiosCharacteristicsExt1(0x03),
characteristics_ext2: smbios_types::BiosCharacteristicsExt2(0x03),
system_bios_major_release: 1,
system_bios_minor_release: 0,
embedded_controller_major_release: 0xFF,
embedded_controller_minor_release: 0xFF,
extended_bios_rom_size: 0,
extended_bios_rom_size: smbios_types::ExtendedBiosRomSize(0),
string_pool: vec![String::from("Vendor"), String::from("1.0"), String::from("2025")],
};

Expand Down Expand Up @@ -803,14 +804,14 @@ mod tests {
bios_starting_address_segment: 0xE800,
firmware_release_date: 3,
firmware_rom_size: 0xFF,
characteristics: 0x08,
characteristics_ext1: 0x03,
characteristics_ext2: 0x03,
characteristics: smbios_types::BiosCharacteristics(0x08),
characteristics_ext1: smbios_types::BiosCharacteristicsExt1(0x03),
characteristics_ext2: smbios_types::BiosCharacteristicsExt2(0x03),
system_bios_major_release: 1,
system_bios_minor_release: 0,
embedded_controller_major_release: 0xFF,
embedded_controller_minor_release: 0xFF,
extended_bios_rom_size: 0,
extended_bios_rom_size: smbios_types::ExtendedBiosRomSize(0),
string_pool: vec![String::from("Vendor"), String::from("1.0"), String::from("01/01/2025")],
};

Expand All @@ -836,14 +837,14 @@ mod tests {
bios_starting_address_segment: 0xE800,
firmware_release_date: 3,
firmware_rom_size: 0xFF,
characteristics: 0x08,
characteristics_ext1: 0x03,
characteristics_ext2: 0x03,
characteristics: smbios_types::BiosCharacteristics(0x08),
characteristics_ext1: smbios_types::BiosCharacteristicsExt1(0x03),
characteristics_ext2: smbios_types::BiosCharacteristicsExt2(0x03),
system_bios_major_release: 1,
system_bios_minor_release: 0,
embedded_controller_major_release: 0xFF,
embedded_controller_minor_release: 0xFF,
extended_bios_rom_size: 0,
extended_bios_rom_size: smbios_types::ExtendedBiosRomSize(0),
string_pool: vec![String::from("Vendor"), String::from("1.0"), String::from("01/01/2025")],
};

Expand All @@ -867,14 +868,14 @@ mod tests {
bios_starting_address_segment: 0xE800,
firmware_release_date: 3,
firmware_rom_size: 0xFF,
characteristics: 0x08,
characteristics_ext1: 0x03,
characteristics_ext2: 0x03,
characteristics: smbios_types::BiosCharacteristics(0x08),
characteristics_ext1: smbios_types::BiosCharacteristicsExt1(0x03),
characteristics_ext2: smbios_types::BiosCharacteristicsExt2(0x03),
system_bios_major_release: 1,
system_bios_minor_release: 0,
embedded_controller_major_release: 0xFF,
embedded_controller_minor_release: 0xFF,
extended_bios_rom_size: 0,
extended_bios_rom_size: smbios_types::ExtendedBiosRomSize(0),
string_pool: vec![String::from("Vendor"), String::from("1.0"), String::from("01/01/2025")],
};

Expand Down Expand Up @@ -948,14 +949,14 @@ mod tests {
bios_starting_address_segment: 0xE800,
firmware_release_date: 3,
firmware_rom_size: 0xFF,
characteristics: 0x08,
characteristics_ext1: 0x03,
characteristics_ext2: 0x03,
characteristics: smbios_types::BiosCharacteristics(0x08),
characteristics_ext1: smbios_types::BiosCharacteristicsExt1(0x03),
characteristics_ext2: smbios_types::BiosCharacteristicsExt2(0x03),
system_bios_major_release: 1,
system_bios_minor_release: 0,
embedded_controller_major_release: 0xFF,
embedded_controller_minor_release: 0xFF,
extended_bios_rom_size: 0,
extended_bios_rom_size: smbios_types::ExtendedBiosRomSize(0),
string_pool: vec![String::from("Vendor"), String::from("1.0"), String::from("01/01/2025")],
};

Expand Down
Loading
Loading