Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

HidPkg/UsbHidDxe: Continue on failure to get descriptor #334

Conversation

makubacki
Copy link
Member

Description

In case a HID device fails to return a valid HID descriptor, this change
will return the error status from UsbHidDriverBindingStart() rather
than assert to match previous behavior from HID drivers that required
the boot protocol. The HID IO protocol will not be installed on these
devices.

  • Impacts functionality?
    • Functionality - Does the change ultimately impact how firmware functions?
    • Examples: Add a new library, publish a new PPI, update an algorithm, ...
  • Impacts security?
    • Security - Does the change have a direct security impact on an application,
      flow, or firmware?
    • Examples: Crypto algorithm change, buffer overflow fix, parameter
      validation improvement, ...
  • Breaking change?
    • Breaking change - Will anyone consuming this change experience a break
      in build or boot behavior?
    • Examples: Add a new library class, move a module to a different repo, call
      a function in a new library class in a pre-existing module, ...
  • Includes tests?
    • Tests - Does the change include any explicit test code?
    • Examples: Unit tests, integration tests, robot tests, ...
  • Includes documentation?
    • Documentation - Does the change contain explicit documentation additions
      outside direct code modifications (and comments)?
    • Examples: Update readme file, add feature readme file, link to documentation
      on an a separate Web page, ...

How This Was Tested

  • Verified functionality is unchanged on physical platform with UsbHidDxe integrated.
  • Verified boot previously encountering an assert on the QEMU virtual platform is
    not blocking boot.

Integration Instructions

Update to a Mu Plus release with this change.

@makubacki makubacki added the semver:patch Pull requests that should increment the release patch version label Oct 17, 2023
@makubacki makubacki requested review from kenlautner and apop5 October 17, 2023 17:47
@makubacki makubacki self-assigned this Oct 17, 2023
@github-actions github-actions bot added the impact:non-functional Does not have a functional impact label Oct 17, 2023
In case a HID device fails to return a HID descriptor, this change
will return the error status from UsbHidDriverBindingStart() rather
than assert to match previous behavior from HID drivers. The
HID IO protocol will not be installed on these devices.

Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com>
@makubacki makubacki force-pushed the continue_on_failure_to_get_descriptor branch from f324242 to 11bf6a6 Compare October 17, 2023 17:48
@makubacki
Copy link
Member Author

+@joschock for visibility. We discussed this offline to reduce the stringency on devices outside keyboards and mice that we don't believe were strictly probed for HID reports before.

@makubacki makubacki merged commit 2cc586d into microsoft:release/202302 Oct 17, 2023
ProjectMuBot referenced this pull request in microsoft/mu_tiano_platforms Oct 18, 2023
Introduces 2 new commits in [Common/MU](https://github.com/microsoft/mu_plus.git).

<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/microsoft/mu_plus/commit/1824154a50aca7449f0a174a08a85b563df34c0b">182415</a> Repo File Sync: Update to Mu DevOps 7.0.1 and Rust 1.73.0 (<a href="https://github.com/microsoft/mu_plus/pull/333">#333</a>)</li>
<li><a href="https://github.com/microsoft/mu_plus/commit/2cc586da022edb231ee1f377531d8e1ec0e32530">2cc586</a> HidPkg/UsbHidDxe: Continue on failure to get descriptor (<a href="https://github.com/microsoft/mu_plus/pull/334">#334</a>)</li>
</ul>
</details>

Signed-off-by: Project Mu Bot <mubot@microsoft.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
impact:non-functional Does not have a functional impact semver:patch Pull requests that should increment the release patch version
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants