uefi/capsule.rs
1use crate::memory::PhysicalAddress;
2use crate::prelude::*;
3
4pub const CAPSULE_FLAGS_PERSIST_ACROSS_RESET: u32 = 0x00010000;
5pub const CAPSULE_FLAGS_POPULATE_SYSTEM_TABLE: u32 = 0x00020000;
6pub const CAPSULE_FLAGS_INITIATE_RESET: u32 = 0x00040000;
7
8#[repr(C)]
9pub struct CapsuleHeader {
10 CapsuleGuid: Guid,
11 HeaderSize: u32,
12 Flags: u32,
13 CapsuleImageSize: u32,
14}
15
16#[repr(C)]
17pub struct CapsuleBlockDescriptor {
18 pub Length: u64,
19 pub DataBlock: PhysicalAddress,
20}