Skip to content

Conversation

@crawfxrd
Copy link
Contributor

@crawfxrd crawfxrd commented Nov 11, 2025

Add bindings for the following UEFI 2.11 protocols:

  • Font (EFI_HII_FONT_PROTOCOL)
  • Font Ex (EFI_HII_FONT_EX_PROTOCOL)
  • String (EFI_HII_STRING_PROTOCOL)
  • Image (EFI_HII_IMAGE_PROTOCOL)
  • Image Ex (EFI_HII_IMAGE_EX_PROTOCOL)

Ref: UEFI 2.11: 34 HII Protocols

TODO

  • Determine correct implementation and use of anonymous union in ImageOutput
  • Add glyph-related data types to complete HiiFontExProtocol.get_glyph_info
  • Add HII package definitions for database integration (Section 33.3)?
    • Will add IFR related stuff in a follow up, since it looks like a lot.

Checklist

  • Sensible git history (for example, squash "typo" or "fix" commits). See the Rewriting History guide for help.
  • Update the changelog (if necessary)

@crawfxrd crawfxrd force-pushed the hii-bindings branch 2 times, most recently from 89651fd to 96848f4 Compare November 11, 2025 23:47
@crawfxrd crawfxrd marked this pull request as ready for review November 12, 2025 21:26
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash)]
#[repr(transparent)]
pub struct HiiFontStyle: u32 {
const NORMAL = 0;
Copy link
Contributor Author

@crawfxrd crawfxrd Nov 12, 2025

Choose a reason for hiding this comment

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

bitflags recommends against having zero-bit flags. Not sure what to do with UEFI flags that use it as a default/none value.

Just checked, and they're not even used internally by edk2.

Add bindings for the following UEFI 2.11 protocols:

- Font (EFI_HII_FONT_PROTOCOL)
- Font Ex (EFI_HII_FONT_EX_PROTOCOL)
- String (EFI_HII_STRING_PROTOCOL)
- Image (EFI_HII_IMAGE_PROTOCOL)
- Image Ex (EFI_HII_IMAGE_EX_PROTOCOL)

Ref: UEFI 2.11: 34 HII Protocols
Signed-off-by: Tim Crawford <tcrawford@system76.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants