Skip to content

Add UEFI HID and USB HID components. #8

Open
joschock wants to merge 3 commits into
OpenDevicePartnership:mainfrom
joschock:uefi_hid
Open

Add UEFI HID and USB HID components. #8
joschock wants to merge 3 commits into
OpenDevicePartnership:mainfrom
joschock:uefi_hid

Conversation

@joschock
Copy link
Copy Markdown

@joschock joschock commented May 5, 2026

Description

  • Remove the placeholder crate and add the uefi_hid component which
    consumes the HidIo protocol and produces standard UEFI input protocols
    (SimpleTextInput, SimpleTextInputEx, AbsolutePointer) for keyboard and
    pointer HID devices.

  • Add the USB HID component which consumes EFI_USB_IO_PROTOCOL on USB HID
    device controllers and produces the HidIo protocol for each managed device.
    This serves as the HidIo producer consumed by uefi_hid.

  • Impacts functionality?
  • Impacts security?
  • Breaking change?
  • Includes tests?
  • Includes documentation?

How This Was Tested

Tested on hardware with these components integrated into patina. Confirmed pointer and keyboard operation.

Integration Instructions

See component readme files for integration instructions.

joschock and others added 2 commits May 4, 2026 16:33
Remove the placeholder crate and add the uefi_hid component which
consumes the HidIo protocol and produces standard UEFI input protocols
(SimpleTextInput, SimpleTextInputEx, AbsolutePointer) for keyboard and
pointer HID devices.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Add the USB HID component which consumes EFI_USB_IO_PROTOCOL on USB HID
device controllers and produces the HidIo protocol for each managed device.
This serves as the HidIo producer consumed by uefi_hid.

USB HID class-specific constants and descriptor structures are defined
locally in usb_hid_defs.rs rather than imported from patina.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@github-actions github-actions Bot added impact:testing Affects testing type:documentation Improvements or additions to documentation labels May 5, 2026
@joschock
Copy link
Copy Markdown
Author

joschock commented May 5, 2026

Relies on OpenDevicePartnership/patina#1498

Add words from scroll crate (Pread/Pwrite/gread/gwrite/pread/pwrite),
USB/UEFI terms (EDKII, NOERROR), keyboard terms (numpad, numlock,
lctrl, lshift, unshifted), data structures (Deque), mockall (withf),
and common abbreviations (descs, Unregisters).

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

impact:testing Affects testing type:documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants