Skip to content

integration with open-source UEFI project at [Microsoft] #260

@berlin-with0ut-return

Description

@berlin-with0ut-return

i'm part of an open-source project at Microsoft that is implementing UEFI in Rust (primarily DXE as of now).
docs
repo

in particular i've been working on an implementing of spec-compliant ACPI protocols in Rust. i've implemented most of the functionality related to manipulating tables themselves (ie the ACPI Table Protocol ). you can see that implementation here.

i'm now looking into implementing the parts of the ACPI SDT Protocol that deal with parsing and patching AML. this would be functionality like GetOption, SetOption, GetChild etc (with better Rust-y interfaces). i think there is a decent amount of overlap between our goals and yours, especially in the low-level parsing code (for example, our Rust AML implementation would also have to parse opcodes and pkg_lengths).

in the short term my primary goal would be to finish up the SDT protocol but we've discussed long-term goals of providing application-side AML interpretation/execution as well. as such i wanted to start a conversation to see how much we could repurpose/modify parts of the existing acpi crate for our purposes. (for example, can we expose lower-level parsing for use in our firmware AML implementation, can we modify parts of the existing acpi code to work with our ACPI table definitions?, etc)

leaving this very open-ended as i am personally not an expert in ACPI. happy to answer any questions; i can also connect you with more senior leadership (i am not the primary owner of Patina.)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions