Commit Graph

6539 Commits

Author SHA1 Message Date
8bc0afeb25 Update MdeModulePkg/MdeModulePkg.dsc
Some checks failed
Scheduled Maintenance / repo_cleanup (push) Has been cancelled
Stale Check / Stale (push) Has been cancelled
2026-03-22 09:03:10 +00:00
0d60bd96e2 Update MdeModulePkg/MdeModulePkg.dsc
Some checks failed
Scheduled Maintenance / repo_cleanup (push) Has been cancelled
2026-03-22 06:10:27 +00:00
c69d0a6fef MdeModulePkg: Prepare bootloader inf file
Signed-off-by: Ian Moffett <ian@mirocom.org>
2026-03-21 13:42:08 -04:00
Jack Little
3d244c3b36 MdeModulePkg: Fix malformed terminal control sequences
Commit 9224a2b917
adds support for larger terminal dimensions; however, the ANSI control
sequences to manipulate the terminal cursor are not built to accomodate
terminal dimensions that are three digits long.

For example, suppose we want to move the cursor 163 columns to the
right. The required control sequence would be `^[[163C`; however, the
existing code will create a control sequence of `^[[@3C` due to trying
to add 16 to the character '0' instead of either 1 or 6.

This fix adds a third digit to the sequence templates for moving the
cursor forward, moving it backwards, and setting the cursor position.

Signed-off-by: Jack Little <jack.tay.little@hpe.com>
2025-09-29 18:01:31 +02:00
Sherry Fan
8d984e6a57 MdeModulePkg: XhciDxe: Fix comment grammar in XhcMonitorAsyncRequests
Clarify wording of the comment before the callback in XhcMonitorAsyncRequests.

Signed-off-by: Sherry Fan <sherryfan@microsoft.com>
2025-08-11 18:15:25 +00:00
Sherry Fan
6d37ca427e MdeModulePkg: XhciDxe: Fix USB reset issue: callback / update order
As noted in the comment above the callback invocation,
the URB's callback may free the URB, so any
operations, including updates, must occur before the callback.

Signed-off-by: Sherry Fan <sherryfan@microsoft.com>
2025-08-11 18:15:25 +00:00
Sherry Fan
e69d7653b9 MdeModulePkg: XhciDxe: Fix USB reset issue: use after free
`XhcFreeUrb` attempts to unmap `Urb->DataMap` after
`FreePool(Urb->Data)` has already been called in some cases, causing a
use after free. Change the ordering so `Data` is freed after `Unmap`and
only freed when appropriate.

Signed-off-by: Sherry Fan <sherryfan@microsoft.com>
2025-08-11 18:15:25 +00:00
Bob Morgan
b58ce4c226 MdeModulePkg: Support conditional UFS initialization
Add SkipHceReenable and SkipLinkStartup flags to
the EDKII_UFS_HC_PLATFORM_PROTOCOL to support
using a UFS controller that has already been
initialized.

Signed-off-by: Bob Morgan <bobm@nvidia.com>
2025-08-08 09:06:56 +08:00
Ard Biesheuvel
44d88d5d0c MdeModulePkg: Remove obsolete PEI_USB_HOST_CONTROLLER_PPI
This PPI is no longer used - the EHCI and XHCI host controller PEIMs
expose PEI_USB2_HOST_CONTROLLER_PPI instead.

Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
2025-08-07 10:49:22 +00:00
Ard Biesheuvel
834586f316 MdeModulePkg/UsbBusPei: Drop support for obsolete host controller PPI
There are two versions of the USB host controller PPI, and only the
newer one, called PEI_USB2_HOST_CONTROLLER_PPI, is actually produced by
the EHCI and XHCI host controller PEIMs in EDK2. (The other PPI was only
produced by UhciPei which has been removed)

So remove all the conditionally executed code based on the distinction
between the two PPIs, and only support the newer one.

Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
2025-08-07 10:49:22 +00:00
Ard Biesheuvel
4e950950a4 MdeModulePkg/Usb: Remove UhciPei
Remove the UHCI PEI module, which is unused (in edk2-platforms) and
obsolete. It also implements an older version of the USB host controller
PPI, which can be dropped from EDK2 entirely once this driver is gone.

Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
2025-08-07 10:49:22 +00:00
Michael Kubacki
9688712f1d MdeModulePkg: Usb cumulative codeql issues.
Running Codeql on the MdeModulePkg\Bus\Usb drivers results in
codeql errors stemming for the following two checks.

- cpp/comparison-with-wider-type
- cpp/overflow-buffer

Signed-off-by: Aaron Pop <aaronpop@microsoft.com>

Co-authored-by: Michael Kubacki <michael.kubacki@microsoft.com>
Co-authored-by: Taylor Beebe <tabeebe@microsoft.com>
Co-authored-by: pohanch <125842322+pohanch@users.noreply.github.com>
Co-authored-by: kenlautner <85201046+kenlautner@users.noreply.github.com>
Co-authored-by: Oliver Smith-Denny <osde@linux.microsoft.com>
Co-authored-by: Sean Brogan <sean.brogan@microsoft.com>
Co-authored-by: Aaron <aaronpop@microsoft>
2025-08-07 09:10:24 +00:00
Michael Kubacki
d68f418300 MdeModulePkg: Variable cumulative codeql issues.
Running Codeql on MdeModulePkg/Universal/Variable drivers results
in codeql errors stemming for the following two checks.

- cpp/comparison-with-wider-type
- cpp/overflow-buffer
- cpp/missing-null-test

Signed-off-by: Aaron Pop <aaronpop@microsoft.com>

Co-authored-by: Michael Kubacki <michael.kubacki@microsoft.com>
Co-authored-by: Taylor Beebe <tabeebe@microsoft.com>
Co-authored-by: pohanch <125842322+pohanch@users.noreply.github.com>
Co-authored-by: kenlautner <85201046+kenlautner@users.noreply.github.com>
Co-authored-by: Oliver Smith-Denny <osde@linux.microsoft.com>
Co-authored-by: Sean Brogan <sean.brogan@microsoft.com>
Co-authored-by: Aaron <aaronpop@microsoft>
2025-08-07 07:57:31 +00:00
Alexander Gryanko
1c3a22059b MdeModulePkg: added SecurityManagementLib mock
Added Google Mock test support for SecurityManagementLib

Signed-off-by: Alexander Gryanko <xpahos@gmail.com>
2025-08-07 01:18:26 +00:00
ddeptford
5c7ef27b96 MdeModulePkg: UefiBootManagerLib Change default alignment for ramdisk boot.
The ramdisk is modelled as an NVDIMM which have a naturally higher
alignment than 4K. Operating systems may wish to map NVDIMMs using large
pages, so force the allocation alignment to 2MB.

This change was tested using HTTP ramdisk boot, targeting a flat windows
image.

Signed-off-by: Aaron Pop <aaronpop@microsoft.com>
2025-08-06 08:59:25 +08:00
Pranav V V
491530abaa MdeModulePkg: Change PCD type to support dynamic
Move PcdSerialRegisterBase from [PcdsFixedAtBuild, PcdsPatchableInModule]
section to [PcdsFixedAtBuild, PcdsPatchableInModule, PcdsDynamic,
PcdsDynamicEx] section to enable dynamic configuration.

Signed-off-by: Pranav V V <pranav.v.v@intel.com>
2025-07-30 08:48:49 +08:00
Oliver Smith-Denny
c3479204cc MdeModulePkg: Unify EfiFileName Parsing
The various cores all attempt to print the EfiFileName when
loading/dispatching drivers, but they are not unified on
approach. This commit ensures they are using the same buffer
size and the loop parsing variables are unsigned, as we should
not have a negative index.

Signed-off-by: Oliver Smith-Denny <osde@microsoft.com>
2025-07-23 12:57:55 +00:00
Oliver Smith-Denny
1ec1f5d711 MdeModulePkg: Always Print Driver Load Messages
Today, DXE/PEI/SMM Core's image loaders only print driver load messages
if debug code is enabled. However, these are some of the most
important prints in the codebase: on a given system even if you
have nothing else to debug with, you can see the last driver
executed.

Debug code blocks are used to skip logic that only exists for
debug purposes and wastes time on a release build. However, the
logic to print a line and determine the filename from the PDB
is not extensive and provides critical information, so it is
inappropriate to wrap in a debug code section.

Platforms can still choose to disable logging at DEBUG_INFO/DEBUG_LOAD
and will not see the error messages.

Signed-off-by: Oliver Smith-Denny <osde@microsoft.com>
2025-07-23 12:57:55 +00:00
Michael Kubacki
8be9a344d3 MdeModulePkg: Console cumulative codeql issues.
Running Codeql on MdeModulePkg/Universal/Console drivers results
in codeql errors stemming for the following checks.

- cpp/comparison-with-wider-type
- cpp/missing-null-test

Signed-off-by: Aaron Pop <aaronpop@microsoft.com>

Co-authored-by: Michael Kubacki <michael.kubacki@microsoft.com>
Co-authored-by: Taylor Beebe <tabeebe@microsoft.com>
Co-authored-by: pohanch <125842322+pohanch@users.noreply.github.com>
Co-authored-by: kenlautner <85201046+kenlautner@users.noreply.github.com>
Co-authored-by: Oliver Smith-Denny <osde@linux.microsoft.com>
Co-authored-by: Sean Brogan <sean.brogan@microsoft.com>
Co-authored-by: Aaron <aaronpop@microsoft>
2025-07-17 17:45:48 +00:00
Michael Kubacki
cb85c4deef MdeModulePkg: FvSimpleFileSystemDxe cumulative codeql issues.
Running Codeql on MdeModulePkg/Universal/FvSimpleFileSystemDxe drivers results
in codeql errors stemming from missing null tests.

Signed-off-by: Aaron Pop <aaronpop@microsoft.com>

Co-authored-by: Michael Kubacki <michael.kubacki@microsoft.com>
Co-authored-by: Taylor Beebe <tabeebe@microsoft.com>
Co-authored-by: pohanch <125842322+pohanch@users.noreply.github.com>
Co-authored-by: kenlautner <85201046+kenlautner@users.noreply.github.com>
Co-authored-by: Oliver Smith-Denny <osde@linux.microsoft.com>
Co-authored-by: Sean Brogan <sean.brogan@microsoft.com>
Co-authored-by: Aaron <aaronpop@microsoft>
2025-07-17 15:36:06 +08:00
Levi Yun
f85c718167 MdeModulePkg/Include: change type of buffer address in ArmFfaRxTxBufferInfo
Change type of buffer address type in ArmFfaRxTxBufferInfo
so that reduce the type casting.

Signed-off-by: Yeoreum Yun <yeoreum.yun@arm.com>
2025-07-14 11:59:38 +00:00
Levi Yun
5a2713ec2b MdeModulePkg/Library: commonize some duplicate code in ArmFfaLib
Some of code for handling Rx/Tx buffer is duplicate.
This patch commonize some of duplication routine used in
Rx/Tx buffer related functions.

Signed-off-by: Yeoreum Yun <yeoreum.yun@arm.com>
2025-07-14 11:59:38 +00:00
Levi Yun
a7e27682cf MdeModulePkg/Library: add ArmFfaSecLib
To use Arm-FFA intereface in PeilessSec, implments
ArmFfaSecLib used by PeilessSec.
For example, communicate with TPM service using CRB over ARM-FFA
(via Tpm2DeviceLibFfa), PeilessSec need to use Arm-FFA interface.

Signed-off-by: Yeoreum Yun <yeoreum.yun@arm.com>
2025-07-14 11:59:38 +00:00
Levi Yun
bbd810221e MdeModulePkg: Make PcdFfaTxRxPageCount a PcdsFixedAtBuild PCD
The PcdFfaTxRxPageCount can never be changed dynamically
and is configured at build time to specify the size of
the Rx/Tx buffers.

Therefore, make PcdFfaTxRxPageCount a PcdsFixedAtBuild PCD.

Signed-off-by: Yeoreum Yun <yeoreum.yun@arm.com>
2025-07-14 11:59:38 +00:00
Levi Yun
b336d9b87a MdeModulePkg/Library: fix memory leak Rx/Tx Buffer in ArmFfaPeiLib
The commit e15fe06603
("MdeModulePkg/Library: make ArmFfaPeiLib available early PEIM stage")
uses ArmFfaPeiLib in the early PEIM stage.

However, the Rx/Tx buffer allocated in the early PEIM stage uses
temporary memory. This results in a memory leak when the temporary
memory's heap is relocated to permanent memory.

For example, if the Rx/Tx buffer memory is allocated at 0x20006000
in temporary memory, and if offset between temporary memory and
permanent is 0x40000000, then:

 - Once permanent memory installed the temporary memory at 0x20006000
   is migrated to 0x60006000.
 - However, ArmFfaPeiLib allocates new Rx/Tx buffer without freeing
   the migrated Rx/Tx buffers, i.e. the buffers at 0x60006000.

This results in a memory leak as the migrated Rx/Tx buffer area is
lost.
To address this memory leak, use the MemoryAllocationHob's name, so
that the migrated memory area will be reused as Rx/Tx buffer.

This patch also includes rename ArmFfaRxTxStmm.c to
ArmFfaStandaloneMmRxTxMap.c to keep the file name convention in
ArmFfaLib with ArmFfa{Phase}{...}.c

Fixes: e15fe06603 ("MdeModulePkg/Library: ...")
Signed-off-by: Yeoreum Yun <yeoreum.yun@arm.com>
Continuous-integration-options: PatchCheck.ignore-multi-package
2025-07-14 11:59:38 +00:00
Alok Kulkarni
a00ad45ea4 MdeModulePkg: UsbBusDxe Reset USB port GetPortStatus returns device error.
During USB device enumeration, issuing a hot reset on a port is skipped if
there is a reset change status already detected on the port. This can
happen when enumerating devices after a host controller soft reset (which
drives a hot reset down the ports).

However, in certain cases an attached device may not be responsive even if
the reset change and connection status bits are set. For e.g., according
to xHCI spec section 4.19.5.1 the port reset change bits can be set when
a hot reset driven on the port transitions to a warm reset and completes
with errors. For such instances it is worthwhile to force a hot reset
during enumeration to try and recover unresponsive devices.

During enumeration check whether querying port status returns
EFI_DEVICE_ERROR and try a port reset if there is a device attached to
the port.

Signed-off-by: Aaron Pop <aaronpop@microsoft.com>
2025-07-10 09:06:35 +08:00
Aaron Pop
5f2e0c8c43 MdeModulePkg: MdeModulePkg.dec update PcdDxeNxMemoryProtectionPolicy.
Update the comments for PcdDxeNxMemoryProtectionPolicy
which contained old information.

Signed-off-by: Aaron Pop <aaronpop@microsoft.com>
Co-authored-by: Oliver Smith-Denny <osde@microsoft.com>
2025-07-09 07:39:31 +00:00
Oliver Smith-Denny
2d69507a4d MdeModulePkg: Leak Memory if Not RW on FreePages
Currently, if the DebugClearMemory bit is set in the
PcdDebugPropertyMask, CoreConvertPagesEx will attempt to write
a pattern to the pages being freed. However, it does not check
that the page is writeable, which will cause a page fault if not.
Furthermore, if NX protections are not enabled, the core does not
ensure that any freed pages are RW, which is the state expected
when they are allocated next. If they are not RW, the allocating
driver will crash trying to use them.

This patch updates the page freeing code to query the memory
attributes protocol, if present, for the attributes. If this call
fails or the attributes are not RW at a minimum, the core leaks
the memory (returning success to the caller). If the memory
attribute protocol is not present (either because a platform doesn't
produce it or it is before the protocol has been produced, the core
continues with freeing memory. This is either before the CPU Arch
protocol is available (so drivers can't change memory attributes) or
otherwise matches existing behavior. This was deemed the best
approach to let memory that can't be guaranteed to be RW leak
instead of letting a driver crash when allocating it. It was deemed
less brittle to simply leak the memory instead of attempting to
change the attributes.

Signed-off-by: Oliver Smith-Denny <osde@microsoft.com>
2025-07-09 00:59:56 +00:00
GuoMinJ
4315b1922e MdeModulePkg/GraphicsConsoleDxe UGA
The Universal Graphics Adapter (UGA) is a graphic abstraction.
The UGA I/O and Draw protocols are deprecated since UEFI 2.0 was
introduced. Cf. the UEFI spec v2.9:
"Appendix L - EFI 1.10 Protocol Changes and Deprecation List"
section L.2 "Deprecated Protocols"

Remove the UGA support.

Signed-off-by: GuoMinJ <newexplorerj@gmail.com>
Signed-off-by: Pierre Gondois <pierre.gondois@arm.com>
2025-07-08 15:42:03 +00:00
GuoMinJ
ecaca1652d MdeModulePkg/ConSplitterDxe UGA
The Universal Graphics Adapter (UGA) is a graphic abstraction.
The UGA I/O and Draw protocols are deprecated since UEFI 2.0 was
introduced. Cf. the UEFI spec v2.9:
"Appendix L - EFI 1.10 Protocol Changes and Deprecation List"
section L.2 "Deprecated Protocols"

Remove the UGA support.

Signed-off-by: GuoMinJ <newexplorerj@gmail.com>
Signed-off-by: Pierre Gondois <pierre.gondois@arm.com>
2025-07-08 15:42:03 +00:00
GuoMinJ
0fe2520aad MdeModulePkg: Remove UGA support
The Universal Graphics Adapter (UGA) is a graphic abstraction.
The UGA I/O and Draw protocols are deprecated since UEFI 2.0 was
introduced. Cf. the UEFI spec v2.9:
"Appendix L - EFI 1.10 Protocol Changes and Deprecation List"
section L.2 "Deprecated Protocols"

Remove the UGA support.

Signed-off-by: GuoMinJ <newexplorerj@gmail.com>
Signed-off-by: Pierre Gondois <pierre.gondois@arm.com>
2025-07-08 15:42:03 +00:00
Oliver Smith-Denny
91bb5cee36 MdeModulePkg: Don't Allocate Page 0
Currently DxeIpl attempts to set page 0 to all 0's and to
create a memory allocation HOB for it. However, DxeIpl will
also unmap the page when mapping page tables and if null
detection is not enabled, DxeCore will set the page to 0,
regardless of allocation status.

Because no consumers are using the memory allocation HOB for
page 0, drop it. Instead, ensure that PeiCore and DxeCore do
not allow allocating page 0; it should always be reserved for
null pointer detection. It also complicates the story for
platforms that are attempting to audit the system and ensure that
no modules are using page 0. With these memory allocation HOBs
in place, it is difficult to tell if it is simply DxeIpl who
has allocated the memory or another module.

This commit drops the memory allocation HOB publishing and ensures
that DxeCore and PeiCore do not allocate page 0. DxeCore already
will not allocate page 0 to callers of AllocatePages who call with
a type other than AllocateAddress, this just changes so that
AllocateAddress cannot allocate at page 0 (which if null detection
is enabled will cause a page fault). PeiCore does not have
AllocateAddress and so this ensures standard allocations do not
receive page 0.

Signed-off-by: Oliver Smith-Denny <osde@microsoft.com>
2025-07-08 03:45:09 +00:00
Abdul Lateef Attar
25b1754ae5 MdeModulePkg: Correct spelling errors and typos
Signed-off-by: Abdul Lateef Attar <AbdulLateef.Attar@amd.com>
2025-07-04 09:41:47 +08:00
Michael Kubacki
d15b57292f MdeModulePkg: SectionExtractionPei cumulative codeql issues.
Running Codeql on MdeModulePkg/Universal/SectionExtractionPei drivers results
in codeql errors stemming from missing null tests.

Signed-off-by: Aaron Pop <aaronpop@microsoft.com>

Co-authored-by: Michael Kubacki <michael.kubacki@microsoft.com>
Co-authored-by: Taylor Beebe <tabeebe@microsoft.com>
Co-authored-by: pohanch <125842322+pohanch@users.noreply.github.com>
Co-authored-by: kenlautner <85201046+kenlautner@users.noreply.github.com>
Co-authored-by: Oliver Smith-Denny <osde@linux.microsoft.com>
Co-authored-by: Sean Brogan <sean.brogan@microsoft.com>
Co-authored-by: Aaron <aaronpop@microsoft>
2025-07-01 09:53:09 +08:00
Michael Kubacki
6cc56c6a2e MdeModulePkg: SmmCommunicationBuffer cumulative codeql issues.
Running Codeql on MdeModulePkg/Universal/SmmCommunicationBuffer drivers results
in codeql errors stemming from missing null tests.

Signed-off-by: Aaron Pop <aaronpop@microsoft.com>

Co-authored-by: Michael Kubacki <michael.kubacki@microsoft.com>
Co-authored-by: Taylor Beebe <tabeebe@microsoft.com>
Co-authored-by: pohanch <125842322+pohanch@users.noreply.github.com>
Co-authored-by: kenlautner <85201046+kenlautner@users.noreply.github.com>
Co-authored-by: Oliver Smith-Denny <osde@linux.microsoft.com>
Co-authored-by: Sean Brogan <sean.brogan@microsoft.com>
Co-authored-by: Aaron <aaronpop@microsoft>
2025-07-01 09:52:41 +08:00
Wenbo Hou
d165ebcf43 MdeModulePkg/FaultTolerantWriteDxe: Add validation for FtwWorkSpaceHeader
Add validation for FtwWorkSpaceHeader within the
WorkSpaceRefresh() function to address an issue where the
variable store cannot recover from the FTW spare block if the
variable store is erased or corrupted during an FTW write or
reclaim operation.

Signed-off-by: Wenbo Hou <wenbo.hou@microsoft.com>
2025-07-01 09:42:17 +08:00
Kun Qin
51d273d8c3 MdeModulePkg: MmVariablePei: Use MM communicate v3
As the MM cores begin to support MM Communicate v3, this update moves the
driver to communicate to MM agent through MM Communicate v3 PPI.

Signed-off-by: Kun Qin <kun.qin@microsoft.com>
2025-06-26 21:43:56 +00:00
Kun Qin
23e1fc6b0b MdeModulePkg: VariableSmmRuntimeDxe: Use MM communicate v3
As MM cores start to support MM communciate v3. This change moves the
variable driver to use MM communicate v3 if it is available, otherwise the
driver will fallback to v2 to keep the same functionality.

Signed-off-by: Kun Qin <kun.qin@microsoft.com>
2025-06-26 21:43:56 +00:00
Kun Qin
fdb638fc28 MdeModulePkg: PiSmmIpl: Add check for MM communicate v3 header
This change adds a check to ensure the incoming buffer is correctly using
MM communicate v3 header before dereferencing the content.

Signed-off-by: Kun Qin <kun.qin@microsoft.com>
2025-06-26 21:43:56 +00:00
Kun Qin
22142b4f4a MdePkg, MdeModulePkg: ArmFfaLib: Expose FFA_ARGS and ArmCallFfa
FFA is a framework that supports various protocols built on top. i.e.
memory protocol, which is nothing that can be done through existing
interfaces.

Instead of requiring protocol authors to check conduit PCD in every
implementation, exposing the ArmCallFfa is a unified way to allow other
protocols to leverage FFA interfaces.

Continuous-integration-options: PatchCheck.ignore-multi-package
Signed-off-by: Kun Qin <kun.qin@microsoft.com>
2025-06-26 17:38:28 +00:00
Kun Qin
b534cabbda MdeModulePkg: ArmFfaLib: Add Rx/Tx support for Stmm secure partition
This change adds the support for mapping Rx/Tx buffer through the library
constructor. The first mapper will produce an MM protocol instance with
Rx/Tx information, which allows subsequent consumers to query the
information.

Signed-off-by: Kun Qin <kun.qin@microsoft.com>
2025-06-26 17:38:28 +00:00
Jeff Brasen
07425903d3 MdeModulePkg/UefiBootManagerLib: Fix crash when no load options are found
Do not attempt to sort the load options when there
are none.

Signed-off-by: Jeff Brasen <jbrasen@nvidia.com>
2025-06-25 18:26:11 +00:00
INDIA\sachinganesh
fe19f86dcd MdeModulePkg/SmmCore: Modify check for Mm Communicate Buffer without data
Modify communication buffer size check to take into consideration
that buffer might not have data.

Signed-off-by: Sachin Ganesh <sachinganesh@ami.com>
2025-06-25 13:11:52 +00:00
Ryan Wong
5ac1dfc093 MdeModulePkg/UfsPassThruDxe: Correct size in UfsHc->FreeBuffer call
UfsHc->FreeBuffer accepts page numbers rather than bytes as its
size argument. Fix two positions where wrong size were passed.

Signed-off-by: Ryan Wong <colorfulshark@gmail.com>
2025-06-25 14:48:08 +08:00
Rebecca Cran
897edd165c MdeModulePkg: Add help for Reset menu item, and fix French strings
Fix the help string for the Reset menu item, and add it to the UI
instead of just repeating the main text. Fix the French translations.

Signed-off-by: Rebecca Cran <rebecca@bsdio.com>
2025-06-16 23:03:46 +00:00
Michael D Kinney
724394ebe2 MdeModulePkg/DebugSupportDxe: Fix type mismatches
The RegisteredCallback field of IdtEntryTable is used to
store the address of functions with different function
prototypes depending on the ExceptionType. Add local
variables with the correct function prototypes and evaluate
the ExceptionType to assign correct local variable to the
RegisteredCallback value and use local variable to call
the registered callback function with the correct arguments
for the ExceptionType.

Update declaration of InterruptDistrubutionHub() to use
the non-CPU specific EFI_SYSTEM_CONTEXT parameter type
instead of the  IA32 specific EFI_SYSTEM_CONTEXT_IA32
because this function is used for both IA32 and X64.

Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com>
2025-06-13 15:47:59 +00:00
Michael D Kinney
73ecd7d8b2 MdeModulePkg/SpiNorFlashJedecSfdp: Initialize AddressSize
Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com>
2025-06-13 15:47:59 +00:00
Michael Kubacki
1b26c4b73b MdeModulePkg: Refactor MM Services Tables linked in MM Core Perf Lib
The code used a `MmServicesTableLib` dependency for both the
Standalone MM and Traditional MM instances and shared code between
those. There is not a readily available `MmServicesTable` lib
instance for Traditional SMM (that can link to `PiSmmCore`). To ease
integration and prevent creating an instance just for this case, this
change uses `SmmServicesTableLib` in the Traditional SMM instance and
`MmServicesTableLib` in the Standalone MM instance and moves code as
necessary to accommodate this.

For general reference, there are two available instances of
`MmServicesTableLib`:

- MdePkg/MmServicesTableLib - only supports DXE_SMM drivers.
- MdePkg/StandaloneMmServicesTableLib - supports both MM drivers and
  MM cores.

Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com>
2025-06-13 06:44:38 +00:00
Gao Qihang
a808062890 MdeModulePkg: Fix function typos
functin -> function

Signed-off-by: Gao Qihang <gaoqihang@loongson.cn>
2025-06-12 17:50:45 +00:00
Gao Qihang
c4bc60b2b7 MdeModulePkg: Fix EFI_SUCCESS typos
EFI_SUCESS -> EFI_SUCCESS
EFI_SUCESSS -> EFI_SUCCESS

Signed-off-by: Gao Qihang <gaoqihang@loongson.cn>
2025-06-12 17:50:45 +00:00