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

Add PCD to allow device exclusions for UsbHidDxe #340

Conversation

joschock
Copy link
Contributor

@joschock joschock commented Oct 20, 2023

Description

Adds a PCD for configuring device exclusions for UsbHidDxe. Prior to this change, the UsbHidDxe driver included logic to exclude keyboard devices from being handled by HID, due to other parts of the stack not being fully implemented yet. This removes that code and replaces it with a PCD list that the platform integrator can use to disable particular devices as desired for the platform.

  • Impacts functionality?
    • Changes how UsbHidDxe exclusions are handled.
  • Impacts security?
  • Breaking change?
    Previously keyboard exclusion was hard-coded; to replicate this behavior platforms will need to add a PCD specification in the DSC files to exclude keyboards. See Integration Instructions below for more details.
  • Includes tests?
  • Includes documentation?

How This Was Tested

Verified with functional testing of several different exclusions in Qemu Q35.

Integration Instructions

To replicate existing behavior, platforms will need to add PCD specification to the DSC like the following to exclude USB keyboards:

[PcdsFixedAtBuild]
  gHidPkgTokenSpaceGuid.PcdExcludedHidDevices|{0x3, 0x1, 0x1, 0x0, 0x0, 0x0}

@github-actions github-actions bot added the impact:breaking-change Requires integration attention label Oct 20, 2023
@makubacki makubacki requested a review from apop5 October 23, 2023 17:39
HidPkg/HidPkg.dec Outdated Show resolved Hide resolved
@makubacki makubacki enabled auto-merge (squash) October 25, 2023 18:18
auto-merge was automatically disabled October 25, 2023 19:14

Head branch was pushed to by a user without write access

@apop5 apop5 enabled auto-merge (squash) October 25, 2023 19:18
@makubacki makubacki force-pushed the personal/joschock/add_usb_hid_dxe_exclusion_pcd branch from c23dc38 to 5ac7a37 Compare October 26, 2023 02:20
@makubacki makubacki disabled auto-merge October 26, 2023 02:20
@makubacki makubacki enabled auto-merge (squash) October 26, 2023 02:20
@makubacki makubacki merged commit dc3ab8b into microsoft:release/202302 Oct 26, 2023
31 checks passed
ProjectMuBot referenced this pull request in microsoft/mu_tiano_platforms Oct 27, 2023
Introduces 3 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/b93bb28e1b39004fc2e3a194a131aacf95c774ae">b93bb2</a> Update HelloWorldRustDxe to permit compiling for unit tests (<a href="https://github.com/microsoft/mu_plus/pull/341">#341</a>)</li>
<li><a href="https://github.com/microsoft/mu_plus/commit/0c488d7079b9f8ee6039ebad221b7cb720d0662d">0c488d</a> Repo File Sync: Include Rust Env Exclusions in CodeQL Workflow (<a href="https://github.com/microsoft/mu_plus/pull/344">#344</a>)</li>
<li><a href="https://github.com/microsoft/mu_plus/commit/dc3ab8ba5e3c5403ae6644f68d0474ba0d1b190c">dc3ab8</a> Add PCD to allow device exclusions for UsbHidDxe (<a href="https://github.com/microsoft/mu_plus/pull/340">#340</a>)</li>
</ul>
</details>

Signed-off-by: Project Mu Bot <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
impact:breaking-change Requires integration attention
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants