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.