-
Notifications
You must be signed in to change notification settings - Fork 147
[REBASE & FF] MdeModulePkg: Create IoMmuLib and add support to - PciBusDxe, PciHostBridgeDxe, NonDiscoverablePciDeviceDxe #1364
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
base: dev/202502
Are you sure you want to change the base?
Conversation
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## dev/202502 #1364 +/- ##
=============================================
Coverage ? 1.06%
=============================================
Files ? 932
Lines ? 322663
Branches ? 2830
=============================================
Hits ? 3435
Misses ? 319174
Partials ? 54
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
4ef4ea3
to
2daf9b7
Compare
Will add IoMmuLib support for PciIo and PciRootBridgeIo in a separate PR. |
bad520e
to
ecfbde7
Compare
MdeModulePkg/Bus/Pci/NonDiscoverablePciDeviceDxe/NonDiscoverablePciDeviceIo.c
Outdated
Show resolved
Hide resolved
MdeModulePkg/Bus/Pci/NonDiscoverablePciDeviceDxe/NonDiscoverablePciDeviceIo.c
Show resolved
Hide resolved
3b792b1
to
e4fe9fc
Compare
05443db
to
052301b
Compare
3bdb7fa
to
8ace323
Compare
Will merge after @kenlautner gives green light on x64 platform test. |
6e861f9
to
07c28d8
Compare
0c1bd53
to
2252d70
Compare
This reverts commit b884f58.
Wrapper library for IoMmu Protocol functions.
Uses IoMmuLib to do IoMmu protocol mappings.
- Removes usage of PCD and callbacks to locate IoMmu protocol - Library wraps all this logic
|
||
// MU_CHANGE [BEGIN] - Use IoMmuLib | ||
Status = IoMmuSetAttribute ( | ||
PciIoDevice->Handle, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
change to PciIoDevice
Description
Reverts PcdRequireIommu change, removes PcdRequireIommu.
Create IoMmuLib
Create IoMmuLibNull
Wrapper library for IoMmu Protocol functions.
Add IoMmuLib support to NonDiscoverablePciDeviceDxe
Modify IoMmu protocol usage and add IoMmuLib support to PciBusDxe and PciHostBridgeDxe
For details on how to complete these options and their meaning refer to CONTRIBUTING.md.
How This Was Tested
Tested on QEMU SBSA and physical arm device
Integration Instructions
Platform Integration
The library automatically adapts to platform capabilities. On platforms without IOMMU support, use IoMmuLibNull.
On platforms with IOMMU support, use IoMmuLib.
For integrating with a platform, in the top level DSC, you can do the following for example: