├── AcpiToolPkg ├── AcpiToolPkg.dec ├── AcpiToolPkg.dsc ├── DumpAcpi │ ├── DumpACPI.c │ ├── DumpACPI.h │ ├── DumpACPI.inf │ ├── DumpAcpiDSDT.c │ ├── DumpAcpiFACS.c │ ├── DumpAcpiFADT.c │ ├── DumpAcpiPSDT.c │ └── DumpAcpiSSDT.c ├── Include │ ├── IndustryStandard │ │ ├── ServerProcessorManagementInterfaceTable.h │ │ └── WatchdogDescriptionTable.h │ └── Library │ │ └── DumpAcpiTableFuncLib.h └── Library │ └── DumpAcpi │ ├── DumpAcpiASFLib │ ├── DumpAcpiASFLib.c │ └── DumpAcpiASFLib.inf │ ├── DumpAcpiBERTLib │ ├── DumpAcpiBERTLib.c │ └── DumpAcpiBERTLib.inf │ ├── DumpAcpiBGRTLib │ ├── DumpAcpiBGRTLib.c │ └── DumpAcpiBGRTLib.inf │ ├── DumpAcpiBOOTLib │ ├── DumpAcpiBOOTLib.c │ └── DumpAcpiBOOTLib.inf │ ├── DumpAcpiCPEPLib │ ├── DumpAcpiCPEPLib.c │ └── DumpAcpiCPEPLib.inf │ ├── DumpAcpiCSRTLib │ ├── DumpAcpiCSRTLib.c │ └── DumpAcpiCSRTLib.inf │ ├── DumpAcpiDBG2Lib │ ├── DumpAcpiDBG2Lib.c │ └── DumpAcpiDBG2Lib.inf │ ├── DumpAcpiDBGPLib │ ├── DumpAcpiDBGPLib.c │ └── DumpAcpiDBGPLib.inf │ ├── DumpAcpiDMARLib │ ├── DumpAcpiDMARLib.c │ └── DumpAcpiDMARLib.inf │ ├── DumpAcpiECDTLib │ ├── DumpAcpiECDTLib.c │ └── DumpAcpiECDTLib.inf │ ├── DumpAcpiEINJLib │ ├── DumpAcpiEINJLib.c │ └── DumpAcpiEINJLib.inf │ ├── DumpAcpiERSTLib │ ├── DumpAcpiERSTLib.c │ └── DumpAcpiERSTLib.inf │ ├── DumpAcpiETDTLib │ ├── DumpAcpiETDTLib.c │ └── DumpAcpiETDTLib.inf │ ├── DumpAcpiFPDTLib │ ├── DumpAcpiFPDTLib.c │ └── DumpAcpiFPDTLib.inf │ ├── DumpAcpiGTDTLib │ ├── DumpAcpiGTDTLib.c │ └── DumpAcpiGTDTLib.inf │ ├── DumpAcpiHESTLib │ ├── DumpAcpiHESTLib.c │ └── DumpAcpiHESTLib.inf │ ├── DumpAcpiHPETLib │ ├── DumpAcpiHPETLib.c │ └── DumpAcpiHPETLib.inf │ ├── DumpAcpiIBFTLib │ ├── DumpAcpiIBFTLib.c │ └── DumpAcpiIBFTLib.inf │ ├── DumpAcpiIVRSLib │ ├── DumpAcpiIVRSLib.c │ └── DumpAcpiIVRSLib.inf │ ├── DumpAcpiLPITLib │ ├── DumpAcpiLPITLib.c │ └── DumpAcpiLPITLib.inf │ ├── DumpAcpiMADTLib │ ├── DumpAcpiMADTLib.c │ └── DumpAcpiMADTLib.inf │ ├── DumpAcpiMCFGLib │ ├── DumpAcpiMCFGLib.c │ └── DumpAcpiMCFGLib.inf │ ├── DumpAcpiMCHILib │ ├── DumpAcpiMCHILib.c │ └── DumpAcpiMCHILib.inf │ ├── DumpAcpiMPSTLib │ ├── DumpAcpiMPSTLib.c │ └── DumpAcpiMPSTLib.inf │ ├── DumpAcpiMSCTLib │ ├── DumpAcpiMSCTLib.c │ └── DumpAcpiMSCTLib.inf │ ├── DumpAcpiMSDMLib │ ├── DumpAcpiMSDMLib.c │ └── DumpAcpiMSDMLib.inf │ ├── DumpAcpiNFITLib │ ├── DumpAcpiNFITLib.c │ └── DumpAcpiNFITLib.inf │ ├── DumpAcpiPMTTLib │ ├── DumpAcpiPMTTLib.c │ └── DumpAcpiPMTTLib.inf │ ├── DumpAcpiRASFLib │ ├── DumpAcpiRASFLib.c │ └── DumpAcpiRASFLib.inf │ ├── DumpAcpiSBSTLib │ ├── DumpAcpiSBSTLib.c │ └── DumpAcpiSBSTLib.inf │ ├── DumpAcpiSLICLib │ ├── DumpAcpiSLICLib.c │ └── DumpAcpiSLICLib.inf │ ├── DumpAcpiSLITLib │ ├── DumpAcpiSLITLib.c │ └── DumpAcpiSLITLib.inf │ ├── DumpAcpiSPCRLib │ ├── DumpAcpiSPCRLib.c │ └── DumpAcpiSPCRLib.inf │ ├── DumpAcpiSPMILib │ ├── DumpAcpiSPMILib.c │ └── DumpAcpiSPMILib.inf │ ├── DumpAcpiSRATLib │ ├── DumpAcpiSRATLib.c │ └── DumpAcpiSRATLib.inf │ ├── DumpAcpiTCPALib │ ├── DumpAcpiTCPALib.c │ └── DumpAcpiTCPALib.inf │ ├── DumpAcpiTPM2Lib │ ├── DumpAcpiTPM2Lib.c │ └── DumpAcpiTPM2Lib.inf │ ├── DumpAcpiTableFuncLib │ ├── DumpAcpiTableFuncLib.c │ └── DumpAcpiTableFuncLib.inf │ ├── DumpAcpiUEFILib │ ├── DumpAcpiUEFILib.c │ └── DumpAcpiUEFILib.inf │ ├── DumpAcpiWAETLib │ ├── DumpAcpiWAETLib.c │ └── DumpAcpiWAETLib.inf │ ├── DumpAcpiWDATLib │ ├── DumpAcpiWDATLib.c │ └── DumpAcpiWDATLib.inf │ ├── DumpAcpiWDDTLib │ ├── DumpAcpiWDDTLib.c │ └── DumpAcpiWDDTLib.inf │ ├── DumpAcpiWDRTLib │ ├── DumpAcpiWDRTLib.c │ └── DumpAcpiWDRTLib.inf │ ├── DumpAcpiWPBTLib │ ├── DumpAcpiWPBTLib.c │ └── DumpAcpiWPBTLib.inf │ ├── DumpAcpiWSMTLib │ ├── DumpAcpiWSMTLib.c │ └── DumpAcpiWSMTLib.inf │ └── DumpAcpiWSPTLib │ ├── DumpAcpiWSPTLib.c │ └── DumpAcpiWSPTLib.inf ├── EdkiiShellToolPkg ├── AtaInfo │ ├── AtaInfo.c │ └── AtaInfo.inf ├── BootOption │ ├── AppSupport.c │ ├── BootOption.c │ └── BootOption.inf ├── Contributions.txt ├── DbxEnroll │ ├── AppSupport.c │ ├── DbxEnroll.c │ └── DbxEnroll.inf ├── DummyRt │ ├── DummyRt.c │ └── DummyRt.inf ├── DumpVirtioPciDev │ ├── DumpVirtioPciDev.c │ └── DumpVirtioPciDev.inf ├── EdkiiCoreDatabaseDump │ ├── DxeCoreDump │ │ ├── DxeCore │ │ │ ├── DxeCore.h │ │ │ ├── DxeMain.h │ │ │ ├── Event.h │ │ │ └── Handle.h │ │ ├── DxeCoreDump.c │ │ ├── DxeCoreDump.h │ │ ├── DxeCoreDumpApp.inf │ │ ├── SupportFile.c │ │ ├── SupportGuid.c │ │ └── SupportString.c │ ├── Include │ │ └── Library │ │ │ └── SmmChildDumpLib.h │ ├── Library │ │ ├── SmmChildDumpLibNt32 │ │ │ ├── SmmChild │ │ │ │ └── WinNtSmmChildDispatcherSmm.h │ │ │ ├── SmmChildDump.h │ │ │ ├── SmmChildDumpComm.h │ │ │ ├── SmmChildDumpLib.c │ │ │ ├── SmmChildDumpLib.inf │ │ │ ├── SmmChildDumpLibApp.c │ │ │ └── SmmChildDumpLibHandler.c │ │ └── SmmChildDumpLibNull │ │ │ ├── SmmChildDumpLibNull.c │ │ │ └── SmmChildDumpLibNull.inf │ ├── PeiCoreDump │ │ ├── PeiCore │ │ │ └── PeiMain.h │ │ ├── PeiCoreDump.c │ │ ├── PeiCoreDump.h │ │ ├── PeiCoreDump.inf │ │ ├── PeiCoreDumpApp.c │ │ ├── PeiCoreDumpApp.inf │ │ ├── PeiCoreDumpComm.h │ │ ├── PeiCoreDumpHob.c │ │ ├── SupportFile.c │ │ ├── SupportGuid.c │ │ └── SupportString.c │ └── SmmCoreDump │ │ ├── SmmCore │ │ ├── PiSmmCore.h │ │ └── SmmCore.h │ │ ├── SmmCoreDump.c │ │ ├── SmmCoreDump.h │ │ ├── SmmCoreDump.inf │ │ ├── SmmCoreDumpApp.c │ │ ├── SmmCoreDumpApp.inf │ │ ├── SmmCoreDumpComm.h │ │ ├── SmmCoreDumpHandler.c │ │ ├── SupportFile.c │ │ ├── SupportGuid.c │ │ └── SupportString.c ├── EdkiiShellToolPkg.dec ├── EdkiiShellToolPkg.dsc ├── EsrtFmpDump │ ├── EsrtDxe │ │ └── EsrtImpl.h │ ├── EsrtFmpDump.c │ └── EsrtFmpDump.inf ├── Gcd │ ├── Gcd.c │ └── Gcd.inf ├── GcdSet │ ├── GcdSet.c │ └── GcdSet.inf ├── GetPciOprom │ ├── GetPciOprom.c │ └── GetPciOprom.inf ├── GetVariablePerf │ ├── GetVariablePerf.c │ └── GetVariablePerf.inf ├── HobList │ ├── HobList.c │ └── HobList.inf ├── HstiWsmtDump │ ├── HstiWsmtDump.c │ └── HstiWsmtDump.inf ├── InitSerial │ ├── InitSerial.c │ └── InitSerial.inf ├── License.txt ├── MemoryAttributesDump │ ├── MemoryAttributesDump.c │ └── MemoryAttributesDump.inf ├── MemoryTypeInfo │ ├── MemoryTypeInfo.c │ └── MemoryTypeInfo.inf ├── PatchMicrocode │ ├── PatchMicrocode.c │ └── PatchMicrocode.inf ├── PcdDump │ ├── AppSupport.c │ ├── PCD │ │ ├── PcdDxe.h │ │ └── PcdPei.h │ ├── PcdDump.c │ └── PcdDump.inf ├── ScsiInfo │ ├── ScsiInfo.c │ └── ScsiInfo.inf ├── SmiPerf │ ├── SmiPerf.c │ └── SmiPerf.inf ├── SmmProfileDump │ ├── SmmProfile.h │ ├── SmmProfileDump.c │ └── SmmProfileDump.inf ├── StackUsage │ ├── AppSupport.c │ ├── StackUsage.c │ └── StackUsage.inf ├── Tcg2DumpLog │ ├── SampleTcgEventLog │ │ ├── EmulatorIa32TcgEvent.bin │ │ ├── EmulatorIa32TcgEvent.log │ │ ├── EmulatorX64TcgEvent.bin │ │ └── EmulatorX64TcgEvent.log │ ├── Tcg2DumpLog.c │ └── Tcg2DumpLog.inf ├── UsbInfo │ ├── UsbInfo.c │ └── UsbInfo.inf └── VtdDump │ ├── Vtd │ ├── Map.h │ └── PeiPmr.h │ ├── VtdDump.c │ └── VtdDump.inf └── Readme.md /AcpiToolPkg/AcpiToolPkg.dec: -------------------------------------------------------------------------------- 1 | ## @file AcpiToolPkg.dec 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | DEC_SPECIFICATION = 0x00010005 16 | PACKAGE_NAME = AcpiToolPkg 17 | PACKAGE_GUID = 3BDFB922-8B82-42f0-B978-B84B169D889F 18 | PACKAGE_VERSION = 0.1 19 | 20 | [Includes] 21 | Include -------------------------------------------------------------------------------- /AcpiToolPkg/DumpAcpi/DumpACPI.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpACPI 17 | FILE_GUID = A8F5E907-D018-46e9-B6C6-F649293B4535 18 | MODULE_TYPE = UEFI_APPLICATION 19 | VERSION_STRING = 1.0 20 | ENTRY_POINT = DumpACPIEntryPoint 21 | 22 | [Sources.common] 23 | DumpACPI.h 24 | DumpACPI.c 25 | DumpAcpiFADT.c 26 | DumpAcpiFACS.c 27 | DumpAcpiDSDT.c 28 | DumpAcpiSSDT.c 29 | DumpAcpiPSDT.c 30 | 31 | [Packages] 32 | AcpiToolPkg/AcpiToolPkg.dec 33 | MdePkg/MdePkg.dec 34 | MdeModulePkg/MdeModulePkg.dec 35 | ShellPkg/ShellPkg.dec 36 | 37 | [LibraryClasses] 38 | UefiApplicationEntryPoint 39 | ShellLib 40 | BaseLib 41 | BaseMemoryLib 42 | MemoryAllocationLib 43 | DebugLib # for serial port output 44 | UefiLib 45 | UefiBootServicesTableLib 46 | PrintLib 47 | DumpAcpiTableFuncLib 48 | 49 | [Guids] 50 | gEfiAcpiTableGuid 51 | gEfiAcpi20TableGuid 52 | 53 | [Protocols] 54 | gEfiLoadedImageProtocolGuid 55 | gEfiDevicePathProtocolGuid 56 | gEfiSimpleFileSystemProtocolGuid 57 | 58 | -------------------------------------------------------------------------------- /AcpiToolPkg/Include/IndustryStandard/ServerProcessorManagementInterfaceTable.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | ACPI Server Processor Management Interface Table SPMI as described 3 | in the IPMI2.0 Specification Revistion 1.5 4 | 5 | Copyright (c) 2016, Intel Corporation. All rights reserved.
6 | This program and the accompanying materials 7 | are licensed and made available under the terms and conditions of the BSD License 8 | which accompanies this distribution. The full text of the license may be found at 9 | http://opensource.org/licenses/bsd-license.php 10 | 11 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 13 | 14 | **/ 15 | 16 | #ifndef _SERVER_PROCESSOR_MANAGEMENT_INTERFACE_TABLE_H_ 17 | #define _SERVER_PROCESSOR_MANAGEMENT_INTERFACE_TABLE_H_ 18 | 19 | #include 20 | 21 | // 22 | // Ensure proper structure formats 23 | // 24 | #pragma pack (1) 25 | 26 | // 27 | // Server Processor Management Interface Table definition. 28 | // 29 | typedef struct { 30 | EFI_ACPI_DESCRIPTION_HEADER Header; 31 | UINT8 Reserved_36; 32 | UINT8 InterfaceType; 33 | UINT16 SpecificationRevision; 34 | UINT8 InterruptType; 35 | UINT8 GPE; 36 | UINT8 Reserved_42; 37 | UINT8 PCIDeviceFlag; 38 | UINT32 GlobalSystemInterrupt; 39 | EFI_ACPI_2_0_GENERIC_ADDRESS_STRUCTURE BaseAddress; 40 | UINT8 PCISegmentGroup_UID1; 41 | UINT8 PCIBusNumber_UID2; 42 | UINT8 PCIDeviceNumber_UID3; 43 | UINT8 PCIFunctionNumber_UID4; 44 | } EFI_ACPI_SERVER_PROCESSOR_MANAGEMENT_INTERFACE_DESCRIPTION_TABLE; 45 | 46 | #pragma pack () 47 | 48 | // 49 | // SPMI Revision 50 | // 51 | #define EFI_ACPI_SERVER_PROCESSOR_MANAGEMENT_INTERFACE_TABLE_REVISION 0x05 52 | 53 | // 54 | // Interface Type 55 | // 56 | #define EFI_ACPI_SPMI_INTERFACE_TYPE_RESERVED 0 57 | #define EFI_ACPI_SPMI_INTERFACE_TYPE_KCS 1 58 | #define EFI_ACPI_SPMI_INTERFACE_TYPE_SMIC 2 59 | #define EFI_ACPI_SPMI_INTERFACE_TYPE_BT 3 60 | #define EFI_ACPI_SPMI_INTERFACE_TYPE_SSIF 4 61 | 62 | // 63 | // SPMI Specfication Revision 64 | // 65 | #define EFI_ACPI_SPMI_SPECIFICATION_REVISION 0x0150 66 | 67 | // 68 | // SPMI Interrupt Type 69 | // 70 | #define EFI_ACPI_SPMI_INTERRUPT_TYPE_SCI 0x1 71 | #define EFI_ACPI_SPMI_INTERRUPT_TYPE_IOAPIC 0x2 72 | 73 | // 74 | // PCI Device Flag 75 | // 76 | #define EFI_ACPI_SPMI_PCI_DEVICE_FLAG 0x1 77 | 78 | #endif 79 | -------------------------------------------------------------------------------- /AcpiToolPkg/Include/IndustryStandard/WatchdogDescriptionTable.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | ACPI Watchdog Description Table as defined in Intel 3 | ICH Family Watchdog Timer (WDT) Application Note (AP-725) 4 | 5 | Copyright (c) 2016, Intel Corporation. All rights reserved.
6 | This program and the accompanying materials 7 | are licensed and made available under the terms and conditions of the BSD License 8 | which accompanies this distribution. The full text of the license may be found at 9 | http://opensource.org/licenses/bsd-license.php 10 | 11 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 13 | 14 | **/ 15 | 16 | #ifndef _WATCH_DOG_DESCRIPTION_TABLE_H_ 17 | #define _WATCH_DOG_DESCRIPTION_TABLE_H_ 18 | 19 | #include 20 | 21 | // 22 | // Ensure proper structure formats 23 | // 24 | #pragma pack(1) 25 | // 26 | // WDDT structure 27 | // 28 | typedef struct { 29 | EFI_ACPI_DESCRIPTION_HEADER Header; 30 | UINT16 SpecVersion; 31 | UINT16 TableVersion; 32 | UINT16 Vid; 33 | EFI_ACPI_2_0_GENERIC_ADDRESS_STRUCTURE BaseAddress; 34 | UINT16 TimerMaxCount; 35 | UINT16 TimerMinCount; 36 | UINT16 TimerCountPeriod; 37 | UINT16 Status; 38 | UINT16 Capability; 39 | } EFI_ACPI_1_0_WATCH_DOG_DESCRIPTION_TABLE; 40 | 41 | // 42 | // "WDDT" Watchdog Description Table signatures 43 | // 44 | #define EFI_ACPI_1_0_WDDT_SIGNATURE SIGNATURE_32('W', 'D', 'D', 'T') 45 | 46 | #pragma pack() 47 | 48 | // 49 | // WDDT Revision 50 | // 51 | #define EFI_ACPI_WATCHDOG_DESCRIPTION_1_0_TABLE_REVISION 0x01 52 | 53 | // 54 | // WDDT Spec Version 55 | // 56 | #define EFI_ACPI_WDDT_SPEC_1_0_VERSION 0x01 57 | 58 | // 59 | // WDDT Description Table Version 60 | // 61 | #define EFI_ACPI_WDDT_TABLE_1_0_VERSION 0x01 62 | 63 | // 64 | // WDT Status 65 | // 66 | #define EFI_ACPI_WDDT_STATUS_AVAILABLE 0x0001 67 | #define EFI_ACPI_WDDT_STATUS_ACTIVE 0x0002 68 | #define EFI_ACPI_WDDT_STATUS_OWNED_BY_BIOS 0x0000 69 | #define EFI_ACPI_WDDT_STATUS_OWNED_BY_OS 0x0004 70 | #define EFI_ACPI_WDDT_STATUS_USER_RESET_EVENT 0x0800 71 | #define EFI_ACPI_WDDT_STATUS_WDT_EVENT 0x1000 72 | #define EFI_ACPI_WDDT_STATUS_POWER_FAIL_EVENT 0x2000 73 | #define EFI_ACPI_WDDT_STATUS_UNKNOWN_RESET_EVENT 0x4000 74 | 75 | // 76 | // WDT Capability 77 | // 78 | #define EFI_ACPI_WDDT_CAPABILITY_AUTO_RESET 0x0001 79 | #define EFI_ACPI_WDDT_CAPABILITY_ALERT_SUPPORT 0x0002 80 | #define EFI_ACPI_WDDT_CAPABILITY_PLATFORM_SHUTDOWN 0x0004 81 | #define EFI_ACPI_WDDT_CAPABILITY_IMMEDIATE_SHUTDOWN 0x0008 82 | #define EFI_ACPI_WDDT_CAPABILITY_BIOS_HANDOFF_SUPPORT 0x0010 83 | 84 | #endif 85 | -------------------------------------------------------------------------------- /AcpiToolPkg/Include/Library/DumpAcpiTableFuncLib.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | 12 | **/ 13 | 14 | #ifndef _DUMP_ACPI_TABLE_FUNC_LIB_H_ 15 | #define _DUMP_ACPI_TABLE_FUNC_LIB_H_ 16 | 17 | #include 18 | #include 19 | 20 | typedef 21 | VOID 22 | (EFIAPI *DUMP_ACPI_TABLE_FUNC) ( 23 | VOID *Table 24 | ); 25 | 26 | /** 27 | Register DumpAcpiTable function. 28 | 29 | @param[in] Signature ACPI table signature 30 | @param[in] DumpAcpiTableFunc Dump ACPI table function 31 | 32 | @return Register status 33 | **/ 34 | EFI_STATUS 35 | EFIAPI 36 | RegisterDumpAcpiTable ( 37 | IN UINT32 Signature, 38 | IN DUMP_ACPI_TABLE_FUNC DumpAcpiTableFunc 39 | ); 40 | 41 | /** 42 | Return DumpAcpiTable function. 43 | 44 | @param[in] Signature ACPI table signature 45 | 46 | @return DumpAcpiTable function 47 | **/ 48 | DUMP_ACPI_TABLE_FUNC 49 | EFIAPI 50 | GetDumpAcpiTableFunc ( 51 | IN UINT32 Signature 52 | ); 53 | 54 | VOID 55 | DumpAcpiTableHeader ( 56 | EFI_ACPI_DESCRIPTION_HEADER *Header 57 | ); 58 | 59 | VOID 60 | DumpAcpiGAddressStructure ( 61 | EFI_ACPI_3_0_GENERIC_ADDRESS_STRUCTURE *GAddress 62 | ); 63 | 64 | VOID 65 | DumpAcpiHex ( 66 | IN UINTN BufferSize, 67 | IN VOID *Buffer 68 | ); 69 | 70 | VOID 71 | SetAcpiDumpPropertyDumpData ( 72 | IN BOOLEAN IsDumpData 73 | ); 74 | 75 | VOID 76 | SetAcpiDumpPropertyDumpVerb ( 77 | IN BOOLEAN IsDumpVerb 78 | ); 79 | 80 | BOOLEAN 81 | GetAcpiDumpPropertyDumpData ( 82 | VOID 83 | ); 84 | 85 | BOOLEAN 86 | GetAcpiDumpPropertyDumpVerb ( 87 | VOID 88 | ); 89 | 90 | #endif 91 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiASFLib/DumpAcpiASFLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpAcpiASFLib 17 | FILE_GUID = 1DE66191-0FB5-473f-AEF7-AA7BB13CDF72 18 | MODULE_TYPE = DXE_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = NULL 21 | CONSTRUCTOR = DumpAcpiASFLibConstructor 22 | 23 | [Sources] 24 | DumpAcpiASFLib.c 25 | 26 | [Packages] 27 | AcpiToolPkg/AcpiToolPkg.dec 28 | MdePkg/MdePkg.dec 29 | 30 | [LibraryClasses] 31 | BaseLib 32 | BaseMemoryLib 33 | UefiLib 34 | DebugLib 35 | DumpAcpiTableFuncLib 36 | 37 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiBERTLib/DumpAcpiBERTLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpAcpiBERTLib 17 | FILE_GUID = 035D120D-2EF0-44a9-B255-52B84CB1463C 18 | MODULE_TYPE = DXE_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = NULL 21 | CONSTRUCTOR = DumpAcpiBERTLibConstructor 22 | 23 | [Sources] 24 | DumpAcpiBERTLib.c 25 | 26 | [Packages] 27 | AcpiToolPkg/AcpiToolPkg.dec 28 | MdePkg/MdePkg.dec 29 | 30 | [LibraryClasses] 31 | BaseLib 32 | BaseMemoryLib 33 | UefiLib 34 | DebugLib 35 | DumpAcpiTableFuncLib 36 | 37 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiBGRTLib/DumpAcpiBGRTLib.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | 12 | **/ 13 | 14 | #include 15 | #include 16 | #include 17 | #include 18 | #include 19 | #include 20 | #include 21 | 22 | VOID 23 | EFIAPI 24 | DumpAcpiBGRT ( 25 | VOID *Table 26 | ) 27 | { 28 | EFI_ACPI_5_0_BOOT_GRAPHICS_RESOURCE_TABLE *Bgrt; 29 | 30 | Bgrt = Table; 31 | if (Bgrt == NULL) { 32 | return; 33 | } 34 | 35 | // 36 | // Dump Bgrt table 37 | // 38 | Print ( 39 | L"*****************************************************************************\n" 40 | L"* Boot Graphics Resource Table *\n" 41 | L"*****************************************************************************\n" 42 | ); 43 | 44 | if (GetAcpiDumpPropertyDumpData()) { 45 | DumpAcpiHex (Bgrt->Header.Length, Bgrt); 46 | } 47 | 48 | if (!GetAcpiDumpPropertyDumpVerb()) { 49 | goto Done; 50 | } 51 | 52 | Print ( 53 | (sizeof(UINTN) == sizeof(UINT64)) ? 54 | L"BGRT address ............................................. 0x%016lx\n" : 55 | L"BGRT address ............................................. 0x%08x\n", 56 | Bgrt 57 | ); 58 | 59 | DumpAcpiTableHeader(&(Bgrt->Header)); 60 | 61 | Print ( 62 | L" Table Contents:\n" 63 | ); 64 | Print ( 65 | L" Version .............................................. 0x%04x\n", 66 | Bgrt->Version 67 | ); 68 | Print ( 69 | L" Status ............................................... 0x%02x\n", 70 | Bgrt->Status 71 | ); 72 | Print ( 73 | L" Valid .............................................. 0x%02x\n", 74 | Bgrt->Status & EFI_ACPI_5_0_BGRT_STATUS_VALID 75 | ); 76 | Print ( 77 | L" Image Type ........................................... 0x%02x\n", 78 | Bgrt->ImageType 79 | ); 80 | switch (Bgrt->ImageType) { 81 | case EFI_ACPI_5_0_BGRT_IMAGE_TYPE_BMP: 82 | Print ( 83 | L" BMP\n" 84 | ); 85 | break; 86 | default: 87 | break; 88 | } 89 | Print ( 90 | L" Image Address ........................................ 0x%016lx\n", 91 | Bgrt->ImageAddress 92 | ); 93 | Print ( 94 | L" Image OffsetX ........................................ 0x%08x\n", 95 | Bgrt->ImageOffsetX 96 | ); 97 | Print ( 98 | L" Image OffsetY ........................................ 0x%08x\n", 99 | Bgrt->ImageOffsetY 100 | ); 101 | 102 | Done: 103 | Print ( 104 | L"*****************************************************************************\n\n" 105 | ); 106 | 107 | return; 108 | } 109 | 110 | EFI_STATUS 111 | EFIAPI 112 | DumpAcpiBGRTLibConstructor ( 113 | IN EFI_HANDLE ImageHandle, 114 | IN EFI_SYSTEM_TABLE *SystemTable 115 | ) 116 | { 117 | return RegisterDumpAcpiTable (EFI_ACPI_5_0_BOOT_GRAPHICS_RESOURCE_TABLE_SIGNATURE, DumpAcpiBGRT); 118 | } 119 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiBGRTLib/DumpAcpiBGRTLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpAcpiBGRTLib 17 | FILE_GUID = 113B65ED-F29C-4d98-8B6E-BC33EF3A73E8 18 | MODULE_TYPE = DXE_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = NULL 21 | CONSTRUCTOR = DumpAcpiBGRTLibConstructor 22 | 23 | [Sources] 24 | DumpAcpiBGRTLib.c 25 | 26 | [Packages] 27 | AcpiToolPkg/AcpiToolPkg.dec 28 | MdePkg/MdePkg.dec 29 | 30 | [LibraryClasses] 31 | BaseLib 32 | BaseMemoryLib 33 | UefiLib 34 | DebugLib 35 | DumpAcpiTableFuncLib 36 | 37 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiBOOTLib/DumpAcpiBOOTLib.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | 12 | **/ 13 | 14 | #include 15 | #include 16 | #include 17 | #include 18 | #include 19 | #include 20 | #include 21 | //#include 22 | 23 | VOID 24 | EFIAPI 25 | DumpAcpiBOOT ( 26 | VOID *Table 27 | ) 28 | { 29 | EFI_ACPI_DESCRIPTION_HEADER *Boot; 30 | 31 | Boot = Table; 32 | if (Boot == NULL) { 33 | return; 34 | } 35 | 36 | // 37 | // Dump Boot table 38 | // 39 | Print ( 40 | L"*****************************************************************************\n" 41 | L"* Simple Boot Flag Table *\n" 42 | L"*****************************************************************************\n" 43 | ); 44 | 45 | if (GetAcpiDumpPropertyDumpData()) { 46 | DumpAcpiHex (Boot->Length, Boot); 47 | } 48 | 49 | if (!GetAcpiDumpPropertyDumpVerb()) { 50 | goto Done; 51 | } 52 | 53 | Print ( 54 | (sizeof(UINTN) == sizeof(UINT64)) ? 55 | L"BOOT address ............................................. 0x%016lx\n" : 56 | L"BOOT address ............................................. 0x%08x\n", 57 | Boot 58 | ); 59 | 60 | DumpAcpiTableHeader(Boot); 61 | 62 | Print ( 63 | L" Table Contents:\n" 64 | ); 65 | 66 | Done: 67 | Print ( 68 | L"*****************************************************************************\n\n" 69 | ); 70 | 71 | return; 72 | } 73 | 74 | EFI_STATUS 75 | EFIAPI 76 | DumpAcpiBOOTLibConstructor ( 77 | IN EFI_HANDLE ImageHandle, 78 | IN EFI_SYSTEM_TABLE *SystemTable 79 | ) 80 | { 81 | return RegisterDumpAcpiTable (EFI_ACPI_2_0_SIMPLE_BOOT_FLAG_TABLE_SIGNATURE, DumpAcpiBOOT); 82 | } 83 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiBOOTLib/DumpAcpiBOOTLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpAcpiBOOTLib 17 | FILE_GUID = 76B4EDA3-5E4A-4066-98E9-C16CA946516B 18 | MODULE_TYPE = DXE_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = NULL 21 | CONSTRUCTOR = DumpAcpiBOOTLibConstructor 22 | 23 | [Sources] 24 | DumpAcpiBOOTLib.c 25 | 26 | [Packages] 27 | AcpiToolPkg/AcpiToolPkg.dec 28 | MdePkg/MdePkg.dec 29 | 30 | [LibraryClasses] 31 | BaseLib 32 | BaseMemoryLib 33 | UefiLib 34 | DebugLib 35 | DumpAcpiTableFuncLib 36 | 37 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiCPEPLib/DumpAcpiCPEPLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpAcpiCPEPLib 17 | FILE_GUID = B39ACC00-30CC-469c-8CDB-3A316512F753 18 | MODULE_TYPE = DXE_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = NULL 21 | CONSTRUCTOR = DumpAcpiCPEPLibConstructor 22 | 23 | [Sources] 24 | DumpAcpiCPEPLib.c 25 | 26 | [Packages] 27 | AcpiToolPkg/AcpiToolPkg.dec 28 | MdePkg/MdePkg.dec 29 | 30 | [LibraryClasses] 31 | BaseLib 32 | BaseMemoryLib 33 | UefiLib 34 | DebugLib 35 | DumpAcpiTableFuncLib 36 | 37 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiCSRTLib/DumpAcpiCSRTLib.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | 12 | **/ 13 | 14 | #include 15 | #include 16 | #include 17 | #include 18 | #include 19 | #include 20 | #include 21 | //#include 22 | 23 | VOID 24 | EFIAPI 25 | DumpAcpiCSRT ( 26 | VOID *Table 27 | ) 28 | { 29 | EFI_ACPI_DESCRIPTION_HEADER *Csrt; 30 | 31 | Csrt = Table; 32 | if (Csrt == NULL) { 33 | return; 34 | } 35 | 36 | // 37 | // Dump Csrt table 38 | // 39 | Print ( 40 | L"*****************************************************************************\n" 41 | L"* Core System Resources Table *\n" 42 | L"*****************************************************************************\n" 43 | ); 44 | 45 | if (GetAcpiDumpPropertyDumpData()) { 46 | DumpAcpiHex (Csrt->Length, Csrt); 47 | } 48 | 49 | if (!GetAcpiDumpPropertyDumpVerb()) { 50 | goto Done; 51 | } 52 | 53 | Print ( 54 | (sizeof(UINTN) == sizeof(UINT64)) ? 55 | L"CSRT address ............................................. 0x%016lx\n" : 56 | L"CSRT address ............................................. 0x%08x\n", 57 | Csrt 58 | ); 59 | 60 | DumpAcpiTableHeader(Csrt); 61 | 62 | Print ( 63 | L" Table Contents:\n" 64 | ); 65 | 66 | Done: 67 | Print ( 68 | L"*****************************************************************************\n\n" 69 | ); 70 | 71 | return; 72 | } 73 | 74 | EFI_STATUS 75 | EFIAPI 76 | DumpAcpiCSRTLibConstructor ( 77 | IN EFI_HANDLE ImageHandle, 78 | IN EFI_SYSTEM_TABLE *SystemTable 79 | ) 80 | { 81 | return RegisterDumpAcpiTable (EFI_ACPI_5_0_CORE_SYSTEM_RESOURCE_TABLE_SIGNATURE, DumpAcpiCSRT); 82 | } 83 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiCSRTLib/DumpAcpiCSRTLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpAcpiCSRTLib 17 | FILE_GUID = 567E51DA-CE55-44b8-B869-0B8F07DBBBC2 18 | MODULE_TYPE = DXE_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = NULL 21 | CONSTRUCTOR = DumpAcpiCSRTLibConstructor 22 | 23 | [Sources] 24 | DumpAcpiCSRTLib.c 25 | 26 | [Packages] 27 | AcpiToolPkg/AcpiToolPkg.dec 28 | MdePkg/MdePkg.dec 29 | 30 | [LibraryClasses] 31 | BaseLib 32 | BaseMemoryLib 33 | UefiLib 34 | DebugLib 35 | DumpAcpiTableFuncLib 36 | 37 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiDBG2Lib/DumpAcpiDBG2Lib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpAcpiDBG2Lib 17 | FILE_GUID = C55F1834-151B-465c-988D-C99AE9CB0686 18 | MODULE_TYPE = DXE_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = NULL 21 | CONSTRUCTOR = DumpAcpiDBG2LibConstructor 22 | 23 | [Sources] 24 | DumpAcpiDBG2Lib.c 25 | 26 | [Packages] 27 | AcpiToolPkg/AcpiToolPkg.dec 28 | MdePkg/MdePkg.dec 29 | 30 | [LibraryClasses] 31 | BaseLib 32 | BaseMemoryLib 33 | UefiLib 34 | DebugLib 35 | DumpAcpiTableFuncLib 36 | 37 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiDBGPLib/DumpAcpiDBGPLib.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | 12 | **/ 13 | 14 | #include 15 | #include 16 | #include 17 | #include 18 | #include 19 | #include 20 | #include 21 | #include 22 | 23 | VOID 24 | EFIAPI 25 | DumpAcpiDBGP ( 26 | VOID *Table 27 | ) 28 | { 29 | EFI_ACPI_DEBUG_PORT_DESCRIPTION_TABLE *Dbgp; 30 | 31 | Dbgp = Table; 32 | if (Dbgp == NULL) { 33 | return; 34 | } 35 | 36 | // 37 | // Dump Dbgp table 38 | // 39 | Print ( 40 | L"*****************************************************************************\n" 41 | L"* Debug Port Table *\n" 42 | L"*****************************************************************************\n" 43 | ); 44 | 45 | if (GetAcpiDumpPropertyDumpData()) { 46 | DumpAcpiHex (Dbgp->Header.Length, Dbgp); 47 | } 48 | 49 | if (!GetAcpiDumpPropertyDumpVerb()) { 50 | goto Done; 51 | } 52 | 53 | Print ( 54 | (sizeof(UINTN) == sizeof(UINT64)) ? 55 | L"DBGP address ............................................. 0x%016lx\n" : 56 | L"DBGP address ............................................. 0x%08x\n", 57 | Dbgp 58 | ); 59 | 60 | DumpAcpiTableHeader(&(Dbgp->Header)); 61 | 62 | Print ( 63 | L" Table Contents:\n" 64 | ); 65 | Print ( 66 | L" Interface Type ....................................... 0x%02x\n", 67 | Dbgp->InterfaceType 68 | ); 69 | switch (Dbgp->InterfaceType) { 70 | case EFI_ACPI_DBGP_INTERFACE_TYPE_FULL_16550: 71 | Print ( 72 | L" full 16550 interface\n" 73 | ); 74 | break; 75 | case EFI_ACPI_DBGP_INTERFACE_TYPE_16550_SUBSET_COMPATIBLE_WITH_MS_DBGP_SPEC: 76 | Print ( 77 | L" 16550 subset interface compatible with Microsoft Debug Port Specification\n" 78 | ); 79 | break; 80 | default: 81 | break; 82 | } 83 | 84 | Print ( 85 | L" Base Address\n" 86 | ); 87 | DumpAcpiGAddressStructure ((EFI_ACPI_3_0_GENERIC_ADDRESS_STRUCTURE *)&(Dbgp->BaseAddress)); 88 | 89 | Done: 90 | Print ( 91 | L"*****************************************************************************\n\n" 92 | ); 93 | 94 | return; 95 | } 96 | 97 | EFI_STATUS 98 | EFIAPI 99 | DumpAcpiDBGPLibConstructor ( 100 | IN EFI_HANDLE ImageHandle, 101 | IN EFI_SYSTEM_TABLE *SystemTable 102 | ) 103 | { 104 | return RegisterDumpAcpiTable (EFI_ACPI_2_0_DEBUG_PORT_TABLE_SIGNATURE, DumpAcpiDBGP); 105 | } 106 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiDBGPLib/DumpAcpiDBGPLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpAcpiDBGPLib 17 | FILE_GUID = 1DE66191-0FB5-473f-AEF7-AA7BB13CDF72 18 | MODULE_TYPE = DXE_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = NULL 21 | CONSTRUCTOR = DumpAcpiDBGPLibConstructor 22 | 23 | [Sources] 24 | DumpAcpiDBGPLib.c 25 | 26 | [Packages] 27 | AcpiToolPkg/AcpiToolPkg.dec 28 | MdePkg/MdePkg.dec 29 | 30 | [LibraryClasses] 31 | BaseLib 32 | BaseMemoryLib 33 | UefiLib 34 | DebugLib 35 | DumpAcpiTableFuncLib 36 | 37 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiDMARLib/DumpAcpiDMARLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpAcpiDMARLib 17 | FILE_GUID = 4BCDFBCD-CE82-4b17-9FEC-1A452485CF40 18 | MODULE_TYPE = DXE_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = NULL 21 | CONSTRUCTOR = DumpAcpiDMARLibConstructor 22 | 23 | [Sources] 24 | DumpAcpiDMARLib.c 25 | 26 | [Packages] 27 | AcpiToolPkg/AcpiToolPkg.dec 28 | MdePkg/MdePkg.dec 29 | 30 | [LibraryClasses] 31 | BaseLib 32 | BaseMemoryLib 33 | UefiLib 34 | DebugLib 35 | DumpAcpiTableFuncLib 36 | 37 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiECDTLib/DumpAcpiECDTLib.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | 12 | **/ 13 | 14 | #include 15 | #include 16 | #include 17 | #include 18 | #include 19 | #include 20 | #include 21 | 22 | VOID 23 | EFIAPI 24 | DumpAcpiECDT ( 25 | VOID *Table 26 | ) 27 | { 28 | EFI_ACPI_2_0_EMBEDDED_CONTROLLER_BOOT_RESOURCES_TABLE *Ecdt; 29 | 30 | Ecdt = Table; 31 | if (Ecdt == NULL) { 32 | return; 33 | } 34 | 35 | // 36 | // Dump Ecdt table 37 | // 38 | Print ( 39 | L"*****************************************************************************\n" 40 | L"* Embedded Controller Boot Resources Table *\n" 41 | L"*****************************************************************************\n" 42 | ); 43 | 44 | if (GetAcpiDumpPropertyDumpData()) { 45 | DumpAcpiHex (Ecdt->Header.Length, Ecdt); 46 | } 47 | 48 | if (!GetAcpiDumpPropertyDumpVerb()) { 49 | goto Done; 50 | } 51 | 52 | Print ( 53 | (sizeof(UINTN) == sizeof(UINT64)) ? 54 | L"ECDT address ............................................. 0x%016lx\n" : 55 | L"ECDT address ............................................. 0x%08x\n", 56 | Ecdt 57 | ); 58 | 59 | DumpAcpiTableHeader(&(Ecdt->Header)); 60 | 61 | Print ( 62 | L" Table Contents:\n" 63 | ); 64 | 65 | Print ( 66 | L" EC_CONTROL\n" 67 | ); 68 | DumpAcpiGAddressStructure ((EFI_ACPI_3_0_GENERIC_ADDRESS_STRUCTURE *)&(Ecdt->EcControl)); 69 | 70 | Print ( 71 | L" EC_DATA\n" 72 | ); 73 | DumpAcpiGAddressStructure ((EFI_ACPI_3_0_GENERIC_ADDRESS_STRUCTURE *)&(Ecdt->EcData)); 74 | 75 | Print ( 76 | L" UID .................................................. 0x%08x\n", 77 | Ecdt->Uid 78 | ); 79 | Print ( 80 | L" GPE_BIT .............................................. 0x%02x\n", 81 | Ecdt->GpeBit 82 | ); 83 | Print ( 84 | L" EC_ID ................................................ '%a'\n", 85 | (Ecdt + 1) 86 | ); 87 | 88 | Done: 89 | Print ( 90 | L"*****************************************************************************\n\n" 91 | ); 92 | 93 | return; 94 | } 95 | 96 | EFI_STATUS 97 | EFIAPI 98 | DumpAcpiECDTLibConstructor ( 99 | IN EFI_HANDLE ImageHandle, 100 | IN EFI_SYSTEM_TABLE *SystemTable 101 | ) 102 | { 103 | return RegisterDumpAcpiTable (EFI_ACPI_2_0_EMBEDDED_CONTROLLER_BOOT_RESOURCES_TABLE_SIGNATURE, DumpAcpiECDT); 104 | } 105 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiECDTLib/DumpAcpiECDTLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpAcpiECDTLib 17 | FILE_GUID = 0EDF918B-A556-433b-AF51-2B7E1F43CF5E 18 | MODULE_TYPE = DXE_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = NULL 21 | CONSTRUCTOR = DumpAcpiECDTLibConstructor 22 | 23 | [Sources] 24 | DumpAcpiECDTLib.c 25 | 26 | [Packages] 27 | AcpiToolPkg/AcpiToolPkg.dec 28 | MdePkg/MdePkg.dec 29 | 30 | [LibraryClasses] 31 | BaseLib 32 | BaseMemoryLib 33 | UefiLib 34 | DebugLib 35 | DumpAcpiTableFuncLib 36 | 37 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiEINJLib/DumpAcpiEINJLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpAcpiEINJLib 17 | FILE_GUID = 9C6F030F-5DD9-4c7a-A763-BE4DAE8F815A 18 | MODULE_TYPE = DXE_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = NULL 21 | CONSTRUCTOR = DumpAcpiEINJLibConstructor 22 | 23 | [Sources] 24 | DumpAcpiEINJLib.c 25 | 26 | [Packages] 27 | AcpiToolPkg/AcpiToolPkg.dec 28 | MdePkg/MdePkg.dec 29 | 30 | [LibraryClasses] 31 | BaseLib 32 | BaseMemoryLib 33 | UefiLib 34 | DebugLib 35 | DumpAcpiTableFuncLib 36 | 37 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiERSTLib/DumpAcpiERSTLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpAcpiERSTLib 17 | FILE_GUID = 5604CF22-2FB8-4799-B085-6E999F5DFB6F 18 | MODULE_TYPE = DXE_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = NULL 21 | CONSTRUCTOR = DumpAcpiERSTLibConstructor 22 | 23 | [Sources] 24 | DumpAcpiERSTLib.c 25 | 26 | [Packages] 27 | AcpiToolPkg/AcpiToolPkg.dec 28 | MdePkg/MdePkg.dec 29 | 30 | [LibraryClasses] 31 | BaseLib 32 | BaseMemoryLib 33 | UefiLib 34 | DebugLib 35 | DumpAcpiTableFuncLib 36 | 37 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiETDTLib/DumpAcpiETDTLib.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | 12 | **/ 13 | 14 | #include 15 | #include 16 | #include 17 | #include 18 | #include 19 | #include 20 | #include 21 | 22 | #pragma pack(1) 23 | 24 | typedef struct { 25 | EFI_ACPI_DESCRIPTION_HEADER Header; 26 | } ETDT_TABLE; 27 | 28 | #pragma pack() 29 | 30 | VOID 31 | EFIAPI 32 | DumpAcpiETDT ( 33 | VOID *Table 34 | ) 35 | { 36 | ETDT_TABLE *Etdt; 37 | 38 | Etdt = Table; 39 | if (Etdt == NULL) { 40 | return; 41 | } 42 | 43 | // 44 | // Dump Etdt table 45 | // 46 | Print ( 47 | L"*****************************************************************************\n" 48 | L"* Event Timer Description Table *\n" 49 | L"*****************************************************************************\n" 50 | ); 51 | 52 | if (GetAcpiDumpPropertyDumpData()) { 53 | DumpAcpiHex (Etdt->Header.Length, Etdt); 54 | } 55 | 56 | if (!GetAcpiDumpPropertyDumpVerb()) { 57 | goto Done; 58 | } 59 | 60 | Print ( 61 | (sizeof(UINTN) == sizeof(UINT64)) ? 62 | L"ETDT address ............................................. 0x%016lx\n" : 63 | L"ETDT address ............................................. 0x%08x\n", 64 | Etdt 65 | ); 66 | 67 | DumpAcpiTableHeader(&(Etdt->Header)); 68 | 69 | Print ( 70 | L" Table Contents:\n" 71 | ); 72 | 73 | Done: 74 | Print ( 75 | L"*****************************************************************************\n\n" 76 | ); 77 | 78 | return; 79 | } 80 | 81 | EFI_STATUS 82 | EFIAPI 83 | DumpAcpiETDTLibConstructor ( 84 | IN EFI_HANDLE ImageHandle, 85 | IN EFI_SYSTEM_TABLE *SystemTable 86 | ) 87 | { 88 | return RegisterDumpAcpiTable (EFI_ACPI_2_0_EVENT_TIMER_DESCRIPTION_TABLE_SIGNATURE, DumpAcpiETDT); 89 | } 90 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiETDTLib/DumpAcpiETDTLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpAcpiETDTLib 17 | FILE_GUID = 761AD949-0F5F-4416-BA49-243D24A65B6A 18 | MODULE_TYPE = DXE_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = NULL 21 | CONSTRUCTOR = DumpAcpiETDTLibConstructor 22 | 23 | [Sources] 24 | DumpAcpiETDTLib.c 25 | 26 | [Packages] 27 | AcpiToolPkg/AcpiToolPkg.dec 28 | MdePkg/MdePkg.dec 29 | 30 | [LibraryClasses] 31 | BaseLib 32 | BaseMemoryLib 33 | UefiLib 34 | DebugLib 35 | DumpAcpiTableFuncLib 36 | 37 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiFPDTLib/DumpAcpiFPDTLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpAcpiFPDTLib 17 | FILE_GUID = 0BD1E327-F28C-4e38-96A1-917632213291 18 | MODULE_TYPE = DXE_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = NULL 21 | CONSTRUCTOR = DumpAcpiFPDTLibConstructor 22 | 23 | [Sources] 24 | DumpAcpiFPDTLib.c 25 | 26 | [Packages] 27 | AcpiToolPkg/AcpiToolPkg.dec 28 | MdePkg/MdePkg.dec 29 | 30 | [LibraryClasses] 31 | BaseLib 32 | BaseMemoryLib 33 | UefiLib 34 | DebugLib 35 | DumpAcpiTableFuncLib 36 | 37 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiGTDTLib/DumpAcpiGTDTLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpAcpiGTDTLib 17 | FILE_GUID = AB12BC83-069E-47c6-A097-2F45F8B30B98 18 | MODULE_TYPE = DXE_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = NULL 21 | CONSTRUCTOR = DumpAcpiGTDTLibConstructor 22 | 23 | [Sources] 24 | DumpAcpiGTDTLib.c 25 | 26 | [Packages] 27 | AcpiToolPkg/AcpiToolPkg.dec 28 | MdePkg/MdePkg.dec 29 | 30 | [LibraryClasses] 31 | BaseLib 32 | BaseMemoryLib 33 | UefiLib 34 | DebugLib 35 | DumpAcpiTableFuncLib 36 | 37 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiHESTLib/DumpAcpiHESTLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpAcpiHESTLib 17 | FILE_GUID = 4FE2CA2F-696C-402f-822B-06A4619BC0EB 18 | MODULE_TYPE = DXE_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = NULL 21 | CONSTRUCTOR = DumpAcpiHESTLibConstructor 22 | 23 | [Sources] 24 | DumpAcpiHESTLib.c 25 | 26 | [Packages] 27 | AcpiToolPkg/AcpiToolPkg.dec 28 | MdePkg/MdePkg.dec 29 | 30 | [LibraryClasses] 31 | BaseLib 32 | BaseMemoryLib 33 | UefiLib 34 | DebugLib 35 | DumpAcpiTableFuncLib 36 | 37 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiHPETLib/DumpAcpiHPETLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpAcpiHPETLib 17 | FILE_GUID = 40141029-09DC-43b3-9DDD-1FFF3555E269 18 | MODULE_TYPE = DXE_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = NULL 21 | CONSTRUCTOR = DumpAcpiHPETLibConstructor 22 | 23 | [Sources] 24 | DumpAcpiHPETLib.c 25 | 26 | [Packages] 27 | AcpiToolPkg/AcpiToolPkg.dec 28 | MdePkg/MdePkg.dec 29 | 30 | [LibraryClasses] 31 | BaseLib 32 | BaseMemoryLib 33 | UefiLib 34 | DebugLib 35 | DumpAcpiTableFuncLib 36 | 37 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiIBFTLib/DumpAcpiIBFTLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpAcpiIBFTLib 17 | FILE_GUID = 173300E8-65F7-4b17-810B-7F631F68C49A 18 | MODULE_TYPE = DXE_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = NULL 21 | CONSTRUCTOR = DumpAcpiIBFTLibConstructor 22 | 23 | [Sources] 24 | DumpAcpiIBFTLib.c 25 | 26 | [Packages] 27 | AcpiToolPkg/AcpiToolPkg.dec 28 | MdePkg/MdePkg.dec 29 | 30 | [LibraryClasses] 31 | BaseLib 32 | BaseMemoryLib 33 | UefiLib 34 | DebugLib 35 | DumpAcpiTableFuncLib 36 | 37 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiIVRSLib/DumpAcpiIVRSLib.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | 12 | **/ 13 | 14 | #include 15 | #include 16 | #include 17 | #include 18 | #include 19 | #include 20 | #include 21 | //#include 22 | 23 | VOID 24 | EFIAPI 25 | DumpAcpiIVRS ( 26 | VOID *Table 27 | ) 28 | { 29 | EFI_ACPI_DESCRIPTION_HEADER *Ivrs; 30 | 31 | Ivrs = Table; 32 | if (Ivrs == NULL) { 33 | return; 34 | } 35 | 36 | // 37 | // Dump Ivrs table 38 | // 39 | Print ( 40 | L"*****************************************************************************\n" 41 | L"* IO Virtualization Reporting Structure *\n" 42 | L"*****************************************************************************\n" 43 | ); 44 | 45 | if (GetAcpiDumpPropertyDumpData()) { 46 | DumpAcpiHex (Ivrs->Length, Ivrs); 47 | } 48 | 49 | if (!GetAcpiDumpPropertyDumpVerb()) { 50 | goto Done; 51 | } 52 | 53 | Print ( 54 | (sizeof(UINTN) == sizeof(UINT64)) ? 55 | L"IVRS address ............................................. 0x%016lx\n" : 56 | L"IVRS address ............................................. 0x%08x\n", 57 | Ivrs 58 | ); 59 | 60 | DumpAcpiTableHeader(Ivrs); 61 | 62 | Print ( 63 | L" Table Contents:\n" 64 | ); 65 | 66 | Done: 67 | Print ( 68 | L"*****************************************************************************\n\n" 69 | ); 70 | 71 | return; 72 | } 73 | 74 | EFI_STATUS 75 | EFIAPI 76 | DumpAcpiIVRSLibConstructor ( 77 | IN EFI_HANDLE ImageHandle, 78 | IN EFI_SYSTEM_TABLE *SystemTable 79 | ) 80 | { 81 | return RegisterDumpAcpiTable (EFI_ACPI_4_0_IO_VIRTUALIZATION_REPORTING_STRUCTURE_SIGNATURE, DumpAcpiIVRS); 82 | } 83 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiIVRSLib/DumpAcpiIVRSLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpAcpiIVRSLib 17 | FILE_GUID = 185C7883-D9D8-4c1e-AFD4-2C37A566E23E 18 | MODULE_TYPE = DXE_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = NULL 21 | CONSTRUCTOR = DumpAcpiIVRSLibConstructor 22 | 23 | [Sources] 24 | DumpAcpiIVRSLib.c 25 | 26 | [Packages] 27 | AcpiToolPkg/AcpiToolPkg.dec 28 | MdePkg/MdePkg.dec 29 | 30 | [LibraryClasses] 31 | BaseLib 32 | BaseMemoryLib 33 | UefiLib 34 | DebugLib 35 | DumpAcpiTableFuncLib 36 | 37 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiLPITLib/DumpAcpiLPITLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpAcpiLPITLib 17 | FILE_GUID = EAC0B0B8-C905-45b3-A98A-4AB8F0EB94E9 18 | MODULE_TYPE = DXE_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = NULL 21 | CONSTRUCTOR = DumpAcpiLPITLibConstructor 22 | 23 | [Sources] 24 | DumpAcpiLPITLib.c 25 | 26 | [Packages] 27 | AcpiToolPkg/AcpiToolPkg.dec 28 | MdePkg/MdePkg.dec 29 | 30 | [LibraryClasses] 31 | BaseLib 32 | BaseMemoryLib 33 | UefiLib 34 | DebugLib 35 | DumpAcpiTableFuncLib 36 | 37 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiMADTLib/DumpAcpiMADTLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpAcpiMADTLib 17 | FILE_GUID = 84B2308E-34E4-497f-A84A-41EE7E65BC9E 18 | MODULE_TYPE = DXE_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = NULL 21 | CONSTRUCTOR = DumpAcpiMADTLibConstructor 22 | 23 | [Sources] 24 | DumpAcpiMADTLib.c 25 | 26 | [Packages] 27 | AcpiToolPkg/AcpiToolPkg.dec 28 | MdePkg/MdePkg.dec 29 | 30 | [LibraryClasses] 31 | BaseLib 32 | BaseMemoryLib 33 | UefiLib 34 | DebugLib 35 | DumpAcpiTableFuncLib 36 | 37 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiMCFGLib/DumpAcpiMCFGLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpAcpiMCFGLib 17 | FILE_GUID = F853163E-017F-4a69-9840-10E4AA4BF143 18 | MODULE_TYPE = DXE_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = NULL 21 | CONSTRUCTOR = DumpAcpiMCFGLibConstructor 22 | 23 | [Sources] 24 | DumpAcpiMCFGLib.c 25 | 26 | [Packages] 27 | AcpiToolPkg/AcpiToolPkg.dec 28 | MdePkg/MdePkg.dec 29 | 30 | [LibraryClasses] 31 | BaseLib 32 | BaseMemoryLib 33 | UefiLib 34 | DebugLib 35 | DumpAcpiTableFuncLib 36 | 37 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiMCHILib/DumpAcpiMCHILib.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | 12 | **/ 13 | 14 | #include 15 | #include 16 | #include 17 | #include 18 | #include 19 | #include 20 | #include 21 | //#include 22 | 23 | VOID 24 | EFIAPI 25 | DumpAcpiMCHI ( 26 | VOID *Table 27 | ) 28 | { 29 | EFI_ACPI_DESCRIPTION_HEADER *Mchi; 30 | 31 | Mchi = Table; 32 | if (Mchi == NULL) { 33 | return; 34 | } 35 | 36 | // 37 | // Dump Mchi table 38 | // 39 | Print ( 40 | L"*****************************************************************************\n" 41 | L"* Management Controller Host Interface Description Table *\n" 42 | L"*****************************************************************************\n" 43 | ); 44 | 45 | if (GetAcpiDumpPropertyDumpData()) { 46 | DumpAcpiHex (Mchi->Length, Mchi); 47 | } 48 | 49 | if (!GetAcpiDumpPropertyDumpVerb()) { 50 | goto Done; 51 | } 52 | 53 | Print ( 54 | (sizeof(UINTN) == sizeof(UINT64)) ? 55 | L"MCHI address ............................................. 0x%016lx\n" : 56 | L"MCHI address ............................................. 0x%08x\n", 57 | Mchi 58 | ); 59 | 60 | DumpAcpiTableHeader(Mchi); 61 | 62 | Print ( 63 | L" Table Contents:\n" 64 | ); 65 | Done: 66 | Print ( 67 | L"*****************************************************************************\n\n" 68 | ); 69 | 70 | return; 71 | } 72 | 73 | EFI_STATUS 74 | EFIAPI 75 | DumpAcpiMCHILibConstructor ( 76 | IN EFI_HANDLE ImageHandle, 77 | IN EFI_SYSTEM_TABLE *SystemTable 78 | ) 79 | { 80 | return RegisterDumpAcpiTable (EFI_ACPI_4_0_MANAGEMENT_CONTROLLER_HOST_INTERFACE_TABLE_SIGNATURE, DumpAcpiMCHI); 81 | } 82 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiMCHILib/DumpAcpiMCHILib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpAcpiMCHILib 17 | FILE_GUID = 355E65DC-11C7-4dc3-925B-A05A1B1958B6 18 | MODULE_TYPE = DXE_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = NULL 21 | CONSTRUCTOR = DumpAcpiMCHILibConstructor 22 | 23 | [Sources] 24 | DumpAcpiMCHILib.c 25 | 26 | [Packages] 27 | AcpiToolPkg/AcpiToolPkg.dec 28 | MdePkg/MdePkg.dec 29 | 30 | [LibraryClasses] 31 | BaseLib 32 | BaseMemoryLib 33 | UefiLib 34 | DebugLib 35 | DumpAcpiTableFuncLib 36 | 37 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiMPSTLib/DumpAcpiMPSTLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpAcpiMPSTLib 17 | FILE_GUID = B977D403-F589-4a26-82E0-0AF78F391764 18 | MODULE_TYPE = DXE_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = NULL 21 | CONSTRUCTOR = DumpAcpiMPSTLibConstructor 22 | 23 | [Sources] 24 | DumpAcpiMPSTLib.c 25 | 26 | [Packages] 27 | AcpiToolPkg/AcpiToolPkg.dec 28 | MdePkg/MdePkg.dec 29 | 30 | [LibraryClasses] 31 | BaseLib 32 | BaseMemoryLib 33 | UefiLib 34 | DebugLib 35 | DumpAcpiTableFuncLib 36 | 37 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiMSCTLib/DumpAcpiMSCTLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpAcpiMSCTLib 17 | FILE_GUID = D38AE79C-189D-4131-91AB-FAB52DA16BD6 18 | MODULE_TYPE = DXE_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = NULL 21 | CONSTRUCTOR = DumpAcpiMSCTLibConstructor 22 | 23 | [Sources] 24 | DumpAcpiMSCTLib.c 25 | 26 | [Packages] 27 | AcpiToolPkg/AcpiToolPkg.dec 28 | MdePkg/MdePkg.dec 29 | 30 | [LibraryClasses] 31 | BaseLib 32 | BaseMemoryLib 33 | UefiLib 34 | DebugLib 35 | DumpAcpiTableFuncLib 36 | 37 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiMSDMLib/DumpAcpiMSDMLib.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | 12 | **/ 13 | 14 | #include 15 | #include 16 | #include 17 | #include 18 | #include 19 | #include 20 | #include 21 | 22 | VOID 23 | EFIAPI 24 | DumpAcpiMSDM ( 25 | VOID *Table 26 | ) 27 | { 28 | EFI_ACPI_DESCRIPTION_HEADER *Msdm; 29 | 30 | Msdm = Table; 31 | if (Msdm == NULL) { 32 | return; 33 | } 34 | 35 | // 36 | // Dump Msdm table 37 | // 38 | Print ( 39 | L"*****************************************************************************\n" 40 | L"* Microsoft Data Management Table *\n" 41 | L"*****************************************************************************\n" 42 | ); 43 | 44 | if (GetAcpiDumpPropertyDumpData()) { 45 | DumpAcpiHex (Msdm->Length, Msdm); 46 | } 47 | 48 | if (!GetAcpiDumpPropertyDumpVerb()) { 49 | goto Done; 50 | } 51 | 52 | Print ( 53 | (sizeof(UINTN) == sizeof(UINT64)) ? 54 | L"MSDM address ............................................. 0x%016lx\n" : 55 | L"MSDM address ............................................. 0x%08x\n", 56 | Msdm 57 | ); 58 | 59 | DumpAcpiTableHeader(Msdm); 60 | 61 | Print ( 62 | L" Table Contents:\n" 63 | ); 64 | 65 | Print ( 66 | L" Software Licensing Structure:\n" 67 | ); 68 | DumpAcpiHex (Msdm->Length - sizeof(EFI_ACPI_DESCRIPTION_HEADER), (VOID *)((UINTN)Msdm + sizeof(EFI_ACPI_DESCRIPTION_HEADER))); 69 | 70 | Done: 71 | Print ( 72 | L"*****************************************************************************\n\n" 73 | ); 74 | 75 | return; 76 | } 77 | 78 | EFI_STATUS 79 | EFIAPI 80 | DumpAcpiMSDMLibConstructor ( 81 | IN EFI_HANDLE ImageHandle, 82 | IN EFI_SYSTEM_TABLE *SystemTable 83 | ) 84 | { 85 | return RegisterDumpAcpiTable (EFI_ACPI_5_0_DATA_MANAGEMENT_TABLE_SIGNATURE, DumpAcpiMSDM); 86 | } 87 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiMSDMLib/DumpAcpiMSDMLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpAcpiMSDMLib 17 | FILE_GUID = FD4EAAEE-5873-404b-9874-3818DEA26645 18 | MODULE_TYPE = DXE_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = NULL 21 | CONSTRUCTOR = DumpAcpiMSDMLibConstructor 22 | 23 | [Sources] 24 | DumpAcpiMSDMLib.c 25 | 26 | [Packages] 27 | AcpiToolPkg/AcpiToolPkg.dec 28 | MdePkg/MdePkg.dec 29 | 30 | [LibraryClasses] 31 | BaseLib 32 | BaseMemoryLib 33 | UefiLib 34 | DebugLib 35 | DumpAcpiTableFuncLib 36 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiNFITLib/DumpAcpiNFITLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpAcpiNFITLib 17 | FILE_GUID = 4BCDFBCD-CE82-4b17-9FEC-1A452485CF40 18 | MODULE_TYPE = DXE_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = NULL 21 | CONSTRUCTOR = DumpAcpiNFITLibConstructor 22 | 23 | [Sources] 24 | DumpAcpiNFITLib.c 25 | 26 | [Packages] 27 | AcpiToolPkg/AcpiToolPkg.dec 28 | MdePkg/MdePkg.dec 29 | 30 | [LibraryClasses] 31 | BaseLib 32 | BaseMemoryLib 33 | UefiLib 34 | DebugLib 35 | DumpAcpiTableFuncLib 36 | 37 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiPMTTLib/DumpAcpiPMTTLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpAcpiPMTTLib 17 | FILE_GUID = 5249FB3B-4D8D-4292-B7F5-B2F5425786EF 18 | MODULE_TYPE = DXE_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = NULL 21 | CONSTRUCTOR = DumpAcpiPMTTLibConstructor 22 | 23 | [Sources] 24 | DumpAcpiPMTTLib.c 25 | 26 | [Packages] 27 | AcpiToolPkg/AcpiToolPkg.dec 28 | MdePkg/MdePkg.dec 29 | 30 | [LibraryClasses] 31 | BaseLib 32 | BaseMemoryLib 33 | UefiLib 34 | DebugLib 35 | DumpAcpiTableFuncLib 36 | 37 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiRASFLib/DumpAcpiRASFLib.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | 12 | **/ 13 | 14 | #include 15 | #include 16 | #include 17 | #include 18 | #include 19 | #include 20 | #include 21 | 22 | VOID 23 | EFIAPI 24 | DumpAcpiRASF ( 25 | VOID *Table 26 | ) 27 | { 28 | EFI_ACPI_5_0_RAS_FEATURE_TABLE *Rasf; 29 | UINTN Index; 30 | 31 | Rasf = Table; 32 | if (Rasf == NULL) { 33 | return; 34 | } 35 | 36 | // 37 | // Dump Rasf table 38 | // 39 | Print ( 40 | L"*****************************************************************************\n" 41 | L"* ACPI RAS Feature Table *\n" 42 | L"*****************************************************************************\n" 43 | ); 44 | 45 | if (GetAcpiDumpPropertyDumpData()) { 46 | DumpAcpiHex (Rasf->Header.Length, Rasf); 47 | } 48 | 49 | if (!GetAcpiDumpPropertyDumpVerb()) { 50 | goto Done; 51 | } 52 | 53 | Print ( 54 | (sizeof(UINTN) == sizeof(UINT64)) ? 55 | L"RASF address ............................................. 0x%016lx\n" : 56 | L"RASF address ............................................. 0x%08x\n", 57 | Rasf 58 | ); 59 | 60 | DumpAcpiTableHeader(&(Rasf->Header)); 61 | 62 | Print ( 63 | L" Table Contents:\n" 64 | ); 65 | Print ( 66 | L" Platform Communication Channel Identifier ............ " 67 | ); 68 | for (Index = 0; Index < sizeof(Rasf->PlatformCommunicationChannelIdentifier); Index++) { 69 | Print (L"%02x", Rasf->PlatformCommunicationChannelIdentifier[Index]); 70 | } 71 | Print (L"\n"); 72 | 73 | Done: 74 | Print ( 75 | L"*****************************************************************************\n\n" 76 | ); 77 | 78 | return; 79 | } 80 | 81 | EFI_STATUS 82 | EFIAPI 83 | DumpAcpiRASFLibConstructor ( 84 | IN EFI_HANDLE ImageHandle, 85 | IN EFI_SYSTEM_TABLE *SystemTable 86 | ) 87 | { 88 | return RegisterDumpAcpiTable (EFI_ACPI_5_0_ACPI_RAS_FEATURE_TABLE_SIGNATURE, DumpAcpiRASF); 89 | } 90 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiRASFLib/DumpAcpiRASFLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpAcpiRASFLib 17 | FILE_GUID = B8029A96-2ECD-4334-B127-700C06D84A88 18 | MODULE_TYPE = DXE_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = NULL 21 | CONSTRUCTOR = DumpAcpiRASFLibConstructor 22 | 23 | [Sources] 24 | DumpAcpiRASFLib.c 25 | 26 | [Packages] 27 | AcpiToolPkg/AcpiToolPkg.dec 28 | MdePkg/MdePkg.dec 29 | 30 | [LibraryClasses] 31 | BaseLib 32 | BaseMemoryLib 33 | UefiLib 34 | DebugLib 35 | DumpAcpiTableFuncLib 36 | 37 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiSBSTLib/DumpAcpiSBSTLib.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | 12 | **/ 13 | 14 | #include 15 | #include 16 | #include 17 | #include 18 | #include 19 | #include 20 | #include 21 | 22 | VOID 23 | EFIAPI 24 | DumpAcpiSBST ( 25 | VOID *Table 26 | ) 27 | { 28 | EFI_ACPI_2_0_SMART_BATTERY_DESCRIPTION_TABLE *Sbst; 29 | 30 | Sbst = Table; 31 | if (Sbst == NULL) { 32 | return; 33 | } 34 | 35 | // 36 | // Dump Sbst table 37 | // 38 | Print ( 39 | L"*****************************************************************************\n" 40 | L"* Smart Battery Description Table *\n" 41 | L"*****************************************************************************\n" 42 | ); 43 | 44 | if (GetAcpiDumpPropertyDumpData()) { 45 | DumpAcpiHex (Sbst->Header.Length, Sbst); 46 | } 47 | 48 | if (!GetAcpiDumpPropertyDumpVerb()) { 49 | goto Done; 50 | } 51 | 52 | Print ( 53 | (sizeof(UINTN) == sizeof(UINT64)) ? 54 | L"SBST address ............................................. 0x%016lx\n" : 55 | L"SBST address ............................................. 0x%08x\n", 56 | Sbst 57 | ); 58 | 59 | DumpAcpiTableHeader(&(Sbst->Header)); 60 | 61 | Print ( 62 | L" Table Contents:\n" 63 | ); 64 | Print ( 65 | L" Warning Energy Level ................................. 0x%08x\n", 66 | Sbst->WarningEnergyLevel 67 | ); 68 | Print ( 69 | L" Low Energy Level ..................................... 0x%08x\n", 70 | Sbst->LowEnergyLevel 71 | ); 72 | Print ( 73 | L" Critical Energy Level ................................ 0x%08x\n", 74 | Sbst->CriticalEnergyLevel 75 | ); 76 | 77 | Done: 78 | Print ( 79 | L"*****************************************************************************\n\n" 80 | ); 81 | 82 | return; 83 | } 84 | 85 | EFI_STATUS 86 | EFIAPI 87 | DumpAcpiSBSTLibConstructor ( 88 | IN EFI_HANDLE ImageHandle, 89 | IN EFI_SYSTEM_TABLE *SystemTable 90 | ) 91 | { 92 | return RegisterDumpAcpiTable (EFI_ACPI_1_0_SMART_BATTERY_SPECIFICATION_TABLE_SIGNATURE, DumpAcpiSBST); 93 | } 94 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiSBSTLib/DumpAcpiSBSTLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpAcpiSBSTLib 17 | FILE_GUID = B12E2F79-3D41-4e98-80FA-D122512753CF 18 | MODULE_TYPE = DXE_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = NULL 21 | CONSTRUCTOR = DumpAcpiSBSTLibConstructor 22 | 23 | [Sources] 24 | DumpAcpiSBSTLib.c 25 | 26 | [Packages] 27 | AcpiToolPkg/AcpiToolPkg.dec 28 | MdePkg/MdePkg.dec 29 | 30 | [LibraryClasses] 31 | BaseLib 32 | BaseMemoryLib 33 | UefiLib 34 | DebugLib 35 | DumpAcpiTableFuncLib 36 | 37 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiSLICLib/DumpAcpiSLICLib.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | 12 | **/ 13 | 14 | #include 15 | #include 16 | #include 17 | #include 18 | #include 19 | #include 20 | #include 21 | 22 | VOID 23 | EFIAPI 24 | DumpAcpiSLIC ( 25 | VOID *Table 26 | ) 27 | { 28 | EFI_ACPI_DESCRIPTION_HEADER *Slic; 29 | 30 | Slic = Table; 31 | if (Slic == NULL) { 32 | return; 33 | } 34 | 35 | // 36 | // Dump Slic table 37 | // 38 | Print ( 39 | L"*****************************************************************************\n" 40 | L"* Microsoft Software Licensing Table *\n" 41 | L"*****************************************************************************\n" 42 | ); 43 | 44 | if (GetAcpiDumpPropertyDumpData()) { 45 | DumpAcpiHex (Slic->Length, Slic); 46 | } 47 | 48 | if (!GetAcpiDumpPropertyDumpVerb()) { 49 | goto Done; 50 | } 51 | 52 | Print ( 53 | (sizeof(UINTN) == sizeof(UINT64)) ? 54 | L"SLIC address ............................................. 0x%016lx\n" : 55 | L"SLIC address ............................................. 0x%08x\n", 56 | Slic 57 | ); 58 | 59 | DumpAcpiTableHeader(Slic); 60 | 61 | Print ( 62 | L" Table Contents:\n" 63 | ); 64 | 65 | Print ( 66 | L" Software Licensing Structure:\n" 67 | ); 68 | DumpAcpiHex (Slic->Length - sizeof(EFI_ACPI_DESCRIPTION_HEADER), (VOID *)((UINTN)Slic + sizeof(EFI_ACPI_DESCRIPTION_HEADER))); 69 | 70 | Done: 71 | Print ( 72 | L"*****************************************************************************\n\n" 73 | ); 74 | 75 | return; 76 | } 77 | 78 | EFI_STATUS 79 | EFIAPI 80 | DumpAcpiSLICLibConstructor ( 81 | IN EFI_HANDLE ImageHandle, 82 | IN EFI_SYSTEM_TABLE *SystemTable 83 | ) 84 | { 85 | return RegisterDumpAcpiTable (EFI_ACPI_5_0_SOFTWARE_LICENSING_TABLE_SIGNATURE, DumpAcpiSLIC); 86 | } 87 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiSLICLib/DumpAcpiSLICLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpAcpiSLICLib 17 | FILE_GUID = F2FE6625-16DE-45a0-8675-936672DF72A3 18 | MODULE_TYPE = DXE_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = NULL 21 | CONSTRUCTOR = DumpAcpiSLICLibConstructor 22 | 23 | [Sources] 24 | DumpAcpiSLICLib.c 25 | 26 | [Packages] 27 | AcpiToolPkg/AcpiToolPkg.dec 28 | MdePkg/MdePkg.dec 29 | 30 | [LibraryClasses] 31 | BaseLib 32 | BaseMemoryLib 33 | UefiLib 34 | DebugLib 35 | DumpAcpiTableFuncLib 36 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiSLITLib/DumpAcpiSLITLib.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | 12 | **/ 13 | 14 | #include 15 | #include 16 | #include 17 | #include 18 | #include 19 | #include 20 | #include 21 | 22 | VOID 23 | EFIAPI 24 | DumpAcpiSLIT ( 25 | VOID *Table 26 | ) 27 | { 28 | EFI_ACPI_3_0_SYSTEM_LOCALITY_DISTANCE_INFORMATION_TABLE_HEADER *Slit; 29 | UINT64 EntryIndexI; 30 | UINT64 EntryIndexJ; 31 | UINT8 *Entry; 32 | 33 | Slit = Table; 34 | if (Slit == NULL) { 35 | return; 36 | } 37 | 38 | // 39 | // Dump Slit table 40 | // 41 | Print ( 42 | L"*****************************************************************************\n" 43 | L"* System Locality Distance Information Table *\n" 44 | L"*****************************************************************************\n" 45 | ); 46 | 47 | if (GetAcpiDumpPropertyDumpData()) { 48 | DumpAcpiHex (Slit->Header.Length, Slit); 49 | } 50 | 51 | if (!GetAcpiDumpPropertyDumpVerb()) { 52 | goto Done; 53 | } 54 | 55 | Print ( 56 | (sizeof(UINTN) == sizeof(UINT64)) ? 57 | L"SLIT address ............................................. 0x%016lx\n" : 58 | L"SLIT address ............................................. 0x%08x\n", 59 | Slit 60 | ); 61 | 62 | DumpAcpiTableHeader(&(Slit->Header)); 63 | 64 | Print ( 65 | L" Table Contents:\n" 66 | ); 67 | Print ( 68 | L" Number Of System Localities .......................... 0x%016lx\n", 69 | Slit->NumberOfSystemLocalities 70 | ); 71 | 72 | Entry = (UINT8 *)(Slit + 1); 73 | for (EntryIndexI = 0; EntryIndexI < Slit->NumberOfSystemLocalities; EntryIndexI++) { 74 | for (EntryIndexJ = 0; EntryIndexJ < Slit->NumberOfSystemLocalities; EntryIndexJ++) { 75 | Print ( 76 | L" Matrix entry (%016lxh,%016lxh) ... 0x%02x\n", 77 | *Entry 78 | ); 79 | Entry++; 80 | } 81 | } 82 | 83 | Done: 84 | Print ( 85 | L"*****************************************************************************\n\n" 86 | ); 87 | 88 | return; 89 | } 90 | 91 | EFI_STATUS 92 | EFIAPI 93 | DumpAcpiSLITLibConstructor ( 94 | IN EFI_HANDLE ImageHandle, 95 | IN EFI_SYSTEM_TABLE *SystemTable 96 | ) 97 | { 98 | return RegisterDumpAcpiTable (EFI_ACPI_2_0_SYSTEM_LOCALITY_INFORMATION_TABLE_SIGNATURE, DumpAcpiSLIT); 99 | } 100 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiSLITLib/DumpAcpiSLITLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpAcpiSLITLib 17 | FILE_GUID = A75A8D6F-902A-4ed0-96B7-4293C11E8CE5 18 | MODULE_TYPE = DXE_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = NULL 21 | CONSTRUCTOR = DumpAcpiSLITLibConstructor 22 | 23 | [Sources] 24 | DumpAcpiSLITLib.c 25 | 26 | [Packages] 27 | AcpiToolPkg/AcpiToolPkg.dec 28 | MdePkg/MdePkg.dec 29 | 30 | [LibraryClasses] 31 | BaseLib 32 | BaseMemoryLib 33 | UefiLib 34 | DebugLib 35 | DumpAcpiTableFuncLib 36 | 37 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiSPCRLib/DumpAcpiSPCRLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpAcpiSPCRLib 17 | FILE_GUID = 06F990E0-F588-4247-B884-A962205AE625 18 | MODULE_TYPE = DXE_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = NULL 21 | CONSTRUCTOR = DumpAcpiSPCRLibConstructor 22 | 23 | [Sources] 24 | DumpAcpiSPCRLib.c 25 | 26 | [Packages] 27 | AcpiToolPkg/AcpiToolPkg.dec 28 | MdePkg/MdePkg.dec 29 | 30 | [LibraryClasses] 31 | BaseLib 32 | BaseMemoryLib 33 | UefiLib 34 | DebugLib 35 | DumpAcpiTableFuncLib 36 | 37 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiSPMILib/DumpAcpiSPMILib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpAcpiSPMILib 17 | FILE_GUID = 4982DE0E-06EC-4271-AA29-A924642A36B6 18 | MODULE_TYPE = DXE_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = NULL 21 | CONSTRUCTOR = DumpAcpiSPMILibConstructor 22 | 23 | [Sources] 24 | DumpAcpiSPMILib.c 25 | 26 | [Packages] 27 | AcpiToolPkg/AcpiToolPkg.dec 28 | MdePkg/MdePkg.dec 29 | 30 | [LibraryClasses] 31 | BaseLib 32 | BaseMemoryLib 33 | UefiLib 34 | DebugLib 35 | DumpAcpiTableFuncLib 36 | 37 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiSRATLib/DumpAcpiSRATLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpAcpiSRATLib 17 | FILE_GUID = EF41CA98-C465-4e9e-AC21-C9F07270A6B6 18 | MODULE_TYPE = DXE_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = NULL 21 | CONSTRUCTOR = DumpAcpiSRATLibConstructor 22 | 23 | [Sources] 24 | DumpAcpiSRATLib.c 25 | 26 | [Packages] 27 | AcpiToolPkg/AcpiToolPkg.dec 28 | MdePkg/MdePkg.dec 29 | 30 | [LibraryClasses] 31 | BaseLib 32 | BaseMemoryLib 33 | UefiLib 34 | DebugLib 35 | DumpAcpiTableFuncLib 36 | 37 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiTCPALib/DumpAcpiTCPALib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpAcpiTCPALib 17 | FILE_GUID = 1DE66191-0FB5-473f-AEF7-AA7BB13CDF72 18 | MODULE_TYPE = DXE_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = NULL 21 | CONSTRUCTOR = DumpAcpiTCPALibConstructor 22 | 23 | [Sources] 24 | DumpAcpiTCPALib.c 25 | 26 | [Packages] 27 | AcpiToolPkg/AcpiToolPkg.dec 28 | MdePkg/MdePkg.dec 29 | 30 | [LibraryClasses] 31 | BaseLib 32 | BaseMemoryLib 33 | UefiLib 34 | DebugLib 35 | DumpAcpiTableFuncLib 36 | 37 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiTPM2Lib/DumpAcpiTPM2Lib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpAcpiTPM2Lib 17 | FILE_GUID = D19146BA-B101-4321-A1CE-A6465B906ECC 18 | MODULE_TYPE = DXE_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = NULL 21 | CONSTRUCTOR = DumpAcpiTPM2LibConstructor 22 | 23 | [Sources] 24 | DumpAcpiTPM2Lib.c 25 | 26 | [Packages] 27 | AcpiToolPkg/AcpiToolPkg.dec 28 | MdePkg/MdePkg.dec 29 | 30 | [LibraryClasses] 31 | BaseLib 32 | BaseMemoryLib 33 | IoLib 34 | UefiLib 35 | DebugLib 36 | DumpAcpiTableFuncLib 37 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiTableFuncLib/DumpAcpiTableFuncLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpAcpiTableFuncLib 17 | FILE_GUID = 20D5AF30-1887-46b4-9F99-A9DA74A5D3A7 18 | MODULE_TYPE = DXE_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = DumpAcpiTableFuncLib 21 | 22 | [Sources] 23 | DumpAcpiTableFuncLib.c 24 | 25 | [Packages] 26 | MdePkg/MdePkg.dec 27 | AcpiToolPkg/AcpiToolPkg.dec 28 | 29 | [LibraryClasses] 30 | DebugLib 31 | 32 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiUEFILib/DumpAcpiUEFILib.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | 12 | **/ 13 | 14 | #include 15 | #include 16 | #include 17 | #include 18 | #include 19 | #include 20 | #include 21 | #include 22 | #include 23 | #include 24 | 25 | VOID 26 | EFIAPI 27 | DumpAcpiUEFI ( 28 | VOID *Table 29 | ) 30 | { 31 | EFI_ACPI_DATA_TABLE *Uefi; 32 | EFI_SMM_COMMUNICATION_ACPI_TABLE *PiSmm; 33 | 34 | Uefi = Table; 35 | if (Uefi == NULL) { 36 | return; 37 | } 38 | 39 | // 40 | // Dump Uefi table 41 | // 42 | Print ( 43 | L"*****************************************************************************\n" 44 | L"* UEFI ACPI Data Table *\n" 45 | L"*****************************************************************************\n" 46 | ); 47 | 48 | if (GetAcpiDumpPropertyDumpData()) { 49 | DumpAcpiHex (Uefi->Header.Length, Uefi); 50 | } 51 | 52 | if (!GetAcpiDumpPropertyDumpVerb()) { 53 | goto Done; 54 | } 55 | 56 | Print ( 57 | (sizeof(UINTN) == sizeof(UINT64)) ? 58 | L"UEFI address ............................................. 0x%016lx\n" : 59 | L"UEFI address ............................................. 0x%08x\n", 60 | Uefi 61 | ); 62 | 63 | DumpAcpiTableHeader(&(Uefi->Header)); 64 | 65 | Print ( 66 | L" Table Contents:\n" 67 | ); 68 | Print ( 69 | L" Identifier ........................................... %g\n", 70 | &Uefi->Identifier 71 | ); 72 | Print ( 73 | L" Data Offset .......................................... 0x%02x\n", 74 | Uefi->DataOffset 75 | ); 76 | 77 | if (CompareGuid (&Uefi->Identifier, &gEfiSmmCommunicationProtocolGuid)) { 78 | PiSmm = Table; 79 | Print ( 80 | L" SwSmi Number ......................................... 0x%08x\n", 81 | PiSmm->SwSmiNumber 82 | ); 83 | Print ( 84 | L" BufferPtrAddress ..................................... 0x%016lx\n", 85 | PiSmm->BufferPtrAddress 86 | ); 87 | } 88 | 89 | Done: 90 | Print ( 91 | L"*****************************************************************************\n\n" 92 | ); 93 | 94 | return; 95 | } 96 | 97 | EFI_STATUS 98 | EFIAPI 99 | DumpAcpiUEFILibConstructor ( 100 | IN EFI_HANDLE ImageHandle, 101 | IN EFI_SYSTEM_TABLE *SystemTable 102 | ) 103 | { 104 | return RegisterDumpAcpiTable (EFI_ACPI_4_0_UEFI_ACPI_DATA_TABLE_SIGNATURE, DumpAcpiUEFI); 105 | } 106 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiUEFILib/DumpAcpiUEFILib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpAcpiUEFILib 17 | FILE_GUID = 5B06B135-E5EB-4cae-8693-1B2FF5B50847 18 | MODULE_TYPE = DXE_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = NULL 21 | CONSTRUCTOR = DumpAcpiUEFILibConstructor 22 | 23 | [Sources] 24 | DumpAcpiUEFILib.c 25 | 26 | [Packages] 27 | AcpiToolPkg/AcpiToolPkg.dec 28 | MdePkg/MdePkg.dec 29 | 30 | [LibraryClasses] 31 | BaseLib 32 | BaseMemoryLib 33 | UefiLib 34 | DebugLib 35 | DumpAcpiTableFuncLib 36 | 37 | [Protocols] 38 | gEfiSmmCommunicationProtocolGuid 39 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiWAETLib/DumpAcpiWAETLib.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | 12 | **/ 13 | 14 | #include 15 | #include 16 | #include 17 | #include 18 | #include 19 | #include 20 | #include 21 | //#include 22 | 23 | VOID 24 | EFIAPI 25 | DumpAcpiWAET ( 26 | VOID *Table 27 | ) 28 | { 29 | EFI_ACPI_DESCRIPTION_HEADER *Waet; 30 | 31 | Waet = Table; 32 | if (Waet == NULL) { 33 | return; 34 | } 35 | 36 | // 37 | // Dump Waet table 38 | // 39 | Print ( 40 | L"*****************************************************************************\n" 41 | L"* Windows ACPI Emulated Devices Table *\n" 42 | L"*****************************************************************************\n" 43 | ); 44 | 45 | if (GetAcpiDumpPropertyDumpData()) { 46 | DumpAcpiHex (Waet->Length, Waet); 47 | } 48 | 49 | if (!GetAcpiDumpPropertyDumpVerb()) { 50 | goto Done; 51 | } 52 | 53 | Print ( 54 | (sizeof(UINTN) == sizeof(UINT64)) ? 55 | L"WAET address ............................................. 0x%016lx\n" : 56 | L"WAET address ............................................. 0x%08x\n", 57 | Waet 58 | ); 59 | 60 | DumpAcpiTableHeader(Waet); 61 | 62 | Print ( 63 | L" Table Contents:\n" 64 | ); 65 | Done: 66 | Print ( 67 | L"*****************************************************************************\n\n" 68 | ); 69 | 70 | return; 71 | } 72 | 73 | EFI_STATUS 74 | EFIAPI 75 | DumpAcpiWAETLibConstructor ( 76 | IN EFI_HANDLE ImageHandle, 77 | IN EFI_SYSTEM_TABLE *SystemTable 78 | ) 79 | { 80 | return RegisterDumpAcpiTable (EFI_ACPI_4_0_WINDOWS_ACPI_ENLIGHTENMENT_TABLE_SIGNATURE, DumpAcpiWAET); 81 | } 82 | 83 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiWAETLib/DumpAcpiWAETLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpAcpiWAETLib 17 | FILE_GUID = 7867FADD-1BB0-4b6d-8906-C4030CFDB2CE 18 | MODULE_TYPE = DXE_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = NULL 21 | CONSTRUCTOR = DumpAcpiWAETLibConstructor 22 | 23 | [Sources] 24 | DumpAcpiWAETLib.c 25 | 26 | [Packages] 27 | AcpiToolPkg/AcpiToolPkg.dec 28 | MdePkg/MdePkg.dec 29 | 30 | [LibraryClasses] 31 | BaseLib 32 | BaseMemoryLib 33 | UefiLib 34 | DebugLib 35 | DumpAcpiTableFuncLib 36 | 37 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiWDATLib/DumpAcpiWDATLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpAcpiWDATLib 17 | FILE_GUID = 1DE66191-0FB5-473f-AEF7-AA7BB13CDF72 18 | MODULE_TYPE = DXE_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = NULL 21 | CONSTRUCTOR = DumpAcpiWDATLibConstructor 22 | 23 | [Sources] 24 | DumpAcpiWDATLib.c 25 | 26 | [Packages] 27 | AcpiToolPkg/AcpiToolPkg.dec 28 | MdePkg/MdePkg.dec 29 | 30 | [LibraryClasses] 31 | BaseLib 32 | BaseMemoryLib 33 | UefiLib 34 | DebugLib 35 | DumpAcpiTableFuncLib 36 | 37 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiWDDTLib/DumpAcpiWDDTLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpAcpiWDDTLib 17 | FILE_GUID = 9FE7CE04-2D3D-4f04-806C-99D80919909E 18 | MODULE_TYPE = DXE_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = NULL 21 | CONSTRUCTOR = DumpAcpiWDDTLibConstructor 22 | 23 | [Sources] 24 | DumpAcpiWDDTLib.c 25 | 26 | [Packages] 27 | AcpiToolPkg/AcpiToolPkg.dec 28 | MdePkg/MdePkg.dec 29 | 30 | [LibraryClasses] 31 | BaseLib 32 | BaseMemoryLib 33 | UefiLib 34 | DebugLib 35 | DumpAcpiTableFuncLib 36 | 37 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiWDRTLib/DumpAcpiWDRTLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpAcpiWDRTLib 17 | FILE_GUID = BD993625-2475-4ea1-BDF5-6492820D5E98 18 | MODULE_TYPE = DXE_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = NULL 21 | CONSTRUCTOR = DumpAcpiWDRTLibConstructor 22 | 23 | [Sources] 24 | DumpAcpiWDRTLib.c 25 | 26 | [Packages] 27 | AcpiToolPkg/AcpiToolPkg.dec 28 | MdePkg/MdePkg.dec 29 | 30 | [LibraryClasses] 31 | BaseLib 32 | BaseMemoryLib 33 | UefiLib 34 | DebugLib 35 | DumpAcpiTableFuncLib 36 | 37 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiWPBTLib/DumpAcpiWPBTLib.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | 12 | **/ 13 | 14 | #include 15 | #include 16 | #include 17 | #include 18 | #include 19 | #include 20 | #include 21 | //#include 22 | 23 | VOID 24 | EFIAPI 25 | DumpAcpiWPBT ( 26 | VOID *Table 27 | ) 28 | { 29 | EFI_ACPI_DESCRIPTION_HEADER *Wpbt; 30 | 31 | Wpbt = Table; 32 | if (Wpbt == NULL) { 33 | return; 34 | } 35 | 36 | // 37 | // Dump Wpbt table 38 | // 39 | Print ( 40 | L"*****************************************************************************\n" 41 | L"* Windows Platform Binary Table *\n" 42 | L"*****************************************************************************\n" 43 | ); 44 | 45 | if (GetAcpiDumpPropertyDumpData()) { 46 | DumpAcpiHex (Wpbt->Length, Wpbt); 47 | } 48 | 49 | if (!GetAcpiDumpPropertyDumpVerb()) { 50 | goto Done; 51 | } 52 | 53 | Print ( 54 | (sizeof(UINTN) == sizeof(UINT64)) ? 55 | L"WPBT address ............................................. 0x%016lx\n" : 56 | L"WPBT address ............................................. 0x%08x\n", 57 | Wpbt 58 | ); 59 | 60 | DumpAcpiTableHeader(Wpbt); 61 | 62 | Print ( 63 | L" Table Contents:\n" 64 | ); 65 | Done: 66 | Print ( 67 | L"*****************************************************************************\n\n" 68 | ); 69 | 70 | return; 71 | } 72 | 73 | EFI_STATUS 74 | EFIAPI 75 | DumpAcpiWPBTLibConstructor ( 76 | IN EFI_HANDLE ImageHandle, 77 | IN EFI_SYSTEM_TABLE *SystemTable 78 | ) 79 | { 80 | return RegisterDumpAcpiTable (EFI_ACPI_5_0_PLATFORM_BINARY_TABLE_SIGNATURE, DumpAcpiWPBT); 81 | } 82 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiWPBTLib/DumpAcpiWPBTLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpAcpiWPBTLib 17 | FILE_GUID = 8EC16BA8-59E0-4213-97DA-04B01F8FDD4C 18 | MODULE_TYPE = DXE_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = NULL 21 | CONSTRUCTOR = DumpAcpiWPBTLibConstructor 22 | 23 | [Sources] 24 | DumpAcpiWPBTLib.c 25 | 26 | [Packages] 27 | AcpiToolPkg/AcpiToolPkg.dec 28 | MdePkg/MdePkg.dec 29 | 30 | [LibraryClasses] 31 | BaseLib 32 | BaseMemoryLib 33 | UefiLib 34 | DebugLib 35 | DumpAcpiTableFuncLib 36 | 37 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiWSMTLib/DumpAcpiWSMTLib.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | 12 | **/ 13 | 14 | #include 15 | #include 16 | #include 17 | #include 18 | #include 19 | #include 20 | #include 21 | #include 22 | 23 | VOID 24 | EFIAPI 25 | DumpAcpiWSMT ( 26 | VOID *Table 27 | ) 28 | { 29 | EFI_ACPI_WSMT_TABLE *Wsmt; 30 | 31 | Wsmt = Table; 32 | if (Wsmt == NULL) { 33 | return; 34 | } 35 | 36 | // 37 | // Dump Wsmt table 38 | // 39 | Print ( 40 | L"*****************************************************************************\n" 41 | L"* Windows SMM Security Mitigation Table *\n" 42 | L"*****************************************************************************\n" 43 | ); 44 | 45 | if (GetAcpiDumpPropertyDumpData()) { 46 | DumpAcpiHex (Wsmt->Header.Length, Wsmt); 47 | } 48 | 49 | if (!GetAcpiDumpPropertyDumpVerb()) { 50 | goto Done; 51 | } 52 | 53 | Print ( 54 | (sizeof(UINTN) == sizeof(UINT64)) ? 55 | L"WSMT address ............................................. 0x%016lx\n" : 56 | L"WSMT address ............................................. 0x%08x\n", 57 | Wsmt 58 | ); 59 | 60 | DumpAcpiTableHeader(&(Wsmt->Header)); 61 | 62 | Print ( 63 | L" Table Contents:\n" 64 | ); 65 | Print ( 66 | L" Protection Flags ..................................... 0x%08x\n", 67 | Wsmt->ProtectionFlags 68 | ); 69 | Print( 70 | L" FIXED_COMM_BUFFERS ................................. 0x%08x\n", 71 | Wsmt->ProtectionFlags & EFI_WSMT_PROTECTION_FLAGS_FIXED_COMM_BUFFERS 72 | ); 73 | Print( 74 | L" COMM_BUFFER_NESTED_PTR_PROTECTION .................. 0x%08x\n", 75 | Wsmt->ProtectionFlags & EFI_WSMT_PROTECTION_FLAGS_COMM_BUFFER_NESTED_PTR_PROTECTION 76 | ); 77 | Print( 78 | L" SYSTEM_RESOURCE_PROTECTION ......................... 0x%08x\n", 79 | Wsmt->ProtectionFlags & EFI_WSMT_PROTECTION_FLAGS_SYSTEM_RESOURCE_PROTECTION 80 | ); 81 | 82 | Done: 83 | Print ( 84 | L"*****************************************************************************\n\n" 85 | ); 86 | 87 | return; 88 | } 89 | 90 | EFI_STATUS 91 | EFIAPI 92 | DumpAcpiWSMTLibConstructor ( 93 | IN EFI_HANDLE ImageHandle, 94 | IN EFI_SYSTEM_TABLE *SystemTable 95 | ) 96 | { 97 | return RegisterDumpAcpiTable (EFI_ACPI_WINDOWS_SMM_SECURITY_MITIGATION_TABLE_SIGNATURE, DumpAcpiWSMT); 98 | } 99 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiWSMTLib/DumpAcpiWSMTLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpAcpiWSMTLib 17 | FILE_GUID = 00DAC965-3B0B-4834-88F0-CB54932AFDD8 18 | MODULE_TYPE = DXE_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = NULL 21 | CONSTRUCTOR = DumpAcpiWSMTLibConstructor 22 | 23 | [Sources] 24 | DumpAcpiWSMTLib.c 25 | 26 | [Packages] 27 | AcpiToolPkg/AcpiToolPkg.dec 28 | MdePkg/MdePkg.dec 29 | 30 | [LibraryClasses] 31 | BaseLib 32 | BaseMemoryLib 33 | UefiLib 34 | DebugLib 35 | DumpAcpiTableFuncLib 36 | 37 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiWSPTLib/DumpAcpiWSPTLib.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | 12 | **/ 13 | 14 | #include 15 | #include 16 | #include 17 | #include 18 | #include 19 | #include 20 | #include 21 | 22 | #pragma pack(1) 23 | 24 | typedef struct { 25 | EFI_ACPI_DESCRIPTION_HEADER Header; 26 | } WSPT_TABLE; 27 | 28 | #pragma pack() 29 | 30 | VOID 31 | EFIAPI 32 | DumpAcpiWSPT ( 33 | VOID *Table 34 | ) 35 | { 36 | WSPT_TABLE *Wspt; 37 | 38 | Wspt = Table; 39 | if (Wspt == NULL) { 40 | return; 41 | } 42 | 43 | // 44 | // Dump Wspt table 45 | // 46 | Print ( 47 | L"*****************************************************************************\n" 48 | L"* Windows Specific Properties Table *\n" 49 | L"*****************************************************************************\n" 50 | ); 51 | 52 | if (GetAcpiDumpPropertyDumpData()) { 53 | DumpAcpiHex (Wspt->Header.Length, Wspt); 54 | } 55 | 56 | if (!GetAcpiDumpPropertyDumpVerb()) { 57 | goto Done; 58 | } 59 | 60 | Print ( 61 | (sizeof(UINTN) == sizeof(UINT64)) ? 62 | L"WSPT address ............................................. 0x%016lx\n" : 63 | L"WSPT address ............................................. 0x%08x\n", 64 | Wspt 65 | ); 66 | 67 | DumpAcpiTableHeader(&(Wspt->Header)); 68 | 69 | Print ( 70 | L" Table Contents:\n" 71 | ); 72 | 73 | Done: 74 | Print ( 75 | L"*****************************************************************************\n\n" 76 | ); 77 | 78 | return; 79 | } 80 | 81 | EFI_STATUS 82 | EFIAPI 83 | DumpAcpiWSPTLibConstructor ( 84 | IN EFI_HANDLE ImageHandle, 85 | IN EFI_SYSTEM_TABLE *SystemTable 86 | ) 87 | { 88 | return RegisterDumpAcpiTable (EFI_ACPI_3_0_WINDOWS_SPECIFIC_PROPERTIES_TABLE_SIGNATURE, DumpAcpiWSPT); 89 | } 90 | -------------------------------------------------------------------------------- /AcpiToolPkg/Library/DumpAcpi/DumpAcpiWSPTLib/DumpAcpiWSPTLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DumpAcpiWSPTLib 17 | FILE_GUID = 1DE66191-0FB5-473f-AEF7-AA7BB13CDF72 18 | MODULE_TYPE = DXE_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = NULL 21 | CONSTRUCTOR = DumpAcpiWSPTLibConstructor 22 | 23 | [Sources] 24 | DumpAcpiWSPTLib.c 25 | 26 | [Packages] 27 | AcpiToolPkg/AcpiToolPkg.dec 28 | MdePkg/MdePkg.dec 29 | 30 | [LibraryClasses] 31 | BaseLib 32 | BaseMemoryLib 33 | UefiLib 34 | DebugLib 35 | DumpAcpiTableFuncLib 36 | 37 | -------------------------------------------------------------------------------- /EdkiiShellToolPkg/AtaInfo/AtaInfo.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2017, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = AtaInfo 17 | FILE_GUID = E4730781-D78F-4c45-9604-04D852B45828 18 | MODULE_TYPE = UEFI_APPLICATION 19 | VERSION_STRING = 1.0 20 | ENTRY_POINT = AtaInfoEntryPoint 21 | 22 | [sources] 23 | AtaInfo.c 24 | 25 | [Packages] 26 | MdePkg/MdePkg.dec 27 | 28 | [LibraryClasses] 29 | UefiApplicationEntryPoint 30 | BaseLib 31 | BaseMemoryLib 32 | MemoryAllocationLib 33 | DebugLib 34 | UefiLib 35 | UefiBootServicesTableLib 36 | DxeServicesTableLib 37 | PrintLib 38 | DevicePathLib 39 | 40 | [Protocols] 41 | gEfiPciIoProtocolGuid 42 | -------------------------------------------------------------------------------- /EdkiiShellToolPkg/BootOption/BootOption.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = BootOption 17 | FILE_GUID = 4F07A721-8163-4D19-A725-A49961646BA9 18 | MODULE_TYPE = UEFI_APPLICATION 19 | VERSION_STRING = 1.0 20 | ENTRY_POINT = BootOptionEntrypoint 21 | 22 | [Sources] 23 | BootOption.c 24 | AppSupport.c 25 | 26 | [Packages] 27 | MdePkg/MdePkg.dec 28 | 29 | [LibraryClasses] 30 | UefiApplicationEntryPoint 31 | BaseLib 32 | BaseMemoryLib 33 | MemoryAllocationLib 34 | DebugLib 35 | UefiLib 36 | UefiBootServicesTableLib 37 | PrintLib 38 | DebugLib 39 | DevicePathLib 40 | 41 | [Guids] 42 | gEfiGlobalVariableGuid 43 | 44 | [Protocols] 45 | gEfiShellProtocolGuid 46 | gEfiShellParametersProtocolGuid -------------------------------------------------------------------------------- /EdkiiShellToolPkg/DbxEnroll/DbxEnroll.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | 12 | **/ 13 | 14 | #include 15 | #include 16 | #include 17 | #include 18 | #include 19 | #include 20 | #include 21 | #include 22 | 23 | extern UINTN Argc; 24 | extern CHAR16 **Argv; 25 | 26 | EFI_GUID mZeroGuid; 27 | 28 | EFI_STATUS 29 | GetArg ( 30 | VOID 31 | ); 32 | 33 | EFI_STATUS 34 | ReadFileToBuffer ( 35 | IN CHAR16 *FileName, 36 | OUT UINTN *BufferSize, 37 | OUT VOID **Buffer 38 | ); 39 | 40 | /** 41 | Print APP usage. 42 | **/ 43 | VOID 44 | PrintUsage ( 45 | VOID 46 | ) 47 | { 48 | Print(L"DbxEnroll: A tool to enroll the revocation list from https://uefi.org/revocationlistfile\n"); 49 | Print(L" DbxEnroll -f \n"); 50 | } 51 | 52 | EFI_STATUS 53 | EFIAPI 54 | InitializeDbxEnroll ( 55 | IN EFI_HANDLE ImageHandle, 56 | IN EFI_SYSTEM_TABLE *SystemTable 57 | ) 58 | { 59 | EFI_STATUS Status; 60 | UINTN BufferSize; 61 | VOID *Buffer; 62 | 63 | GetArg (); 64 | 65 | if ((Argc == 3) && (StrCmp (Argv[1], L"-f") == 0)) { 66 | Status = ReadFileToBuffer(Argv[2], &BufferSize, &Buffer); 67 | if (EFI_ERROR(Status)) { 68 | Print (L"ReadFile error - %s\n", Argv[2]); 69 | return Status; 70 | } 71 | Status = gRT->SetVariable ( 72 | L"dbx", 73 | &gEfiImageSecurityDatabaseGuid, 74 | EFI_VARIABLE_NON_VOLATILE | 75 | EFI_VARIABLE_BOOTSERVICE_ACCESS | 76 | EFI_VARIABLE_RUNTIME_ACCESS | 77 | EFI_VARIABLE_TIME_BASED_AUTHENTICATED_WRITE_ACCESS | 78 | EFI_VARIABLE_APPEND_WRITE, 79 | BufferSize, 80 | Buffer 81 | ); 82 | Print (L"SetVariable - %r\n", Status); 83 | return Status; 84 | } else { 85 | PrintUsage (); 86 | } 87 | 88 | return EFI_SUCCESS; 89 | } 90 | -------------------------------------------------------------------------------- /EdkiiShellToolPkg/DbxEnroll/DbxEnroll.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = DbxEnroll 17 | FILE_GUID = 24D2677C-A185-4C4B-80DA-92335BF74E5F 18 | MODULE_TYPE = UEFI_APPLICATION 19 | VERSION_STRING = 1.0 20 | ENTRY_POINT = InitializeDbxEnroll 21 | 22 | [Sources] 23 | DbxEnroll.c 24 | AppSupport.c 25 | 26 | [Packages] 27 | MdePkg/MdePkg.dec 28 | 29 | [LibraryClasses] 30 | UefiApplicationEntryPoint 31 | BaseLib 32 | BaseMemoryLib 33 | MemoryAllocationLib 34 | DebugLib 35 | UefiLib 36 | UefiBootServicesTableLib 37 | PrintLib 38 | DebugLib 39 | 40 | [Guids] 41 | gEfiImageSecurityDatabaseGuid 42 | 43 | [Protocols] 44 | gEfiShellProtocolGuid 45 | gEfiShellParametersProtocolGuid -------------------------------------------------------------------------------- /EdkiiShellToolPkg/DummyRt/DummyRt.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | Copyright (c) 2018 - 2019, Intel Corporation. All rights reserved.
3 | 4 | SPDX-License-Identifier: BSD-2-Clause-Patent 5 | 6 | **/ 7 | 8 | #include 9 | #include 10 | #include 11 | #include 12 | 13 | VOID *mRtData; 14 | VOID *mRtCode; 15 | 16 | /** 17 | Main entry for this driver/library. 18 | 19 | @param[in] ImageHandle Image handle this driver. 20 | @param[in] SystemTable Pointer to SystemTable. 21 | 22 | **/ 23 | EFI_STATUS 24 | EFIAPI 25 | TestEntryPoint ( 26 | IN EFI_HANDLE ImageHandle, 27 | IN EFI_SYSTEM_TABLE *SystemTable 28 | ) 29 | { 30 | Print (L"RT .code - 0x%p\n", TestEntryPoint); 31 | Print (L"RT .data - 0x%p\n", &mRtData); 32 | 33 | gBS->AllocatePool (EfiRuntimeServicesCode, 1, &mRtCode); 34 | gBS->AllocatePool (EfiRuntimeServicesData, 1, &mRtData); 35 | Print (L"RT Code - 0x%p\n", mRtCode); 36 | Print (L"RT Data - 0x%p\n", mRtData); 37 | return EFI_SUCCESS; 38 | } 39 | -------------------------------------------------------------------------------- /EdkiiShellToolPkg/DummyRt/DummyRt.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Copyright (c) 2018 - 2019, Intel Corporation. All rights reserved.
3 | # 4 | # SPDX-License-Identifier: BSD-2-Clause-Patent 5 | ## 6 | 7 | [Defines] 8 | INF_VERSION = 0x00010005 9 | BASE_NAME = DummyRt 10 | FILE_GUID = 3DD8751B-3B47-4F1A-8FE2-AE2273E5F679 11 | MODULE_TYPE = DXE_RUNTIME_DRIVER 12 | VERSION_STRING = 1.0 13 | ENTRY_POINT = TestEntryPoint 14 | 15 | # 16 | # The following information is for reference only and not required by the build tools. 17 | # 18 | # VALID_ARCHITECTURES = IA32 X64 ARM AARCH64 19 | # 20 | 21 | [Sources] 22 | DummyRt.c 23 | 24 | [Packages] 25 | MdePkg/MdePkg.dec 26 | 27 | [LibraryClasses] 28 | UefiDriverEntryPoint 29 | MemoryAllocationLib 30 | UefiLib 31 | UefiBootServicesTableLib 32 | 33 | [Depex] 34 | TRUE 35 | -------------------------------------------------------------------------------- /EdkiiShellToolPkg/DumpVirtioPciDev/DumpVirtioPciDev.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010006 16 | BASE_NAME = DumpVirtioPciDev 17 | FILE_GUID = 31ADA2B2-62EA-4866-9B17-03FEA8425972 18 | MODULE_TYPE = UEFI_APPLICATION 19 | VERSION_STRING = 1.0 20 | ENTRY_POINT = DumpVirtioPciDevMain 21 | 22 | # 23 | # This flag specifies whether HII resource section is generated into PE image. 24 | # 25 | UEFI_HII_RESOURCE_SECTION = TRUE 26 | 27 | # 28 | # The following information is for reference only and not required by the build tools. 29 | # 30 | # VALID_ARCHITECTURES = IA32 X64 EBC 31 | # 32 | 33 | [Sources] 34 | DumpVirtioPciDev.c 35 | 36 | [Packages] 37 | MdePkg/MdePkg.dec 38 | MdeModulePkg/MdeModulePkg.dec 39 | 40 | [LibraryClasses] 41 | BaseLib 42 | UefiApplicationEntryPoint 43 | DebugLib 44 | UefiLib 45 | UefiBootServicesTableLib 46 | 47 | [Protocols] 48 | gEfiPciRootBridgeIoProtocolGuid ## SOMETIMES_CONSUMES 49 | gEfiPciIoProtocolGuid ## SOMETIMES_CONSUMES 50 | 51 | -------------------------------------------------------------------------------- /EdkiiShellToolPkg/EdkiiCoreDatabaseDump/DxeCoreDump/DxeCore/DxeCore.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | 12 | **/ 13 | 14 | #ifndef _DXE_CORE_H_ 15 | #define _DXE_CORE_H_ 16 | 17 | #define DXE_CORE_GUID {0xD6A2CB7F, 0x6A18, 0x4e2f, { 0xB4, 0x3B, 0x99, 0x20, 0xA7, 0x33, 0x70, 0x0A }} 18 | 19 | #endif 20 | -------------------------------------------------------------------------------- /EdkiiShellToolPkg/EdkiiCoreDatabaseDump/DxeCoreDump/DxeCore/DxeMain.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | The internal header file includes the common header files, defines 3 | internal structure and functions used by DxeCore module. 4 | 5 | Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.
6 | This program and the accompanying materials 7 | are licensed and made available under the terms and conditions of the BSD License 8 | which accompanies this distribution. The full text of the license may be found at 9 | http://opensource.org/licenses/bsd-license.php 10 | 11 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 13 | 14 | **/ 15 | 16 | #ifndef _DXE_MAIN_H_ 17 | #define _DXE_MAIN_H_ 18 | 19 | #include 20 | #include 21 | #include 22 | #include 23 | 24 | #define LOADED_IMAGE_PRIVATE_DATA_SIGNATURE SIGNATURE_32('l','d','r','i') 25 | 26 | typedef struct { 27 | UINTN Signature; 28 | /// Image handle 29 | EFI_HANDLE Handle; 30 | /// Image type 31 | UINTN Type; 32 | /// If entrypoint has been called 33 | BOOLEAN Started; 34 | /// The image's entry point 35 | EFI_IMAGE_ENTRY_POINT EntryPoint; 36 | /// loaded image protocol 37 | EFI_LOADED_IMAGE_PROTOCOL Info; 38 | /// Location in memory 39 | EFI_PHYSICAL_ADDRESS ImageBasePage; 40 | /// Number of pages 41 | UINTN NumberOfPages; 42 | /// Original fixup data 43 | CHAR8 *FixupData; 44 | /// Tpl of started image 45 | EFI_TPL Tpl; 46 | /// Status returned by started image 47 | EFI_STATUS Status; 48 | /// Size of ExitData from started image 49 | UINTN ExitDataSize; 50 | /// Pointer to exit data from started image 51 | VOID *ExitData; 52 | /// Pointer to pool allocation for context save/restore 53 | VOID *JumpBuffer; 54 | /// Pointer to buffer for context save/restore 55 | BASE_LIBRARY_JUMP_BUFFER *JumpContext; 56 | /// Machine type from PE image 57 | UINT16 Machine; 58 | /// EBC Protocol pointer 59 | EFI_EBC_PROTOCOL *Ebc; 60 | /// Runtime image list 61 | EFI_RUNTIME_IMAGE_ENTRY *RuntimeData; 62 | /// Pointer to Loaded Image Device Path Protocol 63 | EFI_DEVICE_PATH_PROTOCOL *LoadedImageDevicePath; 64 | /// PeCoffLoader ImageContext 65 | PE_COFF_LOADER_IMAGE_CONTEXT ImageContext; 66 | /// Status returned by LoadImage() service. 67 | EFI_STATUS LoadImageStatus; 68 | } LOADED_IMAGE_PRIVATE_DATA; 69 | 70 | #define LOADED_IMAGE_PRIVATE_DATA_FROM_THIS(a) \ 71 | CR(a, LOADED_IMAGE_PRIVATE_DATA, Info, LOADED_IMAGE_PRIVATE_DATA_SIGNATURE) 72 | 73 | #endif 74 | -------------------------------------------------------------------------------- /EdkiiShellToolPkg/EdkiiCoreDatabaseDump/DxeCoreDump/DxeCore/Event.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | UEFI Event support functions and structure. 3 | 4 | Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.
5 | (C) Copyright 2015 Hewlett Packard Enterprise Development LP
6 | This program and the accompanying materials 7 | are licensed and made available under the terms and conditions of the BSD License 8 | which accompanies this distribution. The full text of the license may be found at 9 | http://opensource.org/licenses/bsd-license.php 10 | 11 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 13 | 14 | **/ 15 | 16 | #ifndef __EVENT_H__ 17 | #define __EVENT_H__ 18 | 19 | #include 20 | 21 | /// 22 | /// Set if Event is part of an event group 23 | /// 24 | #define EVT_EXFLAG_EVENT_GROUP 0x01 25 | /// 26 | /// Set if Event is registered on a protocol notify 27 | /// 28 | #define EVT_EXFLAG_EVENT_PROTOCOL_NOTIFICATION 0x02 29 | 30 | // 31 | // EFI_EVENT 32 | // 33 | 34 | /// 35 | /// Timer event information 36 | /// 37 | typedef struct { 38 | LIST_ENTRY Link; 39 | UINT64 TriggerTime; 40 | UINT64 Period; 41 | } TIMER_EVENT_INFO; 42 | 43 | #define EVENT_SIGNATURE SIGNATURE_32('e','v','n','t') 44 | typedef struct { 45 | UINTN Signature; 46 | UINT32 Type; 47 | UINT32 SignalCount; 48 | /// 49 | /// Entry if the event is registered to be signalled 50 | /// 51 | LIST_ENTRY SignalLink; 52 | /// 53 | /// Notification information for this event 54 | /// 55 | EFI_TPL NotifyTpl; 56 | EFI_EVENT_NOTIFY NotifyFunction; 57 | VOID *NotifyContext; 58 | EFI_GUID EventGroup; 59 | LIST_ENTRY NotifyLink; 60 | UINT8 ExFlag; 61 | /// 62 | /// A list of all runtime events 63 | /// 64 | EFI_RUNTIME_EVENT_ENTRY RuntimeData; 65 | TIMER_EVENT_INFO Timer; 66 | } IEVENT; 67 | 68 | #endif 69 | -------------------------------------------------------------------------------- /EdkiiShellToolPkg/EdkiiCoreDatabaseDump/DxeCoreDump/DxeCoreDump.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | 12 | **/ 13 | 14 | #ifndef _DXE_CORE_DUMP_H_ 15 | #define _DXE_CORE_DUMP_H_ 16 | 17 | VOID 18 | InitGuid( 19 | VOID 20 | ); 21 | 22 | VOID 23 | DeinitGuid( 24 | VOID 25 | ); 26 | 27 | CHAR8 * 28 | GuidToName( 29 | IN EFI_GUID *Guid 30 | ); 31 | 32 | EFI_STATUS 33 | ReadFileToBuffer( 34 | IN CHAR16 *FileName, 35 | OUT UINTN *BufferSize, 36 | OUT VOID **Buffer 37 | ); 38 | 39 | CHAR8 * 40 | AsciiStrGetNewTokenLine( 41 | IN CHAR8 *String, 42 | IN CHAR8 *CharSet 43 | ); 44 | 45 | CHAR8 * 46 | AsciiStrGetNextTokenLine( 47 | IN CHAR8 *CharSet 48 | ); 49 | 50 | CHAR8 * 51 | AsciiStrGetNewTokenField( 52 | IN CHAR8 *String, 53 | IN CHAR8 *CharSet 54 | ); 55 | 56 | CHAR8 * 57 | AsciiStrGetNextTokenField( 58 | IN CHAR8 *CharSet 59 | ); 60 | 61 | BOOLEAN 62 | StrEndWith( 63 | IN CHAR16 *Str, 64 | IN CHAR16 *SubStr 65 | ); 66 | 67 | #endif 68 | -------------------------------------------------------------------------------- /EdkiiShellToolPkg/EdkiiCoreDatabaseDump/Include/Library/SmmChildDumpLib.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | 12 | **/ 13 | 14 | #ifndef _SMM_CHILD_DUMP_LIB_H_ 15 | #define _SMM_CHILD_DUMP_LIB_H_ 16 | 17 | // 18 | // Below APIs are called by consumer SMM driver 19 | // 20 | 21 | EFI_STATUS 22 | EFIAPI 23 | SmmChildInit( 24 | VOID 25 | ); 26 | 27 | EFI_STATUS 28 | EFIAPI 29 | SmmChildDump( 30 | VOID 31 | ); 32 | 33 | EFI_STATUS 34 | EFIAPI 35 | SmmChildGetDataSize( 36 | OUT UINTN *Size 37 | ); 38 | 39 | EFI_STATUS 40 | EFIAPI 41 | SmmChildGetData( 42 | IN UINTN Size, 43 | IN OUT VOID *Data 44 | ); 45 | 46 | // 47 | // Below APIs are called by consumer APP 48 | // 49 | 50 | VOID 51 | EFIAPI 52 | DumpSmmChildHandler( 53 | IN VOID *Data, 54 | IN UINTN Size 55 | ); 56 | 57 | // 58 | // Below APIs are library consumer provided functions in SMM 59 | // 60 | 61 | CHAR16 * 62 | AddressToImageName( 63 | IN UINTN Address 64 | ); 65 | 66 | UINTN 67 | AddressToImageRef( 68 | IN UINTN Address 69 | ); 70 | 71 | // 72 | // Below APIs are library consumer provided functions in APP 73 | // 74 | 75 | CHAR16 * 76 | GetImageRefName( 77 | IN UINTN ImageRef 78 | ); 79 | 80 | CHAR8 * 81 | GuidToName( 82 | IN EFI_GUID *Guid 83 | ); 84 | 85 | #endif 86 | -------------------------------------------------------------------------------- /EdkiiShellToolPkg/EdkiiCoreDatabaseDump/Library/SmmChildDumpLibNt32/SmmChild/WinNtSmmChildDispatcherSmm.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Copyright (c) 2006 - 2007, Intel Corporation. All rights reserved.
4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | 12 | Module Name: 13 | 14 | WinNtGop.h 15 | 16 | Abstract: 17 | 18 | Private data for the Gop driver that is bound to the WinNt Thunk protocol 19 | 20 | 21 | **/ 22 | #ifndef _WIN_NT_SMM_CHILD_DISPATCHER_SMM_H_ 23 | #define _WIN_NT_SMM_CHILD_DISPATCHER_SMM_H_ 24 | 25 | #include 26 | 27 | #include 28 | #include 29 | #include 30 | #include 31 | #include 32 | #include 33 | #include 34 | 35 | // 36 | // "DATABASE" RECORD 37 | // Linked list data structures 38 | // 39 | #define DATABASE_RECORD_SIGNATURE SIGNATURE_32 ('D', 'B', 'R', 'C') 40 | 41 | typedef struct { 42 | UINT32 Signature; 43 | LIST_ENTRY Link; 44 | 45 | // 46 | // Register Context 47 | // 48 | EFI_HANDLE DispatchHandle; 49 | EFI_SMM_HANDLER_ENTRY_POINT2 DispatchFunction; 50 | EFI_SMM_SW_REGISTER_CONTEXT RegisterContext; 51 | } DATABASE_RECORD; 52 | 53 | #define DATABASE_RECORD_FROM_LINK(_record) CR (_record, DATABASE_RECORD, Link, DATABASE_RECORD_SIGNATURE) 54 | 55 | #define MAXIMUM_SWI_VALUE 0xFF 56 | 57 | // 58 | // Create private data for the protocols that we'll publish 59 | // 60 | typedef struct { 61 | LIST_ENTRY CallbackDatabase; 62 | EFI_HANDLE SmiHandle; 63 | EFI_HANDLE SmmHandle; 64 | EFI_SMM_SW_DISPATCH2_PROTOCOL SmmSwDispatch2Protocols; 65 | } PRIVATE_DATA; 66 | 67 | #endif 68 | -------------------------------------------------------------------------------- /EdkiiShellToolPkg/EdkiiCoreDatabaseDump/Library/SmmChildDumpLibNt32/SmmChildDump.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | 12 | **/ 13 | 14 | #ifndef _SMM_CHILD_DUMP_H_ 15 | #define _SMM_CHILD_DUMP_H_ 16 | 17 | #define UNKNOWN_NAME L"???" 18 | 19 | EFI_GUID * 20 | ProtocolTypeToGuid( 21 | IN INT32 ProtocolType 22 | ); 23 | 24 | UINTN 25 | SmmChildHandlerStructureSizeByGuid( 26 | IN EFI_GUID *Guid 27 | ); 28 | 29 | CHAR8 * 30 | SxTypeToName( 31 | IN EFI_SLEEP_TYPE Type 32 | ); 33 | 34 | CHAR8 * 35 | SxPhaseToName( 36 | IN EFI_SLEEP_PHASE Phase 37 | ); 38 | 39 | CHAR8 * 40 | UsbTypeToName( 41 | IN EFI_USB_SMI_TYPE Type 42 | ); 43 | 44 | CHAR8 * 45 | StandbyButtonPhaseToName( 46 | IN EFI_STANDBY_BUTTON_PHASE Phase 47 | ); 48 | 49 | CHAR8 * 50 | PowerButtonPhaseToName( 51 | IN EFI_POWER_BUTTON_PHASE Phase 52 | ); 53 | 54 | CHAR8 * 55 | IoTrapTypeToName( 56 | IN EFI_SMM_IO_TRAP_DISPATCH_TYPE Type 57 | ); 58 | 59 | #endif 60 | -------------------------------------------------------------------------------- /EdkiiShellToolPkg/EdkiiCoreDatabaseDump/Library/SmmChildDumpLibNt32/SmmChildDumpComm.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | 12 | **/ 13 | 14 | #ifndef _SMM_CHILD_DUMP_COMM_H_ 15 | #define _SMM_CHILD_DUMP_COMM_H_ 16 | 17 | #pragma pack(1) 18 | 19 | typedef struct { 20 | UINT32 Signature; 21 | UINT32 Length; 22 | UINT32 Revision; 23 | } SMM_CHILD_DATABASE_COMMON_HEADER; 24 | 25 | #define SMM_CHILD_SMI_DATABASE_SIGNATURE SIGNATURE_32 ('C','D','S','D') 26 | #define SMM_CHILD_SMI_DATABASE_REVISION 0x0001 27 | 28 | typedef struct { 29 | UINTN SmiHandle; 30 | UINTN Handler; 31 | UINTN ImageRef; 32 | } SMM_CHILD_SMI_HANDLER_STRUCTURE_HEADER; 33 | 34 | typedef struct { 35 | UINTN SmiHandle; 36 | UINTN Handler; 37 | UINTN ImageRef; 38 | EFI_SMM_SW_REGISTER_CONTEXT Context; 39 | } SMM_CHILD_SW_SMI_HANDLER_STRUCTURE; 40 | 41 | typedef struct { 42 | UINTN SmiHandle; 43 | UINTN Handler; 44 | UINTN ImageRef; 45 | EFI_SMM_SX_REGISTER_CONTEXT Context; 46 | } SMM_CHILD_SX_SMI_HANDLER_STRUCTURE; 47 | 48 | typedef struct { 49 | UINTN SmiHandle; 50 | UINTN Handler; 51 | UINTN ImageRef; 52 | EFI_SMM_PERIODIC_TIMER_REGISTER_CONTEXT Context; 53 | } SMM_CHILD_PERIODIC_TIMER_SMI_HANDLER_STRUCTURE; 54 | 55 | #define SMM_CHILD_USB_REGISTER_CONTEXT_MAX_SIZE 0x40 56 | typedef struct { 57 | EFI_USB_SMI_TYPE Type; 58 | UINT8 Device[SMM_CHILD_USB_REGISTER_CONTEXT_MAX_SIZE]; 59 | } SMM_CHILD_USB_REGISTER_CONTEXT; 60 | typedef struct { 61 | UINTN SmiHandle; 62 | UINTN Handler; 63 | UINTN ImageRef; 64 | SMM_CHILD_USB_REGISTER_CONTEXT Context; 65 | } SMM_CHILD_USB_SMI_HANDLER_STRUCTURE; 66 | 67 | typedef struct { 68 | UINTN SmiHandle; 69 | UINTN Handler; 70 | UINTN ImageRef; 71 | EFI_SMM_GPI_REGISTER_CONTEXT Context; 72 | } SMM_CHILD_GPI_SMI_HANDLER_STRUCTURE; 73 | 74 | typedef struct { 75 | UINTN SmiHandle; 76 | UINTN Handler; 77 | UINTN ImageRef; 78 | EFI_SMM_POWER_BUTTON_REGISTER_CONTEXT Context; 79 | } SMM_CHILD_POWER_BUTTON_SMI_HANDLER_STRUCTURE; 80 | 81 | typedef struct { 82 | UINTN SmiHandle; 83 | UINTN Handler; 84 | UINTN ImageRef; 85 | EFI_SMM_STANDBY_BUTTON_REGISTER_CONTEXT Context; 86 | } SMM_CHILD_STANDBY_BUTTON_SMI_HANDLER_STRUCTURE; 87 | 88 | typedef struct { 89 | UINTN SmiHandle; 90 | UINTN Handler; 91 | UINTN ImageRef; 92 | EFI_SMM_IO_TRAP_REGISTER_CONTEXT Context; 93 | } SMM_CHILD_IO_TRAP_SMI_HANDLER_STRUCTURE; 94 | 95 | typedef struct { 96 | SMM_CHILD_DATABASE_COMMON_HEADER Header; 97 | EFI_GUID Guid; 98 | UINTN HandlerCount; 99 | //SMM_CHILD_XXX_SMI_HANDLER_STRUCTURE Handler[HandlerCount]; 100 | } SMM_CHILD_SMI_DATABASE_STRUCTURE; 101 | 102 | #pragma pack() 103 | 104 | #endif 105 | -------------------------------------------------------------------------------- /EdkiiShellToolPkg/EdkiiCoreDatabaseDump/Library/SmmChildDumpLibNt32/SmmChildDumpLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = SmmChildDumpLibNt32 17 | FILE_GUID = 169A09A8-AE92-496B-8916-95D6410DEEED 18 | MODULE_TYPE = DXE_SMM_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = SmmChildDumpLib 21 | 22 | [Sources] 23 | SmmChildDumpLib.c 24 | SmmChildDumpLibHandler.c 25 | SmmChildDumpLibApp.c 26 | 27 | [Packages] 28 | MdePkg/MdePkg.dec 29 | EdkiiShellToolPkg/EdkiiShellToolPkg.dec 30 | 31 | [LibraryClasses] 32 | BaseLib 33 | BaseMemoryLib 34 | MemoryAllocationLib 35 | DebugLib 36 | UefiBootServicesTableLib 37 | UefiLib 38 | PrintLib 39 | DevicePathLib 40 | PeCoffGetEntryPointLib 41 | DxeServicesLib 42 | 43 | [Protocols] 44 | gEfiSmmEndOfDxeProtocolGuid 45 | gEfiSmmSwDispatch2ProtocolGuid 46 | gEfiSmmSxDispatch2ProtocolGuid 47 | gEfiSmmPeriodicTimerDispatch2ProtocolGuid 48 | gEfiSmmUsbDispatch2ProtocolGuid 49 | gEfiSmmGpiDispatch2ProtocolGuid 50 | gEfiSmmStandbyButtonDispatch2ProtocolGuid 51 | gEfiSmmPowerButtonDispatch2ProtocolGuid 52 | gEfiSmmIoTrapDispatch2ProtocolGuid 53 | 54 | [Depex] 55 | gEfiSmmSwDispatch2ProtocolGuid 56 | -------------------------------------------------------------------------------- /EdkiiShellToolPkg/EdkiiCoreDatabaseDump/Library/SmmChildDumpLibNull/SmmChildDumpLibNull.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | 12 | **/ 13 | 14 | #include 15 | 16 | EFI_STATUS 17 | EFIAPI 18 | SmmChildInit( 19 | VOID 20 | ) 21 | { 22 | return EFI_UNSUPPORTED; 23 | } 24 | 25 | EFI_STATUS 26 | EFIAPI 27 | SmmChildDump( 28 | VOID 29 | ) 30 | { 31 | return EFI_UNSUPPORTED; 32 | } 33 | 34 | EFI_STATUS 35 | EFIAPI 36 | SmmChildGetDataSize( 37 | OUT UINTN *Size 38 | ) 39 | { 40 | *Size = 0; 41 | return EFI_UNSUPPORTED; 42 | } 43 | 44 | EFI_STATUS 45 | EFIAPI 46 | SmmChildGetData( 47 | IN UINTN Size, 48 | IN OUT VOID *Data 49 | ) 50 | { 51 | return EFI_UNSUPPORTED; 52 | } 53 | 54 | VOID 55 | EFIAPI 56 | DumpSmmChildHandler( 57 | IN VOID *Data, 58 | IN UINTN Size 59 | ) 60 | { 61 | return; 62 | } -------------------------------------------------------------------------------- /EdkiiShellToolPkg/EdkiiCoreDatabaseDump/Library/SmmChildDumpLibNull/SmmChildDumpLibNull.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = SmmChildDumpLibNull 17 | FILE_GUID = 98ECF7FF-6F12-46FF-B074-7A97C2E6D536 18 | MODULE_TYPE = DXE_SMM_DRIVER 19 | VERSION_STRING = 1.0 20 | LIBRARY_CLASS = SmmChildDumpLib 21 | 22 | [Sources] 23 | SmmChildDumpLibNull.c 24 | 25 | [Packages] 26 | MdePkg/MdePkg.dec 27 | -------------------------------------------------------------------------------- /EdkiiShellToolPkg/EdkiiCoreDatabaseDump/PeiCoreDump/PeiCoreDump.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | 12 | **/ 13 | 14 | #ifndef _PEI_CORE_DUMP_H_ 15 | #define _PEI_CORE_DUMP_H_ 16 | 17 | #define UNKNOWN_NAME L"???" 18 | 19 | #define NAME_STRING_LENGTH 35 20 | typedef struct { 21 | EFI_GUID FileGuid; 22 | UINTN EntryPoint; 23 | UINTN ImageBase; 24 | UINTN ImageSize; 25 | UINTN LoadedImageBase; 26 | CHAR16 NameString[NAME_STRING_LENGTH + 1]; 27 | } IMAGE_STRUCT; 28 | 29 | VOID 30 | BuildPeiCoreDatabase( 31 | IN VOID *PrivateData 32 | ); 33 | 34 | UINTN 35 | CalcTotalPeimCount ( 36 | IN VOID *PrivateData 37 | ); 38 | 39 | UINTN 40 | CalcTotalPpiDataCount ( 41 | IN VOID *PrivateData 42 | ); 43 | 44 | UINTN 45 | AddressToImageRef( 46 | IN UINTN Address 47 | ); 48 | 49 | UINTN 50 | AddressToImageRefEx( 51 | IN UINTN Address, 52 | IN EFI_GUID *Protocol 53 | ); 54 | 55 | VOID 56 | InitGuid( 57 | VOID 58 | ); 59 | 60 | VOID 61 | DeinitGuid( 62 | VOID 63 | ); 64 | 65 | CHAR8 * 66 | GuidToName( 67 | IN EFI_GUID *Guid 68 | ); 69 | 70 | EFI_STATUS 71 | ReadFileToBuffer( 72 | IN CHAR16 *FileName, 73 | OUT UINTN *BufferSize, 74 | OUT VOID **Buffer 75 | ); 76 | 77 | CHAR8 * 78 | AsciiStrGetNewTokenLine( 79 | IN CHAR8 *String, 80 | IN CHAR8 *CharSet 81 | ); 82 | 83 | CHAR8 * 84 | AsciiStrGetNextTokenLine( 85 | IN CHAR8 *CharSet 86 | ); 87 | 88 | CHAR8 * 89 | AsciiStrGetNewTokenField( 90 | IN CHAR8 *String, 91 | IN CHAR8 *CharSet 92 | ); 93 | 94 | CHAR8 * 95 | AsciiStrGetNextTokenField( 96 | IN CHAR8 *CharSet 97 | ); 98 | 99 | BOOLEAN 100 | StrEndWith( 101 | IN CHAR16 *Str, 102 | IN CHAR16 *SubStr 103 | ); 104 | 105 | #endif 106 | -------------------------------------------------------------------------------- /EdkiiShellToolPkg/EdkiiCoreDatabaseDump/PeiCoreDump/PeiCoreDump.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = PeiCoreDump 17 | FILE_GUID = 1D57FF71-0C28-4472-B05A-BA98A6274B18 18 | MODULE_TYPE = PEIM 19 | VERSION_STRING = 1.0 20 | ENTRY_POINT = PeiCoreDumpEntrypoint 21 | 22 | [Sources] 23 | PeiCoreDump.c 24 | PeiCoreDumpHob.c 25 | SupportGuid.c 26 | SupportString.c 27 | 28 | [Packages] 29 | MdePkg/MdePkg.dec 30 | MdeModulePkg/MdeModulePkg.dec 31 | 32 | [LibraryClasses] 33 | PeimEntryPoint 34 | BaseLib 35 | BaseMemoryLib 36 | MemoryAllocationLib 37 | DebugLib 38 | PeCoffGetEntryPointLib 39 | PrintLib 40 | HobLib 41 | 42 | [Ppis] 43 | gEfiEndOfPeiSignalPpiGuid 44 | gEfiPeiStatusCodePpiGuid 45 | gEfiPeiRscHandlerPpiGuid 46 | 47 | [Depex] 48 | gEfiPeiMemoryDiscoveredPpiGuid -------------------------------------------------------------------------------- /EdkiiShellToolPkg/EdkiiCoreDatabaseDump/PeiCoreDump/PeiCoreDumpApp.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = PeiCoreDumpApp 17 | FILE_GUID = 5943273C-07D0-4A77-B987-2E888892BC7A 18 | MODULE_TYPE = UEFI_APPLICATION 19 | VERSION_STRING = 1.0 20 | ENTRY_POINT = PeiCoreDumpAppEntrypoint 21 | 22 | [Sources] 23 | PeiCoreDumpApp.c 24 | SupportGuid.c 25 | SupportString.c 26 | SupportFile.c 27 | 28 | [Packages] 29 | MdePkg/MdePkg.dec 30 | MdeModulePkg/MdeModulePkg.dec 31 | 32 | [LibraryClasses] 33 | UefiApplicationEntryPoint 34 | BaseLib 35 | BaseMemoryLib 36 | MemoryAllocationLib 37 | DebugLib 38 | UefiBootServicesTableLib 39 | UefiRuntimeServicesTableLib 40 | UefiLib 41 | PrintLib 42 | DevicePathLib 43 | PeCoffGetEntryPointLib 44 | DxeServicesLib 45 | HobLib 46 | 47 | [Depex] 48 | TRUE -------------------------------------------------------------------------------- /EdkiiShellToolPkg/EdkiiCoreDatabaseDump/SmmCoreDump/SmmCore/SmmCore.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | 12 | **/ 13 | 14 | #ifndef __SMM_CORE_H__ 15 | #define __SMM_CORE_H__ 16 | 17 | #define SMM_CORE_GUID {0xE94F54CD, 0x81EB, 0x47ed, {0xAE, 0xC3, 0x85, 0x6F, 0x5D, 0xC1, 0x57, 0xA9}} 18 | 19 | #endif 20 | -------------------------------------------------------------------------------- /EdkiiShellToolPkg/EdkiiCoreDatabaseDump/SmmCoreDump/SmmCoreDump.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | 12 | **/ 13 | 14 | #ifndef _SMM_CORE_DUMP_H_ 15 | #define _SMM_CORE_DUMP_H_ 16 | 17 | #define UNKNOWN_NAME L"???" 18 | 19 | #define NAME_STRING_LENGTH 35 20 | typedef struct { 21 | EFI_GUID FileGuid; 22 | UINTN EntryPoint; 23 | UINTN ImageBase; 24 | UINTN ImageSize; 25 | UINTN LoadedImageBase; 26 | CHAR16 NameString[NAME_STRING_LENGTH + 1]; 27 | } IMAGE_STRUCT; 28 | 29 | UINTN 30 | AddressToImageRef( 31 | IN UINTN Address 32 | ); 33 | 34 | UINTN 35 | AddressToImageRefEx( 36 | IN UINTN Address, 37 | IN EFI_GUID *Protocol 38 | ); 39 | 40 | VOID 41 | RegisterSmmCoreDumpHandler( 42 | VOID 43 | ); 44 | 45 | VOID 46 | InitGuid( 47 | VOID 48 | ); 49 | 50 | VOID 51 | DeinitGuid( 52 | VOID 53 | ); 54 | 55 | CHAR8 * 56 | GuidToName( 57 | IN EFI_GUID *Guid 58 | ); 59 | 60 | EFI_STATUS 61 | ReadFileToBuffer( 62 | IN CHAR16 *FileName, 63 | OUT UINTN *BufferSize, 64 | OUT VOID **Buffer 65 | ); 66 | 67 | CHAR8 * 68 | AsciiStrGetNewTokenLine( 69 | IN CHAR8 *String, 70 | IN CHAR8 *CharSet 71 | ); 72 | 73 | CHAR8 * 74 | AsciiStrGetNextTokenLine( 75 | IN CHAR8 *CharSet 76 | ); 77 | 78 | CHAR8 * 79 | AsciiStrGetNewTokenField( 80 | IN CHAR8 *String, 81 | IN CHAR8 *CharSet 82 | ); 83 | 84 | CHAR8 * 85 | AsciiStrGetNextTokenField( 86 | IN CHAR8 *CharSet 87 | ); 88 | 89 | BOOLEAN 90 | StrEndWith( 91 | IN CHAR16 *Str, 92 | IN CHAR16 *SubStr 93 | ); 94 | 95 | #endif 96 | -------------------------------------------------------------------------------- /EdkiiShellToolPkg/EdkiiCoreDatabaseDump/SmmCoreDump/SmmCoreDump.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = SmmCoreDump 17 | FILE_GUID = 399E9030-E485-4789-8AB9-CAA24B00BD1F 18 | MODULE_TYPE = DXE_SMM_DRIVER 19 | VERSION_STRING = 1.0 20 | PI_SPECIFICATION_VERSION = 0x0001000A 21 | ENTRY_POINT = SmmCoreDumpEntrypoint 22 | 23 | [Sources] 24 | SmmCoreDump.c 25 | SmmCoreDumpHandler.c 26 | SupportGuid.c 27 | SupportString.c 28 | 29 | [Packages] 30 | MdePkg/MdePkg.dec 31 | EdkiiShellToolPkg/EdkiiShellToolPkg.dec 32 | 33 | [LibraryClasses] 34 | UefiDriverEntryPoint 35 | BaseLib 36 | BaseMemoryLib 37 | MemoryAllocationLib 38 | DebugLib 39 | UefiBootServicesTableLib 40 | SmmServicesTableLib 41 | UefiLib 42 | PrintLib 43 | DevicePathLib 44 | PeCoffGetEntryPointLib 45 | DxeServicesLib 46 | SmmMemLib 47 | SmmChildDumpLib 48 | 49 | [Protocols] 50 | gEfiSmmAccess2ProtocolGuid 51 | gEfiSmmReadyToLockProtocolGuid 52 | gEfiSmmEndOfDxeProtocolGuid 53 | 54 | gEfiLoadedImageDevicePathProtocolGuid 55 | gEfiSmmCpuProtocolGuid 56 | gEfiSmmCpuIo2ProtocolGuid 57 | gEfiSmmPciRootBridgeIoProtocolGuid 58 | gEfiSmmStatusCodeProtocolGuid 59 | gEfiSmmSwDispatch2ProtocolGuid 60 | gEfiSmmSxDispatch2ProtocolGuid 61 | gEfiSmmPeriodicTimerDispatch2ProtocolGuid 62 | gEfiSmmUsbDispatch2ProtocolGuid 63 | gEfiSmmGpiDispatch2ProtocolGuid 64 | gEfiSmmStandbyButtonDispatch2ProtocolGuid 65 | gEfiSmmPowerButtonDispatch2ProtocolGuid 66 | gEfiSmmIoTrapDispatch2ProtocolGuid 67 | gEfiSmmRscHandlerProtocolGuid 68 | 69 | [Depex] 70 | TRUE 71 | #gEfiSmmStatusCodeProtocolGuid AND 72 | #gEfiSmmRscHandlerProtocolGuid -------------------------------------------------------------------------------- /EdkiiShellToolPkg/EdkiiCoreDatabaseDump/SmmCoreDump/SmmCoreDumpApp.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = SmmCoreDumpApp 17 | FILE_GUID = 2AC6E947-CCF8-4EE8-8C6C-A2CAC35185CF 18 | MODULE_TYPE = UEFI_APPLICATION 19 | VERSION_STRING = 1.0 20 | ENTRY_POINT = SmmCoreDumpAppEntrypoint 21 | 22 | [Sources] 23 | SmmCoreDumpApp.c 24 | SupportGuid.c 25 | SupportString.c 26 | SupportFile.c 27 | 28 | [Packages] 29 | MdePkg/MdePkg.dec 30 | MdeModulePkg/MdeModulePkg.dec 31 | EdkiiShellToolPkg/EdkiiShellToolPkg.dec 32 | 33 | [LibraryClasses] 34 | UefiApplicationEntryPoint 35 | BaseLib 36 | BaseMemoryLib 37 | MemoryAllocationLib 38 | DebugLib 39 | UefiBootServicesTableLib 40 | UefiRuntimeServicesTableLib 41 | UefiLib 42 | PrintLib 43 | DevicePathLib 44 | PeCoffGetEntryPointLib 45 | DxeServicesLib 46 | SmmChildDumpLib 47 | 48 | [Protocols] 49 | gEfiSmmCommunicationProtocolGuid 50 | 51 | [Guids] 52 | gEdkiiPiSmmCommunicationRegionTableGuid 53 | 54 | [Depex] 55 | TRUE -------------------------------------------------------------------------------- /EdkiiShellToolPkg/EdkiiShellToolPkg.dec: -------------------------------------------------------------------------------- 1 | ## @file EdkiiShellToolPkg.dec 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | DEC_SPECIFICATION = 0x00010005 16 | PACKAGE_NAME = EdkiiShellToolPkg 17 | PACKAGE_GUID = 47C04C9A-8D44-4971-9722-D9A98EDCEA16 18 | PACKAGE_VERSION = 0.1 19 | 20 | [Includes] 21 | EdkiiCoreDatabaseDump/Include -------------------------------------------------------------------------------- /EdkiiShellToolPkg/EsrtFmpDump/EsrtDxe/EsrtImpl.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Esrt management implementation head file. 3 | 4 | Copyright (c) 2015, Intel Corporation. All rights reserved.
5 | This program and the accompanying materials 6 | are licensed and made available under the terms and conditions of the BSD License 7 | which accompanies this distribution. The full text of the license may be found at 8 | http://opensource.org/licenses/bsd-license.php 9 | 10 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 11 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 12 | 13 | **/ 14 | 15 | #ifndef _DXE_ESRT_IMPL_H_ 16 | #define _DXE_ESRT_IMPL_H_ 17 | 18 | // 19 | // Name of Variable for Non-FMP ESRT Repository 20 | // 21 | #define EFI_ESRT_NONFMP_VARIABLE_NAME L"EsrtNonFmp" 22 | 23 | // 24 | // Name of Variable for FMP 25 | // 26 | #define EFI_ESRT_FMP_VARIABLE_NAME L"EsrtFmp" 27 | 28 | // 29 | // Attribute of Cached ESRT entry 30 | // 31 | #define ESRT_FROM_FMP 0x00000001 32 | #define ESRT_FROM_NONFMP 0x00000002 33 | 34 | 35 | // 36 | // Driver GUID 37 | // 38 | #define ESRT_DXE_DRIVER_GUID { 0x999BD818, 0x7DF7, 0x4A9A,{ 0xA5, 0x02, 0x9B, 0x75, 0x03, 0x3E, 0x6A, 0x0F } } 39 | 40 | 41 | #endif // #ifndef _EFI_ESRT_IMPL_H_ 42 | 43 | -------------------------------------------------------------------------------- /EdkiiShellToolPkg/EsrtFmpDump/EsrtFmpDump.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = EsrtFmpDump 17 | FILE_GUID = 0F5BD724-FE75-456D-8CAC-BC03F42DF30B 18 | MODULE_TYPE = UEFI_APPLICATION 19 | VERSION_STRING = 1.0 20 | ENTRY_POINT = EsrtFmpDumpEntrypoint 21 | 22 | [Sources] 23 | EsrtFmpDump.c 24 | 25 | [Packages] 26 | MdePkg/MdePkg.dec 27 | MdeModulePkg/MdeModulePkg.dec 28 | 29 | [LibraryClasses] 30 | UefiApplicationEntryPoint 31 | BaseLib 32 | BaseMemoryLib 33 | MemoryAllocationLib 34 | DebugLib 35 | UefiBootServicesTableLib 36 | UefiRuntimeServicesTableLib 37 | UefiLib 38 | PrintLib 39 | HobLib 40 | 41 | [Guids] 42 | gEfiSystemResourceTableGuid 43 | gWindowsUxCapsuleGuid 44 | gEfiFmpCapsuleGuid 45 | 46 | [Protocols] 47 | gEfiFirmwareManagementProtocolGuid 48 | gEsrtManagementProtocolGuid 49 | 50 | [Depex] 51 | TRUE -------------------------------------------------------------------------------- /EdkiiShellToolPkg/Gcd/Gcd.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = Gcd 17 | FILE_GUID = 2212265E-7011-41c9-9102-013196EC83D9 18 | MODULE_TYPE = UEFI_APPLICATION 19 | VERSION_STRING = 1.0 20 | ENTRY_POINT = InitializeGcd 21 | 22 | [Sources] 23 | Gcd.c 24 | 25 | [Packages] 26 | MdePkg/MdePkg.dec 27 | 28 | [LibraryClasses] 29 | UefiApplicationEntryPoint 30 | BaseLib 31 | BaseMemoryLib 32 | MemoryAllocationLib 33 | DebugLib 34 | UefiLib 35 | UefiBootServicesTableLib 36 | DxeServicesTableLib 37 | PrintLib 38 | DebugLib 39 | -------------------------------------------------------------------------------- /EdkiiShellToolPkg/GcdSet/GcdSet.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2017, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = GcdSet 17 | FILE_GUID = 20144CE9-94E9-4A9E-AF6C-DE618DD0E626 18 | MODULE_TYPE = UEFI_APPLICATION 19 | VERSION_STRING = 1.0 20 | ENTRY_POINT = InitializeGcd 21 | 22 | [Sources] 23 | GcdSet.c 24 | 25 | [Packages] 26 | MdePkg/MdePkg.dec 27 | 28 | [LibraryClasses] 29 | UefiApplicationEntryPoint 30 | BaseLib 31 | BaseMemoryLib 32 | MemoryAllocationLib 33 | DebugLib 34 | UefiLib 35 | UefiBootServicesTableLib 36 | DxeServicesTableLib 37 | PrintLib 38 | DebugLib 39 | 40 | [Protocols] 41 | gEfiShellParametersProtocolGuid -------------------------------------------------------------------------------- /EdkiiShellToolPkg/GetPciOprom/GetPciOprom.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # GetPciOprom is a shell application to get PCI OPROM. 3 | # 4 | # Copyright (c) 2018, Intel Corporation. All rights reserved.
5 | # 6 | # This program and the accompanying materials 7 | # are licensed and made available under the terms and conditions of the BSD License 8 | # which accompanies this distribution. The full text of the license may be found at 9 | # http://opensource.org/licenses/bsd-license.php 10 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 11 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 12 | # 13 | # 14 | ## 15 | 16 | [Defines] 17 | INF_VERSION = 0x00010006 18 | BASE_NAME = GetPciOprom 19 | FILE_GUID = 8317DBD0-457B-434D-BA38-218B4C5721B5 20 | MODULE_TYPE = UEFI_APPLICATION 21 | VERSION_STRING = 1.0 22 | ENTRY_POINT = GetPciOpromMain 23 | 24 | # 25 | # The following information is for reference only and not required by the build tools. 26 | # 27 | # VALID_ARCHITECTURES = IA32 X64 28 | # 29 | 30 | [Sources] 31 | GetPciOprom.c 32 | 33 | [Packages] 34 | MdePkg/MdePkg.dec 35 | ShellPkg/ShellPkg.dec 36 | 37 | [LibraryClasses] 38 | BaseLib 39 | UefiApplicationEntryPoint 40 | UefiBootServicesTableLib 41 | DebugLib 42 | ShellLib 43 | PrintLib 44 | MemoryAllocationLib 45 | 46 | [Protocols] 47 | gEfiPciIoProtocolGuid ## CONSUMES 48 | gEfiDecompressProtocolGuid ## SOMETIMES_CONSUMES 49 | 50 | -------------------------------------------------------------------------------- /EdkiiShellToolPkg/GetVariablePerf/GetVariablePerf.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Copyright (c) 2017, Intel Corporation. All rights reserved.
4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | 12 | **/ 13 | 14 | #include 15 | #include 16 | #include 17 | #include 18 | #include 19 | #include 20 | #include 21 | #include 22 | #include 23 | #include 24 | #include 25 | 26 | #define NON_EXIST_NAME L"U.N.Owen" 27 | #define MAX_BUFFER_SIZE 1024 28 | 29 | #define COUNT 1000 30 | 31 | EFI_STATUS 32 | EFIAPI 33 | GetVariablePerfEntry ( 34 | IN EFI_HANDLE ImageHandle, 35 | IN EFI_SYSTEM_TABLE* SystemTable 36 | ) 37 | { 38 | UINT64 StartTsc; 39 | UINT64 EndTsc; 40 | UINTN Index; 41 | PERFORMANCE_PROPERTY *PerformanceProperty; 42 | EFI_STATUS Status; 43 | EFI_TPL OldTpl; 44 | UINT8 DataBuffer[MAX_BUFFER_SIZE]; 45 | UINTN BufferSize; 46 | 47 | OldTpl = gBS->RaiseTPL (TPL_HIGH_LEVEL); 48 | StartTsc = AsmReadTsc (); 49 | 50 | BufferSize = sizeof (DataBuffer); 51 | BufferSize = 0; 52 | 53 | for (Index = 0; Index < COUNT; Index++) { 54 | Status = gRT->GetVariable ( 55 | NON_EXIST_NAME, 56 | &gEfiGlobalVariableGuid, 57 | NULL, 58 | &BufferSize, 59 | DataBuffer 60 | ); 61 | } 62 | EndTsc = AsmReadTsc (); 63 | gBS->RestoreTPL (OldTpl); 64 | 65 | Status = EfiGetSystemConfigurationTable (&gPerformanceProtocolGuid, (VOID **)&PerformanceProperty); 66 | if (EFI_ERROR (Status)) { 67 | Print (L"PERFORMANCE_PROPERTY not found!\n"); 68 | return EFI_NOT_FOUND; 69 | } else { 70 | Print (L"PERFORMANCE_PROPERTY\n"); 71 | Print (L" Revision - 0x%x\n", PerformanceProperty->Revision); 72 | Print (L" TimerStartValue - %ld\n", PerformanceProperty->TimerStartValue); 73 | Print (L" TimerEndValue - %ld\n", PerformanceProperty->TimerEndValue); 74 | Print (L" Frequency - %ld\n", PerformanceProperty->Frequency); 75 | } 76 | 77 | Print (L"%d GetVariable - %ld tick\n", COUNT, EndTsc - StartTsc); 78 | Print (L"GetVariable - %ld us\n", DivU64x64Remainder (MultU64x64 (DivU64x32(EndTsc - StartTsc, COUNT), 1000 * 1000), PerformanceProperty->Frequency, NULL)); 79 | 80 | return EFI_SUCCESS; 81 | } -------------------------------------------------------------------------------- /EdkiiShellToolPkg/GetVariablePerf/GetVariablePerf.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2017, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = GetVariablePerf 17 | FILE_GUID = 4EE5ADD6-7897-4B6D-ADB3-D2FDF9F70A05 18 | MODULE_TYPE = UEFI_APPLICATION 19 | VERSION_STRING = 1.0 20 | ENTRY_POINT = GetVariablePerfEntry 21 | 22 | [Sources] 23 | GetVariablePerf.c 24 | 25 | [Packages] 26 | MdePkg/MdePkg.dec 27 | MdeModulePkg/MdeModulePkg.dec 28 | 29 | [LibraryClasses] 30 | UefiApplicationEntryPoint 31 | BaseLib 32 | BaseMemoryLib 33 | MemoryAllocationLib 34 | DebugLib 35 | UefiLib 36 | UefiBootServicesTableLib 37 | DxeServicesTableLib 38 | PrintLib 39 | DebugLib 40 | IoLib 41 | 42 | [Guids] 43 | gPerformanceProtocolGuid 44 | gEfiGlobalVariableGuid 45 | 46 | -------------------------------------------------------------------------------- /EdkiiShellToolPkg/HobList/HobList.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = HobList 17 | FILE_GUID = CCEF9453-6EE6-4f7d-92FE-CFA3C27FC1AB 18 | MODULE_TYPE = UEFI_APPLICATION 19 | VERSION_STRING = 1.0 20 | ENTRY_POINT = InitializeHobList 21 | 22 | [Sources] 23 | HobList.c 24 | 25 | [Packages] 26 | MdePkg/MdePkg.dec 27 | 28 | [LibraryClasses] 29 | UefiApplicationEntryPoint 30 | BaseLib 31 | BaseMemoryLib 32 | MemoryAllocationLib 33 | DebugLib 34 | UefiLib 35 | UefiBootServicesTableLib 36 | DxeServicesTableLib 37 | PrintLib 38 | DebugLib 39 | HobLib 40 | 41 | [Guids] 42 | gEfiHobListGuid 43 | gEfiHobMemoryAllocStackGuid 44 | gEfiHobMemoryAllocBspStoreGuid 45 | gEfiHobMemoryAllocModuleGuid -------------------------------------------------------------------------------- /EdkiiShellToolPkg/HstiWsmtDump/HstiWsmtDump.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = HstiWsmtDump 17 | FILE_GUID = 82CCC54B-CB46-46D7-9A05-BC99E3D1EFE1 18 | MODULE_TYPE = UEFI_APPLICATION 19 | VERSION_STRING = 1.0 20 | ENTRY_POINT = HstiWsmtDumpEntrypoint 21 | 22 | [Sources] 23 | HstiWsmtDump.c 24 | 25 | [Packages] 26 | MdePkg/MdePkg.dec 27 | 28 | [LibraryClasses] 29 | UefiApplicationEntryPoint 30 | BaseLib 31 | BaseMemoryLib 32 | MemoryAllocationLib 33 | DebugLib 34 | UefiBootServicesTableLib 35 | UefiLib 36 | 37 | [Guids] 38 | gAdapterInfoPlatformSecurityGuid 39 | gEfiAcpi10TableGuid 40 | gEfiAcpi20TableGuid 41 | 42 | [Protocols] 43 | gEfiAdapterInformationProtocolGuid 44 | 45 | [Depex] 46 | TRUE -------------------------------------------------------------------------------- /EdkiiShellToolPkg/InitSerial/InitSerial.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | Platform Hook Library instances 3 | 4 | @copyright 5 | INTEL CONFIDENTIAL 6 | Copyright 2012 - 2018 Intel Corporation. 7 | 8 | The source code contained or described herein and all documents related to the 9 | source code ("Material") are owned by Intel Corporation or its suppliers or 10 | licensors. Title to the Material remains with Intel Corporation or its suppliers 11 | and licensors. The Material may contain trade secrets and proprietary and 12 | confidential information of Intel Corporation and its suppliers and licensors, 13 | and is protected by worldwide copyright and trade secret laws and treaty 14 | provisions. No part of the Material may be used, copied, reproduced, modified, 15 | published, uploaded, posted, transmitted, distributed, or disclosed in any way 16 | without Intel's prior express written permission. 17 | 18 | No license under any patent, copyright, trade secret or other intellectual 19 | property right is granted to or conferred upon you by disclosure or delivery 20 | of the Materials, either expressly, by implication, inducement, estoppel or 21 | otherwise. Any license under such intellectual property rights must be 22 | express and approved by Intel in writing. 23 | 24 | Unless otherwise agreed by Intel in writing, you may not remove or alter 25 | this notice or any other notice embedded in Materials by Intel or 26 | Intel's suppliers or licensors in any way. 27 | 28 | This file contains a 'Sample Driver' and is licensed as such under the terms 29 | of your license agreement with Intel or your vendor. This file may be modified 30 | by the user, subject to the additional terms of the license agreement. 31 | 32 | @par Specification Reference: 33 | **/ 34 | 35 | #include 36 | #include 37 | #include 38 | #include 39 | 40 | EFI_STATUS 41 | EFIAPI 42 | InitSerialEntryPoint ( 43 | IN EFI_HANDLE ImageHandle, 44 | IN EFI_SYSTEM_TABLE *SystemTable 45 | ) 46 | { 47 | SerialPortInitialize (); 48 | SerialPortWrite ((UINT8 *)"Test Serial\n", sizeof("Test Serial\n")); 49 | return EFI_SUCCESS; 50 | } 51 | -------------------------------------------------------------------------------- /EdkiiShellToolPkg/InitSerial/InitSerial.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2017, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = InitSerial 17 | FILE_GUID = AED669FF-54DA-47FC-A65B-6B4DB9938177 18 | MODULE_TYPE = UEFI_APPLICATION 19 | VERSION_STRING = 1.0 20 | ENTRY_POINT = InitSerialEntryPoint 21 | 22 | [sources] 23 | InitSerial.c 24 | 25 | [Packages] 26 | MdePkg/MdePkg.dec 27 | 28 | [LibraryClasses] 29 | UefiApplicationEntryPoint 30 | BaseLib 31 | BaseMemoryLib 32 | MemoryAllocationLib 33 | DebugLib 34 | UefiLib 35 | UefiBootServicesTableLib 36 | SerialPortLib 37 | 38 | -------------------------------------------------------------------------------- /EdkiiShellToolPkg/License.txt: -------------------------------------------------------------------------------- 1 | Copyright (c) 2012, Intel Corporation. All rights reserved. 2 | 3 | Redistribution and use in source and binary forms, with or without 4 | modification, are permitted provided that the following conditions 5 | are met: 6 | 7 | * Redistributions of source code must retain the above copyright 8 | notice, this list of conditions and the following disclaimer. 9 | * Redistributions in binary form must reproduce the above copyright 10 | notice, this list of conditions and the following disclaimer in 11 | the documentation and/or other materials provided with the 12 | distribution. 13 | 14 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 17 | FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 18 | COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 19 | INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 20 | BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 21 | LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 22 | CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 23 | LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 24 | ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 25 | POSSIBILITY OF SUCH DAMAGE. 26 | -------------------------------------------------------------------------------- /EdkiiShellToolPkg/MemoryAttributesDump/MemoryAttributesDump.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = MemoryAttributesDump 17 | FILE_GUID = EB81D664-3EFC-4850-B8FB-A0E35A98BEBD 18 | MODULE_TYPE = UEFI_APPLICATION 19 | VERSION_STRING = 1.0 20 | ENTRY_POINT = MemoryAttributesDumpEntrypoint 21 | 22 | [Sources] 23 | MemoryAttributesDump.c 24 | 25 | [Packages] 26 | MdePkg/MdePkg.dec 27 | 28 | [LibraryClasses] 29 | UefiApplicationEntryPoint 30 | BaseLib 31 | BaseMemoryLib 32 | MemoryAllocationLib 33 | DebugLib 34 | UefiBootServicesTableLib 35 | UefiLib 36 | PrintLib 37 | 38 | [Guids] 39 | gEfiMemoryAttributesTableGuid 40 | 41 | [Depex] 42 | TRUE -------------------------------------------------------------------------------- /EdkiiShellToolPkg/MemoryTypeInfo/MemoryTypeInfo.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = MemoryTypeInfo 17 | FILE_GUID = EB81D664-3EFC-4850-B8FB-A0E35A98BEBD 18 | MODULE_TYPE = UEFI_APPLICATION 19 | VERSION_STRING = 1.0 20 | ENTRY_POINT = MemoryTypeInfoEntrypoint 21 | 22 | [Sources] 23 | MemoryTypeInfo.c 24 | 25 | [Packages] 26 | MdePkg/MdePkg.dec 27 | MdeModulePkg/MdeModulePkg.dec 28 | 29 | [LibraryClasses] 30 | UefiApplicationEntryPoint 31 | BaseLib 32 | BaseMemoryLib 33 | MemoryAllocationLib 34 | DebugLib 35 | UefiBootServicesTableLib 36 | UefiLib 37 | PrintLib 38 | HobLib 39 | 40 | [Guids] 41 | gEfiMemoryTypeInformationGuid -------------------------------------------------------------------------------- /EdkiiShellToolPkg/PatchMicrocode/PatchMicrocode.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2019, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = PatchMicrocode 17 | FILE_GUID = 15EEEA08-5766-4CEB-9362-7ADAA681999C 18 | MODULE_TYPE = UEFI_APPLICATION 19 | VERSION_STRING = 1.0 20 | ENTRY_POINT = PatchMicrocodeEntrypoint 21 | 22 | [Sources] 23 | PatchMicrocode.c 24 | 25 | [Packages] 26 | MdePkg/MdePkg.dec 27 | UefiCpuPkg/UefiCpuPkg.dec 28 | 29 | [LibraryClasses] 30 | UefiApplicationEntryPoint 31 | BaseLib 32 | BaseMemoryLib 33 | MemoryAllocationLib 34 | DebugLib 35 | UefiBootServicesTableLib 36 | UefiLib 37 | DebugLib 38 | 39 | [Guids] 40 | gEfiFileInfoGuid 41 | 42 | [Protocols] 43 | gEfiSimpleFileSystemProtocolGuid 44 | gEfiShellParametersProtocolGuid 45 | gEfiLoadedImageProtocolGuid 46 | gEfiMpServiceProtocolGuid 47 | -------------------------------------------------------------------------------- /EdkiiShellToolPkg/PcdDump/PCD/PcdDxe.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | 12 | **/ 13 | 14 | #ifndef _PCD_DXE_H_ 15 | #define _PCD_DXE_H_ 16 | 17 | // 18 | // Driver GUID 19 | // 20 | #define PCD_DXE_DRIVER_GUID { 0x80CF7257, 0x87AB, 0x47f9,{ 0xA3, 0xFE, 0xD5, 0x0B, 0x76, 0xD8, 0x95, 0x41 } } 21 | 22 | #endif 23 | -------------------------------------------------------------------------------- /EdkiiShellToolPkg/PcdDump/PCD/PcdPei.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | 12 | **/ 13 | 14 | #ifndef _PCD_PEI_H_ 15 | #define _PCD_PEI_H_ 16 | 17 | // 18 | // Driver GUID 19 | // 20 | #define PCD_PEI_DRIVER_GUID { 0x9B3ADA4F, 0xAE56, 0x4c24,{ 0x8D, 0xEA, 0xF0, 0x3B, 0x75, 0x58, 0xAE, 0x50 } } 21 | 22 | #endif 23 | 24 | -------------------------------------------------------------------------------- /EdkiiShellToolPkg/PcdDump/PcdDump.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = PcdDump 17 | FILE_GUID = 53423B80-27CB-441C-AE64-AA19D85EC4C9 18 | MODULE_TYPE = UEFI_APPLICATION 19 | VERSION_STRING = 1.0 20 | ENTRY_POINT = PcdDumpEntrypoint 21 | 22 | [Sources] 23 | PcdDump.c 24 | AppSupport.c 25 | 26 | [Packages] 27 | MdePkg/MdePkg.dec 28 | MdeModulePkg/MdeModulePkg.dec 29 | 30 | [LibraryClasses] 31 | UefiApplicationEntryPoint 32 | BaseLib 33 | BaseMemoryLib 34 | MemoryAllocationLib 35 | DebugLib 36 | UefiBootServicesTableLib 37 | UefiRuntimeServicesTableLib 38 | UefiLib 39 | PrintLib 40 | HobLib 41 | 42 | [Protocols] 43 | gEfiLoadedImageProtocolGuid 44 | gEfiSimpleFileSystemProtocolGuid 45 | gEfiShellParametersProtocolGuid 46 | gEfiFirmwareVolume2ProtocolGuid 47 | gGetPcdInfoProtocolGuid 48 | gEfiPcdProtocolGuid 49 | gEfiGetPcdInfoProtocolGuid 50 | gPcdProtocolGuid 51 | 52 | [Guids] 53 | gEfiFileInfoGuid 54 | gPcdDataBaseHobGuid 55 | gPcdDataBaseSignatureGuid 56 | gEfiVariableGuid 57 | gEfiAuthenticatedVariableGuid 58 | 59 | [Pcd] 60 | gEfiMdeModulePkgTokenSpaceGuid.PcdVpdBaseAddress ## SOMETIMES_CONSUMES 61 | 62 | [Depex] 63 | TRUE -------------------------------------------------------------------------------- /EdkiiShellToolPkg/ScsiInfo/ScsiInfo.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2017, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = ScsiInfo 17 | FILE_GUID = DDD326C3-C367-4782-B445-8D6C4145A6F8 18 | MODULE_TYPE = UEFI_APPLICATION 19 | VERSION_STRING = 1.0 20 | ENTRY_POINT = ScsiInfoEntryPoint 21 | 22 | [sources] 23 | ScsiInfo.c 24 | 25 | [Packages] 26 | MdePkg/MdePkg.dec 27 | 28 | [LibraryClasses] 29 | UefiApplicationEntryPoint 30 | BaseLib 31 | BaseMemoryLib 32 | MemoryAllocationLib 33 | DebugLib 34 | UefiLib 35 | UefiBootServicesTableLib 36 | DxeServicesTableLib 37 | PrintLib 38 | DevicePathLib 39 | 40 | [Protocols] 41 | gEfiPciIoProtocolGuid 42 | gEfiScsiPassThruProtocolGuid 43 | -------------------------------------------------------------------------------- /EdkiiShellToolPkg/SmiPerf/SmiPerf.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Copyright (c) 2017, Intel Corporation. All rights reserved.
4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | 12 | **/ 13 | 14 | #include 15 | #include 16 | #include 17 | #include 18 | #include 19 | #include 20 | #include 21 | #include 22 | #include 23 | #include 24 | 25 | #define COUNT 1000 26 | 27 | EFI_STATUS 28 | EFIAPI 29 | InitializeSmiPerf ( 30 | IN EFI_HANDLE ImageHandle, 31 | IN EFI_SYSTEM_TABLE *SystemTable 32 | ) 33 | { 34 | UINT64 StartTsc; 35 | UINT64 EndTsc; 36 | UINTN Index; 37 | PERFORMANCE_PROPERTY *PerformanceProperty; 38 | EFI_STATUS Status; 39 | EFI_TPL OldTpl; 40 | 41 | OldTpl = gBS->RaiseTPL (TPL_HIGH_LEVEL); 42 | StartTsc = AsmReadTsc (); 43 | for (Index = 0; Index < COUNT; Index++) { 44 | IoWrite8 (0xB2, 0xFF); 45 | } 46 | EndTsc = AsmReadTsc (); 47 | gBS->RestoreTPL (OldTpl); 48 | 49 | Status = EfiGetSystemConfigurationTable (&gPerformanceProtocolGuid, (VOID **)&PerformanceProperty); 50 | if (EFI_ERROR (Status)) { 51 | Print (L"PERFORMANCE_PROPERTY not found!\n"); 52 | return EFI_NOT_FOUND; 53 | } else { 54 | Print (L"PERFORMANCE_PROPERTY\n"); 55 | Print (L" Revision - 0x%x\n", PerformanceProperty->Revision); 56 | Print (L" TimerStartValue - %ld\n", PerformanceProperty->TimerStartValue); 57 | Print (L" TimerEndValue - %ld\n", PerformanceProperty->TimerEndValue); 58 | Print (L" Frequency - %ld\n", PerformanceProperty->Frequency); 59 | } 60 | 61 | Print (L"%d SMI - %ld tick\n", COUNT, EndTsc - StartTsc); 62 | // 63 | // 1 SMI = (EndTsc - StartTsc)/COUNT * 1000 * 1000 / Frequency uS 64 | // = 341115 * 1000 * 1000 / 1616844000 65 | // 66 | Print (L"SMI - %ld us\n", DivU64x64Remainder (MultU64x64 (DivU64x32(EndTsc - StartTsc, COUNT), 1000 * 1000), PerformanceProperty->Frequency, NULL)); 67 | 68 | return EFI_SUCCESS; 69 | } 70 | -------------------------------------------------------------------------------- /EdkiiShellToolPkg/SmiPerf/SmiPerf.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2017, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = SmiPerf 17 | FILE_GUID = 2212265E-7011-41c9-9102-013196EC83D9 18 | MODULE_TYPE = UEFI_APPLICATION 19 | VERSION_STRING = 1.0 20 | ENTRY_POINT = InitializeSmiPerf 21 | 22 | [Sources] 23 | SmiPerf.c 24 | 25 | [Packages] 26 | MdePkg/MdePkg.dec 27 | MdeModulePkg/MdeModulePkg.dec 28 | 29 | [LibraryClasses] 30 | UefiApplicationEntryPoint 31 | BaseLib 32 | BaseMemoryLib 33 | MemoryAllocationLib 34 | DebugLib 35 | UefiLib 36 | UefiBootServicesTableLib 37 | DxeServicesTableLib 38 | PrintLib 39 | DebugLib 40 | IoLib 41 | 42 | [Guids] 43 | gPerformanceProtocolGuid -------------------------------------------------------------------------------- /EdkiiShellToolPkg/SmmProfileDump/SmmProfile.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | 12 | **/ 13 | 14 | #ifndef __SMM_PROFILE_H__ 15 | #define __SMM_PROFILE_H__ 16 | 17 | #define SMM_PROFILE_NAME L"SmmProfileData" 18 | #define SMM_PROFILE_GUID {0xA3FF0EF5, 0x0C28, 0x42f5, { 0xB5, 0x44, 0x8C, 0x7D, 0xE1, 0xE8, 0x00, 0x14 }} 19 | 20 | typedef struct { 21 | UINT64 HeaderSize; 22 | UINT64 MaxDataEntries; 23 | UINT64 MaxDataSize; 24 | UINT64 CurDataEntries; 25 | UINT64 CurDataSize; 26 | UINT64 TsegStart; 27 | UINT64 TsegSize; 28 | UINT64 NumSmis; 29 | UINT64 NumCpus; 30 | } SMM_PROFILE_HEADER; 31 | 32 | typedef struct { 33 | UINT64 SmiNum; 34 | UINT64 CpuNum; 35 | UINT64 ApicId; 36 | UINT64 ErrorCode; 37 | UINT64 Instruction; 38 | UINT64 Address; 39 | UINT64 SmiCmd; 40 | } SMM_PROFILE_ENTRY; 41 | 42 | #endif -------------------------------------------------------------------------------- /EdkiiShellToolPkg/SmmProfileDump/SmmProfileDump.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = SmmProfileDump 17 | FILE_GUID = E1A991AE-2271-4C77-983B-A46A80E9D4DF 18 | MODULE_TYPE = UEFI_APPLICATION 19 | VERSION_STRING = 1.0 20 | ENTRY_POINT = SmmProfileDumpEntrypoint 21 | 22 | [Sources] 23 | SmmProfileDump.c 24 | 25 | [Packages] 26 | MdePkg/MdePkg.dec 27 | 28 | [LibraryClasses] 29 | UefiApplicationEntryPoint 30 | BaseLib 31 | BaseMemoryLib 32 | MemoryAllocationLib 33 | DebugLib 34 | UefiBootServicesTableLib 35 | UefiRuntimeServicesTableLib 36 | UefiLib 37 | PrintLib 38 | DevicePathLib 39 | DxeServicesLib 40 | 41 | [Protocols] 42 | gEfiLoadedImageProtocolGuid 43 | 44 | [Depex] 45 | TRUE -------------------------------------------------------------------------------- /EdkiiShellToolPkg/StackUsage/StackUsage.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = StackUsage 17 | FILE_GUID = 6018C71D-A8F0-4E29-A90A-8E5342469DF8 18 | MODULE_TYPE = UEFI_APPLICATION 19 | VERSION_STRING = 1.0 20 | ENTRY_POINT = InitializeStackUsage 21 | 22 | [Sources] 23 | StackUsage.c 24 | AppSupport.c 25 | 26 | [Packages] 27 | MdePkg/MdePkg.dec 28 | 29 | [LibraryClasses] 30 | UefiApplicationEntryPoint 31 | BaseLib 32 | BaseMemoryLib 33 | MemoryAllocationLib 34 | DebugLib 35 | UefiLib 36 | UefiBootServicesTableLib 37 | DxeServicesTableLib 38 | PrintLib 39 | HobLib 40 | DebugLib 41 | 42 | [Guids] 43 | gEfiHobMemoryAllocStackGuid ## SOMETIMES_PRODUCES ## HOB # MemoryAllocation StackHob 44 | 45 | [Protocols] 46 | gEfiShellProtocolGuid 47 | gEfiShellParametersProtocolGuid -------------------------------------------------------------------------------- /EdkiiShellToolPkg/Tcg2DumpLog/SampleTcgEventLog/EmulatorIa32TcgEvent.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jyao1/EdkiiShellTool/b9ab3b61e52d12a1c43724427da8702600d8d015/EdkiiShellToolPkg/Tcg2DumpLog/SampleTcgEventLog/EmulatorIa32TcgEvent.bin -------------------------------------------------------------------------------- /EdkiiShellToolPkg/Tcg2DumpLog/SampleTcgEventLog/EmulatorX64TcgEvent.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jyao1/EdkiiShellTool/b9ab3b61e52d12a1c43724427da8702600d8d015/EdkiiShellToolPkg/Tcg2DumpLog/SampleTcgEventLog/EmulatorX64TcgEvent.bin -------------------------------------------------------------------------------- /EdkiiShellToolPkg/Tcg2DumpLog/Tcg2DumpLog.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2018, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials 5 | # are licensed and made available under the terms and conditions of the BSD License 6 | # which accompanies this distribution. The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php 8 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 9 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 10 | # 11 | ## 12 | 13 | [Defines] 14 | INF_VERSION = 0x00010005 15 | BASE_NAME = Tcg2DumpLog 16 | FILE_GUID = 684B9FB9-CBC5-4273-8399-740E48D76848 17 | MODULE_TYPE = UEFI_APPLICATION 18 | VERSION_STRING = 1.0 19 | ENTRY_POINT = UefiMain 20 | 21 | # 22 | # The following information is for reference only and not required by the build tools. 23 | # 24 | # VALID_ARCHITECTURES = IA32 X64 IPF 25 | # 26 | 27 | [Sources] 28 | Tcg2DumpLog.c 29 | 30 | [Packages] 31 | MdePkg/MdePkg.dec 32 | MdeModulePkg/MdeModulePkg.dec 33 | SecurityPkg/SecurityPkg.dec 34 | ShellPkg/ShellPkg.dec 35 | CryptoPkg/CryptoPkg.dec 36 | 37 | [LibraryClasses] 38 | MemoryAllocationLib 39 | BaseLib 40 | UefiBootServicesTableLib 41 | UefiApplicationEntryPoint 42 | UefiRuntimeServicesTableLib 43 | BaseMemoryLib 44 | DebugLib 45 | Tpm2CommandLib 46 | PrintLib 47 | UefiLib 48 | ShellLib 49 | BaseCryptLib 50 | 51 | [Guids] 52 | gEfiAcpiTableGuid 53 | 54 | [Protocols] 55 | gEfiTcg2ProtocolGuid ## CONSUMES 56 | gEfiTcg2FinalEventsTableGuid 57 | -------------------------------------------------------------------------------- /EdkiiShellToolPkg/UsbInfo/UsbInfo.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2017, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = UsbInfo 17 | FILE_GUID = 03C5A8B3-D02D-4f22-9634-C527515AA6C6 18 | MODULE_TYPE = UEFI_APPLICATION 19 | VERSION_STRING = 1.0 20 | ENTRY_POINT = UsbInfoEntryPoint 21 | 22 | [sources] 23 | UsbInfo.c 24 | 25 | [Packages] 26 | MdePkg/MdePkg.dec 27 | 28 | [LibraryClasses] 29 | UefiApplicationEntryPoint 30 | BaseLib 31 | BaseMemoryLib 32 | MemoryAllocationLib 33 | DebugLib 34 | UefiLib 35 | UefiBootServicesTableLib 36 | DxeServicesTableLib 37 | PrintLib 38 | DevicePathLib 39 | 40 | [Protocols] 41 | gEfiUsbIoProtocolGuid 42 | gEfiUsb2HcProtocolGuid 43 | gEfiPciIoProtocolGuid 44 | -------------------------------------------------------------------------------- /EdkiiShellToolPkg/VtdDump/Vtd/Map.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | 12 | **/ 13 | 14 | #ifndef __IOMMU_MAP_H__ 15 | #define __IOMMU_MAP_H__ 16 | 17 | #include 18 | #include 19 | 20 | #define MAP_HANDLE_INFO_SIGNATURE SIGNATURE_32 ('H', 'M', 'A', 'P') 21 | 22 | typedef struct { 23 | UINT32 Signature; 24 | LIST_ENTRY Link; 25 | EFI_HANDLE Handle; 26 | UINT64 IoMmuAccess; 27 | } MAP_HANDLE_INFO; 28 | 29 | #define MAP_INFO_SIGNATURE SIGNATURE_32 ('D', 'M', 'A', 'P') 30 | typedef struct { 31 | UINT32 Signature; 32 | LIST_ENTRY Link; 33 | EDKII_IOMMU_OPERATION Operation; 34 | UINTN NumberOfBytes; 35 | UINTN NumberOfPages; 36 | EFI_PHYSICAL_ADDRESS HostAddress; 37 | EFI_PHYSICAL_ADDRESS DeviceAddress; 38 | LIST_ENTRY HandleList; 39 | } MAP_INFO; 40 | #define MAP_INFO_FROM_LINK(a) CR (a, MAP_INFO, Link, MAP_INFO_SIGNATURE) 41 | 42 | #endif 43 | -------------------------------------------------------------------------------- /EdkiiShellToolPkg/VtdDump/Vtd/PeiPmr.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | This program and the accompanying materials 5 | are licensed and made available under the terms and conditions of the BSD License 6 | which accompanies this distribution. The full text of the license may be found at 7 | http://opensource.org/licenses/bsd-license.php 8 | 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | 12 | **/ 13 | 14 | #ifndef __PEI_PMR_H__ 15 | #define __PEI_PMR_H__ 16 | 17 | #include 18 | 19 | #define VTD_INFO_GUID { \ 20 | 0x222f5e30, 0x5cd, 0x49c6, { 0x8a, 0xc, 0x36, 0xd6, 0x58, 0x41, 0xe0, 0x82 } \ 21 | } 22 | 23 | #define DMA_BUFFER_INFO_GUID { \ 24 | 0x7b624ec7, 0xfb67, 0x4f9c, { 0xb6, 0xb0, 0x4d, 0xfa, 0x9c, 0x88, 0x20, 0x39 } \ 25 | } 26 | 27 | typedef struct { 28 | UINT32 DmaBufferBase; 29 | UINT32 DmaBufferSize; 30 | UINT32 DmaBufferCurrentTop; 31 | UINT32 DmaBufferCurrentBottom; 32 | } DMA_BUFFER_INFO_32; 33 | 34 | typedef struct { 35 | UINT64 DmaBufferBase; 36 | UINT64 DmaBufferSize; 37 | UINT64 DmaBufferCurrentTop; 38 | UINT64 DmaBufferCurrentBottom; 39 | } DMA_BUFFER_INFO_64; 40 | 41 | #endif 42 | -------------------------------------------------------------------------------- /EdkiiShellToolPkg/VtdDump/VtdDump.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Copyright (c) 2016, Intel Corporation. All rights reserved.
4 | # This program and the accompanying materials are licensed and made available under 5 | # the terms and conditions of the BSD License that accompanies this distribution. 6 | # The full text of the license may be found at 7 | # http://opensource.org/licenses/bsd-license.php. 8 | # 9 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 | # 12 | ## 13 | 14 | [Defines] 15 | INF_VERSION = 0x00010005 16 | BASE_NAME = VtdDump 17 | FILE_GUID = 11BA265D-BC24-440D-A0F4-F1D28F00516C 18 | MODULE_TYPE = UEFI_APPLICATION 19 | VERSION_STRING = 1.0 20 | ENTRY_POINT = VtdDumpEntrypoint 21 | 22 | [Sources] 23 | VtdDump.c 24 | 25 | [Packages] 26 | MdePkg/MdePkg.dec 27 | MdeModulePkg/MdeModulePkg.dec 28 | IntelSiliconPkg/IntelSiliconPkg.dec 29 | 30 | [LibraryClasses] 31 | UefiApplicationEntryPoint 32 | BaseLib 33 | BaseMemoryLib 34 | MemoryAllocationLib 35 | DebugLib 36 | UefiBootServicesTableLib 37 | UefiRuntimeServicesTableLib 38 | UefiLib 39 | PrintLib 40 | HobLib 41 | PciSegmentLib 42 | IoLib 43 | 44 | [Guids] 45 | gEfiAcpi20TableGuid 46 | gEfiAcpi10TableGuid 47 | 48 | [Protocols] 49 | gEdkiiIoMmuProtocolGuid 50 | gEfiPciIoProtocolGuid 51 | gEdkiiPlatformVTdPolicyProtocolGuid 52 | 53 | [Depex] 54 | TRUE -------------------------------------------------------------------------------- /Readme.md: -------------------------------------------------------------------------------- 1 | # This package includes some debug tool for EDKII BIOS. 2 | 3 | ## How to build? 4 | Just build it as a normal EDKII package. 5 | 6 | 0) Download EDKII from github https://github.com/tianocore/edk2 7 | 8 | 1) Put EdkiiShellToolPkg to root directory 9 | 10 | 2) Build EdkiiShellToolPkg as normal way. 11 | 12 | ## Feature: 13 | - Gcd 14 | 15 | A tool to dump GCD data structure, according to PI specification. 16 | 17 | - HobList 18 | 19 | A tool to dump HOB data structure, according to PI specification. 20 | 21 | - MemoryAttributesDump 22 | 23 | A tool to dump Memory Attribute Table, according to UEFI specification. 24 | 25 | - HstiWsmtDump 26 | 27 | A tool to dump HSTI table and WSMT table, according to Microsoft HSTI and WSMT specification. 28 | 29 | - EsrtFmpDump 30 | 31 | A tool to dump ESRT table and FMP capsule information, according to UEFI specification. 32 | 33 | - MemoryTypeInfo 34 | 35 | A tool to dump EDKII memory type information, according to EDKII implementation. 36 | 37 | - PerfDump 38 | 39 | A tool to dump EDKII performance data, according to EDKII implementation. 40 | 41 | - PcdDump 42 | 43 | A tool to dump PCD information according to PI specification and PCD internal database according to EDKII implementation. 44 | 45 | - SmmProfileDump 46 | 47 | A tool to dump EDKII SMM profile data, according to EDKII implementation. 48 | 49 | - EdkiiCoreDatabaseDump 50 | 51 | Tools to dump EDKII DXE Core, SMM Core, and PEI Core internal data structure, according to EDKII implementation. 52 | 53 | A user may run DxeCoreDumpApp in SHELL directly. 54 | A user need include PeiCoreDump.inf in BIOS to run PeiCoreDumpApp in UEFI SHELL. 55 | A user need include SmmCoreDump.inf in BIOS to run SmmCoreDumpApp in UEFI SHELL. 56 | 57 | These core database dump features are only for debug purpose. Please do not include these PeiCoreDump and SmmCoreDump in a production BIOS. 58 | 59 | - GetPciOprom 60 | 61 | A tool to dump PCI OPROM information and save PCI OPROM to file. 62 | 63 | - PatchMicrocode 64 | 65 | A tool to patch the CPU Microcode. 66 | 67 | - VtdDump 68 | 69 | A tool to dump VTD information according to VTd specification and IOMMU map information according to EDKII implementation. 70 | 71 | - Tcg2Dump 72 | 73 | A tool to dump TCG2 event log, according to TCG specification. 74 | 75 | - StackUage 76 | 77 | A tool to check the stack usage in an EFI application. 78 | This tool shows the stack size, current stack location and the stack touched by a UEFI application. 79 | UEFI specification requires 128K as minimal. We observed that some special programs require more. 80 | This tool helps a developer to adjust the stack size. 81 | 82 | - DbxEnroll 83 | 84 | A tool to enroll the [revocation list](https://uefi.org/revocationlistfile) in UEFI shell. 85 | 86 | ## Known limitation: 87 | This package is only the sample code to show the concept. 88 | It does not have a full validation and does not meet the production quality yet. 89 | 90 | Some tools use edk2 open source package internal data structure. They work only on a UEFI BIOS based on open source edk2 package. 91 | --------------------------------------------------------------------------------