VirtualBox

Ignore:
Timestamp:
Aug 14, 2024 1:16:30 PM (6 months ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
164367
Message:

Devices/EFI/FirmwareNew: Merge edk2-stable-202405 and make it build on aarch64, bugref:4643

Location:
trunk/src/VBox/Devices/EFI/FirmwareNew
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Devices/EFI/FirmwareNew

  • trunk/src/VBox/Devices/EFI/FirmwareNew/SourceLevelDebugPkg/Library/DebugAgent/SmmDebugAgent/SmmDebugAgentLib.c

    r99404 r105670  
    160160  and initialize debug port. It will get debug agent Mailbox from GUIDed HOB,
    161161  it it exists, debug agent wiil copied it into the local Mailbox in SMM space.
    162   it will override IDT table entries and initialize debug port. Context will be
    163   NULL.
     162  it will override IDT table entries and initialize debug port. Context must
     163  point to a BOOLEAN if it's not NULL, which indicates SMM Debug Agent supported
     164  or not.
    164165  If InitFlag is DEBUG_AGENT_INIT_ENTER_SMI, debug agent will save Debug
    165166  Registers and get local Mailbox in SMM space. Context will be NULL.
     
    206207      if (EFI_ERROR (Status)) {
    207208        DEBUG ((DEBUG_ERROR, "DebugAgent: Cannot install configuration table for persisted vector handoff info!\n"));
     209        if (Context != NULL) {
     210          *(BOOLEAN *)Context = FALSE;
     211        }
     212
    208213        CpuDeadLoop ();
    209214      }
     
    216221        VerifyMailboxChecksum (Mailbox);
    217222        mMailboxPointer = Mailbox;
     223        if (Context != NULL) {
     224          *(BOOLEAN *)Context = TRUE;
     225        }
     226
    218227        break;
    219228      }
     
    225234      if (Mailbox != NULL) {
    226235        mMailboxPointer = Mailbox;
     236        if (Context != NULL) {
     237          *(BOOLEAN *)Context = TRUE;
     238        }
     239
    227240        break;
    228241      }
     
    275288      //
    276289      CopyMem ((VOID *)IdtDescriptor.Base, &IdtEntry, 33 * sizeof (IA32_IDT_GATE_DESCRIPTOR));
     290
     291      if (Context != NULL) {
     292        *(BOOLEAN *)Context = TRUE;
     293      }
    277294
    278295      break;
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette