Crate patina

Crate patina 

Source
Expand description

Software Development Kit (SDK) for Patina

This crate implements the core SDK for Patina and is only part of the Patina solution. For general knowledge on Patina, refer to the Patina book.

§Features

  • core: Exposes additional items in the component module necessary to manage and execute components and their dependencies.

§License

Copyright (C) Microsoft Corporation.

SPDX-License-Identifier: Apache-2.0

Re-exports§

pub use base::guid::BinaryGuid;
pub use base::guid::Guid;
pub use base::guid::GuidError;
pub use base::guid::OwnedGuid;

Modules§

arch
Arch Specific abstractions for Patina.
base
UEFI Base Definitions
boot_services
UEFI Boot Services trait definition and implementations.
component
Module for creating UEFI components.
driver_binding
This module provides way of implementing driver binding and installing and uninstalling the driver binding protocol.
efi_types
UEFI Wrapper Types
error
Module for converting UEFI errors to rusty errors.
guid_constants
Common GUID constants
guids
Patina GUID Definitions
log
UEFI targeted logging implementations
macros
Macro definitions for the UEFI SDK.
performance
Patina SDK Performance Module
pi
Platform Initialization (PI) Specification Definitions and Support Code
runtime_services
Rust-friendly UEFI Runtime Service Wrappers
serial
Serial Traits and Implementations for the SerialIO interface.
test
A UEFI testing framework for on-system unit testing
tpl_mutex
A module containing a TPL aware Mutex implementation.
uefi_protocol
A module containing UEFI protocol definitions and their implementations of ProtocolInterface.

Macros§

bit
A macro to generate a bit mask with the nth bit set.
pci_address
Constructs a PCI library address from the given bus, device, function, and register values.
signature
Generates a UEFI-style signature from between 1 to 8 bytes, packing them into a u16, u32 or u64 as appropriate for the parameters passed.
u_assert
A macro similar to core::assert! that returns an error message instead of panicking.
u_assert_eq
A macro similar to core::assert_eq! that returns an error message instead of panicking.
u_assert_ne
A macro similar to core::assert_ne! that returns an error message instead of panicking.
uefi_pages_to_size
Converts a number of UEFI pages to the corresponding size in bytes.
uefi_size_to_pages
Converts a size in bytes to the number of UEFI pages required.