├── .github ├── release-drafter.yml └── workflows │ └── build.yml ├── .gitignore ├── LICENSE ├── Platform └── NVIDIA │ ├── DeviceTree │ ├── DeviceTree.dsc │ ├── PlatformBuild.py │ └── build.sh │ ├── HostBasedTests │ ├── HostBasedTests.ci.yaml │ ├── HostBasedTests.dsc │ ├── HostBasedTests.dsc.inc │ ├── HostBasedTests.fdf │ ├── TestBuild.py │ └── test.sh │ ├── Kconfig │ ├── KconfigIncludes │ ├── BuildDatacenter.conf │ ├── BuildEmbedded.conf │ ├── BuildGeneral.conf │ ├── CommonSocDatacenter.conf │ ├── CommonSocGeneral.conf │ ├── README.txt │ ├── SocT23X.conf │ ├── SocT24X.conf │ └── SocT26X.conf │ ├── L4TLauncher │ ├── L4TLauncher.dsc │ ├── PlatformBuild.py │ └── build.sh │ ├── NVIDIA.common.dsc │ ├── NVIDIA.common.dsc.inc │ ├── NVIDIA.common.fdf │ ├── NVIDIA.common.fdf.inc │ ├── NVIDIA.defconfig │ ├── NVIDIA.fvmain.fdf.inc │ ├── NVIDIA.global.dsc.inc │ ├── StandaloneMm.common.dsc.inc │ ├── StandaloneMm │ ├── PlatformBuild.py │ ├── StandaloneMm.dsc │ ├── StandaloneMm.dsc.inc │ ├── StandaloneMm.fdf │ ├── StandaloneMm.fdf.inc │ └── build.sh │ ├── StandaloneMmFfa.common.dsc.inc │ ├── StandaloneMmFfa.common.fdf.inc │ ├── StandaloneMmJetson │ ├── PlatformBuild.py │ ├── StandaloneMmJetson.dsc │ ├── StandaloneMmJetson.dsc.inc │ ├── StandaloneMmJetson.fdf │ ├── StandaloneMmJetson.fdf.inc │ └── build.sh │ ├── StandaloneMmOptee │ ├── PlatformBuild.py │ ├── StandaloneMmOptee.dsc │ ├── StandaloneMmOptee.dsc.inc │ ├── StandaloneMmOptee.fdf │ ├── StandaloneMmOptee.fdf.inc │ └── build.sh │ ├── Tegra │ ├── DefConfigs │ │ ├── t23x_android.defconfig │ │ ├── t23x_embedded.defconfig │ │ ├── t23x_general.defconfig │ │ ├── t23x_general_igx.defconfig │ │ ├── t24x_datacenter.defconfig │ │ ├── t26x_android.defconfig │ │ ├── t26x_embedded.defconfig │ │ └── t26x_general.defconfig │ ├── PlatformBuild.py │ └── build.sh │ ├── TegraVirt │ ├── PlatformBuild.py │ ├── TegraVirt.dsc │ ├── TegraVirt.fdf │ └── build.sh │ └── iasl_ext_dep.yaml ├── README.md ├── Sdk └── TH500Gpu │ ├── TH500GpuSdk.dec │ └── include │ ├── README │ └── src │ ├── common │ ├── inc │ │ └── swref │ │ │ └── published │ │ │ ├── blackwell │ │ │ └── gb100 │ │ │ │ └── dev_fb.h │ │ │ └── hopper │ │ │ └── gh100 │ │ │ ├── dev_fb.h │ │ │ ├── dev_fsp_pri.h │ │ │ ├── dev_therm.h │ │ │ └── dev_therm_addendum.h │ └── sdk │ │ └── nvidia │ │ └── inc │ │ ├── cpuopsys.h │ │ ├── nvmisc.h │ │ └── nvtypes.h │ └── nvidia │ └── arch │ └── nvalloc │ └── common │ └── inc │ └── fsp │ ├── fsp_emem_channels.h │ ├── fsp_mctp_format.h │ ├── fsp_nvdm_format.h │ └── nvdm_payload_cmd_response.h └── Silicon └── NVIDIA ├── Application ├── ClockUtil │ ├── ClockUtil.c │ ├── ClockUtil.inf │ ├── ClockUtil.uni │ ├── ClockUtilExtra.uni │ └── ClockUtilStrings.uni ├── FalconUtil │ ├── FalconUtil.c │ ├── FalconUtil.inf │ ├── FalconUtilExtra.uni │ └── FalconUtilStrings.uni ├── GpioUtil │ ├── GpioUtil.c │ ├── GpioUtil.inf │ ├── GpioUtil.uni │ ├── GpioUtilExtra.uni │ └── GpioUtilStrings.uni ├── HiiKeywordUtil │ ├── HiiKeywordUtil.c │ ├── HiiKeywordUtil.inf │ ├── HiiKeywordUtil.uni │ └── HiiKeywordUtilExtra.uni ├── HostInterfaceUtil │ ├── HostInterfaceUtil.c │ ├── HostInterfaceUtil.inf │ ├── HostInterfaceUtil.uni │ ├── HostInterfaceUtilExtra.uni │ └── HostInterfaceUtilStrings.uni ├── IpmiUtility │ ├── IpmiUtility.c │ ├── IpmiUtility.inf │ ├── IpmiUtility.uni │ ├── IpmiUtilityExtra.uni │ └── IpmiUtilityStrings.uni ├── L4TLauncher │ ├── L4TLauncher.c │ ├── L4TLauncher.h │ ├── L4TLauncher.inf │ ├── L4TLauncher.uni │ ├── L4TLauncherExtra.uni │ ├── L4TOpteeDecrypt.c │ ├── L4TOpteeDecrypt.h │ ├── L4TRootfsValidation.c │ └── L4TRootfsValidation.h ├── RegulatorUtil │ ├── RegulatorUtil.c │ ├── RegulatorUtil.inf │ ├── RegulatorUtil.uni │ ├── RegulatorUtilExtra.uni │ └── RegulatorUtilStrings.uni ├── StackCheck │ ├── StackCheck.c │ ├── StackCheck.inf │ ├── StackCheck.uni │ └── StackCheckExtra.uni ├── TestInjectAssert │ ├── TestInjectAssert.c │ ├── TestInjectAssert.inf │ ├── TestInjectAssert.uni │ ├── TestInjectAssertExtra.uni │ └── TestInjectAssertStrings.uni └── WfiApp │ ├── WfiApp.c │ ├── WfiApp.inf │ ├── WfiApp.uni │ └── WfiAppExtra.uni ├── Assets ├── nvidiagray1080.bmp ├── nvidiagray480.bmp └── nvidiagray720.bmp ├── Drivers ├── AmlGenerationDxe │ ├── AmlGenerationDxe.c │ ├── AmlGenerationDxe.inf │ └── AmlGenerationDxePrivate.h ├── AmlPatchDxe │ ├── AmlPatchDxe.c │ ├── AmlPatchDxe.inf │ └── AmlPatchDxePrivate.h ├── AndroidBootDxe │ ├── AndroidBootConfig.c │ ├── AndroidBootConfig.h │ ├── AndroidBootDxe.c │ ├── AndroidBootDxe.h │ ├── AndroidBootDxe.inf │ └── UnitTest │ │ ├── AndroidBootDxeUnitTest.inf │ │ ├── AndroidBootDxeUnitTestPrivate.h │ │ ├── AndroidBootDxeUnitTests.c │ │ ├── BootImgHeaderUnitTests.c │ │ └── UpdateKernelArgsUnitTests.c ├── ArmSbmrStatusCodeDxe │ ├── ArmSbmrStatusCodeDxe.c │ └── ArmSbmrStatusCodeDxe.inf ├── BasicProfilerDxe │ ├── BasicProfilerDxe.c │ └── BasicProfilerDxe.inf ├── BmcNic │ └── UsbRndisDxe │ │ ├── ComponentName.c │ │ ├── ComponentName.h │ │ ├── Debug.c │ │ ├── Debug.h │ │ ├── Rndis.c │ │ ├── Rndis.h │ │ ├── Snp.c │ │ ├── Snp.h │ │ ├── UsbNicInfo.c │ │ ├── UsbRndisDxe.c │ │ ├── UsbRndisDxe.h │ │ └── UsbRndisDxe.inf ├── BootChainDxe │ ├── BootChainDxe.c │ ├── BootChainDxe.inf │ └── BootChainDxePrivate.h ├── BootWatchdog │ ├── BootWatchdog.c │ └── BootWatchdog.inf ├── BpmpI2c │ ├── BpmpI2c.h │ ├── BpmpI2cDxe.c │ └── BpmpI2cDxe.inf ├── BpmpIpc │ ├── BpmpIpc.c │ ├── BpmpIpcDxe.c │ ├── BpmpIpcDxe.inf │ ├── BpmpIpcDxePrivate.h │ ├── BpmpIpcPrivate.h │ ├── ComponentName.c │ ├── HspDoorbell.c │ └── HspDoorbellPrivate.h ├── BpmpScmi │ ├── BpmpScmiClockProtocolPrivate.h │ ├── BpmpScmiDxe.inf │ ├── ScmiClockProtocol.c │ ├── ScmiDxe.c │ └── ScmiDxe.h ├── CapsuleUpdatePolicyDxe │ ├── CapsuleUpdatePolicyDxe.c │ ├── CapsuleUpdatePolicyDxe.h │ └── CapsuleUpdatePolicyDxe.inf ├── ConfigurationManager │ ├── ConfigurationManager.md │ ├── ConfigurationManagerDxe.c │ ├── ConfigurationManagerDxe.inf │ └── ConfigurationManagerGet.c ├── ConfigurationManagerData │ ├── AcpiTableList │ │ ├── AcpiTableList.inf │ │ ├── AcpiTableListParser.c │ │ ├── AcpiTableListParser.h │ │ └── PlatformASLTablesLib │ │ │ ├── BpmpSsdtSocket0_TH500.asl │ │ │ ├── BpmpSsdtSocket1_TH500.asl │ │ │ ├── BpmpSsdtSocket2_TH500.asl │ │ │ ├── BpmpSsdtSocket3_TH500.asl │ │ │ ├── Dsdt_T234.asl │ │ │ ├── Dsdt_T264.asl │ │ │ ├── Dsdt_TH500.asl │ │ │ ├── PlatformASLTablesLib.inf │ │ │ ├── SsdtEth.asl │ │ │ ├── SsdtHda.asl │ │ │ ├── SsdtSocket1_TH500.asl │ │ │ ├── SsdtSocket2_TH500.asl │ │ │ ├── SsdtSocket3_TH500.asl │ │ │ └── SsdtTpm_TH500.asl │ ├── ApmtParser │ │ ├── ApmtParser.c │ │ ├── ApmtParser.h │ │ └── ApmtParser.inf │ ├── BootArchInfo │ │ ├── BootArchInfo.inf │ │ ├── BootArchInfoParser.c │ │ └── BootArchInfoParser.h │ ├── CacheInfo │ │ ├── CacheInfoParser.c │ │ └── CacheInfoParser.h │ ├── ConfigurationManagerDataDxe.c │ ├── ConfigurationManagerDataDxe.inf │ ├── ConfigurationManagerDataRepoLib.c │ ├── ConfigurationManagerDataRepoLib.h │ ├── ConfigurationManagerDataRepoLib.inf │ ├── Dbg2NetworkParser │ │ ├── Dbg2NetworkParser.c │ │ ├── Dbg2NetworkParser.h │ │ └── Dbg2NetworkParser.inf │ ├── DsdtPatcher │ │ ├── DsdtPatcher.c │ │ ├── DsdtPatcher.h │ │ └── DsdtPatcher.inf │ ├── EthernetInfo │ │ ├── EthernetInfo.inf │ │ ├── EthernetInfoParser.c │ │ └── EthernetInfoParser.h │ ├── FanInfo │ │ ├── FanInfo.inf │ │ ├── FanInfoParser.c │ │ └── FanInfoParser.h │ ├── FixedFeatureFlags │ │ ├── FixedFeatureFlags.inf │ │ ├── FixedFeatureFlagsParser.c │ │ └── FixedFeatureFlagsParser.h │ ├── GenericTimer │ │ ├── GenericTimer.inf │ │ ├── GenericTimerParser.c │ │ └── GenericTimerParser.h │ ├── GenericWatchdog │ │ ├── GenericWatchdog.inf │ │ ├── GenericWatchdogInfoParser.c │ │ └── GenericWatchdogInfoParser.h │ ├── Gic │ │ ├── Gic.inf │ │ ├── GicCParser.c │ │ ├── GicDParser.c │ │ ├── GicItsParser.c │ │ ├── GicMsiFrameParser.c │ │ ├── GicParser.h │ │ ├── GicRedistributorParser.c │ │ ├── LpiParser.c │ │ └── RegisterGicParsers.c │ ├── HdaInfo │ │ ├── HdaInfo.inf │ │ ├── HdaInfoParser.c │ │ └── HdaInfoParser.h │ ├── HmatParser │ │ ├── HmatParser.c │ │ ├── HmatParser.h │ │ └── HmatParser.inf │ ├── Iort │ │ ├── ConfigurationIortPrivate.h │ │ ├── Iort.inf │ │ ├── IortInfoParser.c │ │ └── IortInfoParser.h │ ├── IpmiParser │ │ ├── IpmiParser.c │ │ ├── IpmiParser.h │ │ └── IpmiParser.inf │ ├── MpamParser │ │ ├── MpamParser.c │ │ ├── MpamParser.h │ │ └── MpamParser.inf │ ├── NvCmObjectDescUtility.c │ ├── NvCmObjectDescUtilityPrivate.h │ ├── NvdlaInfo │ │ ├── NvdlaInfoParser.c │ │ ├── NvdlaInfoParser.h │ │ └── NvdlaInfoParser.inf │ ├── PciInfoParser │ │ ├── PciInfoParser.c │ │ ├── PciInfoParser.h │ │ └── PciInfoParser.inf │ ├── PlatformASLTablesLib.c │ ├── PowerManagementProfile │ │ ├── PowerManagementProfile.inf │ │ ├── PowerManagementProfileParser.c │ │ └── PowerManagementProfileParser.h │ ├── ProcHierarchyInfo │ │ ├── ProcHierarchyInfo.inf │ │ ├── ProcHierarchyInfoParser.c │ │ └── ProcHierarchyInfoParser.h │ ├── ProtocolBasedObjects │ │ ├── ProtocolBasedObjects.inf │ │ ├── ProtocolBasedObjectsParser.c │ │ └── ProtocolBasedObjectsParser.h │ ├── ResourceTokenUtility.c │ ├── ResourceTokenUtility.h │ ├── SdhciInfo │ │ ├── SdhciInfo.inf │ │ ├── SdhciInfoParser.c │ │ └── SdhciInfoParser.h │ ├── SerialPortInfo │ │ ├── SerialPortInfo.inf │ │ ├── SerialPortInfoParser.c │ │ └── SerialPortInfoParser.h │ ├── SlitParser │ │ ├── SlitParser.c │ │ ├── SlitParser.h │ │ └── SlitParser.inf │ ├── SmbiosParser │ │ ├── ConfigurationSmbiosMem │ │ │ ├── SmbiosMemParser.c │ │ │ └── SmbiosMemParser.h │ │ ├── ConfigurationSmbiosProcSub │ │ │ ├── SmbiosProcSubParser.c │ │ │ └── SmbiosProcSubParser.h │ │ ├── ConfigurationSmbiosType0 │ │ │ ├── SmbiosType0Parser.c │ │ │ └── SmbiosType0Parser.h │ │ ├── ConfigurationSmbiosType1 │ │ │ ├── SmbiosType1Parser.c │ │ │ └── SmbiosType1Parser.h │ │ ├── ConfigurationSmbiosType11 │ │ │ ├── SmbiosType11Parser.c │ │ │ └── SmbiosType11Parser.h │ │ ├── ConfigurationSmbiosType13 │ │ │ ├── SmbiosType13Parser.c │ │ │ └── SmbiosType13Parser.h │ │ ├── ConfigurationSmbiosType2 │ │ │ ├── SmbiosType2Parser.c │ │ │ └── SmbiosType2Parser.h │ │ ├── ConfigurationSmbiosType3 │ │ │ ├── SmbiosType3Parser.c │ │ │ └── SmbiosType3Parser.h │ │ ├── ConfigurationSmbiosType32 │ │ │ ├── SmbiosType32Parser.c │ │ │ └── SmbiosType32Parser.h │ │ ├── ConfigurationSmbiosType38 │ │ │ ├── SmbiosType38Parser.c │ │ │ └── SmbiosType38Parser.h │ │ ├── ConfigurationSmbiosType39 │ │ │ ├── SmbiosType39Parser.c │ │ │ └── SmbiosType39Parser.h │ │ ├── ConfigurationSmbiosType41 │ │ │ ├── SmbiosType41Parser.c │ │ │ └── SmbiosType41Parser.h │ │ ├── ConfigurationSmbiosType43 │ │ │ ├── SmbiosType43Parser.c │ │ │ └── SmbiosType43Parser.h │ │ ├── ConfigurationSmbiosType45 │ │ │ ├── SmbiosType45Parser.c │ │ │ └── SmbiosType45Parser.h │ │ ├── ConfigurationSmbiosType8 │ │ │ ├── SmbiosType8Parser.c │ │ │ └── SmbiosType8Parser.h │ │ ├── ConfigurationSmbiosType9 │ │ │ ├── SmbiosType9Parser.c │ │ │ └── SmbiosType9Parser.h │ │ ├── SmbiosParser.c │ │ ├── SmbiosParser.h │ │ ├── SmbiosParser.inf │ │ └── SmbiosParserPrivate.h │ ├── SmscLanInfo │ │ ├── SmscLanInfoParser.c │ │ ├── SmscLanInfoParser.h │ │ └── SmscLanInfoParser.inf │ ├── SpmiParser │ │ ├── SpmiParser.c │ │ ├── SpmiParser.h │ │ └── SpmiParser.inf │ ├── SratParser │ │ ├── SratParser.c │ │ ├── SratParser.h │ │ └── SratParser.inf │ ├── SsdtTableGenerator │ │ ├── SsdtTableGenerator.inf │ │ ├── SsdtTableGeneratorParser.c │ │ └── SsdtTableGeneratorParser.h │ ├── TelemetryInfo │ │ ├── TelemetryInfo.inf │ │ ├── TelemetryInfoParser.c │ │ └── TelemetryInfoParser.h │ ├── ThermalZoneInfo │ │ ├── ThermalZoneInfo.inf │ │ ├── ThermalZoneInfoParser.c │ │ └── ThermalZoneInfoParser.h │ ├── Tpm2Parser │ │ ├── Tpm2Parser.c │ │ ├── Tpm2Parser.h │ │ └── Tpm2Parser.inf │ ├── TpmInfo │ │ ├── TpmInfo.inf │ │ ├── TpmInfoParser.c │ │ └── TpmInfoParser.h │ ├── UsbInfo │ │ ├── UsbInfoParser.c │ │ ├── UsbInfoParser.h │ │ └── UsbInfoParser.inf │ ├── VirtioMmioInfo │ │ ├── VirtioMmioParser.c │ │ ├── VirtioMmioParser.h │ │ └── VirtioMmioParser.inf │ └── WsmtParser │ │ ├── WsmtParser.c │ │ ├── WsmtParser.h │ │ └── WsmtParser.inf ├── ConfigurationManagerTokenDxe │ ├── ConfigurationManagerTokenDxe.c │ ├── ConfigurationManagerTokenDxe.inf │ └── ConfigurationManagerTokenDxePrivate.h ├── DebugStatusCodeDxe │ ├── DebugStatusCodeDxe.c │ └── DebugStatusCodeDxe.inf ├── DefaultVariableDxe │ ├── DefaultVariableDxe.c │ └── DefaultVariableDxe.inf ├── DtOnlyPlatformDxe │ ├── DtOnlyPlatformDxe.c │ └── DtOnlyPlatformDxe.inf ├── EFuseDxe │ ├── EFuseDxe.c │ ├── EFuseDxe.inf │ └── EFuseDxePrivate.h ├── EepromDxe │ ├── Eeprom.c │ └── Eeprom.inf ├── EqosDeviceDxe │ ├── DtAcpiMacUpdate.c │ ├── DtAcpiMacUpdate.h │ ├── DwEqosSnpDxe.c │ ├── DwEqosSnpDxe.h │ ├── EmacDxeUtil.c │ ├── EmacDxeUtil.h │ ├── EqosAdapterInfo.c │ ├── EqosDeviceDxe.c │ ├── EqosDeviceDxe.inf │ ├── EqosDeviceDxePrivate.h │ ├── PhyDxeUtil.c │ ├── PhyDxeUtil.h │ ├── PhyMarvell.c │ ├── PhyMarvell.h │ ├── PhyMgbe.c │ ├── PhyMgbe.h │ ├── PhyMicrel.c │ ├── PhyMicrel.h │ ├── PhyRealtek.c │ ├── PhyRealtek.h │ └── nvethernetrm │ │ ├── include │ │ ├── ivc_core.h │ │ ├── mmc.h │ │ ├── osi_common.h │ │ ├── osi_core.h │ │ ├── osi_dma.h │ │ ├── osi_dma_txrx.h │ │ └── osi_macsec.h │ │ ├── osd.c │ │ ├── osd.h │ │ └── osi │ │ ├── common │ │ ├── common.h │ │ ├── eqos_common.c │ │ ├── eqos_common.h │ │ ├── include │ │ │ └── local_common.h │ │ ├── mgbe_common.c │ │ ├── mgbe_common.h │ │ ├── osi_common.c │ │ └── type.h │ │ ├── core │ │ ├── Makefile.interface.tmk │ │ ├── Makefile.sdk │ │ ├── Makefile.tmk │ │ ├── core_local.h │ │ ├── debug.c │ │ ├── debug.h │ │ ├── eqos_core.c │ │ ├── eqos_core.h │ │ ├── eqos_mmc.c │ │ ├── eqos_mmc.h │ │ ├── frp.c │ │ ├── frp.h │ │ ├── ivc_core.c │ │ ├── libnvethernetrm.export │ │ ├── macsec.c │ │ ├── macsec.h │ │ ├── mgbe_core.c │ │ ├── mgbe_core.h │ │ ├── mgbe_mmc.c │ │ ├── mgbe_mmc.h │ │ ├── osi_core.c │ │ ├── osi_hal.c │ │ ├── vlan_filter.c │ │ ├── vlan_filter.h │ │ ├── xpcs.c │ │ └── xpcs.h │ │ └── dma │ │ ├── Makefile.interface.tmk │ │ ├── Makefile.sdk │ │ ├── Makefile.tmk │ │ ├── debug.c │ │ ├── debug.h │ │ ├── dma_local.h │ │ ├── eqos_desc.c │ │ ├── eqos_dma.c │ │ ├── eqos_dma.h │ │ ├── hw_desc.h │ │ ├── libnvethernetcl.export │ │ ├── mgbe_desc.c │ │ ├── mgbe_desc.h │ │ ├── mgbe_dma.c │ │ ├── mgbe_dma.h │ │ ├── osi_dma.c │ │ └── osi_dma_txrx.c ├── ErotQspiDxe │ ├── ErotQspiDxe.c │ ├── ErotQspiDxe.inf │ ├── ErotQspiStmm.c │ └── ErotQspiStmm.inf ├── FpgaI2c │ ├── FpgaI2c.c │ └── FpgaI2c.inf ├── FvbDxe │ ├── FvbDxe.c │ ├── FvbDxe.inf │ ├── FvbPrivate.h │ └── UnitTest │ │ ├── FvbDxeTestPrivate.h │ │ ├── FvbDxeUnitTests.c │ │ ├── FvbDxeUnitTestsHost.inf │ │ └── FvbPcdStubLib │ │ ├── FvbPcdStubLib.c │ │ └── FvbPcdStubLib.inf ├── FvbNorFlashDxe │ ├── FvbDxe.c │ ├── FvbNorFlashDxe.inf │ ├── FvbNorFlashStandaloneMm.c │ ├── FvbNorFlashStandaloneMm.inf │ ├── FvbPrivate.h │ ├── GoogleTest │ │ ├── VarIntCheckGoogleTest.cpp │ │ └── VarIntCheckGoogleTest.inf │ ├── StandaloneMmFixupPcd.c │ ├── StandaloneMmFixupPcd.inf │ ├── UnitTest │ │ ├── VarIntUnitTestsHost.c │ │ └── VarIntUnitTestsHost.inf │ └── VarIntCheck.c ├── FwImageDxe │ ├── FwImageDxe.c │ └── FwImageDxe.inf ├── FwPartitionBlockIoDxe │ ├── FwPartitionBlockIoDxe.c │ └── FwPartitionBlockIoDxe.inf ├── FwPartitionMmDxe │ ├── FwPartitionMmComm.c │ ├── FwPartitionMmComm.h │ ├── FwPartitionMmDxe.c │ ├── FwPartitionMmDxe.h │ ├── FwPartitionMmDxe.inf │ ├── FwPartitionNorFlashStmm.c │ ├── FwPartitionStandaloneMm.c │ └── FwPartitionStandaloneMm.inf ├── FwPartitionNorFlashDxe │ ├── FwPartitionNorFlashDxe.c │ └── FwPartitionNorFlashDxe.inf ├── GenericMpMemoryTestDxe │ ├── GenericMemoryTestDxe.inf │ ├── GenericMemoryTestDxe.uni │ ├── GenericMemoryTestDxeExtra.uni │ ├── GenericMpMemoryTestDxe.c │ └── GenericMpMemoryTestDxe.h ├── GoldenRegisterDxe │ ├── GoldenRegisterDxe.c │ └── GoldenRegisterDxe.inf ├── GpioPowerOffDxe │ ├── GpioPowerOffDxe.c │ └── GpioPowerOffDxe.inf ├── I2cExpanderGpio │ ├── I2cExpanderGpio.c │ └── I2cExpanderGpio.inf ├── I2cIoBmcSsifDxe │ ├── I2cIoBmcSsifDxe.c │ └── I2cIoBmcSsifDxe.inf ├── IpmiBlobTransferDxe │ ├── InternalIpmiBlobTransfer.h │ ├── IpmiBlobTransferDxe.c │ ├── IpmiBlobTransferDxe.inf │ ├── Readme.md │ └── UnitTest │ │ ├── IpmiBlobTransferTestUnitTests.c │ │ └── IpmiBlobTransferTestUnitTestsHost.inf ├── IpmiNullDxe │ ├── IpmiNullDxe.c │ └── IpmiNullDxe.inf ├── L4TLauncherSupportDxe │ ├── L4TLauncherSupportDxe.c │ └── L4TLauncherSupportDxe.inf ├── Logo │ ├── Logo.c │ ├── LogoDxe.inf │ ├── LogoDxe.uni │ ├── LogoDxeExtra.uni │ └── LogoPrivate.h ├── MctpMmDxe │ ├── MctpMmComm.c │ ├── MctpMmComm.h │ ├── MctpMmCommMsgs.h │ ├── MctpMmDxe.c │ ├── MctpMmDxe.inf │ ├── MctpStandaloneMm.c │ └── MctpStandaloneMm.inf ├── MmCommunicateFfaDxe │ ├── AArch64 │ │ └── StmmFfa.S │ ├── MmCommunicate.h │ ├── MmCommunication.c │ └── MmCommunicationFfa.inf ├── MmCommunicationOpteeDxe │ ├── MmCommunicate.h │ ├── MmCommunication.c │ └── MmCommunicationOptee.inf ├── NonDiscoverablePciDeviceDxe │ ├── ComponentName.c │ ├── NonDiscoverablePciDeviceDxe.c │ ├── NonDiscoverablePciDeviceDxe.inf │ ├── NonDiscoverablePciDeviceIo.c │ └── NonDiscoverablePciDeviceIo.h ├── NorFlashDxe │ ├── MacronixAsp.c │ ├── MacronixAsp.h │ ├── NorFlashDxe.c │ ├── NorFlashDxe.inf │ ├── NorFlashPrivate.h │ ├── NorFlashStandaloneMm.c │ ├── NorFlashStandaloneMm.inf │ ├── NorFlashStandaloneMmBlob.c │ ├── NorFlashStandaloneMmBlob.inf │ ├── NorFlashStandaloneMmDice.c │ └── NorFlashStandaloneMmDice.inf ├── NvDisplayControllerDxe │ ├── NvDisplay.h │ ├── NvDisplayChildGop.c │ ├── NvDisplayController.c │ ├── NvDisplayController.h │ ├── NvDisplayControllerDxe.c │ ├── NvDisplayControllerDxe.inf │ ├── NvDisplayControllerT234.c │ ├── NvDisplayHw.c │ └── NvDisplayMmioRegions.c ├── NvSecureBootProvisionDxe │ ├── NvSecureBootProvisionDxe.c │ └── NvSecureBootProvisionDxe.inf ├── NvidiaCapsuleRuntimeDxe │ ├── NvidiaCapsuleRuntimeDxe.c │ └── NvidiaCapsuleRuntimeDxe.inf ├── NvidiaConfigDxe │ ├── NvidiaConfigDxe.c │ ├── NvidiaConfigDxe.inf │ ├── NvidiaConfigHii.h │ ├── NvidiaConfigHii.uni │ ├── NvidiaConfigHii.vfr │ └── NvidiaConfigHiiMap.uni ├── OemDescStatusCodeDxe │ ├── OemDescStatusCodeDxe.c │ ├── OemDescStatusCodeDxe.h │ ├── OemDescStatusCodeDxe.inf │ └── UnitTest │ │ ├── OemDescStatusCodeDxeUnitTest.c │ │ └── OemDescStatusCodeDxeUnitTest.inf ├── OpteeNvRpmb │ ├── FixupPcdRpmb.c │ ├── FixupPcdRpmb.inf │ ├── OpTeeRpmbFvbNv.c │ ├── OpTeeRpmbFvbNv.h │ └── OpTeeRpmbFvbNv.inf ├── PciGenericControllerDxe │ ├── PcieGenericControllerDxe.c │ ├── PcieGenericControllerDxe.inf │ └── PcieGenericControllerPrivate.h ├── PcieControllerDxe │ ├── PciPlatformDxe.c │ ├── PcieConfigDxe.c │ ├── PcieControllerConfigGPU.c │ ├── PcieControllerConfigGPU.h │ ├── PcieControllerDxe.c │ ├── PcieControllerDxe.inf │ └── PcieControllerPrivate.h ├── PcieDWControllerDxe │ ├── PcieControllerDt.c │ ├── PcieControllerDt.h │ ├── PcieControllerDxe.c │ ├── PcieControllerDxe.inf │ └── PcieControllerPrivate.h ├── PinMuxDxe │ ├── PinMuxDxe.c │ ├── PinMuxDxe.inf │ └── PinMuxDxePrivate.h ├── PlatformRedfishBiosDxe │ ├── PlatformRedfishBiosDxe.c │ ├── PlatformRedfishBiosDxe.h │ └── PlatformRedfishBiosDxe.inf ├── PlatformRedfishBootDxe │ ├── PlatformRedfishBootData.h │ ├── PlatformRedfishBootDxe.c │ ├── PlatformRedfishBootDxe.h │ ├── PlatformRedfishBootDxe.inf │ ├── PlatformRedfishBootDxeMap.uni │ ├── PlatformRedfishBootDxeStrings.uni │ └── PlatformRedfishBootVfr.vfr ├── PlatformRedfishOverrideDxe │ ├── PlatformRedfishOverrideDxe.c │ ├── PlatformRedfishOverrideDxe.h │ └── PlatformRedfishOverrideDxe.inf ├── PlatformToDriverConfiguration │ ├── Gop │ │ ├── GopDriverConfigurationData.c │ │ └── GopDriverConfigurationData.h │ ├── PlatformToDriverConfiguration.c │ ├── PlatformToDriverConfiguration.inf │ └── SdMmc │ │ ├── SdMmcConfigurationData.c │ │ └── SdMmcConfigurationData.h ├── PrmRasModule │ ├── Library │ │ └── PrmRasModuleBufferConfigLib │ │ │ ├── PrmRasModuleBufferConfigLib.c │ │ │ └── PrmRasModuleBufferConfigLib.inf │ ├── PrmRasModule.c │ ├── PrmRasModule.h │ └── PrmRasModule.inf ├── QspiControllerDxe │ ├── QspiControllerDxe.c │ ├── QspiControllerDxe.inf │ ├── QspiControllerStandaloneMm.c │ └── QspiControllerStandaloneMm.inf ├── RamDiskOS │ ├── GoogleTest │ │ ├── RamDiskOSGoogleTest.cpp │ │ ├── RamDiskOSGoogleTest.h │ │ └── RamDiskOSGoogleTest.inf │ ├── RamDiskOS.c │ └── RamDiskOS.inf ├── RcmDxe │ ├── RcmDxe.c │ ├── RcmDxe.h │ └── RcmDxe.inf ├── RedfishChassisInfoCollectorDxe │ ├── Common │ │ ├── RedfishChassisInfoCollectorCommon.c │ │ └── RedfishChassisInfoCollectorCommon.h │ ├── RedfishChassisInfoCollectorDxe.c │ └── RedfishChassisInfoCollectorDxe.inf ├── RedfishCipherDxe │ ├── RedfishCipherDxe.c │ ├── RedfishCipherDxe.h │ └── RedfishCipherDxe.inf ├── RedfishFirmwareInfoDxe │ ├── Common │ │ ├── RedfishFirmwareInfoCommon.c │ │ └── RedfishFirmwareInfoCommon.h │ ├── RedfishFirmwareInfoDxe.c │ ├── RedfishFirmwareInfoDxe.inf │ └── RedfishFmp.c ├── RedfishHostInterfaceControlDxe │ ├── RedfishHostInterfaceControlDxe.c │ ├── RedfishHostInterfaceControlDxe.h │ └── RedfishHostInterfaceControlDxe.inf ├── RegulatorDxe │ ├── RegulatorDxe.c │ ├── RegulatorDxe.inf │ └── RegulatorDxePrivate.h ├── RenesasUsbCtlr │ ├── RenesasUsbCtlr.c │ ├── RenesasUsbCtlr.h │ └── RenesasUsbCtlr.inf ├── SdMmcControllerDxe │ ├── SdMmcControllerDxe.c │ ├── SdMmcControllerDxe.inf │ └── SdMmcControllerPrivate.h ├── SecureBootBmcEvent │ ├── SecureBootBmcEvent.c │ └── SecureBootBmcEvent.inf ├── SequentialRecordStMm │ ├── CmetRecordStorage.c │ ├── CmetRecordStorage.inf │ ├── SequentialRecordComm.c │ ├── SequentialRecordComm.inf │ ├── SequentialRecordPrivate.h │ ├── SequentialRecordStorage.c │ └── SequentialRecordStorage.inf ├── ServerPowerControlDxe │ ├── ServerPowerControlDxe.c │ └── ServerPowerControlDxe.inf ├── SmbiosBmcTransfer │ ├── SmbiosBmcTransfer.c │ └── SmbiosBmcTransfer.inf ├── SmbiosHmcTransfer │ ├── SmbiosHmcTransfer.c │ └── SmbiosHmcTransfer.inf ├── SmbiosOemDxe │ └── SmbiosMiscOemDxe │ │ ├── SmbiosMiscOem.h │ │ ├── SmbiosMiscOemDataTable.c │ │ ├── SmbiosMiscOemDxe.inf │ │ ├── SmbiosMiscOemDxeStrings.uni │ │ ├── SmbiosMiscOemEntryPoint.c │ │ ├── Type16 │ │ ├── PhysMemArrayData.c │ │ └── PhysMemArrayFunction.c │ │ └── Type19 │ │ ├── MemArrayMappedAddressData.c │ │ └── MemArrayMappedAddressFunction.c ├── SmmuDriverDxe │ ├── SmmuDriverDxe.c │ └── SmmuDriverDxe.inf ├── SmmuV3Dxe │ ├── SmmuV3Dxe.c │ ├── SmmuV3Dxe.inf │ └── SmmuV3DxePrivate.h ├── Tcg2Config │ ├── Tcg2Config.vfr │ ├── Tcg2ConfigDriver.c │ ├── Tcg2ConfigDxe.inf │ ├── Tcg2ConfigDxe.uni │ ├── Tcg2ConfigDxeExtra.uni │ ├── Tcg2ConfigImpl.c │ ├── Tcg2ConfigImpl.h │ ├── Tcg2ConfigNvData.h │ ├── Tcg2ConfigStrings.uni │ └── Tcg2Internal.h ├── TegraControllerEnableDxe │ ├── TegraControllerEnableDxe.c │ └── TegraControllerEnableDxe.inf ├── TegraCpuFreqDxe │ ├── TegraCpuFreqDxe.c │ ├── TegraCpuFreqDxe.inf │ └── TegraCpuFreqDxePrivate.h ├── TegraFastBootDxe │ ├── TegraFastBoot.c │ └── TegraFastBootDxe.inf ├── TegraGpio │ ├── TegraGpioDxe.c │ ├── TegraGpioDxe.inf │ ├── TegraGpioPrivate.h │ ├── TegraGpioStandaloneMm.c │ └── TegraGpioStandaloneMm.inf ├── TegraI2c │ ├── TegraI2c.h │ ├── TegraI2cDxe.c │ └── TegraI2cDxe.inf ├── TegraP2UDxe │ ├── TegraP2UDxe.c │ ├── TegraP2UDxe.inf │ └── TegraP2UDxePrivate.h ├── TegraPinControlDxe │ ├── TegraPinControlDxe.c │ ├── TegraPinControlDxe.inf │ └── TegraPinControlPrivate.h ├── TegraPlatformBootManager │ ├── TegraPlatformBootManagerDxe.c │ └── TegraPlatformBootManagerDxe.inf ├── TegraPlatformInit │ ├── TegraPlatformInitDxe.c │ └── TegraPlatformInitDxe.inf ├── TegraPwmDxe │ ├── TegraPwmDxe.c │ └── TegraPwmDxe.inf ├── TegraUartDxe │ ├── Serial16550.c │ ├── SerialSbsa.c │ ├── SerialTCU.c │ ├── SerialUtc.c │ ├── TegraUartDxe.c │ ├── TegraUartDxe.h │ └── TegraUartDxe.inf ├── TegraUsbDeviceControllerDxe │ ├── TegraUsbDeviceControllerDxe.c │ └── TegraUsbDeviceControllerDxe.inf ├── ThreadingDxe │ ├── ThreadingDxe.c │ ├── ThreadingDxe.h │ └── ThreadingDxe.inf ├── Tpm2Dxe │ ├── Tpm2Dxe.c │ ├── Tpm2Dxe.h │ └── Tpm2Dxe.inf ├── UfsControllerDxe │ ├── UfsControllerDxe.c │ └── UfsControllerDxe.inf ├── UphyConfigurationDxe │ ├── UphyConfigurationDxe.c │ └── UphyConfigurationDxe.inf ├── UsbFirmwareDxe │ ├── UsbFirmwareDxe.inf │ └── UsbSilFw.c ├── UsbPadCtlDxe │ ├── UsbPadCtlDxe.c │ ├── UsbPadCtlDxe.inf │ ├── UsbPadCtlPrivate.h │ └── UsbPadCtlTegra234.c ├── UserAuthenticationDxeMm │ ├── KeyService.c │ ├── KeyService.h │ ├── UserAuthenticationDxe.c │ ├── UserAuthenticationDxe.h │ ├── UserAuthenticationDxe.inf │ ├── UserAuthenticationDxeFormset.h │ ├── UserAuthenticationDxePassword.c │ ├── UserAuthenticationDxeStrings.uni │ ├── UserAuthenticationDxeVfr.vfr │ ├── UserAuthenticationIpmi.c │ ├── UserAuthenticationIpmi.h │ ├── UserAuthenticationMm.c │ ├── UserAuthenticationMm.h │ └── UserAuthenticationMm.inf ├── VirtioMmioDxe │ ├── VirtioMmioDxe.c │ └── VirtioMmioDxe.inf ├── XhciControllerDxe │ ├── XhciControllerDxe.c │ ├── XhciControllerDxe.inf │ └── XhciControllerPrivate.h └── XusbControllerDxe │ ├── XusbControllerDxe.c │ ├── XusbControllerDxe.inf │ ├── XusbDevControllerDesc.h │ └── XusbDevControllerPriv.h ├── Include ├── AcpiPowerMeter.h ├── AndroidBootImgHeader.h ├── ArmMpidr.h ├── Guid │ ├── NVIDIAMmMb1Record.h │ ├── NVIDIAPublicVariableGuid.h │ ├── NVIDIATokenSpaceGuid.h │ ├── OemPartition.h │ └── UserAuthentication.h ├── HostBasedTestStubLib │ ├── ArmSvcStubLib.h │ ├── BlockIoStubProtocol.h │ ├── DeviceTreeHelperStubLib.h │ ├── DiskIoStubProtocol.h │ ├── FlashStubLib.h │ ├── HobStubLib.h │ ├── MemoryAllocationStubLib.h │ ├── MmServicesTableStubLib.h │ ├── NorFlashStubLib.h │ ├── NvVarIntStubLib.h │ ├── PcdStubLib.h │ ├── PlatformResourceStubLib.h │ ├── StandaloneMmOpteeStubLib.h │ ├── TegraPlatformInfoStubLib.h │ ├── UefiBootServicesTableStubLib.h │ └── UefiRuntimeServicesTableStubLib.h ├── Library │ ├── AndroidBcbLib.h │ ├── Arm │ │ └── StandaloneMmCoreEntryPointOptee.h │ ├── AvbLib.h │ ├── BootChainInfoLib.h │ ├── BootConfigProtocolLib.h │ ├── BrBctUpdateDeviceLib.h │ ├── ConfigurationManagerDataLib.h │ ├── ConfigurationManagerLib.h │ ├── Crc8Lib.h │ ├── DebugLogScratchRegLib.h │ ├── DeviceDiscoveryDriverLib.h │ ├── DeviceDiscoveryLib.h │ ├── DeviceTreeHelperLib.h │ ├── DisplayDeviceTreeHelperLib.h │ ├── DramCarveoutLib.h │ ├── DtbUpdateLib.h │ ├── ErotLib.h │ ├── ErotQspiLib.h │ ├── FloorSweepingLib.h │ ├── FmpParamLib.h │ ├── FmpVersionLib.h │ ├── FruLib.h │ ├── FwImageLib.h │ ├── FwPackageLib.h │ ├── FwPartitionDeviceLib.h │ ├── FwVariableLib.h │ ├── GoldenRegisterLib.h │ ├── GptLib.h │ ├── HostBasedTestStubLib │ │ └── IpmiStubLib.h │ ├── MceAriLib.h │ ├── MctpBaseLib.h │ ├── MctpNvVdmLib.h │ ├── MemoryVerificationLib.h │ ├── MmVarLib.h │ ├── MpCoreInfoLib.h │ ├── NVIDIADebugLib.h │ ├── NctLib.h │ ├── NumaInfoLib.h │ ├── NvCmObjectDescUtility.h │ ├── NvMmStandaloneMmCoreEntryPoint.h │ ├── NvVarIntLib.h │ ├── NvgLib.h │ ├── OpteeNvLib.h │ ├── PlatformBootOrderIpmiLib.h │ ├── PlatformBootOrderLib.h │ ├── PlatformPasswordLib.h │ ├── PlatformResourceLib.h │ ├── PlatformToDriverConfiguration.h │ ├── PldmBaseLib.h │ ├── PldmFwUpdateLib.h │ ├── PldmFwUpdateNvLib.h │ ├── PldmFwUpdatePkgLib.h │ ├── PldmFwUpdateTaskLib.h │ ├── QspiControllerLib.h │ ├── SavedCapsuleLib.h │ ├── SiblingPartitionLib.h │ ├── SmbiosMiscLib.h │ ├── SmmuLib.h │ ├── StandaloneMmOpteeDeviceMem.h │ ├── StatusRegLib.h │ ├── SystemContextLib.h │ ├── SystemResourceLib.h │ ├── TegraCpuFreqHelper.h │ ├── TegraDeviceTreeOverlayLib.h │ ├── TegraPlatformInfoLib.h │ ├── TegraSerialPortLib.h │ ├── UsbFalconLib.h │ ├── UsbFirmwareLib.h │ ├── VerPartitionLib.h │ └── WildcardStringLib.h ├── NVIDIABoardConfiguration.h ├── NVIDIAConfiguration.h ├── NVIDIAStatusCodes.h ├── PlatformToDriverStructures.h ├── Protocol │ ├── AmlGenerationProtocol.h │ ├── AmlPatchProtocol.h │ ├── Apei.h │ ├── AsyncDriverStatus.h │ ├── BootChainProtocol.h │ ├── BootConfigUpdateProtocol.h │ ├── BpmpIpc.h │ ├── BrBctUpdateProtocol.h │ ├── C2CNodeProtocol.h │ ├── CapsuleUpdatePolicy.h │ ├── ClockNodeProtocol.h │ ├── ClockParents.h │ ├── ConfigurationManagerDataProtocol.h │ ├── ConfigurationManagerTokenProtocol.h │ ├── DeviceTreeCompatibility.h │ ├── DeviceTreeNode.h │ ├── EFuse.h │ ├── Eeprom.h │ ├── FwImageProtocol.h │ ├── FwPartitionProtocol.h │ ├── GpuDsdAmlGenerationProtocol.h │ ├── HspDoorbell.h │ ├── IpmiBlobTransfer.h │ ├── KernelArgsProtocol.h │ ├── KernelCmdLineUpdate.h │ ├── L4TLauncherSupportProtocol.h │ ├── MctpProtocol.h │ ├── MemoryTestConfig.h │ ├── NorFlash.h │ ├── OemPartitionProtocol.h │ ├── PciRootBridgeConfigurationIo.h │ ├── PinControl.h │ ├── PinMux.h │ ├── PlatformKernelArgsProtocol.h │ ├── PowerGateNodeProtocol.h │ ├── QspiController.h │ ├── RasNsCommPcieDpcDataProtocol.h │ ├── Regulator.h │ ├── ResetNodeProtocol.h │ ├── SavedCapsuleProtocol.h │ ├── SeRngProtocol.h │ ├── SequentialRecord.h │ ├── ServerPowerControl.h │ ├── SmmuV3Protocol.h │ ├── TegraCpuFreq.h │ ├── TegraP2U.h │ ├── Threading.h │ ├── Tpm2.h │ ├── UsbFwProtocol.h │ ├── UsbNicInfoProtocol.h │ ├── UsbPadCtl.h │ ├── UserAuthentication.h │ ├── XhciController.h │ └── XudcController.h ├── Server │ ├── Erst.h │ ├── LicSwIo.h │ ├── OemStatusCodes.h │ ├── RASNSInterface.h │ └── TH500 │ │ ├── TH500Definitions.h │ │ └── TH500MB1Configuration.h ├── StandaloneMm │ ├── Library │ │ ├── StandaloneMmArmLib.h │ │ ├── StandaloneMmHafniumMmuLib.h │ │ └── StandaloneMmHafniumSlabMemAllocLib.h │ └── NvStandaloneMmCpu.h └── Tegra │ └── T234 │ └── T234Definitions.h ├── Library ├── ASLTemplateTablesLib │ ├── ASLTemplateTablesLib.inf │ ├── I2cTemplate.asl │ └── SdcTemplate.asl ├── AndroidBcbLib │ ├── AndroidBcbLib.c │ └── AndroidBcbLib.inf ├── ArmSvcHvcLibHafnium │ ├── AArch64 │ │ └── ArmSvcHvc.S │ └── ArmSvcHvcLibHafnium.inf ├── AvbLib │ ├── AvbLib.inf │ ├── AvbLibApi.c │ └── AvbSysdepsEdk2 │ │ ├── AvbStdEdk2.h │ │ ├── AvbSysdepsEdk2.c │ │ ├── inttypes.h │ │ ├── stdbool.h │ │ ├── stddef.h │ │ └── stdint.h ├── AvbStubLib │ ├── AvbStubLib.inf │ └── AvbStubLibApi.c ├── BaseDebugLibSerialPort │ ├── BaseDebugLibSerialPort.inf │ ├── BaseDebugLibSerialPort.uni │ └── DebugLib.c ├── BootChainInfoLib │ ├── BootChainInfoLib.c │ └── BootChainInfoLib.inf ├── BootChainInfoVirtLib │ ├── BootChainInfoVirtLib.c │ └── BootChainInfoVirtLib.inf ├── BootConfigProtocolLib │ ├── BootConfigProtocolLib.c │ └── BootConfigProtocolLib.inf ├── BrBctUpdateDeviceLib │ ├── BrBctUpdateDeviceLib.c │ └── BrBctUpdateDeviceLib.inf ├── CapsuleUpdatePolicyLibOnProtocol │ ├── CapsuleUpdatePolicyLibOnProtocol.c │ └── CapsuleUpdatePolicyLibOnProtocol.inf ├── ConfigurationManagerLib │ ├── ConfigurationManagerDataLib.c │ ├── ConfigurationManagerLib.inf │ └── ConfigurationManagerProtocolLib.c ├── Crc8Lib │ ├── Crc8Lib.c │ ├── Crc8Lib.inf │ └── GoogleTest │ │ ├── Crc8LibGoogleTest.cpp │ │ └── Crc8LibGoogleTest.inf ├── DebugLibHafnium │ ├── DebugLib.c │ └── DebugLibHafnium.inf ├── DebugLogScratchRegLib │ ├── DebugLogScratchRegLib.c │ └── DebugLogScratchRegLib.inf ├── DebugLogScratchRegLibNull │ ├── DebugLogScratchRegLibNull.c │ └── DebugLogScratchRegLibNull.inf ├── DebugPrintErrorLevelLib │ ├── DebugPrintErrorLevelLib.c │ └── DebugPrintErrorLevelLib.inf ├── DeviceDiscoveryDriverLib │ ├── DeviceDiscoveryDriverLib.c │ ├── DeviceDiscoveryDriverLib.inf │ ├── DeviceDiscoveryDriverLibPrivate.h │ └── DeviceDiscoveryDriverLibServices.c ├── DeviceDiscoveryLib │ ├── DeviceDiscoveryLib.c │ ├── DeviceDiscoveryLib.inf │ └── DeviceDiscoveryLibPrivate.h ├── DeviceTreeHelperLib │ ├── DeviceTreeHelperLib.inf │ ├── DeviceTreeHelperLibCore.c │ ├── DeviceTreeHelperLibDeprecated.c │ ├── DeviceTreeHelperLibParser.c │ ├── DeviceTreeHelperLibParserAArch64.c │ ├── DeviceTreeHelperLibParserX86.c │ ├── DeviceTreeHelperLibPointer.c │ ├── DeviceTreeHelperLibPrivate.h │ ├── DeviceTreeHelperLibUtility.c │ └── UnitTest │ │ ├── DeviceTreeHelperLibGoogleTest.cpp │ │ └── DeviceTreeHelperLibGoogleTest.inf ├── DisplayDeviceTreeHelperLib │ ├── DisplayDeviceTreeHelperLib.c │ └── DisplayDeviceTreeHelperLib.inf ├── DramCarveoutLib │ ├── DramCarveoutLib.c │ └── DramCarveoutLib.inf ├── DtbUpdateLib │ ├── DtbUpdateBpmpIpc.c │ ├── DtbUpdateBpmpIpc.inf │ ├── DtbUpdateFsi.c │ ├── DtbUpdateFsi.inf │ ├── DtbUpdateLib.c │ ├── DtbUpdateLib.inf │ ├── DtbUpdateLibPrivate.h │ ├── DtbUpdateMacAddr.c │ ├── DtbUpdateMacAddr.inf │ ├── DtbUpdateNull.c │ ├── DtbUpdateNull.inf │ ├── DtbUpdateVpr.c │ └── DtbUpdateVpr.inf ├── DxeDtPlatformDtbLoaderLib │ ├── DxeDtPlatformDtbKernelLoaderLib.c │ ├── DxeDtPlatformDtbKernelLoaderLib.inf │ ├── DxeDtPlatformDtbLoaderLib.c │ └── DxeDtPlatformDtbLoaderLib.inf ├── DxeTcg2PhysicalPresenceLib │ ├── DxeTcg2PhysicalPresenceLib.c │ ├── DxeTcg2PhysicalPresenceLib.inf │ ├── DxeTcg2PhysicalPresenceLib.uni │ └── PhysicalPresenceStrings.uni ├── DxeTcg2PhysicalPresenceLibNull │ ├── DxeTcg2PhysicalPresenceLibNull.c │ └── DxeTcg2PhysicalPresenceLibNull.inf ├── ErotLib │ ├── ErotLib.c │ └── ErotLib.inf ├── ErotLibNull │ ├── ErotLibNull.c │ └── ErotLibNull.inf ├── ErotQspiLib │ ├── ErotQspiCore.c │ ├── ErotQspiCore.h │ ├── ErotQspiLib.c │ └── ErotQspiLib.inf ├── FloorSweepingLib │ ├── CommonFloorSweepingLib.c │ ├── CommonFloorSweepingLib.h │ ├── FloorSweepingLib.c │ └── FloorSweepingLib.inf ├── FmpBlobLib │ ├── CapsuleUpdateBlob.md │ ├── FmpBlobLib.c │ ├── FmpBlobLib.inf │ ├── FmpBlobLib.uni │ ├── FmpBlobSupport.c │ ├── FmpBlobSupport.h │ └── UpdateProgress.c ├── FmpDeviceLib │ ├── CapsuleUpdateJetson.md │ ├── FmpDeviceLib.c │ ├── FmpDeviceLib.inf │ ├── FmpDeviceLib.uni │ ├── FwImageNames.c │ ├── TegraFmp.c │ ├── TegraFmp.h │ └── UpdateProgress.c ├── FmpErotLib │ ├── CapsuleUpdateServer.md │ ├── FmpErotLib.c │ ├── FmpErotLib.inf │ ├── FmpErotLib.uni │ ├── FmpErotSupport.c │ ├── FmpErotSupport.h │ └── UpdateProgress.c ├── FmpParamLib │ ├── FmpParamLib.c │ └── FmpParamLib.inf ├── FmpVersionLib │ ├── FmpVersionLib.c │ ├── FmpVersionLibPartition.c │ ├── FmpVersionLibPartition.inf │ ├── FmpVersionLibPcd.c │ └── FmpVersionLibPcd.inf ├── FruLib │ ├── FruLib.c │ ├── FruLib.inf │ └── FruLibPrivate.h ├── FwImageLib │ ├── FwImageLib.c │ └── FwImageLib.inf ├── FwPackageLib │ ├── FwPackageLib.c │ └── FwPackageLib.inf ├── FwPartitionDeviceLib │ ├── FwPartitionDeviceLib.c │ └── FwPartitionDeviceLib.inf ├── FwVariableLib │ ├── FwVariableLib.c │ └── FwVariableLib.inf ├── FwVariableLibNull │ ├── FwVariableLib.inf │ └── FwVariableLibNull.c ├── GoldenRegisterLib │ ├── GoldenRegisterLib.c │ └── GoldenRegisterLib.inf ├── GptLib │ ├── GptLib.c │ └── GptLib.inf ├── HostBasedTestStubLib │ ├── ArmSvcStubLib │ │ ├── ArmSvcStubLib.c │ │ └── ArmSvcStubLib.inf │ ├── BlockIoStubProtocol │ │ ├── BlockIoStubProtocol.c │ │ └── BlockIoStubProtocol.inf │ ├── DeviceTreeHelperStubLib │ │ ├── DeviceTreeHelperStubLib.c │ │ └── DeviceTreeHelperStubLib.inf │ ├── DiskIoStubProtocol │ │ ├── DiskIoStubProtocol.c │ │ └── DiskIoStubProtocol.inf │ ├── FlashStubLib │ │ ├── FaultyFlashStubLib.c │ │ ├── FlashStubLib.c │ │ ├── FlashStubLib.inf │ │ └── FlashStubLibPrivate.h │ ├── HobStubLib │ │ ├── HobStubLib.c │ │ └── HobStubLib.inf │ ├── IoStubLib │ │ ├── IoStubLib.c │ │ └── IoStubLib.inf │ ├── IpmiStubLib │ │ ├── IpmiStubLib.c │ │ └── IpmiStubLib.inf │ ├── MemoryAllocationStubLib │ │ ├── MemoryAllocationStubLib.c │ │ ├── MemoryAllocationStubLib.inf │ │ └── MemoryAllocationStubLib.uni │ ├── MmServicesTableStubLib │ │ ├── MmServicesTableStubLib.c │ │ └── MmServicesTableStubLib.inf │ ├── NorFlashStubLib │ │ ├── FaultyNorFlashStubLib.c │ │ ├── NorFlashStubLib.c │ │ ├── NorFlashStubLib.inf │ │ └── NorFlashStubLibPrivate.h │ ├── NvVarIntStubLib │ │ ├── NvVarIntStubLib.c │ │ └── NvVarIntStubLib.inf │ ├── PcdStubLib │ │ ├── PcdStubLib.c │ │ └── PcdStubLib.inf │ ├── PlatformResourceStubLib │ │ ├── PlatformResourceStubLib.c │ │ ├── PlatformResourceStubLib.inf │ │ └── UnitTest │ │ │ ├── PlatformResourceStubLibUnitTests.c │ │ │ └── PlatformResourceStubLibUnitTests.inf │ ├── StandaloneMmOpteeStubLib │ │ ├── StandaloneMmOpteeStubLib.c │ │ └── StandaloneMmOpteeStubLib.inf │ ├── StatusRegStubLib │ │ ├── StatusRegStubLib.c │ │ └── StatusRegStubLib.inf │ ├── TegraPlatformInfoStubLib │ │ ├── TegraPlatformInfoStubLib.c │ │ ├── TegraPlatformInfoStubLib.inf │ │ └── UnitTest │ │ │ ├── TegraPlatformInfoStubLibUnitTests.c │ │ │ └── TegraPlatformInfoStubLibUnitTests.inf │ ├── UefiBootServicesTableStubLib │ │ ├── UefiBootServicesTableStubLib.c │ │ └── UefiBootServicesTableStubLib.inf │ └── UefiRuntimeServicesTableStubLib │ │ ├── UefiRuntimeServicesTableStubLib.c │ │ └── UefiRuntimeServicesTableStubLib.inf ├── MaximRealTimeClockLib │ ├── MaximRealTimeClockLib.c │ ├── MaximRealTimeClockLib.h │ └── MaximRealTimeClockLib.inf ├── MceAriLib │ ├── MceAriLib.c │ └── MceAriLib.inf ├── MctpBaseLib │ ├── MctpBaseLib.c │ └── MctpBaseLib.inf ├── MctpNvVdmLib │ ├── MctpNvVdmLib.c │ └── MctpNvVdmLib.inf ├── MemoryVerificationLib │ ├── MemoryVerificationLib.c │ └── MemoryVerificationLib.inf ├── MmVarLib │ ├── GoogleTest │ │ ├── MmVarLibGoogleTest.cpp │ │ └── MmVarLibGoogleTest.inf │ ├── MmVarLib.c │ └── MmVarLib.inf ├── MpCoreInfoLib │ ├── MpCoreInfoLib.c │ ├── MpCoreInfoLib.inf │ ├── MpCoreInfoLib_private.h │ └── UnitTest │ │ ├── MpCoreInfoLibGoogleTest.cpp │ │ └── MpCoreInfoLibGoogleTest.inf ├── NctLib │ ├── NctLib.c │ └── NctLib.inf ├── NumaInfoLib │ ├── NumaInfoLib.c │ └── NumaInfoLib.inf ├── NuvotonRealTimeClockLib │ ├── NuvotonRealTimeClockLib.c │ ├── NuvotonRealTimeClockLib.h │ ├── NuvotonRealTimeClockLib.inf │ └── UnitTest │ │ ├── NuvotonRealTimeClockLibUnitTest.c │ │ └── NuvotonRealTimeClockLibUnitTest.inf ├── NvRngLib │ ├── NvRngLib.c │ ├── NvRngLib.inf │ ├── NvRngLib.uni │ ├── NvRngLibHw.c │ ├── NvRngLibNonHw.c │ └── NvRngProto.h ├── NvVarIntLibrary │ ├── GoogleTest │ │ ├── NvVarIntLibGoogleTest.cpp │ │ └── NvVarIntLibGoogleTest.inf │ ├── NvVarIntLibrary.c │ └── NvVarIntLibrary.inf ├── NvgLib │ ├── NvgLib.c │ └── NvgLib.inf ├── OemMiscLib │ ├── OemMiscLib.c │ └── OemMiscLib.inf ├── OpteeNvLib │ ├── Optee.c │ ├── OpteeNvLib.inf │ ├── OpteeRpmb.c │ └── OpteeSmc.h ├── OpteeTpmDeviceLib │ ├── OpteeTpmDeviceLib.c │ └── OpteeTpmDeviceLib.inf ├── PciHostBridgeLib │ ├── PciHostBridgeLib.c │ └── PciHostBridgeLib.inf ├── PciSegmentLibPciRootBridgeConfigurationIo │ ├── PciSegmentLib.c │ ├── PciSegmentLib.h │ ├── PciSegmentLibPciRootBridgeConfigurationIo.inf │ └── PciSegmentLibPciRootBridgeConfigurationIo.uni ├── PlatformBootManagerBootDescriptionLib │ ├── PlatformBootManagerBootDescriptionLib.c │ ├── PlatformBootManagerBootDescriptionLib.inf │ └── PlatformBootManagerBootDescriptionLibStrings.uni ├── PlatformBootManagerLib │ ├── PlatformBm.c │ ├── PlatformBm.h │ └── PlatformBootManagerLib.inf ├── PlatformBootOrderLib │ ├── InternalPlatformBootOrderIpmiLib.h │ ├── InternalPlatformBootOrderLib.h │ ├── PlatformBootOrderIpmiLib.c │ ├── PlatformBootOrderLib.c │ ├── PlatformBootOrderLib.inf │ ├── PlatformBootOrderLibNoIpmi.inf │ ├── PlatformBootOrderNoIpmiLib.c │ └── UnitTest │ │ ├── IpmiBootOrderUnitTest.c │ │ └── IpmiBootOrderUnitTest.inf ├── PlatformHasConfigManagerLib │ ├── PlatformHasConfigManagerLib.c │ └── PlatformHasConfigManagerLib.inf ├── PlatformIsPresiliconLib │ ├── PlatformIsPresiliconLib.c │ └── PlatformIsPresiliconLib.inf ├── PlatformIsSiliconLib │ ├── PlatformIsSiliconLib.c │ └── PlatformIsSiliconLib.inf ├── PlatformPasswordLib │ ├── PlatformPasswordLib.c │ ├── PlatformPasswordLib.inf │ └── PlatformPasswordLib.uni ├── PlatformPasswordLibMm │ ├── PlatformPasswordLibMm.c │ ├── PlatformPasswordLibMm.inf │ └── PlatformPasswordLibMm.uni ├── PlatformResourceLib │ ├── CommonResourceConfig.c │ ├── CommonResourceConfig.h │ ├── PlatformResourceConfig.c │ ├── PlatformResourceConfig.h │ ├── PlatformResourceLib.c │ ├── SocResourceConfig.h │ ├── T234ResourceConfig.c │ ├── T234ResourceConfigPrivate.h │ ├── T23xPlatformResourceLib.inf │ ├── T24xPlatformResourceLib.inf │ ├── TH500ResourceConfig.c │ ├── TH500ResourceConfigPrivate.h │ └── TH500Tcg2EventLog.c ├── PlatformResourceLibNull │ ├── PlatformResourceLibNull.c │ └── PlatformResourceLibNull.inf ├── PldmBaseLib │ ├── PldmBaseLib.c │ └── PldmBaseLib.inf ├── PldmFwUpdateLib │ ├── PldmFwUpdateLib.c │ └── PldmFwUpdateLib.inf ├── PldmFwUpdatePkgLib │ ├── PldmFwUpdatePkgLib.c │ └── PldmFwUpdatePkgLib.inf ├── PldmFwUpdateTaskLib │ ├── PldmFwUpdateTaskLib.c │ └── PldmFwUpdateTaskLib.inf ├── PrePiDefaultExceptionHandlerLib │ ├── AArch64 │ │ └── PrePiDefaultExceptionHandler.c │ ├── PrePiDefaultExceptionHandlerLib.inf │ └── PrePiDefaultExceptionHandlerUefi.c ├── QspiControllerLib │ ├── QspiControllerLib.c │ ├── QspiControllerLib.inf │ └── QspiControllerLibPrivate.h ├── RedfishPlatformCredentialLib │ ├── RedfishPlatformCredentialLib.c │ ├── RedfishPlatformCredentialLib.h │ ├── RedfishPlatformCredentialLib.inf │ └── UnitTest │ │ ├── CredentialBootstrapUnitTest.c │ │ ├── CredentialBootstrapUnitTest.h │ │ └── CredentialBootstrapUnitTest.inf ├── RedfishPlatformHostInterfaceOemLib │ ├── RedfishPlatformHostInterfaceIpmi.c │ ├── RedfishPlatformHostInterfaceIpmi.h │ ├── RedfishPlatformHostInterfaceOemLib.c │ ├── RedfishPlatformHostInterfaceOemLib.inf │ └── UnitTest │ │ ├── RedfishHostInterfaceUnitTest.c │ │ ├── RedfishHostInterfaceUnitTest.h │ │ └── RedfishHostInterfaceUnitTest.inf ├── RedfishPlatformTaskLib │ ├── RedfishPlatformTaskInternal.h │ ├── RedfishPlatformTaskLib.c │ └── RedfishPlatformTaskLib.inf ├── RedfishResourceIdentifyLibComputerSystem │ ├── v1_17_0 │ │ ├── RedfishResourceIdentifyLibComputerSystem.c │ │ └── RedfishResourceIdentifyLibComputerSystem.inf │ └── v1_22_0 │ │ ├── RedfishResourceIdentifyLibComputerSystem.c │ │ └── RedfishResourceIdentifyLibComputerSystem.inf ├── SavedCapsuleDataFlashLib │ ├── SavedCapsuleDataFlashLib.c │ └── SavedCapsuleDataFlashLib.inf ├── SeRngLib │ ├── SeRng.c │ ├── SeRngLib.inf │ └── SeRngLib.uni ├── SiblingPartitionLib │ ├── SiblingPartitionLib.c │ └── SiblingPartitionLib.inf ├── SmbiosMiscLib │ ├── SmbiosMiscLib.c │ └── SmbiosMiscLib.inf ├── SmmuLib │ ├── SmmuLib.c │ └── SmmuLib.inf ├── SsdtSerialPortFixupLib │ ├── SsdtSerialPortFixupLib.c │ ├── SsdtSerialPortFixupLib.inf │ └── SsdtSerialPortTemplate.asl ├── StandaloneMmCoreEntryPointOptee │ ├── Arm │ │ ├── CreateHobList.c │ │ ├── SetPermissions.c │ │ └── StandaloneMmCoreEntryPoint.c │ └── StandaloneMmCoreEntryPointOptee.inf ├── StandaloneMmOpteeLib │ ├── StandaloneMmOpteeLib.c │ └── StandaloneMmOpteeLib.inf ├── StandaloneMmUnavailableLib │ ├── StandaloneMmUnavailableLib.c │ └── StandaloneMmUnavailableLib.inf ├── StatusRegLib │ ├── StatusRegLib.c │ └── StatusRegLib.inf ├── StatusRegLibNull │ ├── StatusRegLibNull.c │ └── StatusRegLibNull.inf ├── SystemContextLib │ ├── AArch64 │ │ └── SystemContextLib.S │ └── SystemContextLib.inf ├── SystemResourceLib │ ├── SystemResourceLib.c │ └── SystemResourceLib.inf ├── Tegra16550SerialPortLib │ ├── Tegra16550SerialPortLib.c │ └── Tegra16550SerialPortLib.inf ├── TegraCombinedSerialPort │ ├── TegraCombinedSerialPortLib.c │ ├── TegraCombinedSerialPortLib.inf │ ├── TegraStandaloneMmCombinedSerialPortLib.c │ └── TegraStandaloneMmCombinedSerialPortLib.inf ├── TegraCpuFreqHelperLib │ ├── TegraCpuFreqHelper.S │ └── TegraCpuFreqHelper.inf ├── TegraDeviceTreeOverlayLib │ ├── TegraDeviceTreeKernelOverlayLib.c │ ├── TegraDeviceTreeKernelOverlayLib.inf │ ├── TegraDeviceTreeOverlayLib.c │ ├── TegraDeviceTreeOverlayLib.inf │ ├── TegraDeviceTreeOverlayLibCommon.c │ └── TegraDeviceTreeOverlayLibCommon.h ├── TegraPlatformInfoLib │ ├── AArch64 │ │ └── TegraPlatformInfo.S │ ├── TegraPlatformInfoLib.c │ ├── TegraPlatformInfoLib.inf │ └── TegraPlatformInfoLibPrivate.h ├── TegraSbsaSerialPortLib │ ├── TegraSbsaSerialPortLib.c │ └── TegraSbsaSerialPortLib.inf ├── TegraSerialPortLib │ ├── TegraSerialPortLib.c │ ├── TegraSerialPortLib.inf │ ├── TegraStandaloneMmSerialPortLib.c │ └── TegraStandaloneMmSerialPortLib.inf ├── TegraUsbNullLib │ ├── TegraUsbNullLib.c │ └── TegraUsbNullLib.inf ├── TegraUtcSerialPortLib │ ├── TegraUtcSerialPortLib.c │ └── TegraUtcSerialPortLib.inf ├── Tpm2DeviceLib │ ├── Tpm2DeviceLib.c │ ├── Tpm2DeviceLib.inf │ ├── Tpm2DeviceLibInternal.h │ └── Tpm2Tis.c ├── UiMenuStartupLib │ ├── UiMenuStartupLib.c │ └── UiMenuStartupLib.inf ├── UsbFalconLib │ ├── UsbFalconLib.c │ └── UsbFalconLib.inf ├── UserAuthenticationLib │ ├── UserAuthenticationLib.c │ └── UserAuthenticationLib.inf ├── VarSetCallbacksLib │ ├── VarSetCallbacksLib.c │ └── VarSetCallbacksLib.inf ├── VerPartitionLib │ ├── VerPartitionLib.c │ └── VerPartitionLib.inf └── WildcardStringLib │ ├── UnitTest │ ├── WildcardStringLibGoogleTest.cpp │ └── WildcardStringLibGoogleTest.inf │ ├── WildcardStringLib.c │ └── WildcardStringLib.inf ├── NVIDIA.dec ├── PrePi ├── AArch64 │ ├── ArchPrePi.c │ └── ModuleEntryPoint.S ├── PrePi.c ├── PrePi.h ├── PrePi.inf ├── PrePiMemory.c └── Scripts │ ├── PrePi-PIE-clang.lds │ └── PrePi-PIE.lds ├── Server └── TH500 │ ├── Drivers │ ├── ApeiDxe │ │ ├── AArch64 │ │ │ └── FfaSmc.S │ │ ├── Apei.c │ │ ├── Apei.h │ │ ├── Apei.inf │ │ ├── EinjTable.c │ │ ├── ErstTable.c │ │ ├── HestBertTables.c │ │ ├── RASFwInterface.c │ │ └── RASTimeOfDay.c │ ├── ErrorSerializationMmDxe │ │ ├── ErrorSerializationMemory.c │ │ ├── ErrorSerializationMemory.h │ │ ├── ErrorSerializationMm.c │ │ ├── ErrorSerializationMm.h │ │ ├── ErrorSerializationMm.inf │ │ └── UnitTest │ │ │ ├── ErrorSerializationDxeTestPrivate.h │ │ │ ├── ErrorSerializationDxeUnitTests.c │ │ │ └── ErrorSerializationDxeUnitTestsHost.inf │ ├── OemPartitionDxeMm │ │ ├── InternalOemPartitionMm.h │ │ ├── OemPartitionDxe.c │ │ ├── OemPartitionDxe.h │ │ ├── OemPartitionDxe.inf │ │ ├── OemPartitionMm.c │ │ └── OemPartitionMm.inf │ └── TH500GpuDxe │ │ ├── Protocol │ │ ├── GpuFirmwareBootCompleteProtocol.h │ │ └── GpuFirmwareC2CInitCompleteProtocol.h │ │ ├── TH500GpuDxe.dsc │ │ ├── TH500GpuDxe.inf │ │ ├── core │ │ ├── GPUMemoryInfo.c │ │ ├── GPUMemoryInfo.h │ │ ├── GPUSupport.c │ │ ├── GPUSupport.h │ │ ├── UEFIFspRpc.c │ │ ├── UEFIFspRpc.h │ │ ├── blackwell │ │ │ ├── GPUSupportMemSize.c │ │ │ └── GPUSupportMemSize.h │ │ └── hopper │ │ │ ├── GPUSupportMemSizeLegacy.c │ │ │ └── GPUSupportMemSizeLegacy.h │ │ └── efihand │ │ ├── ComponentName2.c │ │ ├── DriverBinding.c │ │ ├── DriverBinding.h │ │ ├── GpuDsdAmlGeneration.c │ │ ├── GpuDsdAmlGeneration.h │ │ ├── GpuFirmwareBootComplete.c │ │ ├── GpuFirmwareBootComplete.h │ │ ├── GpuFirmwareC2CInitComplete.c │ │ └── GpuFirmwareC2CInitComplete.h │ └── Library │ ├── DefaultExceptionCallbackLibServer │ ├── DefaultExceptionCallbackLib.c │ ├── DefaultExceptionCallbackLibPrePi.c │ ├── DefaultExceptionCallbackLibServer.inf │ └── DefaultExceptionCallbackLibServerPrePi.inf │ └── SsdtPcieSupportLib │ ├── SsdtPcieSupportLib.c │ ├── SsdtPcieSupportLib.inf │ └── SsdtPcieTemplate.asl ├── StandaloneMm ├── Drivers │ └── NvMmStandaloneMmCpu │ │ ├── EventHandle.c │ │ ├── StandaloneMmCpu.c │ │ └── StandaloneMmCpu.inf ├── Library │ ├── StandaloneMmHafniumEntryPoint │ │ ├── AArch64 │ │ │ ├── CreateHobList.c │ │ │ ├── ModuleEntryPoint.S │ │ │ ├── SetPermissions.c │ │ │ └── StandaloneMmCoreEntryPoint.c │ │ └── StandaloneMmHafniumCoreEntryPoint.inf │ ├── StandaloneMmHafniumMmuLib │ │ ├── AARCH64 │ │ │ └── StandaloneMmHafniumMmuLibReplaceEntry.S │ │ ├── StandaloneMmHafniumMmuLib.c │ │ ├── StandaloneMmHafniumMmuLib.inf │ │ └── StandaloneMmHafniumMmuLibCore.c │ ├── StandaloneMmHafniumResetLib │ │ ├── StandaloneMmHafniumResetLib.c │ │ └── StandaloneMmHafniumResetLib.inf │ └── StandaloneMmHafniumSlabMemAllocLib │ │ ├── StandaloneMmHafniumSlabMemAllocLib.c │ │ └── StandaloneMmHafniumSlabMemAllocLib.inf └── Manifest │ ├── Manifest.inf │ ├── ManifestStmmJetson.inf │ ├── StandaloneMm.dts │ ├── StandaloneMmJetson.dts │ ├── StmmDeviceRegions.dtsi │ └── StmmJetsonDeviceRegions.dtsi ├── Tegra ├── DeviceTree │ ├── AcpiBoot.dts │ ├── AndroidConfiguration.dts │ ├── BootOrderEmmc.dts │ ├── BootOrderHttp.dts │ ├── BootOrderNvme.dts │ ├── BootOrderPxe.dts │ ├── BootOrderSD.dts │ ├── BootOrderSata.dts │ ├── BootOrderShell.dts │ ├── BootOrderUfs.dts │ ├── BootOrderUsb.dts │ ├── DeviceTree.inf │ ├── DgpuDtEfifbSupport.dts │ ├── L4TConfiguration.dts │ └── T234AcpiWinBoot.dts └── T234 │ └── Drivers │ └── SeRngDxe │ ├── SeRngDxe.c │ ├── SeRngDxe.inf │ └── SeRngPrivate.h ├── TegraVirt └── PrePi │ ├── AArch64 │ ├── ArchPrePi.c │ └── ModuleEntryPoint.S │ ├── FdtParser.c │ ├── PrePi.c │ ├── PrePi.h │ └── TegraVirtPrePi.inf ├── Test ├── Mock │ ├── Include │ │ └── GoogleTest │ │ │ └── Library │ │ │ ├── MockHashApiLib.h │ │ │ ├── MockMmVarLib.h │ │ │ ├── MockNvNorFlashProto.h │ │ │ ├── MockNvVarIntLib.h │ │ │ ├── MockRamDiskProto.h │ │ │ ├── MockSmmVarProto.h │ │ │ └── MockVarIntProto.h │ └── Library │ │ ├── ArmSvcStubLib │ │ ├── ArmSvcStub.c │ │ └── ArmSvcStubLib.inf │ │ └── GoogleTest │ │ ├── MockHashApiLib │ │ ├── MockHashApiLib.cpp │ │ └── MockHashApiLib.inf │ │ ├── MockMmVarLib │ │ ├── MockMmVarLib.cpp │ │ └── MockMmVarLib.inf │ │ ├── MockNvNorFlashProto │ │ ├── MockNvNorFlashProto.cpp │ │ └── MockNvNorFlashProto.inf │ │ ├── MockNvVarIntLib │ │ ├── MockNvVarIntLib.cpp │ │ └── MockNvVarIntLib.inf │ │ ├── MockRamDiskProto │ │ ├── MockRamDiskProto.cpp │ │ └── MockRamDiskProto.inf │ │ ├── MockSmmVarProto │ │ ├── MockSmmVarProto.cpp │ │ └── MockSmmVarProto.inf │ │ └── MockVarIntProto │ │ ├── MockSmmVarProto.cpp │ │ └── MockSmmVarProto.inf └── ShellTest │ ├── BootOrderTest │ ├── BootOrderTest.c │ └── BootOrderTestUefiShell.inf │ ├── EfiGopTest │ ├── EfiGopTest.c │ └── EfiGopTestUefiShell.inf │ └── UefiMemMapTest │ ├── UefiMemMapTest.c │ └── UefiMemMapTestUefiShell.inf ├── edk2nv ├── FormatUefiBinary.py ├── __init__.py ├── sptool.py └── stuart │ ├── __init__.py │ ├── builder.py │ └── settings.py ├── scripts ├── build_stuart.sh ├── prepare_stuart.sh ├── setenv_stuart.sh └── test_stuart.sh └── tools_def.inc /.github/release-drafter.yml: -------------------------------------------------------------------------------- 1 | prerelease: true 2 | template: | 3 | ## What’s Changed 4 | 5 | ## Details 6 | 7 | $CHANGES 8 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # SPDX-FileCopyrightText: Copyright (c) 2018-2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 2 | # SPDX-License-Identifier: BSD-2-Clause-Patent 3 | 4 | __pycache__/ 5 | edk2-acpica-iasl_extdep/ 6 | Silicon/NVIDIA/Library/AvbLib/libavb 7 | -------------------------------------------------------------------------------- /Platform/NVIDIA/HostBasedTests/HostBasedTests.ci.yaml: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2021 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 2 | # 3 | # SPDX-License-Identifier: BSD-2-Clause-Patent 4 | 5 | { 6 | "HostUnitTestCompilerPlugin": { 7 | "DscPath": "HostBasedTests.dsc" 8 | }, 9 | } 10 | -------------------------------------------------------------------------------- /Platform/NVIDIA/HostBasedTests/TestBuild.py: -------------------------------------------------------------------------------- 1 | # SPDX-FileCopyrightText: Copyright (c) 2021-2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 2 | # 3 | # SPDX-License-Identifier: BSD-2-Clause-Patent 4 | 5 | ############################################################################### 6 | # Stuart build for host-based unittests. 7 | 8 | 9 | from edk2nv.stuart import NVIDIACiSettingsManager 10 | 11 | 12 | class HostBasedTestSettingsManager(NVIDIACiSettingsManager): 13 | ''' CiSettingsManager for host-based tests. ''' 14 | 15 | def GetName(self): 16 | return "HostBasedTests" 17 | 18 | def GetPackagesPath(self): 19 | return super().GetPackagesPath() + [ 20 | self.GetEdk2NvidiaDir() + "Platform/NVIDIA/" 21 | ] 22 | -------------------------------------------------------------------------------- /Platform/NVIDIA/HostBasedTests/test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # SPDX-FileCopyrightText: Copyright (c) 2021-2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 4 | # 5 | # SPDX-License-Identifier: BSD-2-Clause-Patent 6 | 7 | ############################################################################### 8 | # Build and run host-based tests in the current workspace using the stuart 9 | # build system. Calls prepare_stuart.sh and test_stuart.sh. 10 | 11 | # This script, along with the helper scripts, serves as a working example of 12 | # building NVIDIA UEFI images. 13 | 14 | set -e 15 | 16 | SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )" 17 | TEST_BUILD=${SCRIPT_DIR}/TestBuild.py 18 | HELPER_SCRIPT_DIR=${SCRIPT_DIR}/../../../Silicon/NVIDIA/scripts 19 | 20 | # Change directory to the root of the workspace 21 | cd ${SCRIPT_DIR}/../../../.. 22 | 23 | # Prepare and build 24 | ${HELPER_SCRIPT_DIR}/prepare_stuart.sh ${TEST_BUILD} 25 | ${HELPER_SCRIPT_DIR}/test_stuart.sh HostBasedTests ${TEST_BUILD} 26 | -------------------------------------------------------------------------------- /Platform/NVIDIA/KconfigIncludes/BuildEmbedded.conf: -------------------------------------------------------------------------------- 1 | # @file 2 | # 3 | # Defaults for an embedded build 4 | # 5 | # SPDX-FileCopyrightText: Copyright (c) 2023-2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | 10 | config BUILD_EMBEDDED 11 | bool "Embedded" 12 | help 13 | "A minimal build optimal for embedded devices that don't need most features" 14 | #Default features 15 | imply DEFAULT_SECURITY_TPM_FIRMWARE 16 | imply SECURITY_PHYSICAL_PRESENCE 17 | imply SECURITY_UEFI_SECURE_BOOT 18 | imply VARIABLE_EMULATED 19 | imply VARIABLE_NON_SECURE_SUPPORTED 20 | imply EMMC 21 | imply DEFAULT_SERIAL_PORT_CONSOLE_TEGRA 22 | imply DEVICETREE 23 | imply DEFAULT_SMBIOS_ARM 24 | imply DEFAULT_RCM_BOOT_L4T_LAUNCHER 25 | imply BOOT_QUICK_BOOT_ENABLED 26 | imply DEFAULT_SINGLE_BOOT_L4T_LAUNCHER 27 | imply DEFAULT_SOC_DISPLAY_HANDOFF_MODE_AUTO 28 | imply FS_EXT4 29 | -------------------------------------------------------------------------------- /Platform/NVIDIA/KconfigIncludes/CommonSocDatacenter.conf: -------------------------------------------------------------------------------- 1 | # @file 2 | # 3 | # Common Datacenter hardware 4 | # 5 | # SPDX-FileCopyrightText: Copyright (c) 2023-2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | 10 | config SOC_DATACENTER 11 | bool 12 | imply USE_SERVER_FIRMWARE_CAPSULE_SIZE 13 | -------------------------------------------------------------------------------- /Platform/NVIDIA/KconfigIncludes/CommonSocGeneral.conf: -------------------------------------------------------------------------------- 1 | # @file 2 | # 3 | # Common General hardware 4 | # 5 | # SPDX-FileCopyrightText: Copyright (c) 2023-2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | 10 | config SOC_GENERAL 11 | bool 12 | imply SUPPORTS_NVIDIA_SDHCI 13 | imply SUPPORTS_NETWORKING_DEVICE_NVIDIA 14 | imply SUPPORTS_SOC_USB 15 | imply SUPPORTS_NVIDIA_DISPLAY 16 | imply FIRMWARE_PARTITION_SUPPORT 17 | imply USE_GENERAL_FIRMWARE_CAPSULE_SIZE 18 | -------------------------------------------------------------------------------- /Platform/NVIDIA/KconfigIncludes/SocT23X.conf: -------------------------------------------------------------------------------- 1 | # @file 2 | # 3 | # Support for T23X hardware (e.g. Orin) 4 | # 5 | # SPDX-FileCopyrightText: Copyright (c) 2023-2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | 10 | config SOC_T23X 11 | bool "T23X" 12 | help 13 | Support for T23X chips (e.g. Orin) 14 | # Hardware support present 15 | imply SOC_GENERAL 16 | imply SUPPORTS_DESIGNWARE_PCIE 17 | imply SUPPORTS_EMMC 18 | -------------------------------------------------------------------------------- /Platform/NVIDIA/KconfigIncludes/SocT24X.conf: -------------------------------------------------------------------------------- 1 | # @file 2 | # 3 | # Support for T24X hardware (e.g. Grace) 4 | # 5 | # SPDX-FileCopyrightText: Copyright (c) 2023-2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | 10 | config SOC_T24X 11 | bool "T24X" 12 | help 13 | Support for T24X chips (e.g. Grace) 14 | # Hardware support present 15 | imply SOC_DATACENTER 16 | imply SUPPORTS_NVIDIA_PCIE 17 | imply SUPPORTS_DYNAMAIC_DEBUG_PRINT 18 | imply SUPPORTS_RAS 19 | imply SUPPORTS_ARM_WATCHDOG 20 | imply SUPPORTS_DEBUG_LOG_SCRATCH_REGISTER 21 | imply SUPPORTS_SERVER_POWER_CONTROLLERS 22 | imply SUPPORTS_BOOTLOADER_RAMDISK 23 | -------------------------------------------------------------------------------- /Platform/NVIDIA/KconfigIncludes/SocT26X.conf: -------------------------------------------------------------------------------- 1 | # @file 2 | # 3 | # Support for T26X hardware 4 | # 5 | # SPDX-FileCopyrightText: Copyright (c) 2024-2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | 10 | config SOC_T26X 11 | bool "T26X" 12 | help 13 | Support for T26X chips 14 | # Hardware support present 15 | imply SOC_GENERAL 16 | imply SUPPORTS_NVIDIA_PCIE 17 | imply SUPPORTS_BOOTLOADER_RAMDISK 18 | -------------------------------------------------------------------------------- /Platform/NVIDIA/NVIDIA.common.dsc: -------------------------------------------------------------------------------- 1 | # 2 | # SPDX-FileCopyrightText: Copyright (c) 2018-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 3 | # Copyright (c) 2013-2018, ARM Limited. All rights reserved. 4 | # 5 | # SPDX-License-Identifier: BSD-2-Clause-Patent 6 | # 7 | 8 | ################################################################################ 9 | # 10 | # Defines Section - statements that will be processed to create a Makefile. 11 | # 12 | ################################################################################ 13 | [Defines] 14 | PLATFORM_GUID = $(BUILD_GUID) 15 | FLASH_DEFINITION = Platform/NVIDIA/NVIDIA.common.fdf 16 | 17 | !include Platform/NVIDIA/NVIDIA.common.dsc.inc 18 | -------------------------------------------------------------------------------- /Platform/NVIDIA/NVIDIA.common.fdf: -------------------------------------------------------------------------------- 1 | # 2 | # SPDX-FileCopyrightText: Copyright (c) 2018-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 3 | # Copyright (c) 2013-2018, ARM Limited. All rights reserved. 4 | # 5 | # SPDX-License-Identifier: BSD-2-Clause-Patent 6 | 7 | !include Platform/NVIDIA/NVIDIA.fvmain.fdf.inc 8 | !include Platform/NVIDIA/NVIDIA.common.fdf.inc 9 | -------------------------------------------------------------------------------- /Platform/NVIDIA/NVIDIA.defconfig: -------------------------------------------------------------------------------- 1 | # SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 2 | # 3 | # SPDX-License-Identifier: BSD-2-Clause-Patent 4 | 5 | # Global CONFIG variables. Individual platforms can override these. 6 | -------------------------------------------------------------------------------- /Platform/NVIDIA/NVIDIA.global.dsc.inc: -------------------------------------------------------------------------------- 1 | # This file contains defines that are global to all NVIDIA platforms. 2 | # 3 | # SPDX-FileCopyrightText: Copyright (c) 2023 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 4 | # 5 | # SPDX-License-Identifier: BSD-2-Clause-Patent 6 | 7 | 8 | [Defines] 9 | 10 | # Skip edk2's debug macro plugin. It assumes a packaging structure that 11 | # doesn't match edk2-nvidia. Specifically, it requires a dec file in 12 | # edk2-nvidia/Platform. 13 | DISABLE_DEBUG_MACRO_CHECK=TRUE 14 | 15 | -------------------------------------------------------------------------------- /Platform/NVIDIA/StandaloneMmOptee/StandaloneMmOptee.dsc: -------------------------------------------------------------------------------- 1 | # 2 | # Copyright (c) 2020-2022, NVIDIA CORPORATION. All rights reserved. 3 | # Copyright (c) 2018, ARM Limited. All rights reserved. 4 | # 5 | # SPDX-License-Identifier: BSD-2-Clause-Patent 6 | # 7 | 8 | ################################################################################ 9 | # 10 | # Defines Section - statements that will be processed to create a Makefile. 11 | # 12 | ################################################################################ 13 | [Defines] 14 | PLATFORM_NAME = StandaloneMmOptee 15 | PLATFORM_GUID = 6f1dc7c3-1b41-4b4d-bf53-9023bafac4cc 16 | OUTPUT_DIRECTORY = Build/StandaloneMmOptee 17 | FLASH_DEFINITION = Platform/NVIDIA/StandaloneMmOptee/StandaloneMmOptee.fdf 18 | 19 | !include Platform/NVIDIA/StandaloneMmOptee/StandaloneMmOptee.dsc.inc 20 | -------------------------------------------------------------------------------- /Platform/NVIDIA/Tegra/DefConfigs/t23x_embedded.defconfig: -------------------------------------------------------------------------------- 1 | # SPDX-FileCopyrightText: Copyright (c) 2023-2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 2 | # 3 | # SPDX-License-Identifier: BSD-2-Clause-Patent 4 | CONFIG_SOC_T23X=y 5 | CONFIG_BUILD_EMBEDDED=y 6 | CONFIG_PLATFORM_GUID="f98bcf32-fd20-4ba9-ada4-e0406947ca3c" 7 | -------------------------------------------------------------------------------- /Platform/NVIDIA/Tegra/DefConfigs/t23x_general.defconfig: -------------------------------------------------------------------------------- 1 | # SPDX-FileCopyrightText: Copyright (c) 2023-2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 2 | # 3 | # SPDX-License-Identifier: BSD-2-Clause-Patent 4 | CONFIG_SOC_T23X=y 5 | CONFIG_BUILD_GENERAL=y 6 | CONFIG_PLATFORM_GUID="49a79a15-8f69-4be7-a30c-a172f44abce7" 7 | CONFIG_FMP_SYSTEM_IMAGE_TYPE_ID="bf0d4599-20d4-414e-b2c5-3595b1cda402" 8 | -------------------------------------------------------------------------------- /Platform/NVIDIA/Tegra/DefConfigs/t23x_general_igx.defconfig: -------------------------------------------------------------------------------- 1 | # SPDX-FileCopyrightText: Copyright (c) 2023-2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 2 | # 3 | # SPDX-License-Identifier: BSD-2-Clause-Patent 4 | CONFIG_SOC_T23X=y 5 | CONFIG_BUILD_GENERAL=y 6 | CONFIG_PLATFORM_GUID="0927650c-5959-4dfb-a40f-0f05a3cefbd6" 7 | # CONFIG_SECURITY_DISABLE_PHYSICAL_PRESENCE_POST_SECUREBOOT is not set 8 | CONFIG_ASPEED_2600_DISPLAY=y 9 | CONFIG_IPMI_BMC=y 10 | CONFIG_REDFISH=y 11 | CONFIG_FMP_SYSTEM_IMAGE_TYPE_ID="db21ea33-80c8-4906-971a-49c0b3f7d1d0" 12 | -------------------------------------------------------------------------------- /Platform/NVIDIA/Tegra/DefConfigs/t24x_datacenter.defconfig: -------------------------------------------------------------------------------- 1 | # SPDX-FileCopyrightText: Copyright (c) 2023-2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 2 | # 3 | # SPDX-License-Identifier: BSD-2-Clause-Patent 4 | CONFIG_SOC_T24X=y 5 | CONFIG_BUILD_DATACENTER=y 6 | CONFIG_PLATFORM_GUID="9aef2e52-dead-4f63-b895-3a504a3e63c4" 7 | CONFIG_FMP_SYSTEM_IMAGE_TYPE_ID="8655e5cf-297b-4213-84d5-b6817203a432" 8 | -------------------------------------------------------------------------------- /Platform/NVIDIA/Tegra/DefConfigs/t26x_embedded.defconfig: -------------------------------------------------------------------------------- 1 | # SPDX-FileCopyrightText: Copyright (c) 2023-2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 2 | # 3 | # SPDX-License-Identifier: BSD-2-Clause-Patent 4 | CONFIG_SOC_T26X=y 5 | CONFIG_BUILD_EMBEDDED=y 6 | CONFIG_PLATFORM_GUID="df0e10d8-aeac-451d-a2d7-ef1e58dc59d9" 7 | CONFIG_PCIE=y 8 | CONFIG_NVME=y 9 | CONFIG_UFS=y 10 | -------------------------------------------------------------------------------- /Platform/NVIDIA/Tegra/DefConfigs/t26x_general.defconfig: -------------------------------------------------------------------------------- 1 | # SPDX-FileCopyrightText: Copyright (c) 2023-2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 2 | # 3 | # SPDX-License-Identifier: BSD-2-Clause-Patent 4 | CONFIG_SOC_T26X=y 5 | CONFIG_BUILD_GENERAL=y 6 | CONFIG_PLATFORM_GUID="b175f7b7-0cb0-446e-b338-0e0d0f688de8" 7 | CONFIG_IPMI_BMC=y 8 | CONFIG_FIRMWARE_MANAGEMENT_BLOB=y 9 | CONFIG_FIRMWARE_CAPSULE_SIZE=0x4100000 10 | CONFIG_FMP_SYSTEM_IMAGE_TYPE_ID="3c834404-d2d7-4912-8c1c-6e850b5f2824" 11 | -------------------------------------------------------------------------------- /Platform/NVIDIA/iasl_ext_dep.yaml: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Download iasl executable tool from a nuget package 3 | # - package contains different binaries based on host 4 | # Add the folder with the tool to the path 5 | # 6 | # This is only downloaded for scope server thus 7 | # should have no impact on the asl compiler used by any 8 | # other given platform to build. 9 | # 10 | # Copyright (c) Microsoft Corporation. 11 | # SPDX-FileCopyrightText: Copyright (c) 2021-2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 12 | # 13 | # SPDX-License-Identifier: BSD-2-Clause-Patent 14 | # 15 | ## 16 | { 17 | "override_id": "iasl-ci-1", 18 | "id": "iasl-server-1", 19 | "scope": "nvidia", 20 | "type": "nuget", 21 | "name": "edk2-acpica-iasl", 22 | "source": "https://pkgs.dev.azure.com/projectmu/acpica/_packaging/mu_iasl/nuget/v3/index.json", 23 | "version": "20200717.0.0", 24 | "flags": ["set_path", "host_specific"], 25 | } 26 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # UEFI for NVIDIA Platforms 2 | 3 | This repository contains sources necessary to build UEFI for NVIDIA Platforms. 4 | UEFI for NVIDIA Platforms is based on [EDK2](https://github.com/tianocore/edk2). 5 | 6 | See the [wiki](https://github.com/NVIDIA/edk2-nvidia/wiki) for more 7 | information, including build and flash instructions. 8 | 9 | # Build 10 | 11 | To build this platform, please refer to the 12 | [instructions](https://github.com/NVIDIA/edk2-nvidia/wiki/Build). 13 | -------------------------------------------------------------------------------- /Sdk/TH500Gpu/TH500GpuSdk.dec: -------------------------------------------------------------------------------- 1 | #/** @file 2 | # 3 | # SPDX-FileCopyrightText: Copyright (c) 2022-2024, NVIDIA CORPORATION. All rights reserved. 4 | # 5 | # SPDX-License-Identifier: BSD-2-Clause-Patent 6 | # 7 | #**/ 8 | 9 | # NVIDIA EDK II declaration file for Driver and SDK resources 10 | # relative path listing for EDK II build scripts locating common driver and SDK resources 11 | 12 | [Defines] 13 | DEC_SPECIFICATION = 0x00010015 14 | PACKAGE_NAME = NVSDK 15 | PACKAGE_GUID = 2515B97F-FF53-475E-BBB9-231B6D947E33 16 | PACKAGE_VERSION = 1.0 17 | 18 | [Includes.common] 19 | include/src/common/inc/swref 20 | include/src/common/inc/swref/published 21 | include/src/common/inc/swref/published/blackwell/gb100 22 | include/src/common/inc/swref/published/hopper/gh100 23 | include/src/common/sdk/nvidia/inc 24 | include/src/nvidia/arch/nvalloc/common/inc 25 | 26 | [Guids] 27 | 28 | [PPIs] 29 | 30 | [LibraryClasses] 31 | 32 | -------------------------------------------------------------------------------- /Sdk/TH500Gpu/include/README: -------------------------------------------------------------------------------- 1 | This folder contains only the specific header files from Nvidia GitHub project 2 | at https://github.com/NVIDIA/open-gpu-kernel-modules as required for the UEFI 3 | GPU sdiver used in Grace products. 4 | 5 | The currently copied headers are from commit e45d91de0224e17a6bf7c971d8f165090b3c07a6 6 | mapping to 550.90.07 version 7 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Application/ClockUtil/ClockUtil.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // Shell application ClockUtil. 3 | // 4 | // This application is used to set and retrieve clock information for the platform. 5 | // 6 | // Copyright (c) 2018, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 7 | // 8 | // SPDX-License-Identifier: BSD-2-Clause-Patent 9 | // **/ 10 | 11 | 12 | #string STR_MODULE_ABSTRACT #language en-US "Shell application ClockUtil" 13 | 14 | #string STR_MODULE_DESCRIPTION #language en-US "This application is used to set and retrieve clock information for the platform." 15 | 16 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Application/ClockUtil/ClockUtilExtra.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // ClockUtil Localized Strings and Content 3 | // 4 | // Copyright (c) 2018, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | // 6 | // SPDX-License-Identifier: BSD-2-Clause-Patent 7 | // 8 | // **/ 9 | 10 | #string STR_PROPERTIES_MODULE_NAME 11 | #language en-US 12 | "ClockUtil Config App" 13 | 14 | 15 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Application/FalconUtil/FalconUtilExtra.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // FalconUtil Localized Strings and Content 3 | // 4 | // Copyright (c) 2019, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | // 6 | // SPDX-License-Identifier: BSD-2-Clause-Patent 7 | // 8 | // **/ 9 | 10 | #string STR_PROPERTIES_MODULE_NAME 11 | #language en-US 12 | "FalconUtil Config App" 13 | 14 | 15 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Application/GpioUtil/GpioUtil.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // Shell application GpioUtil. 3 | // 4 | // This application is used to set and retrieve clock information for the platform. 5 | // 6 | // Copyright (c) 2018, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 7 | // 8 | // SPDX-License-Identifier: BSD-2-Clause-Patent 9 | // 10 | // **/ 11 | 12 | 13 | #string STR_MODULE_ABSTRACT #language en-US "Shell application GpioUtil" 14 | 15 | #string STR_MODULE_DESCRIPTION #language en-US "This application is used to set and retrieve gpio information for the platform." 16 | 17 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Application/GpioUtil/GpioUtilExtra.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // GpioUtil Localized Strings and Content 3 | // 4 | // Copyright (c) 2018, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | // 6 | // SPDX-License-Identifier: BSD-2-Clause-Patent 7 | // 8 | // **/ 9 | 10 | #string STR_PROPERTIES_MODULE_NAME 11 | #language en-US 12 | "GpioUtil Config App" 13 | 14 | 15 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Application/HiiKeywordUtil/HiiKeywordUtil.uni: -------------------------------------------------------------------------------- 1 | /** @file 2 | Shell application HiiKeywordUtil. 3 | 4 | This application is used to set and get Hii Keyword information for the platform. 5 | 6 | SPDX-FileCopyrightText: Copyright (c) 2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 7 | 8 | SPDX-License-Identifier: BSD-2-Clause-Patent 9 | **/ 10 | 11 | 12 | #string STR_MODULE_ABSTRACT #language en-US "Shell application HiiKeywordUtil" 13 | 14 | #string STR_MODULE_DESCRIPTION #language en-US "This application is used to set and get Hii Keyword information for the platform." 15 | 16 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Application/HiiKeywordUtil/HiiKeywordUtilExtra.uni: -------------------------------------------------------------------------------- 1 | /** @file 2 | HiiKeywordUtil Localized Strings and Content 3 | 4 | This application is used to set and get Hii Keyword information for the platform. 5 | 6 | SPDX-FileCopyrightText: Copyright (c) 2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 7 | 8 | SPDX-License-Identifier: BSD-2-Clause-Patent 9 | **/ 10 | 11 | #string STR_PROPERTIES_MODULE_NAME 12 | #language en-US 13 | "HiiKeywordUtil Config App" 14 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Application/HostInterfaceUtil/HostInterfaceUtil.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // Shell application HostInterfaceUtil. 3 | // 4 | // This application is used to test IPMI command between BIOS an BMC in order to 5 | // get bootstrap credential. 6 | // 7 | // Copyright (c) 2022 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 8 | // 9 | // SPDX-License-Identifier: BSD-2-Clause-Patent 10 | // 11 | // **/ 12 | 13 | 14 | #string STR_MODULE_ABSTRACT #language en-US "Shell application HostInterfaceUtil" 15 | 16 | #string STR_MODULE_DESCRIPTION #language en-US "This application is used to test IPMI command between BIOS an BMC in order to get bootstrap credential" 17 | 18 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Application/HostInterfaceUtil/HostInterfaceUtilExtra.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // HostInterfaceUtil Localized Strings and Content 3 | // 4 | // Copyright (c) 2022 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | // 6 | // SPDX-License-Identifier: BSD-2-Clause-Patent 7 | // 8 | // **/ 9 | 10 | #string STR_PROPERTIES_MODULE_NAME 11 | #language en-US 12 | "HostInterfaceUtil App" 13 | 14 | 15 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Application/IpmiUtility/IpmiUtility.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // Shell application IpmiUtility. 3 | // 4 | // This application is used to test IPMI command between BIOS an BMC. 5 | // 6 | // Copyright (c) 2022 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 7 | // 8 | // SPDX-License-Identifier: BSD-2-Clause-Patent 9 | // 10 | // **/ 11 | 12 | #string STR_MODULE_ABSTRACT #language en-US "Shell application IpmiUtility" 13 | #string STR_MODULE_DESCRIPTION #language en-US "This application is used to test IPMI command between BIOS an BMC" 14 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Application/IpmiUtility/IpmiUtilityExtra.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // IpmiUtility Localized Strings and Content 3 | // 4 | // Copyright (c) 2022 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | // 6 | // SPDX-License-Identifier: BSD-2-Clause-Patent 7 | // 8 | // **/ 9 | 10 | #string STR_PROPERTIES_MODULE_NAME 11 | #language en-US 12 | "IpmiUtility App" 13 | 14 | 15 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Application/L4TLauncher/L4TLauncher.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // 3 | // Application to launch L4T A/B. 4 | // 5 | // Copyright (c) 2021 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | // 7 | // SPDX-License-Identifier: BSD-2-Clause-Patent 8 | // 9 | // **/ 10 | 11 | 12 | #string STR_MODULE_ABSTRACT #language en-US "L4T Launcher" 13 | 14 | #string STR_MODULE_DESCRIPTION #language en-US "Application to launch L4T A/B." 15 | 16 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Application/L4TLauncher/L4TLauncherExtra.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // Application to launch L4T A/B. 3 | // 4 | // Copyright (c) 2021 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | // 6 | // SPDX-License-Identifier: BSD-2-Clause-Patent 7 | // 8 | // **/ 9 | 10 | #string STR_PROPERTIES_MODULE_NAME 11 | #language en-US 12 | "L4T Launcher" 13 | 14 | 15 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Application/RegulatorUtil/RegulatorUtil.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // Shell application RegulatorUtil. 3 | // 4 | // This application is used to set and retrieve regulator information for the platform. 5 | // 6 | // Copyright (c) 2018 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 7 | // 8 | // SPDX-License-Identifier: BSD-2-Clause-Patent 9 | // 10 | // **/ 11 | 12 | 13 | #string STR_MODULE_ABSTRACT #language en-US "Shell application RegulatorUtil" 14 | 15 | #string STR_MODULE_DESCRIPTION #language en-US "This application is used to set and retrieve regulator information for the platform." 16 | 17 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Application/RegulatorUtil/RegulatorUtilExtra.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // RegulatorUtil Localized Strings and Content 3 | // 4 | // Copyright (c) 2018 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | // 6 | // SPDX-License-Identifier: BSD-2-Clause-Patent 7 | // 8 | // **/ 9 | 10 | #string STR_PROPERTIES_MODULE_NAME 11 | #language en-US 12 | "RegulatorUtil Config App" 13 | 14 | 15 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Application/StackCheck/StackCheck.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // Shell application StackCheck. 3 | // 4 | // This application is used to test stack check behavior. 5 | // 6 | // Copyright (c) 2019, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 7 | // 8 | // SPDX-License-Identifier: BSD-2-Clause-Patent 9 | // 10 | // **/ 11 | 12 | 13 | #string STR_MODULE_ABSTRACT #language en-US "Shell application StackCheck" 14 | 15 | #string STR_MODULE_DESCRIPTION #language en-US "This application is used to test stack check behavior." 16 | 17 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Application/StackCheck/StackCheckExtra.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // StackCheck Localized Strings and Content 3 | // 4 | // Copyright (c) 2019, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | // 6 | // SPDX-License-Identifier: BSD-2-Clause-Patent 7 | // 8 | // **/ 9 | 10 | #string STR_PROPERTIES_MODULE_NAME 11 | #language en-US 12 | "StackCheck Test App" 13 | 14 | 15 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Application/TestInjectAssert/TestInjectAssert.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // 3 | // Application to inject ASSERT. 4 | // 5 | // SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | // 7 | // SPDX-License-Identifier: BSD-2-Clause-Patent 8 | // 9 | // **/ 10 | 11 | 12 | #string STR_MODULE_ABSTRACT #language en-US "TestInjectAssert" 13 | 14 | #string STR_MODULE_DESCRIPTION #language en-US "Application to Inject Assert." 15 | 16 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Application/TestInjectAssert/TestInjectAssertExtra.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // Application to inject Assert 3 | // 4 | // SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | // 6 | // SPDX-License-Identifier: BSD-2-Clause-Patent 7 | // 8 | // **/ 9 | 10 | #string STR_PROPERTIES_MODULE_NAME 11 | #language en-US 12 | "TestInjectAssert" 13 | 14 | 15 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Application/WfiApp/WfiApp.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // Wfi App. 3 | // 4 | // This application exits boot services and then does a WFI loop 5 | // 6 | // SPDX-FileCopyrightText: Copyright (c) 2023 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 7 | // 8 | // SPDX-License-Identifier: BSD-2-Clause-Patent 9 | // **/ 10 | 11 | 12 | #string STR_MODULE_ABSTRACT #language en-US "WFI boot application" 13 | 14 | #string STR_MODULE_DESCRIPTION #language en-US "This application exits boot services and then does a WFI loop." 15 | 16 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Application/WfiApp/WfiAppExtra.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // WfiApp Localized Strings and Content 3 | // 4 | // SPDX-FileCopyrightText: Copyright (c) 2023 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | // 6 | // SPDX-License-Identifier: BSD-2-Clause-Patent 7 | // 8 | // **/ 9 | 10 | #string STR_PROPERTIES_MODULE_NAME 11 | #language en-US 12 | "WFI Boot App" 13 | 14 | 15 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Assets/nvidiagray1080.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NVIDIA/edk2-nvidia/1368f0e18283757aff37c6f5e66432a87924aa2b/Silicon/NVIDIA/Assets/nvidiagray1080.bmp -------------------------------------------------------------------------------- /Silicon/NVIDIA/Assets/nvidiagray480.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NVIDIA/edk2-nvidia/1368f0e18283757aff37c6f5e66432a87924aa2b/Silicon/NVIDIA/Assets/nvidiagray480.bmp -------------------------------------------------------------------------------- /Silicon/NVIDIA/Assets/nvidiagray720.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NVIDIA/edk2-nvidia/1368f0e18283757aff37c6f5e66432a87924aa2b/Silicon/NVIDIA/Assets/nvidiagray720.bmp -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/BpmpScmi/ScmiDxe.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Copyright (c) 2021, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 4 | Copyright (c) 2017-2018, Arm Limited. All rights reserved. 5 | 6 | SPDX-License-Identifier: BSD-2-Clause-Patent 7 | 8 | System Control and Management Interface V1.0 9 | http://infocenter.arm.com/help/topic/com.arm.doc.den0056a/ 10 | DEN0056A_System_Control_and_Management_Interface.pdf 11 | **/ 12 | 13 | #ifndef SCMI_DXE_H_ 14 | #define SCMI_DXE_H_ 15 | 16 | #define MAX_VENDOR_LEN SCMI_MAX_STR_LEN 17 | 18 | /** Pointer to protocol initialization function. 19 | 20 | @param[in] Handle A pointer to the EFI_HANDLE on which the protocol 21 | interface is to be installed. 22 | 23 | @retval EFI_SUCCESS Protocol interface installed successfully. 24 | **/ 25 | typedef 26 | EFI_STATUS 27 | (EFIAPI *SCMI_PROTOCOL_INIT_FXN)( 28 | IN EFI_HANDLE *Handle 29 | ); 30 | 31 | #endif /* SCMI_DXE_H_ */ 32 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/ConfigurationManagerData/BootArchInfo/BootArchInfo.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # BootArchInfo 3 | # 4 | # SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | # 6 | # SPDX-License-Identifier: BSD-2-Clause-Patent 7 | ## 8 | 9 | [Defines] 10 | INF_VERSION = 0x00010019 11 | BASE_NAME = BootArchInfoParser 12 | FILE_GUID = bb659049-c06f-405a-bfde-2fa54e7fe8bf 13 | VERSION_STRING = 1.0 14 | MODULE_TYPE = DXE_DRIVER 15 | LIBRARY_CLASS = NULL|DXE_DRIVER 16 | CONSTRUCTOR = RegisterBootArchInfoParser 17 | 18 | [Sources] 19 | BootArchInfoParser.c 20 | BootArchInfoParser.h 21 | 22 | [Packages] 23 | MdePkg/MdePkg.dec 24 | EmbeddedPkg/EmbeddedPkg.dec 25 | DynamicTablesPkg/DynamicTablesPkg.dec 26 | Silicon/NVIDIA/NVIDIA.dec 27 | 28 | [LibraryClasses] 29 | ConfigurationManagerDataRepoLib 30 | 31 | [Pcd] 32 | 33 | [Guids] 34 | 35 | [Protocols] 36 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/ConfigurationManagerData/FanInfo/FanInfo.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # FanInfo 3 | # 4 | # SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | # 6 | # SPDX-License-Identifier: BSD-2-Clause-Patent 7 | ## 8 | 9 | [Defines] 10 | INF_VERSION = 0x00010019 11 | BASE_NAME = FanInfoParser 12 | FILE_GUID = b0292e15-b223-491f-9ec6-6e46f90538d8 13 | VERSION_STRING = 1.0 14 | MODULE_TYPE = DXE_DRIVER 15 | LIBRARY_CLASS = NULL|DXE_DRIVER 16 | CONSTRUCTOR = RegisterFanInfoParser 17 | 18 | [Sources] 19 | FanInfoParser.c 20 | FanInfoParser.h 21 | 22 | [Packages] 23 | DynamicTablesPkg/DynamicTablesPkg.dec 24 | EmbeddedPkg/EmbeddedPkg.dec 25 | MdePkg/MdePkg.dec 26 | Silicon/NVIDIA/NVIDIA.dec 27 | 28 | [LibraryClasses] 29 | AcpiTableListParser 30 | ConfigurationManagerDataRepoLib 31 | 32 | [Pcd] 33 | 34 | [Guids] 35 | 36 | [Protocols] 37 | 38 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/ConfigurationManagerData/FixedFeatureFlags/FixedFeatureFlags.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Fixed Feature Flags 3 | # 4 | # SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | # 6 | # SPDX-License-Identifier: BSD-2-Clause-Patent 7 | ## 8 | 9 | [Defines] 10 | INF_VERSION = 0x00010019 11 | BASE_NAME = FixedFeatureFlagsParser 12 | FILE_GUID = 10081f40-f12f-4627-ba4a-f6854f10184c 13 | VERSION_STRING = 1.0 14 | MODULE_TYPE = DXE_DRIVER 15 | LIBRARY_CLASS = NULL|DXE_DRIVER 16 | CONSTRUCTOR = RegisterFixedFeatureFlagsParser 17 | 18 | [Sources] 19 | FixedFeatureFlagsParser.c 20 | FixedFeatureFlagsParser.h 21 | 22 | [Packages] 23 | DynamicTablesPkg/DynamicTablesPkg.dec 24 | EmbeddedPkg/EmbeddedPkg.dec 25 | MdePkg/MdePkg.dec 26 | Silicon/NVIDIA/NVIDIA.dec 27 | 28 | [LibraryClasses] 29 | ConfigurationManagerDataRepoLib 30 | TegraPlatformInfoLib 31 | 32 | [Pcd] 33 | 34 | [Guids] 35 | 36 | [Protocols] 37 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/ConfigurationManagerData/HdaInfo/HdaInfo.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # HdaInfo 3 | # 4 | # SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | # 6 | # SPDX-License-Identifier: BSD-2-Clause-Patent 7 | ## 8 | 9 | [Defines] 10 | INF_VERSION = 0x00010019 11 | BASE_NAME = HdaInfoParser 12 | FILE_GUID = 9c203b52-9e5a-479c-aa9f-362fe1a04cd2 13 | VERSION_STRING = 1.0 14 | MODULE_TYPE = DXE_DRIVER 15 | LIBRARY_CLASS = NULL|DXE_DRIVER 16 | CONSTRUCTOR = RegisterHdaInfoParser 17 | 18 | [Sources] 19 | HdaInfoParser.c 20 | HdaInfoParser.h 21 | 22 | [Packages] 23 | DynamicTablesPkg/DynamicTablesPkg.dec 24 | EmbeddedPkg/EmbeddedPkg.dec 25 | MdePkg/MdePkg.dec 26 | Silicon/NVIDIA/NVIDIA.dec 27 | 28 | [LibraryClasses] 29 | AmlLib 30 | ConfigurationManagerDataRepoLib 31 | PlatformAslTablesLib 32 | 33 | [Pcd] 34 | 35 | [Guids] 36 | 37 | [Protocols] 38 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/ConfigurationManagerData/IpmiParser/IpmiParser.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # IpmiParser 3 | # 4 | # SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | # 6 | # SPDX-License-Identifier: BSD-2-Clause-Patent 7 | ## 8 | 9 | [Defines] 10 | INF_VERSION = 0x00010019 11 | BASE_NAME = IpmiParser 12 | FILE_GUID = 3ba2ab6d-8ed0-4ef8-b512-254a81652a05 13 | VERSION_STRING = 1.0 14 | MODULE_TYPE = DXE_DRIVER 15 | LIBRARY_CLASS = NULL|DXE_DRIVER 16 | CONSTRUCTOR = RegisterIpmiParser 17 | 18 | [Sources] 19 | IpmiParser.c 20 | IpmiParser.h 21 | 22 | [Packages] 23 | DynamicTablesPkg/DynamicTablesPkg.dec 24 | EmbeddedPkg/EmbeddedPkg.dec 25 | MdePkg/MdePkg.dec 26 | Silicon/NVIDIA/NVIDIA.dec 27 | 28 | [LibraryClasses] 29 | ConfigurationManagerDataRepoLib 30 | 31 | [Pcd] 32 | 33 | [Guids] 34 | 35 | [Protocols] 36 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/ConfigurationManagerData/PowerManagementProfile/PowerManagementProfile.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Power Management Profile 3 | # 4 | # SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | # 6 | # SPDX-License-Identifier: BSD-2-Clause-Patent 7 | ## 8 | 9 | [Defines] 10 | INF_VERSION = 0x00010019 11 | BASE_NAME = PowerManagementProfileParser 12 | FILE_GUID = b975cab2-c74f-472f-b0f4-f499a405be65 13 | VERSION_STRING = 1.0 14 | MODULE_TYPE = DXE_DRIVER 15 | LIBRARY_CLASS = NULL|DXE_DRIVER 16 | CONSTRUCTOR = RegisterPowerManagementProfileParser 17 | 18 | [Sources] 19 | PowerManagementProfileParser.c 20 | PowerManagementProfileParser.h 21 | 22 | [Packages] 23 | DynamicTablesPkg/DynamicTablesPkg.dec 24 | EmbeddedPkg/EmbeddedPkg.dec 25 | MdePkg/MdePkg.dec 26 | Silicon/NVIDIA/NVIDIA.dec 27 | 28 | [LibraryClasses] 29 | ConfigurationManagerDataRepoLib 30 | 31 | [Pcd] 32 | 33 | [Guids] 34 | 35 | [Protocols] 36 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/ConfigurationManagerData/SdhciInfo/SdhciInfo.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # SdhciInfoParser 3 | # 4 | # SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | # 6 | # SPDX-License-Identifier: BSD-2-Clause-Patent 7 | ## 8 | 9 | [Defines] 10 | INF_VERSION = 0x00010019 11 | BASE_NAME = SdhciInfoParser 12 | FILE_GUID = 22e779f0-d130-4516-bb94-cfc034b4e759 13 | VERSION_STRING = 1.0 14 | MODULE_TYPE = DXE_DRIVER 15 | LIBRARY_CLASS = NULL|DXE_DRIVER 16 | CONSTRUCTOR = RegisterSdhciInfoParser 17 | 18 | [Sources] 19 | SdhciInfoParser.c 20 | SdhciInfoParser.h 21 | 22 | [Packages] 23 | DynamicTablesPkg/DynamicTablesPkg.dec 24 | EmbeddedPkg/EmbeddedPkg.dec 25 | MdePkg/MdePkg.dec 26 | Silicon/NVIDIA/NVIDIA.dec 27 | 28 | [LibraryClasses] 29 | AcpiTableListParser 30 | ConfigurationManagerDataRepoLib 31 | 32 | [Pcd] 33 | 34 | [Guids] 35 | 36 | [Protocols] 37 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/ConfigurationManagerData/SmbiosParser/ConfigurationSmbiosMem/SmbiosMemParser.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | SMBIOS Type 16/17/19 Table Parser 3 | 4 | SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | 6 | SPDX-License-Identifier: BSD-2-Clause-Patent 7 | **/ 8 | 9 | /** 10 | Install CM object for SMBIOS Type 16/17/19 11 | 12 | @param [in] ParserHandle A handle to the parser instance. 13 | @param[in, out] Private Pointer to the private data of SMBIOS creators 14 | 15 | @return EFI_SUCCESS Successful installation 16 | @retval !(EFI_SUCCESS) Other errors 17 | 18 | **/ 19 | 20 | EFI_STATUS 21 | EFIAPI 22 | InstallSmbiosTypeMemCm ( 23 | IN CONST HW_INFO_PARSER_HANDLE ParserHandle, 24 | IN OUT CM_SMBIOS_PRIVATE_DATA *Private 25 | ); 26 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/ConfigurationManagerData/SmbiosParser/ConfigurationSmbiosProcSub/SmbiosProcSubParser.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | SMBIOS Type 4 and Type 7 Table Parser. 3 | 4 | SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | 6 | SPDX-License-Identifier: BSD-2-Clause-Patent 7 | **/ 8 | 9 | /** 10 | Install CM object for SMBIOS Type 4 and Type 7 11 | 12 | @param [in] ParserHandle A handle to the parser instance. 13 | @param[in, out] Private Pointer to the private data of SMBIOS creators 14 | 15 | @return EFI_SUCCESS Successful installation 16 | @retval !(EFI_SUCCESS) Other errors 17 | 18 | **/ 19 | 20 | EFI_STATUS 21 | EFIAPI 22 | InstallSmbiosProcSubCm ( 23 | IN CONST HW_INFO_PARSER_HANDLE ParserHandle, 24 | IN OUT CM_SMBIOS_PRIVATE_DATA *Private 25 | ); 26 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/ConfigurationManagerData/SmbiosParser/ConfigurationSmbiosType0/SmbiosType0Parser.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | SMBIOS Type 0 Table Parser 3 | 4 | SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | 6 | SPDX-License-Identifier: BSD-2-Clause-Patent 7 | **/ 8 | 9 | /** 10 | Install CM object for SMBIOS Type 0 11 | 12 | @param [in] ParserHandle A handle to the parser instance. 13 | @param[in, out] Private Pointer to the private data of SMBIOS creators 14 | 15 | @return EFI_SUCCESS Successful installation 16 | @retval !(EFI_SUCCESS) Other errors 17 | 18 | **/ 19 | 20 | EFI_STATUS 21 | EFIAPI 22 | InstallSmbiosType0Cm ( 23 | IN CONST HW_INFO_PARSER_HANDLE ParserHandle, 24 | IN OUT CM_SMBIOS_PRIVATE_DATA *Private 25 | ); 26 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/ConfigurationManagerData/SmbiosParser/ConfigurationSmbiosType1/SmbiosType1Parser.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | SMBIOS Type 1 Table Parser 3 | 4 | SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | 6 | SPDX-License-Identifier: BSD-2-Clause-Patent 7 | **/ 8 | 9 | /** 10 | Install CM object for SMBIOS Type 1 11 | 12 | @param [in] ParserHandle A handle to the parser instance. 13 | @param[in, out] Private Pointer to the private data of SMBIOS creators 14 | 15 | @return EFI_SUCCESS Successful installation 16 | @retval !(EFI_SUCCESS) Other errors 17 | 18 | **/ 19 | 20 | EFI_STATUS 21 | EFIAPI 22 | InstallSmbiosType1Cm ( 23 | IN CONST HW_INFO_PARSER_HANDLE ParserHandle, 24 | IN OUT CM_SMBIOS_PRIVATE_DATA *Private 25 | ); 26 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/ConfigurationManagerData/SmbiosParser/ConfigurationSmbiosType11/SmbiosType11Parser.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | SMBIOS Type 11 Table Parser. 3 | 4 | SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | 6 | SPDX-License-Identifier: BSD-2-Clause-Patent 7 | **/ 8 | 9 | /** 10 | Install CM object for SMBIOS Type 11 11 | 12 | @param [in] ParserHandle A handle to the parser instance. 13 | @param[in, out] Private Pointer to the private data of SMBIOS creators 14 | 15 | @return EFI_SUCCESS Successful installation 16 | @retval !(EFI_SUCCESS) Other errors 17 | 18 | **/ 19 | 20 | EFI_STATUS 21 | EFIAPI 22 | InstallSmbiosType11Cm ( 23 | IN CONST HW_INFO_PARSER_HANDLE ParserHandle, 24 | IN OUT CM_SMBIOS_PRIVATE_DATA *Private 25 | ); 26 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/ConfigurationManagerData/SmbiosParser/ConfigurationSmbiosType13/SmbiosType13Parser.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | SMBIOS Type 13 Table Parser. 3 | 4 | SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | 6 | SPDX-License-Identifier: BSD-2-Clause-Patent 7 | **/ 8 | 9 | /** 10 | Install CM object for SMBIOS Type 13 11 | 12 | @param [in] ParserHandle A handle to the parser instance. 13 | @param[in, out] Private Pointer to the private data of SMBIOS creators 14 | 15 | @return EFI_SUCCESS Successful installation 16 | @retval !(EFI_SUCCESS) Other errors 17 | 18 | **/ 19 | 20 | EFI_STATUS 21 | EFIAPI 22 | InstallSmbiosType13Cm ( 23 | IN CONST HW_INFO_PARSER_HANDLE ParserHandle, 24 | IN OUT CM_SMBIOS_PRIVATE_DATA *Private 25 | ); 26 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/ConfigurationManagerData/SmbiosParser/ConfigurationSmbiosType2/SmbiosType2Parser.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | SMBIOS Type 2 Table Parser 3 | 4 | SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | 6 | SPDX-License-Identifier: BSD-2-Clause-Patent 7 | **/ 8 | 9 | /** 10 | Install CM object for SMBIOS Type 2 11 | 12 | @param [in] ParserHandle A handle to the parser instance. 13 | @param[in, out] Private Pointer to the private data of SMBIOS creators 14 | 15 | @return EFI_SUCCESS Successful installation 16 | @retval !(EFI_SUCCESS) Other errors 17 | 18 | **/ 19 | 20 | EFI_STATUS 21 | EFIAPI 22 | InstallSmbiosType2Cm ( 23 | IN CONST HW_INFO_PARSER_HANDLE ParserHandle, 24 | IN OUT CM_SMBIOS_PRIVATE_DATA *Private 25 | ); 26 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/ConfigurationManagerData/SmbiosParser/ConfigurationSmbiosType3/SmbiosType3Parser.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | SMBIOS Type 3 Table Parser. 3 | 4 | SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | 6 | SPDX-License-Identifier: BSD-2-Clause-Patent 7 | **/ 8 | 9 | /** 10 | Install CM object for SMBIOS Type 3 11 | 12 | @param [in] ParserHandle A handle to the parser instance. 13 | @param[in, out] Private Pointer to the private data of SMBIOS creators 14 | 15 | @return EFI_SUCCESS Successful installation 16 | @retval !(EFI_SUCCESS) Other errors 17 | 18 | **/ 19 | 20 | EFI_STATUS 21 | EFIAPI 22 | InstallSmbiosType3Cm ( 23 | IN CONST HW_INFO_PARSER_HANDLE ParserHandle, 24 | IN OUT CM_SMBIOS_PRIVATE_DATA *Private 25 | ); 26 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/ConfigurationManagerData/SmbiosParser/ConfigurationSmbiosType32/SmbiosType32Parser.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | SMBIOS Type 32 Table Parser. 3 | 4 | SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | 6 | SPDX-License-Identifier: BSD-2-Clause-Patent 7 | **/ 8 | 9 | /** 10 | Install CM object for SMBIOS Type 32 11 | 12 | @param [in] ParserHandle A handle to the parser instance. 13 | @param[in, out] Private Pointer to the private data of SMBIOS creators 14 | 15 | @return EFI_SUCCESS Successful installation 16 | @retval !(EFI_SUCCESS) Other errors 17 | 18 | **/ 19 | 20 | EFI_STATUS 21 | EFIAPI 22 | InstallSmbiosType32Cm ( 23 | IN CONST HW_INFO_PARSER_HANDLE ParserHandle, 24 | IN OUT CM_SMBIOS_PRIVATE_DATA *Private 25 | ); 26 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/ConfigurationManagerData/SmbiosParser/ConfigurationSmbiosType38/SmbiosType38Parser.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | SMBIOS Type 38 Table Parser. 3 | 4 | SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | 6 | SPDX-License-Identifier: BSD-2-Clause-Patent 7 | **/ 8 | 9 | /** 10 | Install CM object for SMBIOS Type 38 11 | 12 | @param [in] ParserHandle A handle to the parser instance. 13 | @param[in, out] Private Pointer to the private data of SMBIOS creators 14 | 15 | @return EFI_SUCCESS Successful installation 16 | @retval !(EFI_SUCCESS) Other errors 17 | 18 | **/ 19 | 20 | EFI_STATUS 21 | EFIAPI 22 | InstallSmbiosType38Cm ( 23 | IN CONST HW_INFO_PARSER_HANDLE ParserHandle, 24 | IN OUT CM_SMBIOS_PRIVATE_DATA *Private 25 | ); 26 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/ConfigurationManagerData/SmbiosParser/ConfigurationSmbiosType39/SmbiosType39Parser.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | SMBIOS Type 39 Table Parser. 3 | 4 | SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | 6 | SPDX-License-Identifier: BSD-2-Clause-Patent 7 | **/ 8 | 9 | /** 10 | Install CM object for SMBIOS Type 39 11 | 12 | @param [in] ParserHandle A handle to the parser instance. 13 | @param[in, out] Private Pointer to the private data of SMBIOS creators 14 | 15 | @return EFI_SUCCESS Successful installation 16 | @retval !(EFI_SUCCESS) Other errors 17 | 18 | **/ 19 | 20 | EFI_STATUS 21 | EFIAPI 22 | InstallSmbiosType39Cm ( 23 | IN CONST HW_INFO_PARSER_HANDLE ParserHandle, 24 | IN OUT CM_SMBIOS_PRIVATE_DATA *Private 25 | ); 26 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/ConfigurationManagerData/SmbiosParser/ConfigurationSmbiosType41/SmbiosType41Parser.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | SMBIOS Type 41 Table Parser. 3 | 4 | SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | 6 | SPDX-License-Identifier: BSD-2-Clause-Patent 7 | **/ 8 | 9 | /** 10 | Install CM object for SMBIOS Type 41 11 | 12 | @param [in] ParserHandle A handle to the parser instance. 13 | @param[in, out] Private Pointer to the private data of SMBIOS creators 14 | 15 | @return EFI_SUCCESS Successful installation 16 | @retval !(EFI_SUCCESS) Other errors 17 | 18 | **/ 19 | 20 | EFI_STATUS 21 | EFIAPI 22 | InstallSmbiosType41Cm ( 23 | IN CONST HW_INFO_PARSER_HANDLE ParserHandle, 24 | IN OUT CM_SMBIOS_PRIVATE_DATA *Private 25 | ); 26 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/ConfigurationManagerData/SmbiosParser/ConfigurationSmbiosType43/SmbiosType43Parser.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | SMBIOS Type 43 Table Parser. 3 | 4 | SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | 6 | SPDX-License-Identifier: BSD-2-Clause-Patent 7 | **/ 8 | 9 | /** 10 | Install CM object for SMBIOS Type 43 11 | 12 | @param [in] ParserHandle A handle to the parser instance. 13 | @param[in, out] Private Pointer to the private data of SMBIOS creators 14 | 15 | @return EFI_SUCCESS Successful installation 16 | @retval !(EFI_SUCCESS) Other errors 17 | 18 | **/ 19 | 20 | EFI_STATUS 21 | EFIAPI 22 | InstallSmbiosType43Cm ( 23 | IN CONST HW_INFO_PARSER_HANDLE ParserHandle, 24 | IN OUT CM_SMBIOS_PRIVATE_DATA *Private 25 | ); 26 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/ConfigurationManagerData/SmbiosParser/ConfigurationSmbiosType45/SmbiosType45Parser.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | SMBIOS Type 45 Table Parser. 3 | 4 | SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | 6 | SPDX-License-Identifier: BSD-2-Clause-Patent 7 | **/ 8 | 9 | /** 10 | Install CM object for SMBIOS Type 45 11 | 12 | @param [in] ParserHandle A handle to the parser instance. 13 | @param[in, out] Private Pointer to the private data of SMBIOS creators 14 | 15 | @return EFI_SUCCESS Successful installation 16 | @retval !(EFI_SUCCESS) Other errors 17 | 18 | **/ 19 | 20 | EFI_STATUS 21 | EFIAPI 22 | InstallSmbiosType45Cm ( 23 | IN CONST HW_INFO_PARSER_HANDLE ParserHandle, 24 | IN OUT CM_SMBIOS_PRIVATE_DATA *Private 25 | ); 26 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/ConfigurationManagerData/SmbiosParser/ConfigurationSmbiosType8/SmbiosType8Parser.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | SMBIOS Type 8 Table Parser. 3 | 4 | SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | 6 | SPDX-License-Identifier: BSD-2-Clause-Patent 7 | **/ 8 | 9 | /** 10 | Install CM object for SMBIOS Type 8 11 | 12 | @param [in] ParserHandle A handle to the parser instance. 13 | @param[in, out] Private Pointer to the private data of SMBIOS creators 14 | 15 | @return EFI_SUCCESS Successful installation 16 | @retval !(EFI_SUCCESS) Other errors 17 | 18 | **/ 19 | 20 | EFI_STATUS 21 | EFIAPI 22 | InstallSmbiosType8Cm ( 23 | IN CONST HW_INFO_PARSER_HANDLE ParserHandle, 24 | IN OUT CM_SMBIOS_PRIVATE_DATA *Private 25 | ); 26 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/ConfigurationManagerData/SmbiosParser/ConfigurationSmbiosType9/SmbiosType9Parser.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | SMBIOS Type 9 Table Parser. 3 | 4 | SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | 6 | SPDX-License-Identifier: BSD-2-Clause-Patent 7 | **/ 8 | 9 | /** 10 | Install CM object for SMBIOS Type 9 11 | 12 | @param [in] ParserHandle A handle to the parser instance. 13 | @param[in, out] Private Pointer to the private data of SMBIOS creators 14 | 15 | @return EFI_SUCCESS Successful installation 16 | @retval !(EFI_SUCCESS) Other errors 17 | 18 | **/ 19 | 20 | EFI_STATUS 21 | EFIAPI 22 | InstallSmbiosType9Cm ( 23 | IN CONST HW_INFO_PARSER_HANDLE ParserHandle, 24 | IN OUT CM_SMBIOS_PRIVATE_DATA *Private 25 | ); 26 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/ConfigurationManagerData/SmbiosParser/SmbiosParser.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | SMBIOS TableList Parser. 3 | 4 | SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | 6 | SPDX-License-Identifier: BSD-2-Clause-Patent 7 | **/ 8 | 9 | /** 10 | Install Smbios TableList Parser 11 | 12 | @param [in] ParserHandle A handle to the parser instance. 13 | @param [in] FdtBranch When searching for DT node name, restrict 14 | the search to this Device Tree branch. 15 | 16 | @return EFI_SUCCESS Successful installation 17 | @retval !(EFI_SUCCESS) Other errors 18 | 19 | **/ 20 | 21 | EFI_STATUS 22 | EFIAPI 23 | InstallCmSmbiosTableListParser ( 24 | IN CONST HW_INFO_PARSER_HANDLE ParserHandle, 25 | IN INT32 FdtBranch 26 | ); 27 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/EFuseDxe/EFuseDxePrivate.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | EFUSE Driver private structures 4 | 5 | Copyright (c) 2019-2021, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | 7 | SPDX-License-Identifier: BSD-2-Clause-Patent 8 | 9 | **/ 10 | 11 | #ifndef EFUSEDXE_PRIVATE_H_ 12 | #define EFUSEDXE_PRIVATE_H_ 13 | 14 | #include 15 | #include 16 | 17 | #define EFUSE_SIGNATURE SIGNATURE_32('E','F','S','E') 18 | typedef struct { 19 | UINT32 Signature; 20 | NVIDIA_EFUSE_PROTOCOL EFuseProtocol; 21 | EFI_PHYSICAL_ADDRESS BaseAddress; 22 | UINTN RegionSize; 23 | EFI_HANDLE ImageHandle; 24 | } EFUSE_DXE_PRIVATE; 25 | #define EFUSE_PRIVATE_DATA_FROM_THIS(a) CR(a, EFUSE_DXE_PRIVATE, EFuseProtocol, EFUSE_SIGNATURE) 26 | #define EFUSE_PRIVATE_DATA_FROM_PROTOCOL(a) EFUSE_PRIVATE_DATA_FROM_THIS(a) 27 | 28 | #endif /* EFUSEDXE_PRIVATE_H_ */ 29 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/EqosDeviceDxe/EqosDeviceDxePrivate.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | DW EQoS device tree binding driver private structures 4 | 5 | Copyright (c) 2019, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | 7 | SPDX-License-Identifier: BSD-2-Clause-Patent 8 | 9 | **/ 10 | 11 | #ifndef __EQOS_DEVICE_DXE_PRIVATE_H__ 12 | #define __EQOS_DEVICE_DXE_PRIVATE_H__ 13 | 14 | #include 15 | 16 | #define MAX_ETH_NAME 64 17 | 18 | #endif 19 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/FwPartitionMmDxe/FwPartitionMmDxe.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | MM FW partition protocol internal header file 4 | 5 | SPDX-FileCopyrightText: Copyright (c) 2022-2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | 7 | SPDX-License-Identifier: BSD-2-Clause-Patent 8 | 9 | **/ 10 | #include 11 | #include 12 | #include 13 | #include 14 | #include 15 | #include 16 | 17 | #include "FwPartitionMmComm.h" 18 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/GenericMpMemoryTestDxe/GenericMemoryTestDxe.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // This driver first constructs the non-tested memory range, then performs the R/W/V memory test. 3 | // 4 | // This driver first constructs the non-tested memory range, then performs the R/W/V memory test. 5 | // 6 | // Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.
7 | // 8 | // SPDX-License-Identifier: BSD-2-Clause-Patent 9 | // 10 | // **/ 11 | 12 | 13 | #string STR_MODULE_ABSTRACT #language en-US "Constructs the non-tested memory range, then performs the R/W/V memory test" 14 | 15 | #string STR_MODULE_DESCRIPTION #language en-US "This driver first constructs the non-tested memory range, then performs the R/W/V memory test." 16 | 17 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/GenericMpMemoryTestDxe/GenericMemoryTestDxeExtra.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // GenericMemoryTestDxe Localized Strings and Content 3 | // 4 | // Copyright (c) 2013 - 2018, Intel Corporation. All rights reserved.
5 | // 6 | // SPDX-License-Identifier: BSD-2-Clause-Patent 7 | // 8 | // **/ 9 | 10 | #string STR_PROPERTIES_MODULE_NAME 11 | #language en-US 12 | "Generic Memory Test DXE Driver" 13 | 14 | 15 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/Logo/LogoDxe.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // The default logo bitmap picture shown on setup screen. 3 | // 4 | // This module provides the default logo bitmap picture shown on setup screen, through EDKII Platform Logo protocol. 5 | // 6 | // Copyright (c) 2021, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 7 | // Copyright (c) 2016, Intel Corporation. All rights reserved.
8 | // 9 | // SPDX-License-Identifier: BSD-2-Clause-Patent 10 | // **/ 11 | 12 | 13 | #string STR_MODULE_ABSTRACT #language en-US "Provides the default logo bitmap picture shown on setup screen." 14 | 15 | #string STR_MODULE_DESCRIPTION #language en-US "This module provides the default logo bitmap picture shown on setup screen, through EDKII Platform Logo protocol." 16 | 17 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/Logo/LogoDxeExtra.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // Logo Localized Strings and Content 3 | // 4 | // Copyright (c) 2021, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | // Copyright (c) 2016, Intel Corporation. All rights reserved.
6 | // 7 | // SPDX-License-Identifier: BSD-2-Clause-Patent 8 | // 9 | // **/ 10 | 11 | #string STR_PROPERTIES_MODULE_NAME 12 | #language en-US 13 | "Logo Image File" 14 | 15 | 16 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/MmCommunicateFfaDxe/AArch64/StmmFfa.S: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (c) 2012-2014, ARM Limited. All rights reserved. 3 | // Copyright (c) 2022, NVIDIA CORPORATION. All rights reserved. 4 | // 5 | // SPDX-License-Identifier: BSD-2-Clause-Patent 6 | // 7 | // 8 | 9 | #include 10 | 11 | ASM_FUNC (StmmFfaSmc) 12 | // Push x0 on the stack - The stack must always be quad-word aligned 13 | str x0, [sp, # -16] ! 14 | 15 | // Load the SMC arguments values into the appropriate registers 16 | ldp x6, x7, [x0, # 48] 17 | ldp x4, x5, [x0, # 32] 18 | ldp x2, x3, [x0, # 16] 19 | ldp x0, x1, [x0, # 0] 20 | 21 | smc # 0 22 | 23 | // Pop the ARM_SMC_ARGS structure address from the stack into x9 24 | ldr x9, [sp], # 16 25 | 26 | // Store the SMC returned values into the ARM_SMC_ARGS structure. 27 | stp x6, x7, [x9, # 48] 28 | stp x4, x5, [x9, # 32] 29 | stp x2, x3, [x9, # 16] 30 | stp x0, x1, [x9, # 0] 31 | 32 | mov x0, x9 33 | 34 | ret 35 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/MmCommunicationOpteeDxe/MmCommunicate.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Copyright (c) 2022-2023, NVIDIA Corporation. All rights reserved.
4 | 5 | SPDX-License-Identifier: BSD-2-Clause-Patent 6 | 7 | **/ 8 | 9 | #ifndef MM_COMMUNICATE_OPTEE_H_ 10 | #define MM_COMMUNICATE_OPTEE_H_ 11 | 12 | #define MM_MAJOR_VER_MASK 0xEFFF0000 13 | #define MM_MINOR_VER_MASK 0x0000FFFF 14 | #define MM_MAJOR_VER_SHIFT 16 15 | 16 | #define MM_MAJOR_VER(x) (((x) & MM_MAJOR_VER_MASK) >> MM_MAJOR_VER_SHIFT) 17 | #define MM_MINOR_VER(x) ((x) & MM_MINOR_VER_MASK) 18 | 19 | #define MM_CALLER_MAJOR_VER 0x1U 20 | #define MM_CALLER_MINOR_VER 0x0U 21 | 22 | #endif /* MM_COMMUNICATE_OPTEE_H_ */ 23 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/NorFlashDxe/MacronixAsp.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Macronix ASP (Advanced Sector Protection) functions 4 | 5 | Copyright (c) 2022, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | 7 | SPDX-License-Identifier: BSD-2-Clause-Patent 8 | 9 | **/ 10 | 11 | #ifndef __MACRONIX_ASP_H__ 12 | #define __MACRONIX_ASP_H__ 13 | 14 | #include 15 | 16 | EFI_STATUS 17 | MxAspInitialize ( 18 | UINT64 QspiBaseAddress, 19 | UINT8 FlashCS 20 | ); 21 | 22 | EFI_STATUS 23 | MxAspIsInitialized ( 24 | BOOLEAN *Initialized 25 | ); 26 | 27 | EFI_STATUS 28 | MxAspEnable ( 29 | VOID 30 | ); 31 | 32 | EFI_STATUS 33 | MxAspIsEnabled ( 34 | BOOLEAN *Enabled 35 | ); 36 | 37 | EFI_STATUS 38 | MxAspLock ( 39 | UINT32 Address 40 | ); 41 | 42 | EFI_STATUS 43 | MxAspIsLocked ( 44 | UINT32 Address, 45 | BOOLEAN *Locked 46 | ); 47 | 48 | #endif 49 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/PcieControllerDxe/PcieControllerConfigGPU.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | PCIe Controller GPU specific configuration 4 | 5 | SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION. All rights reserved. 6 | 7 | SPDX-License-Identifier: BSD-2-Clause-Patent 8 | 9 | **/ 10 | 11 | /** 12 | Configure Nvidia GPUs for 256B MPS and enable 10-bit tags if supported 13 | 14 | @param [in] PciIo PCIe handle for the GPU device 15 | 16 | @retval TRUE Configuration successful 17 | @retval FALSE Failed to configure the GPU 18 | */ 19 | EFI_STATUS 20 | PcieConfigGPUDevice ( 21 | EFI_PCI_IO_PROTOCOL *PciIo 22 | ); 23 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/PinMuxDxe/PinMuxDxePrivate.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | PINMUX Driver private structures 4 | 5 | Copyright (c) 2019-2021, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | 7 | SPDX-License-Identifier: BSD-2-Clause-Patent 8 | 9 | **/ 10 | 11 | #ifndef PINMUXDXE_PRIVATE_H_ 12 | #define PINMUXDXE_PRIVATE_H_ 13 | 14 | #include 15 | #include 16 | 17 | #define PINMUX_SIGNATURE SIGNATURE_32('P','M','U','X') 18 | typedef struct { 19 | UINT32 Signature; 20 | NVIDIA_PINMUX_PROTOCOL PinMuxProtocol; 21 | EFI_PHYSICAL_ADDRESS BaseAddress; 22 | UINTN RegionSize; 23 | EFI_HANDLE ImageHandle; 24 | } PINMUX_DXE_PRIVATE; 25 | #define PINMUX_PRIVATE_DATA_FROM_THIS(a) CR(a, PINMUX_DXE_PRIVATE, PinMuxProtocol, PINMUX_SIGNATURE) 26 | #define PINMUX_PRIVATE_DATA_FROM_PROTOCOL(a) PINMUX_PRIVATE_DATA_FROM_THIS(a) 27 | 28 | #endif /* PINMUXDXE_PRIVATE_H_ */ 29 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/PlatformRedfishBootDxe/PlatformRedfishBootDxeMap.uni: -------------------------------------------------------------------------------- 1 | /** @file 2 | Platform Redfish boot order driver. 3 | 4 | (C) Copyright 2022 Hewlett Packard Enterprise Development LP
5 | SPDX-FileCopyrightText: Copyright (c) 2023-2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | 7 | SPDX-License-Identifier: BSD-2-Clause-Patent 8 | 9 | **/ 10 | 11 | /=# 12 | #langdef x-UEFI-redfish-ComputerSystem.v1_17_0 "ComputerSystem.v1_17_0" 13 | #langdef x-UEFI-redfish-ComputerSystem.v1_22_0 "ComputerSystem.v1_22_0" 14 | 15 | #string STR_BOOT_ORDER_LIST #language x-UEFI-redfish-ComputerSystem.v1_17_0 "/Systems/{1}/Boot/BootOrder" 16 | #string STR_BOOT_ORDER_LIST #language x-UEFI-redfish-ComputerSystem.v1_22_0 "/Systems/{1}/Boot/BootOrder" 17 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/PlatformRedfishBootDxe/PlatformRedfishBootDxeStrings.uni: -------------------------------------------------------------------------------- 1 | /** @file 2 | Platform Redfish boot order driver. 3 | 4 | (C) Copyright 2022 Hewlett Packard Enterprise Development LP
5 | Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | 7 | SPDX-License-Identifier: BSD-2-Clause-Patent 8 | 9 | **/ 10 | 11 | /=# 12 | #langdef en-US "English" 13 | 14 | #string STR_FORM_SET_TITLE #language en-US "Platform Redfish Boot" 15 | #string STR_FORM_SET_TITLE_HELP #language en-US "Platform Redfish Boot" 16 | #string STR_FORM_TITLE #language en-US "Redfish Boot properties" 17 | 18 | #string STR_BOOT_ORDER #language en-US "Boot Order" 19 | #string STR_BOOT_ORDER_LIST #language en-US "Boot Order List" 20 | #string STR_BOOT_ORDER_LIST_HELP #language en-US "Boot Order List" 21 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/PlatformRedfishOverrideDxe/PlatformRedfishOverrideDxe.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Platform Redfish override driver header file. 3 | 4 | Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | 6 | SPDX-License-Identifier: BSD-2-Clause-Patent 7 | 8 | **/ 9 | 10 | #ifndef PLATFORM_REDFISH_OVERRIDE_DXE_H_ 11 | #define PLATFORM_REDFISH_OVERRIDE_DXE_H_ 12 | 13 | #include 14 | 15 | #include 16 | #include 17 | #include 18 | #include 19 | #include 20 | #include 21 | 22 | #include 23 | #include 24 | 25 | #include 26 | 27 | #endif 28 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/RamDiskOS/RamDiskOS.inf: -------------------------------------------------------------------------------- 1 | #/** @file 2 | # 3 | # SPDX-FileCopyrightText: Copyright (c) 2021-2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 4 | # SPDX-License-Identifier: BSD-2-Clause-Patenty 5 | # 6 | #**/ 7 | 8 | [Defines] 9 | INF_VERSION = 0x00010005 10 | BASE_NAME = RamDiskOS 11 | FILE_GUID = 76c4bfdb-3bab-4b18-8350-73afbf4ffadf 12 | MODULE_TYPE = UEFI_DRIVER 13 | VERSION_STRING = 1.0 14 | 15 | ENTRY_POINT = RamDiskOSEntryPoint 16 | 17 | [Sources] 18 | RamDiskOS.c 19 | 20 | [Packages] 21 | MdePkg/MdePkg.dec 22 | Silicon/NVIDIA/NVIDIA.dec 23 | 24 | [LibraryClasses] 25 | BaseLib 26 | UefiDriverEntryPoint 27 | PlatformResourceLib 28 | HobLib 29 | 30 | [Guids] 31 | gNVIDIAPlatformResourceDataGuid 32 | gEfiVirtualDiskGuid 33 | 34 | [Protocols] 35 | gEfiRamDiskProtocolGuid 36 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/RcmDxe/RcmDxe.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | * Rcm Dxe 3 | * 4 | * Copyright (c) 2020-2021, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | * 6 | * SPDX-License-Identifier: BSD-2-Clause-Patent 7 | * 8 | **/ 9 | 10 | #ifndef __RCMDXE_H__ 11 | #define __RCMDXE_H__ 12 | 13 | #define MAX_BLOB_INFO 64 14 | #define IMAGE_TYPE_KERNEL 45 15 | 16 | typedef struct { 17 | UINT32 ImgType; 18 | UINT32 Offset; 19 | UINT32 LoadAddress; 20 | UINT32 Size; 21 | } TEGRABL_BLOBINFO; 22 | 23 | typedef struct { 24 | UINT8 BlobMagic[4]; 25 | UINT8 Padding[4]; 26 | UINT8 Digest[64]; 27 | UINT8 Salt[4]; 28 | UINT32 BlobEntries; 29 | TEGRABL_BLOBINFO BlobInfo[MAX_BLOB_INFO]; 30 | } TEGRABL_BLOBHEADER; 31 | 32 | #endif // __RCMDXE_H__ 33 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/RedfishCipherDxe/RedfishCipherDxe.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | The header file of Redfish cipher suites driver 3 | 4 | Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | 6 | SPDX-License-Identifier: BSD-2-Clause-Patent 7 | 8 | **/ 9 | 10 | #ifndef PLATFORM_REDFISH_BIOS_DXE_H_ 11 | #define PLATFORM_REDFISH_BIOS_DXE_H_ 12 | 13 | #include 14 | #include 15 | #include 16 | #include 17 | #include 18 | #include 19 | #include 20 | #include 21 | #include 22 | 23 | #endif 24 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/RedfishHostInterfaceControlDxe/RedfishHostInterfaceControlDxe.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | The header file of Redfish Host Interface Control driver 3 | 4 | Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | 6 | SPDX-License-Identifier: BSD-2-Clause-Patent 7 | 8 | **/ 9 | 10 | #ifndef REDFISH_HOST_INTERFACE_CONTROL_DXE_H_ 11 | #define REDFISH_HOST_INTERFACE_CONTROL_DXE_H_ 12 | 13 | #include 14 | #include 15 | #include 16 | #include 17 | #include 18 | #include 19 | #include 20 | 21 | #define REDFISH_HOST_INTERFACE_DISABLE 0x00 22 | 23 | #endif 24 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/SmbiosOemDxe/SmbiosMiscOemDxe/SmbiosMiscOemDxeStrings.uni: -------------------------------------------------------------------------------- 1 | /** @file 2 | * 3 | * Copyright (c) 2022, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 4 | * SPDX-License-Identifier: BSD-2-Clause-Patent 5 | * 6 | **/ 7 | 8 | 9 | /=# 10 | 11 | #langdef en-US "English" 12 | 13 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/SmbiosOemDxe/SmbiosMiscOemDxe/Type16/PhysMemArrayData.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | * 3 | * AML generation protocol implementation. 4 | * 5 | * Copyright (c) 2022, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | * 7 | * SPDX-License-Identifier: BSD-2-Clause-Patent 8 | * 9 | **/ 10 | #include "SmbiosMiscOem.h" 11 | 12 | SMBIOS_MISC_TABLE_DATA (SMBIOS_TABLE_TYPE16, MiscPhysMemArray) = { 13 | { // Hdr 14 | EFI_SMBIOS_TYPE_PHYSICAL_MEMORY_ARRAY, // Type, 15 | 0, // Length, 16 | 0, // Handle 17 | }, 18 | MemoryArrayLocationUnknown, 19 | MemoryArrayUseSystemMemory, 20 | MemoryErrorCorrectionUnknown, 21 | 0x80000000, // Always use the Extended capacity field. 22 | 0xFFFE, // Default to information not provided. 23 | 0, 24 | 0, 25 | }; 26 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/Tcg2Config/Tcg2ConfigDxe.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // TPM device configuration for TPM 2.0 3 | // 4 | // By this module, user may select TPM device, clear TPM state, etc. 5 | // NOTE: This module is only for reference only, each platform should have its own setup page. 6 | // 7 | // Copyright (c) 2015, Intel Corporation. All rights reserved.
8 | // 9 | // SPDX-License-Identifier: BSD-2-Clause-Patent 10 | // 11 | // **/ 12 | 13 | 14 | #string STR_MODULE_ABSTRACT #language en-US "TPM device configuration for TPM 2.0" 15 | 16 | #string STR_MODULE_DESCRIPTION #language en-US "By this module, user may select TPM device, clear TPM state, etc. NOTE: This module is only for reference only, each platform should have its own setup page." 17 | 18 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/Tcg2Config/Tcg2ConfigDxeExtra.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // Tcg2ConfigDxe Localized Strings and Content 3 | // 4 | // Copyright (c) 2015 - 2018, Intel Corporation. All rights reserved.
5 | // 6 | // SPDX-License-Identifier: BSD-2-Clause-Patent 7 | // 8 | // **/ 9 | 10 | #string STR_PROPERTIES_MODULE_NAME 11 | #language en-US 12 | "TCG2 (Trusted Computing Group) Configuration DXE" 13 | 14 | 15 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/Tcg2Config/Tcg2Internal.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | The internal header file defines the common structures for PEI and DXE modules. 3 | 4 | Copyright (c) 2019, Intel Corporation. All rights reserved.
5 | SPDX-License-Identifier: BSD-2-Clause-Patent 6 | 7 | **/ 8 | 9 | #ifndef __TCG2_INTERNAL_H__ 10 | #define __TCG2_INTERNAL_H__ 11 | 12 | #define EFI_TCG2_EVENT_LOG_FORMAT_DEFAULT EFI_TCG2_EVENT_LOG_FORMAT_TCG_1_2 13 | #define EFI_TCG2_EVENT_LOG_FORMAT_ALL (EFI_TCG2_EVENT_LOG_FORMAT_TCG_1_2 | EFI_TCG2_EVENT_LOG_FORMAT_TCG_2) 14 | 15 | #define TPM_INSTANCE_ID_LIST { \ 16 | {TPM_DEVICE_INTERFACE_NONE, TPM_DEVICE_NULL}, \ 17 | {TPM_DEVICE_INTERFACE_TPM12, TPM_DEVICE_1_2}, \ 18 | {TPM_DEVICE_INTERFACE_TPM20_DTPM, TPM_DEVICE_2_0_DTPM}, \ 19 | } 20 | 21 | typedef struct { 22 | GUID TpmInstanceGuid; 23 | UINT8 TpmDevice; 24 | } TPM_INSTANCE_ID; 25 | 26 | #endif 27 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Drivers/UserAuthenticationDxeMm/UserAuthenticationDxeFormset.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Header file for UserAuthentication formset. 3 | 4 | Copyright (c) 2019, Intel Corporation. All rights reserved.
5 | Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | 7 | SPDX-License-Identifier: BSD-2-Clause-Patent 8 | 9 | **/ 10 | 11 | #ifndef _USER_AUTHENTICATION_DXE_FORMSET_H_ 12 | #define _USER_AUTHENTICATION_DXE_FORMSET_H_ 13 | 14 | // 15 | // Vendor GUID of the formset 16 | // 17 | #define USER_AUTHENTICATION_FORMSET_GUID \ 18 | { 0x760e3022, 0xf149, 0x4560, {0x9c, 0x6f, 0x33, 0xaa, 0x7d, 0x48, 0x75, 0xfa} } 19 | 20 | #define ADMIN_PASSWORD_KEY_ID 0x2001 21 | 22 | #define MAX_PASSWORD_LEN 32 23 | #define MIN_PASSWORD_LEN 0 24 | 25 | #endif 26 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Include/Guid/NVIDIAMmMb1Record.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | * 3 | * Copyright (c) 2022-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 4 | * 5 | * SPDX-License-Identifier: BSD-2-Clause-Patent 6 | * 7 | **/ 8 | 9 | #ifndef NVIDIA_MM_MB1_RECORD_H__ 10 | #define NVIDIA_MM_MB1_RECORD_H__ 11 | 12 | #include 13 | #include 14 | 15 | #define NVIDIA_MM_MB1_RECORD_READ_CMD 0x0 16 | #define NVIDIA_MM_MB1_RECORD_WRITE_CMD 0x1 17 | #define NVIDIA_MM_MB1_ERASE_PARTITION 0x2 18 | 19 | typedef struct { 20 | UINT32 Command; 21 | EFI_STATUS Status; 22 | UINT8 Data[TEGRABL_EARLY_BOOT_VARS_MAX_SIZE-sizeof (TEGRABL_EARLY_BOOT_VARS_DATA_HEADER)]; 23 | } NVIDIA_MM_MB1_RECORD_PAYLOAD; 24 | 25 | #define NVIDIA_MM_MB1_RECORD_GUID \ 26 | { 0x46213b77, 0xf89a, 0x43e8, { 0x9d, 0xf7, 0x67, 0xc6, 0x74, 0x07, 0x2d, 0xf4 } } 27 | 28 | extern EFI_GUID gNVIDIAMmMb1RecordGuid; 29 | 30 | #endif //NVIDIA_MM_MB1_RECORD_H__ 31 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Include/Guid/NVIDIAPublicVariableGuid.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | * 3 | * Copyright (c) 2022, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 4 | * 5 | * SPDX-License-Identifier: BSD-2-Clause-Patent 6 | * 7 | **/ 8 | 9 | #ifndef __NVIDIA_PUBLIC_VARIABLE_GUID_H__ 10 | #define __NVIDIA_PUBLIC_VARIABLE_GUID_H__ 11 | 12 | #define NVIDIA_PUBLIC_VARIABLE_GUID \ 13 | { 0x781e084c, 0xa330, 0x417c, { 0xb6, 0x78, 0x38, 0xe6, 0x96, 0x38, 0x0c, 0xb9 } } 14 | 15 | extern EFI_GUID gNVIDIAPublicVariableGuid; 16 | 17 | #endif 18 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Include/Guid/NVIDIATokenSpaceGuid.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | * 3 | * Copyright (c) 2020, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 4 | * 5 | * SPDX-License-Identifier: BSD-2-Clause-Patent 6 | * 7 | **/ 8 | 9 | #ifndef __NVIDIA_TOKEN_SPACE_GUID_H__ 10 | #define __NVIDIA_TOKEN_SPACE_GUID_H__ 11 | 12 | #define NVIDIA_TOKEN_SPACE_GUID \ 13 | { 0xed3374ef, 0x767b, 0x42fa, { 0xaf, 0x70, 0xdb, 0x52, 0x0a, 0x39, 0x28, 0x22 } } 14 | 15 | extern EFI_GUID gNVIDIATokenSpaceGuid; 16 | 17 | #endif 18 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Include/HostBasedTestStubLib/ArmSvcStubLib.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Mock SVC functions. 4 | 5 | SPDX-FileCopyrightText: Copyright (c) 2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | 7 | SPDX-License-Identifier: BSD-2-Clause-Patent 8 | 9 | **/ 10 | 11 | #ifndef __NV_ARMSVC_STUB_LIB_H__ 12 | #define __NV_ARMSVC_STUB_LIB_H__ 13 | 14 | #include 15 | #include 16 | 17 | /* 18 | * MockArmCallSvc 19 | * 20 | * Set up mock parameters for ComputeVarMeasurement() stub 21 | * 22 | * @param[In] *Args Pointer to ARM SVC Args. 23 | * 24 | * @retval None 25 | */ 26 | VOID 27 | MockArmCallSvc ( 28 | IN OUT ARM_SVC_ARGS *Args 29 | ); 30 | 31 | #endif 32 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Include/HostBasedTestStubLib/BlockIoStubProtocol.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | BlockIo Protocol stubs for host based tests 4 | 5 | This library builds a mocked EFI_BLOCK_IO_PROTOCOL. 6 | 7 | Copyright (c) 2023 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 8 | 9 | SPDX-License-Identifier: BSD-2-Clause-Patent 10 | 11 | **/ 12 | 13 | #ifndef __BLOCKIO_STUB_PROTOCOL_H__ 14 | #define __BLOCKIO_STUB_PROTOCOL_H__ 15 | 16 | #include 17 | #include 18 | 19 | /** 20 | Create a new Mock BlockIo. 21 | 22 | Return a mocked BlockIo protocol. 23 | 24 | @retval A new BlockIo 25 | */ 26 | EFI_BLOCK_IO_PROTOCOL * 27 | MockBlockIoCreate ( 28 | EFI_BLOCK_IO_MEDIA *Media 29 | ); 30 | 31 | /** 32 | Destroy a Mock BlockIo. 33 | 34 | @param[In] BlockIo The BlockIo to destroy. 35 | **/ 36 | VOID 37 | MockBlockIoDestroy ( 38 | EFI_BLOCK_IO_PROTOCOL *BlockIo 39 | ); 40 | 41 | #endif 42 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Include/HostBasedTestStubLib/DeviceTreeHelperStubLib.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | DeviceTreeHelperLib stubs for host based tests 4 | 5 | This library allows device tree values be set during test. 6 | 7 | SPDX-FileCopyrightText: Copyright (c) 2023 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 8 | 9 | SPDX-License-Identifier: BSD-2-Clause-Patent 10 | 11 | **/ 12 | 13 | #ifndef __DEVICE_TREE_HELPER__STUB_LIB_H__ 14 | #define __DEVICE_TREE_HELPER__STUB_LIB_H__ 15 | 16 | #include 17 | 18 | #endif 19 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Include/HostBasedTestStubLib/HobStubLib.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Hob Lib stubs for host based tests 4 | 5 | Copyright (c) 2022 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | 7 | SPDX-License-Identifier: BSD-2-Clause-Patent 8 | 9 | **/ 10 | 11 | #ifndef __HOB_STUB_LIB_H__ 12 | #define __HOB_STUB_LIB_H__ 13 | 14 | #include 15 | #include 16 | 17 | /** 18 | Set up mock parameters for GetFirstGuidHob() 19 | 20 | @param[In] Guid Guid to return 21 | @param[In] Ptr Ptr to return 22 | 23 | @retval None 24 | 25 | **/ 26 | VOID 27 | EFIAPI 28 | MockGetFirstGuidHob ( 29 | IN CONST EFI_GUID *Guid, 30 | IN VOID *Ptr 31 | ); 32 | 33 | #endif 34 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Include/HostBasedTestStubLib/NvVarIntStubLib.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Mock Library for Computing Measurements of some variables.(NvVarIntLib) 4 | 5 | SPDX-FileCopyrightText: Copyright (c) 2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | 7 | SPDX-License-Identifier: BSD-2-Clause-Patent 8 | 9 | **/ 10 | 11 | #ifndef __NV_VARINT_STUB_LIB_H__ 12 | #define __NV_VARINT_STUB_LIB_H__ 13 | 14 | #include 15 | #include 16 | 17 | /** 18 | Set up mock parameters for ComputeVarMeasurement() stub 19 | 20 | @param[In] *VarName Pointer to Variable Name. 21 | @param[In] *MockMeas Pointer to Variable Measurement. 22 | @param[In] ReturnStatus Status to return. 23 | 24 | @retval None 25 | 26 | **/ 27 | VOID 28 | MockComputeVarMeasurement ( 29 | IN CHAR16 *VarName, 30 | OUT UINT8 *MockMeas, 31 | IN UINTN MeasSize, 32 | IN EFI_STATUS ReturnStatus 33 | ); 34 | 35 | #endif 36 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Include/HostBasedTestStubLib/TegraPlatformInfoStubLib.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Tegra Platform Info Lib stubs for host based tests 4 | 5 | Copyright (c) 2022 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | 7 | SPDX-License-Identifier: BSD-2-Clause-Patent 8 | 9 | **/ 10 | 11 | #ifndef __TEGRA_PLATFORM_INFO_STUB_LIB_H__ 12 | #define __TEGRA_PLATFORM_INFO_STUB_LIB_H__ 13 | 14 | #include 15 | 16 | /** 17 | Set up mock parameters for TegraGetChipID() stub 18 | 19 | @param[In] ChipId Chip ID to return 20 | 21 | @retval None 22 | 23 | **/ 24 | VOID 25 | MockTegraGetChipID ( 26 | IN UINT32 ChipId 27 | ); 28 | 29 | #endif 30 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Include/Library/BootConfigProtocolLib.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | BootConfig Protocol library 4 | 5 | SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | 7 | SPDX-License-Identifier: BSD-2-Clause-Patent 8 | 9 | **/ 10 | 11 | #ifndef __BOOTCONFIG_PROTOCOL_LIB_H_ 12 | #define __BOOTCONFIG_PROTOCOL_LIB_H_ 13 | 14 | #include 15 | 16 | EFI_STATUS 17 | EFIAPI 18 | GetBootConfigUpdateProtocol ( 19 | OUT NVIDIA_BOOTCONFIG_UPDATE_PROTOCOL **BootConfigProtocol 20 | ); 21 | 22 | EFI_STATUS 23 | EFIAPI 24 | BootConfigAddSerialNumber ( 25 | CONST CHAR8 *NewValue OPTIONAL 26 | ); 27 | 28 | #endif /* __BOOTCONFIG_PROTOCOL_LIB_H_ */ 29 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Include/Library/ConfigurationManagerLib.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Configuration Manager library 4 | 5 | SPDX-FileCopyrightText: Copyright (c) 2022-2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | 7 | SPDX-License-Identifier: BSD-2-Clause-Patent 8 | 9 | **/ 10 | 11 | #ifndef __CONFIGURATION_MANAGER_LIB_H_ 12 | #define __CONFIGURATION_MANAGER_LIB_H_ 13 | 14 | #include 15 | #include 16 | 17 | EFI_STATUS 18 | EFIAPI 19 | RegisterProtocolBasedObjects ( 20 | LEGACY_CM_PROTOCOL_OBJECT *PlatformRepositoryInfo, 21 | LEGACY_CM_PROTOCOL_OBJECT **CurrentPlatformRepositoryInfo 22 | ); 23 | 24 | #endif /* __CONFIGURATION_MANAGER_LIB_H_ */ 25 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Include/Library/Crc8Lib.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Crc8 Provides CRC-8 features 4 | 5 | Copyright (c) 2021 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | 7 | SPDX-License-Identifier: BSD-2-Clause-Patent 8 | 9 | **/ 10 | 11 | #ifndef __CRC8LIB_H__ 12 | #define __CRC8LIB_H__ 13 | 14 | #include 15 | #include 16 | 17 | #define TYPE_CRC8 0 // x^8 + x^2 + x^1 + 1 18 | #define TYPE_CRC8_MAXIM 1 // x^8 + x^5 + x^4 + 1 19 | 20 | /** 21 | Calculates CRC-8 for input buffer. 22 | 23 | @param[in] Buffer A pointer to the data buffer. 24 | @param[in] Size Size of buffer. 25 | @param[in] Seed Seed of the CRC to use 26 | @param[in] Type Type of the CRC to use 27 | 28 | @return the CRC-8 value. 29 | **/ 30 | UINT8 31 | EFIAPI 32 | CalculateCrc8 ( 33 | IN UINT8 *Buffer, 34 | IN UINT16 Size, 35 | IN UINT8 Seed, 36 | IN UINT8 Type 37 | ); 38 | 39 | #endif 40 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Include/Library/DtbUpdateLib.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | DTB update library 4 | 5 | SPDX-FileCopyrightText: Copyright (c) 2023-2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | 7 | SPDX-License-Identifier: BSD-2-Clause-Patent 8 | 9 | **/ 10 | 11 | #ifndef __DTB_UPDATE_LIB_H__ 12 | #define __DTB_UPDATE_LIB_H__ 13 | 14 | /** 15 | Update DTB for UEFI 16 | 17 | @param[in] Dtb Pointer to DTB 18 | 19 | @retval None 20 | 21 | **/ 22 | VOID 23 | EFIAPI 24 | DtbUpdateForUefi ( 25 | VOID *Dtb 26 | ); 27 | 28 | /** 29 | Update DTB for Kernel 30 | 31 | @param[in] Dtb Pointer to DTB 32 | 33 | @retval None 34 | 35 | **/ 36 | VOID 37 | EFIAPI 38 | DtbUpdateForKernel ( 39 | VOID *Dtb 40 | ); 41 | 42 | #endif 43 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Include/Library/FmpParamLib.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | FMP parameter library 4 | 5 | Copyright (c) 2023 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | 7 | SPDX-License-Identifier: BSD-2-Clause-Patent 8 | 9 | **/ 10 | 11 | #ifndef __FMP_PARAM_LIB_H__ 12 | #define __FMP_PARAM_LIB_H__ 13 | 14 | #include 15 | 16 | /** 17 | Get lowest supported version from PCD or DTB. 18 | 19 | @param[in] Lsv Pointer to return lowest supported version. 20 | 21 | @retval none 22 | 23 | **/ 24 | EFI_STATUS 25 | EFIAPI 26 | FmpParamGetLowestSupportedVersion ( 27 | OUT UINT32 *Lsv 28 | ); 29 | 30 | /** 31 | Initialize FMP parameter library. Must be called before any other library 32 | API is used. 33 | 34 | @retval none 35 | 36 | **/ 37 | VOID 38 | EFIAPI 39 | FmpParamLibInit ( 40 | VOID 41 | ); 42 | 43 | #endif 44 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Include/Library/PlatformBootOrderIpmiLib.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | * 3 | * Copyright (c) 2022-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 4 | * 5 | * SPDX-License-Identifier: BSD-2-Clause-Patent 6 | * 7 | **/ 8 | 9 | #ifndef _PLATFORM_BOOT_ORDER_IPMI_LIB_H_ 10 | #define _PLATFORM_BOOT_ORDER_IPMI_LIB_H_ 11 | 12 | VOID 13 | EFIAPI 14 | CheckIPMIForBootOrderUpdates ( 15 | VOID 16 | ); 17 | 18 | VOID 19 | EFIAPI 20 | ProcessIPMIBootOrderUpdates ( 21 | VOID 22 | ); 23 | 24 | VOID 25 | EFIAPI 26 | RestoreBootOrder ( 27 | EFI_EVENT Event, 28 | VOID *Context 29 | ); 30 | 31 | #endif 32 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Include/Library/SiblingPartitionLib.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | SPDX-FileCopyrightText: Copyright (c) 2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 4 | 5 | SPDX-License-Identifier: BSD-2-Clause-Patent 6 | 7 | **/ 8 | 9 | #ifndef __SIBLING_PARTITION_H_ 10 | #define __SIBLING_PARTITION_H_ 11 | 12 | #include 13 | #include 14 | #include 15 | 16 | #include 17 | 18 | /** 19 | Locate sibling partition's handle 20 | 21 | @param[in] Handle Partition handle whose sibling is needed 22 | @param[in] SiblingPartitionName Name of sibling partition 23 | 24 | **/ 25 | EFI_HANDLE 26 | EFIAPI 27 | GetSiblingPartitionHandle ( 28 | IN EFI_HANDLE ControllerHandle, 29 | IN CHAR16 *SiblingPartitionName 30 | ); 31 | 32 | #endif /* __SIBLING_PARTITION_H_ */ 33 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Include/Library/TegraCpuFreqHelper.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | This module is a helper function to get the CPU Freq 3 | 4 | SPDX-FileCopyrightText: Copyright (c) 2021-2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | 6 | SPDX-License-Identifier: BSD-2-Clause-Patent 7 | 8 | **/ 9 | 10 | UINTN 11 | NvReadPmCntr ( 12 | VOID 13 | ); 14 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Include/Library/TegraDeviceTreeOverlayLib.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | * 3 | * Copyright (c) 2021, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 4 | * 5 | * SPDX-License-Identifier: BSD-2-Clause-Patent 6 | * 7 | **/ 8 | 9 | #ifndef __TEGRA_DEVICE_TREE_OVERLAY_LIB_H__ 10 | #define __TEGRA_DEVICE_TREE_OVERLAY_LIB_H__ 11 | 12 | #include 13 | 14 | EFI_STATUS 15 | EFIAPI 16 | ApplyTegraDeviceTreeOverlay ( 17 | VOID *FdtBase, 18 | VOID *FdtOverlay, 19 | CHAR8 *SWModule 20 | ); 21 | 22 | #endif //__TEGRA_DEVICE_TREE_OVERLAY_LIB_H__ 23 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Include/Library/UsbFirmwareLib.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | * 3 | * Copyright (c) 2019, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 4 | * 5 | * SPDX-License-Identifier: BSD-2-Clause-Patent 6 | * 7 | **/ 8 | 9 | #ifndef __USB_FIRMWARE_LIB_H__ 10 | #define __USB_FIRMWARE_LIB_H__ 11 | 12 | #include 13 | 14 | extern unsigned char xusb_sil_prod_fw[]; 15 | extern unsigned char xusb_sil_rel_fw[]; 16 | extern unsigned int xusb_sil_prod_fw_len; 17 | extern unsigned int xusb_sil_rel_fw_len; 18 | 19 | #endif //__USB_FIRMWARE_LIB_H__ 20 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Include/NVIDIABoardConfiguration.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | * 3 | * Copyright (c) 2021-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 4 | * 5 | * SPDX-License-Identifier: BSD-2-Clause-Patent 6 | * 7 | **/ 8 | 9 | #ifndef __NVIDIA_BOARD_CONFIGURATION_H__ 10 | #define __NVIDIA_BOARD_CONFIGURATION_H__ 11 | 12 | #define TEGRA_BOARD_ID_LEN 13 13 | #define TEGRA_PRODUCT_ID_LEN 30 14 | #define TEGRA_SERIAL_NUM_LEN 15 15 | 16 | #endif //__NVIDIA_BOARD_CONFIGURATION_H__ 17 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Include/PlatformToDriverStructures.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Parameter Info structures for all drivers supported by 4 | Platform To Driver Config Protocol 5 | 6 | Copyright (c) 2021-2022, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 7 | 8 | SPDX-License-Identifier: BSD-2-Clause-Patent 9 | 10 | **/ 11 | 12 | /** 13 | 14 | SDMMC properties extracted from DT 15 | 16 | **/ 17 | 18 | typedef struct { 19 | BOOLEAN VmmcRegulatorIdPresent; 20 | BOOLEAN VqmmcRegulatorIdPresent; 21 | BOOLEAN NonRemovable; 22 | BOOLEAN Only1v8; 23 | UINT32 VmmcRegulatorId; 24 | UINT32 VqmmcRegulatorId; 25 | } SDMMC_PARAMETER_INFO; 26 | 27 | /** 28 | 29 | GOP Driver properties extracted from DT 30 | 31 | **/ 32 | 33 | typedef struct { 34 | UINT8 *DcbImage; 35 | UINT32 DcbImageLen; 36 | } GOP_PARAMETER_INFO; 37 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Include/Protocol/KernelCmdLineUpdate.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Kernel Command Line Update Protocol 3 | 4 | Copyright (c) 2020, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | 6 | SPDX-License-Identifier: BSD-2-Clause-Patent 7 | 8 | **/ 9 | 10 | #ifndef __NVIDIA_KERNEL_CMD_LINE_UPDATE_PROTOCOL_H__ 11 | #define __NVIDIA_KERNEL_CMD_LINE_UPDATE_PROTOCOL_H__ 12 | 13 | #define NVIDIA_KERNEL_CMD_LINE_UPDATE_PROTOCOL_GUID \ 14 | { \ 15 | 0xc61a1a9a, 0x8f92, 0x4e2e, { 0x97, 0x8d, 0x04, 0x8d, 0x81, 0xed, 0xdc, 0x8b } \ 16 | } 17 | 18 | // 19 | // Define for forward reference. 20 | // 21 | typedef struct _NVIDIA_KERNEL_CMD_LINE_UPDATE_PROTOCOL NVIDIA_KERNEL_CMD_LINE_UPDATE_PROTOCOL; 22 | 23 | /// NVIDIA_KERNEL_CMD_LINE_UPDATE_PROTOCOL protocol structure. 24 | struct _NVIDIA_KERNEL_CMD_LINE_UPDATE_PROTOCOL { 25 | CHAR16 *ExistingCommandLineArgument; 26 | CHAR16 *NewCommandLineArgument; 27 | }; 28 | 29 | extern EFI_GUID gNVIDIAKernelCmdLineUpdateGuid; 30 | 31 | #endif 32 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Include/Protocol/MemoryTestConfig.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | NVIDIA Memory Test Config Protocol 3 | 4 | Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | 6 | SPDX-License-Identifier: BSD-2-Clause-Patent 7 | 8 | **/ 9 | 10 | #ifndef MEMORY_TEST_CONFIG_H__ 11 | #define MEMORY_TEST_CONFIG_H__ 12 | 13 | #include 14 | #include 15 | 16 | #define NVIDIA_MEMORY_TEST_CONFIG_PROTOCOL_GUID \ 17 | { \ 18 | 0x78bb2dfe, 0xe17b, 0x4ca1, { 0x9b, 0x82, 0xa3, 0x1e, 0x33, 0xf1, 0x1f, 0xac } \ 19 | } 20 | 21 | /// NVIDIA_BPMP_IPC_PROTOCOL protocol structure. 22 | typedef struct { 23 | MEMORY_TEST_MODE TestMode; 24 | UINT64 Parameter1; 25 | UINT64 Parameter2; 26 | } NVIDIA_MEMORY_TEST_CONFIG_PROTOCOL; 27 | 28 | extern EFI_GUID gNVIDIAMemoryTestConfig; 29 | 30 | #endif 31 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Include/Protocol/RasNsCommPcieDpcDataProtocol.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | * 3 | * Copyright (c) 2022-2023, NVIDIA CORPORATION. All rights reserved. 4 | * 5 | * SPDX-License-Identifier: BSD-2-Clause-Patent 6 | * 7 | **/ 8 | 9 | #ifndef RAS_NS_COMM_PCIE_DPC_DATA_PROTOCOL_H__ 10 | #define RAS_NS_COMM_PCIE_DPC_DATA_PROTOCOL_H__ 11 | 12 | #include 13 | 14 | #define MAX_SOCKETS 4 15 | #define PCIE_PER_SOCKET 10 16 | 17 | #define NVIDIA_RAS_NS_COMM_PCIE_DPC_DATA_PROTOCOL_GUID \ 18 | { \ 19 | 0x97dafc36, 0xc3bc, 0x427e, { 0xa9, 0xf4, 0x71, 0xcd, 0x3f, 0xba, 0x61, 0x95 } \ 20 | } 21 | 22 | typedef struct RasPcieDpcCommBuf { 23 | UINT64 PcieBase; 24 | UINT64 PcieSize; 25 | } RAS_PCIE_DPC_COMM_BUF_INFO; 26 | 27 | extern EFI_GUID gNVIDIARasNsCommPcieDpcDataProtocolGuid; 28 | 29 | #endif // RAS_NS_COMM_PCIE_DPC_DATA_PROTOCOL_H__ 30 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Include/Protocol/UsbFwProtocol.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Copyright (c) 2020, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 4 | 5 | SPDX-License-Identifier: BSD-2-Clause-Patent 6 | 7 | **/ 8 | 9 | #ifndef USB_FW_PROTOCOL_H__ 10 | #define USB_FW_PROTOCOL_H__ 11 | 12 | #define USB_FW_PROTOCOL_GUID \ 13 | { \ 14 | 0xed3b027b, 0x201f, 0x4fe5, { 0xa1, 0x98, 0x42, 0xa0, 0xcf, 0xbf, 0x7f, 0x2e } \ 15 | } 16 | 17 | typedef struct UsbFwInfo { 18 | VOID *UsbFwBase; 19 | UINTN UsbFwSize; 20 | } NVIDIA_USBFW_PROTOCOL; 21 | 22 | extern EFI_GUID gNVIDIAUsbFwProtocolGuid; 23 | 24 | #endif // USB_FW_PROTOCOL_H__ 25 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Include/Server/LicSwIo.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | NVIDIA Interrupt controller header 3 | 4 | Copyright (c) 2022-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | 6 | SPDX-License-Identifier: BSD-2-Clause-Patent 7 | 8 | **/ 9 | 10 | #ifndef _LICSWIO_H_ 11 | #define _LICSWIO_H_ 12 | 13 | #define INTR_CTLR_SW_IO_N_INTR_STATUS_0_OFFSET 0x00 14 | #define INTR_CTLR_SW_IO_N_INTR_STATUS_SET_0_OFFSET 0x04 15 | #define INTR_CTLR_SW_IO_N_INTR_STATUS_CLR_0_OFFSET 0x08 16 | #define INTR_CTLR_SW_IO_N_DATA_LO_0_OFFSET 0x10 17 | #define INTR_CTLR_SW_IO_N_DATA_HI_0_OFFSET 0x14 18 | 19 | #endif /* _LICSWIO_H_ */ 20 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Include/StandaloneMm/Library/StandaloneMmHafniumSlabMemAllocLib.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | * 3 | * SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 4 | * 5 | * SPDX-License-Identifier: BSD-2-Clause-Patent 6 | * 7 | **/ 8 | 9 | #ifndef __SMM_SLAB_MEMORY_ALLOCATION_LIB_H__ 10 | #define __SMM_SLAB_MEMORY_ALLOCATION_LIB_H__ 11 | 12 | VOID 13 | EFIAPI 14 | SlabArmSetEntriesSlab ( 15 | IN UINT64 EntriesBase, 16 | IN UINT64 EntriesPages 17 | ); 18 | 19 | VOID * 20 | EFIAPI 21 | AllocatePagesSlabMmSt ( 22 | IN UINTN Pages 23 | ); 24 | 25 | VOID 26 | EFIAPI 27 | FreePagesSlabMmst ( 28 | IN VOID *Buffer, 29 | IN UINTN Pages 30 | ); 31 | 32 | #endif //__SMM_SLAB_MEMORY_ALLOCATION_LIB_H__ 33 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/ASLTemplateTablesLib/ASLTemplateTablesLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Platform ASL Tables 3 | # 4 | # Copyright (c) 2019 - 2022, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | # Copyright (c) 2017 - 2018, ARM Limited. All rights reserved. 6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | ## 10 | 11 | [Defines] 12 | INF_VERSION = 0x00010019 13 | BASE_NAME = AslTemplateTablesLib 14 | FILE_GUID = 76d5c5cb-b3db-4dc5-8507-7d255c4bf9be 15 | MODULE_TYPE = DXE_DRIVER 16 | VERSION_STRING = 1.0 17 | LIBRARY_CLASS = AslTemplateTablesLib|DXE_DRIVER 18 | 19 | # 20 | # The following information is for reference only and not required by the build tools. 21 | # 22 | # VALID_ARCHITECTURES = ARM AARCH64 23 | # 24 | 25 | [Sources] 26 | SdcTemplate.asl 27 | I2cTemplate.asl 28 | 29 | [Packages] 30 | MdePkg/MdePkg.dec 31 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/ASLTemplateTablesLib/I2cTemplate.asl: -------------------------------------------------------------------------------- 1 | /** @file 2 | * SSDT for I2C 3 | * 4 | * Copyright (c) 2022, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | * 6 | * SPDX-License-Identifier: BSD-2-Clause-Patent 7 | */ 8 | 9 | DefinitionBlock("I2cTemplate.aml", "SSDT", 2, "NVIDIA", "I2CTEMP", 0x00000001) { 10 | Device (I2CT) { 11 | Name (_HID, "NVDA0301") 12 | Name (_UID, 0) 13 | 14 | Name (_CRS, ResourceTemplate() { 15 | Memory32Fixed(ReadWrite, 0xFFFFFFFF, 0xFFFFFFFF, REG0) 16 | Interrupt(ResourceConsumer, Level, ActiveHigh, Exclusive, , , INT0) { 0xFF } 17 | //FixedDMA (0xFF, 0x0001, Width32bit,DMA1) 18 | //FixedDMA (0xFF, 0x0002, Width32bit,DMA2) 19 | }) 20 | 21 | //Upstream driver prints warning if _RST method is not defined 22 | Method (_RST) { 23 | } 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/ASLTemplateTablesLib/SdcTemplate.asl: -------------------------------------------------------------------------------- 1 | /** @file 2 | * SSDT for SDHCI 3 | * 4 | * Copyright (c) 2021-2022, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | * 6 | * SPDX-License-Identifier: BSD-2-Clause-Patent 7 | */ 8 | 9 | DefinitionBlock("SdcTemplate.aml", "SSDT", 2, "NVIDIA", "SDCTEMP", 0x00000001) { 10 | Device(SDCT) { 11 | Name (_HID, "NVDA2002") 12 | Name (_CID, EISAID("PNP0D40")) // SDA Standard Compliant SD Host Controller 13 | Name (_UID, 0) 14 | Name (_CCA, ZERO) 15 | Name (_RMV, 0) 16 | 17 | Name(_CRS, ResourceTemplate () { 18 | Memory32Fixed(ReadWrite, 0xFFFFFFFF, 0xFFFFFFFF, REG0) 19 | Interrupt(ResourceConsumer, Level, ActiveHigh, ExclusiveAndWake, , , INT0) { 0xFF } 20 | }) 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/AndroidBcbLib/AndroidBcbLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # AndroidBcbLib functions 4 | # 5 | # SPDX-FileCopyrightText: Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | ## 10 | 11 | [Defines] 12 | INF_VERSION = 0x0001001A 13 | BASE_NAME = AndroidBcbLib 14 | FILE_GUID = 961ac9ad-795c-4f47-b45c-35a028176e76 15 | MODULE_TYPE = BASE 16 | VERSION_STRING = 1.0 17 | LIBRARY_CLASS = AndroidBcbLib 18 | 19 | [Sources.common] 20 | AndroidBcbLib.c 21 | 22 | [Packages] 23 | MdePkg/MdePkg.dec 24 | MdeModulePkg/MdeModulePkg.dec 25 | Silicon/NVIDIA/NVIDIA.dec 26 | 27 | [LibraryClasses] 28 | BaseLib 29 | DebugLib 30 | UefiLib 31 | PrintLib 32 | 33 | [Protocols] 34 | gEfiPartitionInfoProtocolGuid 35 | gEfiBlockIoProtocolGuid 36 | gEfiDiskIoProtocolGuid 37 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/ArmSvcHvcLibHafnium/ArmSvcHvcLibHafnium.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Instance of Debug Library based on Serial Port Library. 3 | # It uses Print Library to produce formatted output strings to seiral port device. 4 | # 5 | # Copyright (c) 2022, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # Copyright (c) 2016 - 2017, ARM Ltd. All rights reserved. 7 | # 8 | # SPDX-License-Identifier: BSD-2-Clause-Patent 9 | # 10 | ## 11 | [Defines] 12 | INF_VERSION = 0x0001001A 13 | BASE_NAME = ArmSvcHvcLib 14 | FILE_GUID = ce32c8ce-4797-4f24-9e18-4a04e565ccc8 15 | MODULE_TYPE = BASE 16 | VERSION_STRING = 1.0 17 | LIBRARY_CLASS = ArmSvcLib 18 | 19 | [Sources.AARCH64] 20 | AArch64/ArmSvcHvc.S 21 | 22 | [Packages] 23 | ArmPkg/ArmPkg.dec 24 | MdePkg/MdePkg.dec 25 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/AvbLib/AvbSysdepsEdk2/inttypes.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Stubbed stdlib header file to support building AvbLib sources. 3 | 4 | This file is included by the libavb sources. Rather than change those 5 | sources, we provide a stubbed implementation here that is sufficient to 6 | compile libavb for edk2. 7 | 8 | SPDX-FileCopyrightText: Copyright (c) 2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 9 | 10 | SPDX-License-Identifier: BSD-2-Clause-Patent 11 | 12 | **/ 13 | 14 | #include 15 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/AvbLib/AvbSysdepsEdk2/stdbool.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Stubbed stdlib header file to support building AvbLib sources. 3 | 4 | This file is included by the libavb sources. Rather than change those 5 | sources, we provide a stubbed implementation here that is sufficient to 6 | compile libavb for edk2. 7 | 8 | SPDX-FileCopyrightText: Copyright (c) 2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 9 | 10 | SPDX-License-Identifier: BSD-2-Clause-Patent 11 | 12 | **/ 13 | 14 | #include 15 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/AvbLib/AvbSysdepsEdk2/stddef.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Stubbed stdlib header file to support building AvbLib sources. 3 | 4 | This file is included by the libavb sources. Rather than change those 5 | sources, we provide a stubbed implementation here that is sufficient to 6 | compile libavb for edk2. 7 | 8 | SPDX-FileCopyrightText: Copyright (c) 2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 9 | 10 | SPDX-License-Identifier: BSD-2-Clause-Patent 11 | 12 | **/ 13 | 14 | #include 15 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/AvbLib/AvbSysdepsEdk2/stdint.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Stubbed stdlib header file to support building AvbLib sources. 3 | 4 | This file is included by the libavb sources. Rather than change those 5 | sources, we provide a stubbed implementation here that is sufficient to 6 | compile libavb for edk2. 7 | 8 | SPDX-FileCopyrightText: Copyright (c) 2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 9 | 10 | SPDX-License-Identifier: BSD-2-Clause-Patent 11 | 12 | **/ 13 | 14 | #include 15 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/AvbStubLib/AvbStubLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Component description file for the AvbStubLib module. 3 | # 4 | # SPDX-FileCopyrightText: Copyright (c) 2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | # 6 | # SPDX-License-Identifier: BSD-2-Clause-Patent 7 | # 8 | ## 9 | 10 | [Defines] 11 | INF_VERSION = 0x00010005 12 | BASE_NAME = AvbLib 13 | FILE_GUID = 986b6dd6-6dda-448f-b7b5-17992b8320e3 14 | MODULE_TYPE = BASE 15 | VERSION_STRING = 1.0 16 | LIBRARY_CLASS = AvbLib 17 | 18 | [Sources] 19 | AvbStubLibApi.c 20 | 21 | [Packages] 22 | MdePkg/MdePkg.dec 23 | ShellPkg/ShellPkg.dec 24 | Silicon/NVIDIA/NVIDIA.dec 25 | 26 | [LibraryClasses] 27 | BaseLib 28 | PrintLib 29 | BaseMemoryLib 30 | DebugLib 31 | UefiLib 32 | MemoryAllocationLib 33 | 34 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/AvbStubLib/AvbStubLibApi.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | EDK2 API for LibAvb 3 | 4 | SPDX-FileCopyrightText: Copyright (c) 2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | 6 | SPDX-License-Identifier: BSD-2-Clause-Patent 7 | 8 | **/ 9 | 10 | #include 11 | 12 | #include 13 | #include 14 | 15 | #include 16 | 17 | EFI_STATUS 18 | AvbVerifyBoot ( 19 | IN BOOLEAN IsRecovery, 20 | IN EFI_HANDLE ControllerHandle, 21 | OUT CHAR8 **AvbCmdline 22 | ) 23 | { 24 | if (AvbCmdline != NULL) { 25 | *AvbCmdline = NULL; 26 | } 27 | 28 | return EFI_SUCCESS; 29 | } 30 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // Instance of Debug Library based on Serial Port Library. 3 | // 4 | // It uses Print Library to produce formatted output strings to seiral port device. 5 | // 6 | // Copyright (c) 2021, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 7 | // Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.
8 | // 9 | // SPDX-License-Identifier: BSD-2-Clause-Patent 10 | // 11 | // **/ 12 | 13 | 14 | #string STR_MODULE_ABSTRACT #language en-US "Instance of Debug Library based on Serial Port Library" 15 | 16 | #string STR_MODULE_DESCRIPTION #language en-US "It uses Print Library to produce formatted output strings to a serial port device." 17 | 18 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/BootChainInfoVirtLib/BootChainInfoVirtLib.inf: -------------------------------------------------------------------------------- 1 | #/** @file 2 | # 3 | # Virt Boot Chain Information Library 4 | # 5 | # SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | #**/ 10 | 11 | [Defines] 12 | INF_VERSION = 0x00010005 13 | BASE_NAME = BootChainInfoLib 14 | FILE_GUID = b0708c1d-40bf-4fa2-97dd-17c3ac202091 15 | MODULE_TYPE = BASE 16 | VERSION_STRING = 1.0 17 | LIBRARY_CLASS = BootChainInfoLib 18 | 19 | [Sources.common] 20 | BootChainInfoVirtLib.c 21 | 22 | [Packages] 23 | EmbeddedPkg/EmbeddedPkg.dec 24 | MdePkg/MdePkg.dec 25 | Silicon/NVIDIA/NVIDIA.dec 26 | 27 | [LibraryClasses] 28 | BaseLib 29 | PrintLib 30 | FdtLib 31 | 32 | [Guids] 33 | gFdtTableGuid 34 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/Crc8Lib/Crc8Lib.inf: -------------------------------------------------------------------------------- 1 | #/** @file 2 | # 3 | # CRC8 Library, calculates different type of CRC updates 4 | # 5 | # Copyright (c) 2021, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | #**/ 10 | 11 | [Defines] 12 | INF_VERSION = 0x00010005 13 | BASE_NAME = Crc8Lib 14 | FILE_GUID = 9bcca3ca-2895-4424-8a85-418746812642 15 | MODULE_TYPE = BASE 16 | VERSION_STRING = 1.0 17 | LIBRARY_CLASS = Crc8Lib 18 | 19 | [Sources.common] 20 | Crc8Lib.c 21 | 22 | [Packages] 23 | MdePkg/MdePkg.dec 24 | Silicon/NVIDIA/NVIDIA.dec 25 | 26 | [LibraryClasses] 27 | BaseLib 28 | 29 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/Crc8Lib/GoogleTest/Crc8LibGoogleTest.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Unit test suite for the Crc8Lib using Google Test 3 | # 4 | # SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | # SPDX-License-Identifier: BSD-2-Clause-Patent 6 | ## 7 | 8 | [Defines] 9 | INF_VERSION = 0x00010005 10 | BASE_NAME = Crc8LibGoogleTest 11 | FILE_GUID = 8f684fb4-4629-4590-ac9a-7f798087ee27 12 | VERSION_STRING = 1.0 13 | MODULE_TYPE = HOST_APPLICATION 14 | 15 | [Sources] 16 | Crc8LibGoogleTest.cpp 17 | 18 | [Guids] 19 | 20 | [Packages] 21 | EmbeddedPkg/EmbeddedPkg.dec 22 | MdePkg/MdePkg.dec 23 | UnitTestFrameworkPkg/UnitTestFrameworkPkg.dec 24 | Silicon/NVIDIA/NVIDIA.dec 25 | 26 | [LibraryClasses] 27 | GoogleTestLib 28 | Crc8Lib 29 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/DeviceTreeHelperLib/DeviceTreeHelperLibParserAArch64.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | * 3 | * SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 4 | * 5 | * SPDX-License-Identifier: BSD-2-Clause-Patent 6 | * 7 | **/ 8 | 9 | #include "DeviceTreeHelperLibPrivate.h" 10 | 11 | /** 12 | Returns the cache block size in bytes based on the hardware 13 | 14 | @retval BlockSize - Block size in bytes 15 | 16 | **/ 17 | UINT32 18 | DeviceTreeGetCacheBlockSizeBytesFromHW ( 19 | VOID 20 | ) 21 | { 22 | // Get the value from hardware 23 | UINT64 DczidReg; 24 | UINT32 BlockSizeBytes; 25 | 26 | asm ("mrs %0, dczid_el0" : "=r" (DczidReg)); 27 | BlockSizeBytes = 4 << (DczidReg & 0xF); 28 | return BlockSizeBytes; 29 | } 30 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/DeviceTreeHelperLib/DeviceTreeHelperLibParserX86.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | * 3 | * SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 4 | * 5 | * SPDX-License-Identifier: BSD-2-Clause-Patent 6 | * 7 | **/ 8 | 9 | #include "DeviceTreeHelperLibPrivate.h" 10 | 11 | /** 12 | Returns the cache block size in bytes based on the hardware 13 | 14 | @retval BlockSize - Block size in bytes 15 | 16 | **/ 17 | UINT32 18 | DeviceTreeGetCacheBlockSizeBytesFromHW ( 19 | VOID 20 | ) 21 | { 22 | // Dummy value for now 23 | return 64; 24 | } 25 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/DeviceTreeHelperLib/UnitTest/DeviceTreeHelperLibGoogleTest.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Unit test suite for the DeviceTreeHelperLib using Google Test 3 | # 4 | # SPDX-FileCopyrightText: Copyright (c) 2023-2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | # SPDX-License-Identifier: BSD-2-Clause-Patent 6 | ## 7 | 8 | [Defines] 9 | INF_VERSION = 0x00010017 10 | BASE_NAME = DeviceTreeHelperLibGoogleTest 11 | FILE_GUID = e24e6ae2-5433-4c6e-9126-3e7a894a4d68 12 | VERSION_STRING = 1.0 13 | MODULE_TYPE = HOST_APPLICATION 14 | 15 | [Sources] 16 | DeviceTreeHelperLibGoogleTest.cpp 17 | 18 | [Packages] 19 | EmbeddedPkg/EmbeddedPkg.dec 20 | MdePkg/MdePkg.dec 21 | UnitTestFrameworkPkg/UnitTestFrameworkPkg.dec 22 | Silicon/NVIDIA/NVIDIA.dec 23 | 24 | [LibraryClasses] 25 | GoogleTestLib 26 | DeviceTreeHelperLib 27 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/DisplayDeviceTreeHelperLib/DisplayDeviceTreeHelperLib.inf: -------------------------------------------------------------------------------- 1 | /** @file 2 | * 3 | * SPDX-FileCopyrightText: Copyright (c) 2023-2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 4 | * 5 | * SPDX-License-Identifier: BSD-2-Clause-Patent 6 | * 7 | **/ 8 | 9 | [Defines] 10 | INF_VERSION = 0x00010019 11 | BASE_NAME = DisplayDeviceTreeHelperLib 12 | FILE_GUID = 3cb0a600-c6bc-4577-8a0b-8bf4dd9e43ac 13 | MODULE_TYPE = BASE 14 | VERSION_STRING = 1.0 15 | LIBRARY_CLASS = DisplayDeviceTreeHelperLib 16 | 17 | [Sources] 18 | DisplayDeviceTreeHelperLib.c 19 | 20 | [Packages] 21 | EmbeddedPkg/EmbeddedPkg.dec 22 | MdePkg/MdePkg.dec 23 | Silicon/NVIDIA/NVIDIA.dec 24 | 25 | [LibraryClasses] 26 | DebugLib 27 | DeviceTreeHelperLib 28 | FdtLib 29 | PrintLib 30 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/DramCarveoutLib/DramCarveoutLib.inf: -------------------------------------------------------------------------------- 1 | # 2 | # Copyright (c) 2018-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 3 | # 4 | # SPDX-License-Identifier: BSD-2-Clause-Patent 5 | # 6 | 7 | [Defines] 8 | INF_VERSION = 0x00010019 9 | BASE_NAME = DramCarveoutLib 10 | FILE_GUID = 68786d8d-8f5e-4b58-bffe-c238f0043d7b 11 | MODULE_TYPE = BASE 12 | VERSION_STRING = 1.0 13 | LIBRARY_CLASS = DramCarveoutLib 14 | 15 | [Packages] 16 | ArmPkg/ArmPkg.dec 17 | EmbeddedPkg/EmbeddedPkg.dec 18 | MdePkg/MdePkg.dec 19 | MdeModulePkg/MdeModulePkg.dec 20 | Silicon/NVIDIA/NVIDIA.dec 21 | 22 | [LibraryClasses] 23 | BaseMemoryLib 24 | HobLib 25 | DebugLib 26 | PrePiHobListPointerLib 27 | 28 | [Guids] 29 | gEfiMemoryTypeInformationGuid 30 | 31 | [Sources.common] 32 | DramCarveoutLib.c 33 | 34 | [Pcd] 35 | gNVIDIATokenSpaceGuid.PcdExpectedPeiMemoryUsage 36 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/DtbUpdateLib/DtbUpdateLibPrivate.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | DTB update library private header 4 | 5 | SPDX-FileCopyrightText: Copyright (c) 2024-2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | 7 | SPDX-License-Identifier: BSD-2-Clause-Patent 8 | 9 | **/ 10 | 11 | #include 12 | 13 | #define DTB_UPDATE_UEFI_DTB 0x1 14 | #define DTB_UPDATE_KERNEL_DTB 0x2 15 | #define DTB_UPDATE_ALL (DTB_UPDATE_UEFI_DTB | DTB_UPDATE_KERNEL_DTB) 16 | 17 | #define DTB_UPDATE_REGISTER_FUNCTION(Function, Flags) \ 18 | DtbUpdateRegisterFunction (Function, # Function, Flags) 19 | 20 | typedef 21 | VOID 22 | (EFIAPI *DTB_UPDATE_FUNCTION)( 23 | VOID 24 | ); 25 | 26 | VOID 27 | EFIAPI 28 | DtbUpdateRegisterFunction ( 29 | DTB_UPDATE_FUNCTION Function, 30 | CONST CHAR8 *Name, 31 | UINT8 Flags 32 | ); 33 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/DtbUpdateLib/DtbUpdateNull.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | DTB update null 4 | 5 | SPDX-FileCopyrightText: Copyright (c) 2024-2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | 7 | SPDX-License-Identifier: BSD-2-Clause-Patent 8 | 9 | **/ 10 | 11 | #include 12 | #include 13 | 14 | #include "DtbUpdateLibPrivate.h" 15 | 16 | // no update function registration 17 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/DtbUpdateLib/DtbUpdateNull.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # DTB update null 4 | # 5 | # SPDX-FileCopyrightText: Copyright (c) 2024-2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | ## 10 | 11 | [Defines] 12 | INF_VERSION = 1.25 13 | BASE_NAME = DtbUpdateNull 14 | FILE_GUID = d47d24d9-773d-4667-8192-886e356d09d4 15 | MODULE_TYPE = BASE 16 | VERSION_STRING = 1.0 17 | LIBRARY_CLASS = DtbUpdateNull 18 | 19 | [Sources.common] 20 | DtbUpdateNull.c 21 | 22 | [Packages] 23 | EmbeddedPkg/EmbeddedPkg.dec 24 | MdeModulePkg/MdeModulePkg.dec 25 | MdePkg/MdePkg.dec 26 | Silicon/NVIDIA/NVIDIA.dec 27 | 28 | [LibraryClasses] 29 | DebugLib 30 | 31 | [Depex] 32 | TRUE 33 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/DxeDtPlatformDtbLoaderLib/DxeDtPlatformDtbLoaderLib.inf: -------------------------------------------------------------------------------- 1 | /** @file 2 | * 3 | * Copyright (c) 2018-2022, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 4 | * Copyright (c) 2017, Linaro, Ltd. All rights reserved. 5 | * 6 | * SPDX-License-Identifier: BSD-2-Clause-Patent 7 | * 8 | **/ 9 | 10 | [Defines] 11 | INF_VERSION = 0x00010019 12 | BASE_NAME = DxeDtPlatformDtbLoaderLib 13 | FILE_GUID = f9f414ce-d951-4314-b7d9-ef472e9482cd 14 | MODULE_TYPE = BASE 15 | VERSION_STRING = 1.0 16 | LIBRARY_CLASS = DtPlatformDtbLoaderLib 17 | 18 | [Sources] 19 | DxeDtPlatformDtbLoaderLib.c 20 | 21 | [Packages] 22 | MdePkg/MdePkg.dec 23 | EmbeddedPkg/EmbeddedPkg.dec 24 | Silicon/NVIDIA/NVIDIA.dec 25 | 26 | [LibraryClasses] 27 | BaseLib 28 | HobLib 29 | FdtLib 30 | 31 | [Guids] 32 | gFdtHobGuid 33 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/DxeTcg2PhysicalPresenceLibNull/DxeTcg2PhysicalPresenceLibNull.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Null TCG2 Physical Presence Library 3 | # 4 | # Copyright (c) 2013 - 2018, Intel Corporation. All rights reserved.
5 | # Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # SPDX-License-Identifier: BSD-2-Clause-Patent 7 | # 8 | ## 9 | 10 | [Defines] 11 | INF_VERSION = 0x00010005 12 | BASE_NAME = DxeTcg2PhysicalPresenceLib 13 | FILE_GUID = 4965f6d0-f5e0-11ed-b38f-635583f65014 14 | MODULE_TYPE = DXE_DRIVER 15 | VERSION_STRING = 1.0 16 | LIBRARY_CLASS = Tcg2PhysicalPresenceLib|DXE_DRIVER DXE_RUNTIME_DRIVER UEFI_APPLICATION UEFI_DRIVER 17 | 18 | [Sources] 19 | DxeTcg2PhysicalPresenceLibNull.c 20 | 21 | [Packages] 22 | MdePkg/MdePkg.dec 23 | MdeModulePkg/MdeModulePkg.dec 24 | SecurityPkg/SecurityPkg.dec 25 | 26 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/ErotLib/ErotLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Erot library 4 | # 5 | # Copyright (c) 2022-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | ## 10 | 11 | [Defines] 12 | INF_VERSION = 1.25 13 | BASE_NAME = ErotLib 14 | FILE_GUID = ca1082ad-d38a-4f73-a023-03675713e4bd 15 | MODULE_TYPE = DXE_DRIVER 16 | VERSION_STRING = 1.0 17 | LIBRARY_CLASS = ErotLib 18 | 19 | [Sources.common] 20 | ErotLib.c 21 | 22 | [Packages] 23 | MdePkg/MdePkg.dec 24 | Silicon/NVIDIA/NVIDIA.dec 25 | 26 | [LibraryClasses] 27 | DebugLib 28 | MctpBaseLib 29 | MctpNvVdmLib 30 | MemoryAllocationLib 31 | TegraPlatformInfoLib 32 | 33 | [Protocols] 34 | gNVIDIAMctpProtocolGuid 35 | gNVIDIAErotBootCompleteProtocolGuid 36 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/ErotLibNull/ErotLibNull.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Null Erot library 4 | # 5 | # SPDX-FileCopyrightText: Copyright (c) 2022-2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | ## 10 | 11 | [Defines] 12 | INF_VERSION = 1.25 13 | BASE_NAME = ErotLibNull 14 | FILE_GUID = 8430f035-4969-4fb4-80b1-a14b2db64d68 15 | MODULE_TYPE = DXE_DRIVER 16 | VERSION_STRING = 1.0 17 | LIBRARY_CLASS = ErotLib 18 | 19 | [Sources.common] 20 | ErotLibNull.c 21 | 22 | [Packages] 23 | MdePkg/MdePkg.dec 24 | Silicon/NVIDIA/NVIDIA.dec 25 | 26 | [LibraryClasses] 27 | DebugLib 28 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/FmpBlobLib/FmpBlobLib.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // Provides firmware device specific services to support updates of a firmware 3 | // image stored in a firmware device. 4 | // 5 | // SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | // Copyright (c) 2018, Intel Corporation. All rights reserved.
7 | // 8 | // SPDX-License-Identifier: BSD-2-Clause-Patent 9 | // 10 | // **/ 11 | 12 | #string STR_MODULE_ABSTRACT #language en-US "Provides firmware device specific services to support updates of a firmware image stored in a firmware device." 13 | 14 | #string STR_MODULE_DESCRIPTION #language en-US "Provides firmware device specific services to support updates of a firmware image stored in a firmware device." 15 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/FmpDeviceLib/FmpDeviceLib.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // Provides firmware device specific services to support updates of a firmware 3 | // image stored in a firmware device. 4 | // 5 | // Copyright (c) 2021, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | // Copyright (c) 2018, Intel Corporation. All rights reserved.
7 | // 8 | // SPDX-License-Identifier: BSD-2-Clause-Patent 9 | // 10 | // **/ 11 | 12 | #string STR_MODULE_ABSTRACT #language en-US "Provides firmware device specific services to support updates of a firmware image stored in a firmware device." 13 | 14 | #string STR_MODULE_DESCRIPTION #language en-US "Provides firmware device specific services to support updates of a firmware image stored in a firmware device." 15 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/FmpErotLib/FmpErotLib.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // Provides firmware device specific services to support updates of a firmware 3 | // image stored in a firmware device. 4 | // 5 | // Copyright (c) 2022, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | // Copyright (c) 2018, Intel Corporation. All rights reserved.
7 | // 8 | // SPDX-License-Identifier: BSD-2-Clause-Patent 9 | // 10 | // **/ 11 | 12 | #string STR_MODULE_ABSTRACT #language en-US "Provides firmware device specific services to support updates of a firmware image stored in a firmware device." 13 | 14 | #string STR_MODULE_DESCRIPTION #language en-US "Provides firmware device specific services to support updates of a firmware image stored in a firmware device." 15 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/FwPackageLib/FwPackageLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # FwPackageLib - Firmware update package support library 4 | # 5 | # Copyright (c) 2021-2022 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | ## 10 | 11 | [Defines] 12 | INF_VERSION = 0x00010005 13 | BASE_NAME = FwPackageLib 14 | FILE_GUID = 17f634b3-9db0-4123-b73a-c16a5ec42b15 15 | MODULE_TYPE = BASE 16 | VERSION_STRING = 1.0 17 | LIBRARY_CLASS = FwPackageLib 18 | 19 | [Sources.common] 20 | FwPackageLib.c 21 | 22 | [Packages] 23 | MdePkg/MdePkg.dec 24 | Silicon/NVIDIA/NVIDIA.dec 25 | 26 | [LibraryClasses] 27 | BaseLib 28 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/FwPartitionDeviceLib/FwPartitionDeviceLib.inf: -------------------------------------------------------------------------------- 1 | # @file 2 | # 3 | # FW Partition Device Library 4 | # 5 | # SPDX-FileCopyrightText: Copyright (c) 2021-2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | # 10 | [Defines] 11 | INF_VERSION = 0x00010005 12 | BASE_NAME = FwPartitionDeviceLib 13 | FILE_GUID = 9a15470a-6454-4648-9278-27a33a11104d 14 | MODULE_TYPE = DXE_DRIVER 15 | VERSION_STRING = 1.0 16 | LIBRARY_CLASS = FwPartitionDeviceLib|DXE_DRIVER UEFI_DRIVER DXE_RUNTIME_DRIVER MM_STANDALONE 17 | 18 | [Sources.common] 19 | FwPartitionDeviceLib.c 20 | 21 | [Packages] 22 | MdePkg/MdePkg.dec 23 | Silicon/NVIDIA/NVIDIA.dec 24 | 25 | [LibraryClasses] 26 | BaseLib 27 | BootChainInfoLib 28 | DebugLib 29 | GptLib 30 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/FwVariableLibNull/FwVariableLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # FwVariableLib - Firmware variable support library 4 | # 5 | # SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # SPDX-License-Identifier: BSD-2-Clause-Patent 7 | # 8 | ## 9 | 10 | [Defines] 11 | INF_VERSION = 0x00010005 12 | BASE_NAME = FwVariableLibNull 13 | FILE_GUID = 1a2fdba4-93fa-4b64-bb92-2c5792a76caa 14 | MODULE_TYPE = BASE 15 | VERSION_STRING = 1.0 16 | LIBRARY_CLASS = FwVariableLib 17 | 18 | [Sources.common] 19 | FwVariableLibNull.c 20 | 21 | [Packages] 22 | MdePkg/MdePkg.dec 23 | Silicon/NVIDIA/NVIDIA.dec 24 | 25 | [LibraryClasses] 26 | BaseLib 27 | 28 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/FwVariableLibNull/FwVariableLibNull.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | FwVariableLibNull - Null Version of the Firmware variable support library 4 | 5 | SPDX-FileCopyrightText: Copyright (c) 2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | SPDX-License-Identifier: BSD-2-Clause-Patent 7 | 8 | **/ 9 | 10 | #include 11 | #include 12 | #include 13 | 14 | /** 15 | Delete all Firmware Variables 16 | Stub version that returns success only. 17 | 18 | @retval EFI_SUCCESS All variables deleted 19 | 20 | **/ 21 | EFI_STATUS 22 | EFIAPI 23 | FwVariableDeleteAll ( 24 | ) 25 | { 26 | return EFI_SUCCESS; 27 | } 28 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/GoldenRegisterLib/GoldenRegisterLib.inf: -------------------------------------------------------------------------------- 1 | #/** @file 2 | # 3 | # Golden register library 4 | # 5 | # Copyright (c) 2021, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | #**/ 10 | 11 | [Defines] 12 | INF_VERSION = 0x00010005 13 | BASE_NAME = GoldenRegisterLib 14 | FILE_GUID = 9f338a4c-5624-489e-8450-b23bacdee411 15 | MODULE_TYPE = BASE 16 | VERSION_STRING = 1.0 17 | LIBRARY_CLASS = GoldenRegisterLib 18 | 19 | [Sources.common] 20 | GoldenRegisterLib.c 21 | 22 | [Packages] 23 | MdePkg/MdePkg.dec 24 | Silicon/NVIDIA/NVIDIA.dec 25 | 26 | [LibraryClasses] 27 | DebugLib 28 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/GptLib/GptLib.inf: -------------------------------------------------------------------------------- 1 | #/** @file 2 | # 3 | # GPT - GUID Partition Table Library 4 | # This implementation of GPT uses just the secondary GPT table. 5 | # 6 | # SPDX-FileCopyrightText: Copyright (c) 2021-2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 7 | # 8 | # SPDX-License-Identifier: BSD-2-Clause-Patent 9 | # 10 | #**/ 11 | 12 | [Defines] 13 | INF_VERSION = 0x00010005 14 | BASE_NAME = GptLib 15 | FILE_GUID = 515188ea-9abd-4b2a-b9a6-e7639a126170 16 | MODULE_TYPE = BASE 17 | VERSION_STRING = 1.0 18 | LIBRARY_CLASS = GptLib 19 | 20 | [Sources.common] 21 | GptLib.c 22 | 23 | [Packages] 24 | MdePkg/MdePkg.dec 25 | Silicon/NVIDIA/NVIDIA.dec 26 | 27 | [LibraryClasses] 28 | BaseLib 29 | DebugLib 30 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/HostBasedTestStubLib/ArmSvcStubLib/ArmSvcStubLib.inf: -------------------------------------------------------------------------------- 1 | #/** @file 2 | # 3 | # SPDX-FileCopyrightText: Copyright (c) 2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 4 | # SPDX-License-Identifier: BSD-2-Clause-Patent 5 | # 6 | #**/ 7 | 8 | [Defines] 9 | INF_VERSION = 0x0001001A 10 | BASE_NAME = ArmSvcStubLib 11 | FILE_GUID = 5b5e135b-cd46-4c8e-bd49-0782732d8bef 12 | MODULE_TYPE = BASE 13 | VERSION_STRING = 1.0 14 | LIBRARY_CLASS = ArmSvcLib 15 | 16 | [Sources] 17 | ArmSvcStubLib.c 18 | 19 | 20 | [Packages] 21 | ArmPkg/ArmPkg.dec 22 | MdePkg/MdePkg.dec 23 | UnitTestFrameworkPkg/UnitTestFrameworkPkg.dec 24 | 25 | [LibraryClasses] 26 | CmockaLib 27 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/HostBasedTestStubLib/BlockIoStubProtocol/BlockIoStubProtocol.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # BlockIo Protocol stubs for host based tests 4 | # 5 | # Copyright (c) 2023 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | ## 10 | 11 | [Defines] 12 | INF_VERSION = 0x00010005 13 | BASE_NAME = BlockIoStubProtocol 14 | FILE_GUID = bc640a5d-df43-477d-bb9b-7bc593cab232 15 | MODULE_TYPE = BASE 16 | VERSION_STRING = 1.0 17 | LIBRARY_CLASS = BlockIoStubProtocol 18 | 19 | [Packages] 20 | MdePkg/MdePkg.dec 21 | Silicon/NVIDIA/NVIDIA.dec 22 | UnitTestFrameworkPkg/UnitTestFrameworkPkg.dec 23 | 24 | [LibraryClasses] 25 | BaseLib 26 | CmockaLib 27 | DebugLib 28 | 29 | [Sources.common] 30 | BlockIoStubProtocol.c 31 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/HostBasedTestStubLib/DeviceTreeHelperStubLib/DeviceTreeHelperStubLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # DeviceTreeHelperLib stubs for host based tests 4 | # 5 | # SPDX-FileCopyrightText: Copyright (c) 2023 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | ## 10 | 11 | [Defines] 12 | INF_VERSION = 0x00010005 13 | BASE_NAME = DeviceTreeHelperStubLib 14 | FILE_GUID = 0b3829ac-c35f-4ab4-a7af-ad22d3501d4b 15 | MODULE_TYPE = BASE 16 | VERSION_STRING = 1.0 17 | LIBRARY_CLASS = DeviceTreeHelperLib 18 | 19 | [Packages] 20 | MdePkg/MdePkg.dec 21 | Silicon/NVIDIA/NVIDIA.dec 22 | UnitTestFrameworkPkg/UnitTestFrameworkPkg.dec 23 | EmbeddedPkg/EmbeddedPkg.dec 24 | 25 | [LibraryClasses] 26 | BaseLib 27 | DebugLib 28 | 29 | [Sources.common] 30 | DeviceTreeHelperStubLib.c 31 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/HostBasedTestStubLib/DiskIoStubProtocol/DiskIoStubProtocol.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # DiskIo Protocol stubs for host based tests 4 | # 5 | # Copyright (c) 2023 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | ## 10 | 11 | [Defines] 12 | INF_VERSION = 0x00010005 13 | BASE_NAME = DiskIoStubProtocol 14 | FILE_GUID = a9a4e75a-79f3-46d9-b2bb-295ac2d84879 15 | MODULE_TYPE = BASE 16 | VERSION_STRING = 1.0 17 | LIBRARY_CLASS = DiskIoStubProtocol 18 | 19 | [Packages] 20 | MdePkg/MdePkg.dec 21 | Silicon/NVIDIA/NVIDIA.dec 22 | UnitTestFrameworkPkg/UnitTestFrameworkPkg.dec 23 | 24 | [LibraryClasses] 25 | BaseLib 26 | CmockaLib 27 | DebugLib 28 | 29 | [Sources.common] 30 | DiskIoStubProtocol.c 31 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/HostBasedTestStubLib/FlashStubLib/FlashStubLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Component description file for FlashStubLib module. 3 | # 4 | # Copyright (c) 2020, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | # Copyright (c) 2018, Intel Corporation. All rights reserved.
6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | ## 10 | 11 | [Defines] 12 | INF_VERSION = 0x00010005 13 | BASE_NAME = FlashStubLib 14 | FILE_GUID = c85e8f40-72db-4a93-8967-c7ec4cfdb9a1 15 | MODULE_TYPE = BASE 16 | VERSION_STRING = 1.0 17 | LIBRARY_CLASS = FlashStubLib 18 | 19 | [Sources] 20 | FlashStubLib.c 21 | FaultyFlashStubLib.c 22 | 23 | [Packages] 24 | MdePkg/MdePkg.dec 25 | Silicon/NVIDIA/NVIDIA.dec 26 | 27 | [LibraryClasses] 28 | BaseLib 29 | BaseMemoryLib 30 | MemoryAllocationLib 31 | DebugLib 32 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/HostBasedTestStubLib/FlashStubLib/FlashStubLibPrivate.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | FlashStubLib private definitions. 4 | 5 | Copyright (c) 2020, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | Copyright (c) 2018, Intel Corporation. All rights reserved.
7 | 8 | SPDX-License-Identifier: BSD-2-Clause-Patent 9 | 10 | **/ 11 | 12 | #ifndef _FLASH_STUB_LIB_PRIVATE_H_ 13 | #define _FLASH_STUB_LIB_PRIVATE_H_ 14 | 15 | #include 16 | #include 17 | 18 | typedef struct { 19 | UINT32 Signature; 20 | EFI_BLOCK_IO_PROTOCOL BlockIo; 21 | EFI_BLOCK_IO_MEDIA Media; 22 | UINT64 StartingAddr; 23 | UINT64 Size; 24 | } FLASH_TEST_PRIVATE; 25 | 26 | #define DATA_BUFFER_BLOCK_NUM (64) 27 | 28 | #define FLASH_TEST_PRIVATE_SIGNATURE SIGNATURE_32 ('F', 'S', 'H', 'T') 29 | 30 | #define FLASH_TEST_PRIVATE_FROM_BLOCK_IO(a) CR (a, FLASH_TEST_PRIVATE, BlockIo, FLASH_TEST_PRIVATE_SIGNATURE) 31 | 32 | #endif 33 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/HostBasedTestStubLib/HobStubLib/HobStubLib.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Hob Lib stubs for host based tests 4 | 5 | Copyright (c) 2022 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | 7 | SPDX-License-Identifier: BSD-2-Clause-Patent 8 | 9 | **/ 10 | #include 11 | #include 12 | #include 13 | #include 14 | #include 15 | 16 | #include 17 | 18 | VOID * 19 | EFIAPI 20 | GetFirstGuidHob ( 21 | IN CONST EFI_GUID *Guid 22 | ) 23 | { 24 | check_expected (Guid); 25 | 26 | return (VOID *)mock (); 27 | } 28 | 29 | VOID 30 | EFIAPI 31 | MockGetFirstGuidHob ( 32 | IN CONST EFI_GUID *Guid, 33 | IN VOID *Ptr 34 | ) 35 | { 36 | expect_value (GetFirstGuidHob, Guid, Guid); 37 | will_return (GetFirstGuidHob, Ptr); 38 | } 39 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/HostBasedTestStubLib/HobStubLib/HobStubLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Hob Lib stubs for host based tests 4 | # 5 | # Copyright (c) 2022 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | ## 10 | 11 | [Defines] 12 | INF_VERSION = 0x00010005 13 | BASE_NAME = HobStubLib 14 | FILE_GUID = ed20fb65-5401-43e6-bdd0-1557cf6facff 15 | MODULE_TYPE = BASE 16 | VERSION_STRING = 1.0 17 | LIBRARY_CLASS = HobLib 18 | 19 | [Packages] 20 | MdePkg/MdePkg.dec 21 | Silicon/NVIDIA/NVIDIA.dec 22 | UnitTestFrameworkPkg/UnitTestFrameworkPkg.dec 23 | 24 | [LibraryClasses] 25 | BaseLib 26 | CmockaLib 27 | DebugLib 28 | 29 | [Sources.common] 30 | HobStubLib.c 31 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/HostBasedTestStubLib/IoStubLib/IoStubLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Component description file for IoStubLib module. 3 | # 4 | # Copyright (c) 2020-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | # Copyright (c) 2018, Intel Corporation. All rights reserved.
6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | ## 10 | 11 | [Defines] 12 | INF_VERSION = 0x00010005 13 | BASE_NAME = IoStubLib 14 | FILE_GUID = fcdfed25-8636-4f4f-a58a-c40ecec283e1 15 | MODULE_TYPE = BASE 16 | VERSION_STRING = 1.0 17 | LIBRARY_CLASS = IoLib 18 | 19 | [Sources] 20 | IoStubLib.c 21 | 22 | [Packages] 23 | MdePkg/MdePkg.dec 24 | Silicon/NVIDIA/NVIDIA.dec 25 | 26 | [LibraryClasses] 27 | BaseLib 28 | DebugLib 29 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/HostBasedTestStubLib/MemoryAllocationStubLib/MemoryAllocationStubLib.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // Stubbable instance of Memory Allocation Library based on POSIX APIs 3 | // 4 | // Uses POSIX APIs malloc() and free() to allocate and free memory. But also 5 | // allow failures in malloc to be simulated. 6 | // 7 | // This was originally a fork of MemoryAllocationLibPosix. 8 | // 9 | // Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 10 | // Copyright (c) 2020, Intel Corporation. All rights reserved.
11 | // 12 | // SPDX-License-Identifier: BSD-2-Clause-Patent 13 | // 14 | // **/ 15 | 16 | #string STR_MODULE_ABSTRACT #language en-US "Instance of Memory Allocation Library based on POSIX APIs" 17 | 18 | #string STR_MODULE_DESCRIPTION #language en-US "Uses POSIX APIs malloc() and free() to allocate and free memory." 19 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/HostBasedTestStubLib/MmServicesTableStubLib/MmServicesTableStubLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # MmServices Table Lib stubs for host based tests 4 | # 5 | # SPDX-FileCopyrightText: Copyright (c) 2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # SPDX-License-Identifier: BSD-2-Clause-Patent 7 | # 8 | ## 9 | 10 | [Defines] 11 | INF_VERSION = 0x00010005 12 | BASE_NAME = MmServicesTableStubLib 13 | FILE_GUID = 996de160-b605-4536-9e2d-a48a2d84da45 14 | MODULE_TYPE = BASE 15 | VERSION_STRING = 1.0 16 | LIBRARY_CLASS = MmServicesTableLib 17 | 18 | [Packages] 19 | MdePkg/MdePkg.dec 20 | Silicon/NVIDIA/NVIDIA.dec 21 | UnitTestFrameworkPkg/UnitTestFrameworkPkg.dec 22 | 23 | [LibraryClasses] 24 | BaseLib 25 | CmockaLib 26 | DebugLib 27 | 28 | [Protocols] 29 | gNVIDIAVarIntGuid 30 | 31 | [Sources.common] 32 | MmServicesTableStubLib.c 33 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/HostBasedTestStubLib/NorFlashStubLib/NorFlashStubLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Component description file for NorFlashStubLib module. 3 | # 4 | # Copyright (c) 2020-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | # Copyright (c) 2018, Intel Corporation. All rights reserved.
6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | ## 10 | 11 | [Defines] 12 | INF_VERSION = 0x00010005 13 | BASE_NAME = NorFlashStubLib 14 | FILE_GUID = 6302291d-150e-411d-9ba0-3b634248d0f5 15 | MODULE_TYPE = BASE 16 | VERSION_STRING = 1.0 17 | LIBRARY_CLASS = NorFlashStubLib 18 | 19 | [Sources] 20 | NorFlashStubLib.c 21 | FaultyNorFlashStubLib.c 22 | 23 | [Packages] 24 | MdePkg/MdePkg.dec 25 | Silicon/NVIDIA/NVIDIA.dec 26 | 27 | [LibraryClasses] 28 | BaseLib 29 | BaseMemoryLib 30 | MemoryAllocationLib 31 | DebugLib 32 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/HostBasedTestStubLib/PcdStubLib/PcdStubLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # PcdLib stubs for host based tests 4 | # 5 | # Copyright (c) 2023 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | ## 10 | 11 | [Defines] 12 | INF_VERSION = 0x00010005 13 | BASE_NAME = PcdStubLib 14 | FILE_GUID = 783012f6-70a7-4984-80f5-6151491f1332 15 | MODULE_TYPE = BASE 16 | VERSION_STRING = 1.0 17 | LIBRARY_CLASS = PcdLib 18 | 19 | [Packages] 20 | MdePkg/MdePkg.dec 21 | Silicon/NVIDIA/NVIDIA.dec 22 | UnitTestFrameworkPkg/UnitTestFrameworkPkg.dec 23 | 24 | [LibraryClasses] 25 | BaseLib 26 | DebugLib 27 | 28 | [Sources.common] 29 | PcdStubLib.c 30 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/HostBasedTestStubLib/PlatformResourceStubLib/PlatformResourceStubLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Platform Resource Lib stubs for host based tests 4 | # 5 | # Copyright (c) 2022-2023 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | ## 10 | 11 | [Defines] 12 | INF_VERSION = 0x00010005 13 | BASE_NAME = PlatformResourceStubLib 14 | FILE_GUID = 04a96dc6-d5ec-42e9-8853-780d6a48f30d 15 | MODULE_TYPE = BASE 16 | VERSION_STRING = 1.0 17 | LIBRARY_CLASS = PlatformResourceLib 18 | 19 | [Packages] 20 | MdePkg/MdePkg.dec 21 | Silicon/NVIDIA/NVIDIA.dec 22 | UnitTestFrameworkPkg/UnitTestFrameworkPkg.dec 23 | 24 | [LibraryClasses] 25 | BaseLib 26 | CmockaLib 27 | DebugLib 28 | MemoryAllocationLib 29 | 30 | [Sources.common] 31 | PlatformResourceStubLib.c 32 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/HostBasedTestStubLib/StandaloneMmOpteeStubLib/StandaloneMmOpteeStubLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Component description file for StandaloneMmOpteeStubLib module. 3 | # 4 | # Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | # 6 | # SPDX-License-Identifier: BSD-2-Clause-Patent 7 | # 8 | ## 9 | 10 | [Defines] 11 | INF_VERSION = 0x00010005 12 | BASE_NAME = StandaloneMmOpteeStubLib 13 | FILE_GUID = c7f6dd04-699d-4f4f-ba4d-196f49259f32 14 | MODULE_TYPE = BASE 15 | VERSION_STRING = 1.0 16 | LIBRARY_CLASS = StandaloneMmOpteeStubLib 17 | 18 | [Sources] 19 | StandaloneMmOpteeStubLib.c 20 | 21 | [Packages] 22 | MdePkg/MdePkg.dec 23 | Silicon/NVIDIA/NVIDIA.dec 24 | UnitTestFrameworkPkg/UnitTestFrameworkPkg.dec 25 | 26 | [LibraryClasses] 27 | DebugLib 28 | UnitTestLib 29 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/HostBasedTestStubLib/StatusRegStubLib/StatusRegStubLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Status register library 4 | # 5 | # SPDX-FileCopyrightText: Copyright (c) 2023 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | ## 10 | 11 | [Defines] 12 | INF_VERSION = 1.25 13 | BASE_NAME = StatusRegStubLib 14 | FILE_GUID = 6090a610-b163-429a-952c-09569ac4e701 15 | MODULE_TYPE = DXE_DRIVER 16 | VERSION_STRING = 1.0 17 | LIBRARY_CLASS = StatusRegLib 18 | 19 | [Sources.common] 20 | StatusRegStubLib.c 21 | 22 | [Packages] 23 | MdePkg/MdePkg.dec 24 | Silicon/NVIDIA/NVIDIA.dec 25 | 26 | [LibraryClasses] 27 | DebugLib 28 | TegraPlatformInfoLib 29 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/HostBasedTestStubLib/TegraPlatformInfoStubLib/TegraPlatformInfoStubLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Tegra Platform Info Lib stubs for host based tests 4 | # 5 | # Copyright (c) 2022 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | ## 10 | 11 | [Defines] 12 | INF_VERSION = 0x00010005 13 | BASE_NAME = TegraPlatformInfoStubLib 14 | FILE_GUID = 62a2d0c8-2272-45b5-96ee-ba91b5a29bdd 15 | MODULE_TYPE = BASE 16 | VERSION_STRING = 1.0 17 | LIBRARY_CLASS = TegraPlatformInfoLib 18 | 19 | [Packages] 20 | MdePkg/MdePkg.dec 21 | Silicon/NVIDIA/NVIDIA.dec 22 | UnitTestFrameworkPkg/UnitTestFrameworkPkg.dec 23 | 24 | [LibraryClasses] 25 | BaseLib 26 | CmockaLib 27 | DebugLib 28 | 29 | [Sources.common] 30 | TegraPlatformInfoStubLib.c 31 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/HostBasedTestStubLib/UefiBootServicesTableStubLib/UefiBootServicesTableStubLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # UEFI Boot Services Table Lib stubs for host based tests 4 | # 5 | # Copyright (c) 2022 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | ## 10 | 11 | [Defines] 12 | INF_VERSION = 0x00010005 13 | BASE_NAME = UefiBootServicesTableStubLib 14 | FILE_GUID = 6ee1f0d1-1ef0-4a0c-9b12-cad14e3c8435 15 | MODULE_TYPE = BASE 16 | VERSION_STRING = 1.0 17 | LIBRARY_CLASS = UefiBootServicesTableLib 18 | 19 | [Packages] 20 | MdePkg/MdePkg.dec 21 | Silicon/NVIDIA/NVIDIA.dec 22 | UnitTestFrameworkPkg/UnitTestFrameworkPkg.dec 23 | 24 | [LibraryClasses] 25 | BaseLib 26 | CmockaLib 27 | DebugLib 28 | 29 | [Sources.common] 30 | UefiBootServicesTableStubLib.c 31 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/HostBasedTestStubLib/UefiRuntimeServicesTableStubLib/UefiRuntimeServicesTableStubLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # UEFI Runtime Services Table Lib stubs for host based tests 4 | # 5 | # Copyright (c) 2022 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | ## 10 | 11 | [Defines] 12 | INF_VERSION = 0x00010005 13 | BASE_NAME = UefiRuntimeServicesTableStubLib 14 | FILE_GUID = 7c0085e7-31eb-4c94-a205-f1796ccd4d33 15 | MODULE_TYPE = BASE 16 | VERSION_STRING = 1.0 17 | LIBRARY_CLASS = UefiRuntimeServicesTableLib 18 | 19 | [Packages] 20 | MdePkg/MdePkg.dec 21 | Silicon/NVIDIA/NVIDIA.dec 22 | UnitTestFrameworkPkg/UnitTestFrameworkPkg.dec 23 | 24 | [LibraryClasses] 25 | BaseLib 26 | CmockaLib 27 | DebugLib 28 | 29 | [Sources.common] 30 | UefiRuntimeServicesTableStubLib.c 31 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/MceAriLib/MceAriLib.inf: -------------------------------------------------------------------------------- 1 | #/** @file 2 | # 3 | # MCE ARI library 4 | # 5 | # Copyright (c) 2021-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | #**/ 10 | 11 | [Defines] 12 | INF_VERSION = 0x00010005 13 | BASE_NAME = MceAriLib 14 | FILE_GUID = be4eb101-dbcb-4b11-a690-83cf5b98287e 15 | MODULE_TYPE = BASE 16 | VERSION_STRING = 1.0 17 | LIBRARY_CLASS = MceAriLib 18 | 19 | [Sources.common] 20 | MceAriLib.c 21 | 22 | [Packages] 23 | ArmPkg/ArmPkg.dec 24 | MdePkg/MdePkg.dec 25 | Silicon/NVIDIA/NVIDIA.dec 26 | 27 | [LibraryClasses] 28 | ArmLib 29 | BaseLib 30 | HobLib 31 | IoLib 32 | TimerLib 33 | 34 | [FixedPcd] 35 | gNVIDIATokenSpaceGuid.PcdTegraMceAriApertureBaseAddress 36 | 37 | [Guids] 38 | gNVIDIAPlatformResourceDataGuid 39 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/MctpBaseLib/MctpBaseLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # MCTP base protocol and helper function library 4 | # 5 | # Copyright (c) 2022, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | ## 10 | 11 | [Defines] 12 | INF_VERSION = 1.25 13 | BASE_NAME = MctpBaseLib 14 | FILE_GUID = ab07cfb6-837f-4c72-94d1-e80070de53b9 15 | MODULE_TYPE = BASE 16 | VERSION_STRING = 1.0 17 | LIBRARY_CLASS = MctpBaseLib 18 | 19 | [Sources.common] 20 | MctpBaseLib.c 21 | 22 | [Packages] 23 | MdePkg/MdePkg.dec 24 | Silicon/NVIDIA/NVIDIA.dec 25 | 26 | [LibraryClasses] 27 | DebugLib 28 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/MctpNvVdmLib/MctpNvVdmLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # MCTP NVIDIA Vendor-Defined Message Library 4 | # 5 | # Copyright (c) 2022, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | ## 10 | 11 | [Defines] 12 | INF_VERSION = 1.25 13 | BASE_NAME = MctpNvVdmLib 14 | FILE_GUID = 8b3a78d8-ee24-4ffa-9435-6f50e1e9b0d3 15 | MODULE_TYPE = BASE 16 | VERSION_STRING = 1.0 17 | LIBRARY_CLASS = MctpNvVdmLib 18 | 19 | [Sources.common] 20 | MctpNvVdmLib.c 21 | 22 | [Packages] 23 | MdePkg/MdePkg.dec 24 | Silicon/NVIDIA/NVIDIA.dec 25 | 26 | [LibraryClasses] 27 | BaseMemoryLib 28 | DebugLib 29 | MctpBaseLib 30 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/MemoryVerificationLib/MemoryVerificationLib.inf: -------------------------------------------------------------------------------- 1 | #/** @file 2 | # 3 | # Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 4 | # 5 | # SPDX-License-Identifier: BSD-2-Clause-Patent 6 | # 7 | #**/ 8 | 9 | [Defines] 10 | INF_VERSION = 0x00010019 11 | BASE_NAME = MemoryVerificationLib 12 | FILE_GUID = a89be62c-c4d0-4474-9eac-a1c738c99210 13 | MODULE_TYPE = BASE 14 | VERSION_STRING = 1.0 15 | LIBRARY_CLASS = MemoryVerificationLib 16 | 17 | [Sources.common] 18 | MemoryVerificationLib.c 19 | 20 | [Packages] 21 | ArmPkg/ArmPkg.dec 22 | MdePkg/MdePkg.dec 23 | Silicon/NVIDIA/NVIDIA.dec 24 | 25 | [LibraryClasses] 26 | ArmLib 27 | BaseMemoryLib 28 | CacheMaintenanceLib 29 | DebugLib 30 | TimerLib 31 | MemoryAllocationLib 32 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/MpCoreInfoLib/MpCoreInfoLib.inf: -------------------------------------------------------------------------------- 1 | #/** @file 2 | # 3 | # SPDX-FileCopyrightText: Copyright (c) 2023-2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 4 | # 5 | # SPDX-License-Identifier: BSD-2-Clause-Patent 6 | # 7 | #**/ 8 | 9 | [Defines] 10 | INF_VERSION = 0x00010019 11 | BASE_NAME = MpCoreInfoLib 12 | FILE_GUID = 8f7cfe5a-a5ef-4083-8e34-aea3dc84fa8a 13 | MODULE_TYPE = BASE 14 | VERSION_STRING = 1.0 15 | LIBRARY_CLASS = MpCoreInfoLib 16 | 17 | [Sources.common] 18 | MpCoreInfoLib.c 19 | 20 | [Packages] 21 | ArmPkg/ArmPkg.dec 22 | MdePkg/MdePkg.dec 23 | Silicon/NVIDIA/NVIDIA.dec 24 | 25 | [LibraryClasses] 26 | DebugLib 27 | HobLib 28 | 29 | [Guids] 30 | gArmMpCoreInfoGuid 31 | gNVIDIAPlatformResourceDataGuid 32 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/MpCoreInfoLib/MpCoreInfoLib_private.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | * Provides private header functions for MpCoreLib 3 | * 4 | * SPDX-FileCopyrightText: Copyright (c) 2023-2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | * 6 | * SPDX-License-Identifier: BSD-2-Clause-Patent 7 | * 8 | **/ 9 | 10 | #ifndef MPCOREINFO_LIB_PRIVATE_H_ 11 | #define MPCOREINFO_LIB_PRIVATE_H_ 12 | 13 | #include 14 | 15 | // Utility function to reset library globals 16 | EFIAPI 17 | VOID 18 | MpCoreInfoLibResetModule ( 19 | VOID 20 | ); 21 | 22 | #endif 23 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/MpCoreInfoLib/UnitTest/MpCoreInfoLibGoogleTest.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Unit test suite for the MpCoreInfoLib using Google Test 3 | # 4 | # SPDX-FileCopyrightText: Copyright (c) 2023-2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | # SPDX-License-Identifier: BSD-2-Clause-Patent 6 | ## 7 | 8 | [Defines] 9 | INF_VERSION = 0x00010017 10 | BASE_NAME = MpCoreInfoLibGoogleTest 11 | FILE_GUID = 15e7e686-7ef6-460a-9c4c-566e7231aa78 12 | VERSION_STRING = 1.0 13 | MODULE_TYPE = HOST_APPLICATION 14 | 15 | [Sources] 16 | MpCoreInfoLibGoogleTest.cpp 17 | 18 | [Packages] 19 | ArmPkg/ArmPkg.dec 20 | MdePkg/MdePkg.dec 21 | UnitTestFrameworkPkg/UnitTestFrameworkPkg.dec 22 | Silicon/NVIDIA/NVIDIA.dec 23 | 24 | [LibraryClasses] 25 | GoogleTestLib 26 | MpCoreInfoLib 27 | 28 | [Guids] 29 | gArmMpCoreInfoGuid 30 | gNVIDIAPlatformResourceDataGuid 31 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/NctLib/NctLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # NctLib functions 4 | # 5 | # SPDX-FileCopyrightText: Copyright (c) 2025, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | ## 10 | 11 | [Defines] 12 | INF_VERSION = 0x0001001A 13 | BASE_NAME = NctLib 14 | FILE_GUID = 961ac9ad-795c-4f77-b45c-35a036176e76 15 | MODULE_TYPE = BASE 16 | VERSION_STRING = 1.0 17 | LIBRARY_CLASS = NctLib 18 | 19 | [Sources.common] 20 | NctLib.c 21 | 22 | [Packages] 23 | MdePkg/MdePkg.dec 24 | MdeModulePkg/MdeModulePkg.dec 25 | ShellPkg/ShellPkg.dec 26 | Silicon/NVIDIA/NVIDIA.dec 27 | 28 | [LibraryClasses] 29 | BaseLib 30 | DebugLib 31 | UefiLib 32 | PrintLib 33 | HandleParsingLib 34 | 35 | [Protocols] 36 | gEfiPartitionInfoProtocolGuid 37 | gEfiBlockIoProtocolGuid 38 | gEfiDiskIoProtocolGuid 39 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/NvRngLib/NvRngLib.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // Null Instance of RNG (Random Number Generator) Library. 3 | // 4 | // SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | // 6 | // SPDX-License-Identifier: BSD-2-Clause-Patent 7 | // 8 | // **/ 9 | 10 | 11 | #string STR_MODULE_ABSTRACT #language en-US "NVIDIA's instance of RNG Library" 12 | 13 | #string STR_MODULE_DESCRIPTION #language en-US "This library instance should be used with modules that inherit an (indirect) dependency on the RngLib class, but never actually call RngLib APIs for consuming randomness." 14 | 15 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/NvgLib/NvgLib.inf: -------------------------------------------------------------------------------- 1 | #/** @file 2 | # 3 | # NVG Library 4 | # 5 | # Copyright (c) 2021-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | #**/ 10 | 11 | [Defines] 12 | INF_VERSION = 0x00010005 13 | BASE_NAME = NvgLib 14 | FILE_GUID = b40ae691-9a63-4bdd-9a9f-cb3fd17b2695 15 | MODULE_TYPE = BASE 16 | VERSION_STRING = 1.0 17 | LIBRARY_CLASS = NvgLib 18 | 19 | [Sources.common] 20 | NvgLib.c 21 | 22 | [Packages] 23 | Silicon/NVIDIA/NVIDIA.dec 24 | MdePkg/MdePkg.dec 25 | 26 | [LibraryClasses] 27 | DebugLib 28 | PcdLib 29 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/PlatformBootOrderLib/PlatformBootOrderNoIpmiLib.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | * 3 | * Provides empty versions of the IPMI functions to allow this library to work 4 | * without the IPMI libraries. 5 | * 6 | * SPDX-FileCopyrightText: Copyright (c) 2022-2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 7 | * 8 | * SPDX-License-Identifier: BSD-2-Clause-Patent 9 | * 10 | **/ 11 | 12 | #include 13 | #include 14 | 15 | VOID 16 | EFIAPI 17 | CheckIPMIForBootOrderUpdates ( 18 | VOID 19 | ) 20 | { 21 | } 22 | 23 | VOID 24 | EFIAPI 25 | RestoreBootOrder ( 26 | EFI_EVENT Event, 27 | VOID *Context 28 | ) 29 | { 30 | } 31 | 32 | VOID 33 | EFIAPI 34 | ProcessIPMIBootOrderUpdates ( 35 | VOID 36 | ) 37 | { 38 | } 39 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/PlatformHasConfigManagerLib/PlatformHasConfigManagerLib.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | Library that adds depex on ConfigurationManager 3 | 4 | SPDX-FileCopyrightText: Copyright (c) 2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | 6 | SPDX-License-Identifier: BSD-2-Clause-Patent 7 | **/ 8 | 9 | #include 10 | 11 | EFI_STATUS 12 | EFIAPI 13 | PlatformHasConfigManagerInitialize ( 14 | VOID 15 | ) 16 | { 17 | return EFI_SUCCESS; 18 | } 19 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/PlatformHasConfigManagerLib/PlatformHasConfigManagerLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Library that adds depex on ConfigurationManager 3 | # 4 | # SPDX-FileCopyrightText: Copyright (c) 2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | # 6 | # SPDX-License-Identifier: BSD-2-Clause-Patent 7 | ## 8 | 9 | [Defines] 10 | INF_VERSION = 1.25 11 | BASE_NAME = PlatformHasConfigManager 12 | FILE_GUID = 939182a1-42dc-4cb6-983f-d488e99887b2 13 | MODULE_TYPE = BASE 14 | VERSION_STRING = 1.0 15 | LIBRARY_CLASS = NULL 16 | CONSTRUCTOR = PlatformHasConfigManagerInitialize 17 | 18 | [Sources] 19 | PlatformHasConfigManagerLib.c 20 | 21 | [Packages] 22 | DynamicTablesPkg/DynamicTablesPkg.dec 23 | MdePkg/MdePkg.dec 24 | 25 | [Depex] 26 | gEdkiiConfigurationManagerProtocolGuid 27 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/PlatformIsPresiliconLib/PlatformIsPresiliconLib.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | A hook-in library for drivers. 3 | 4 | Plugging this library instance into a driver makes it conditional on running 5 | on a pre-silicon target 6 | 7 | Copyright (C) 2017, Red Hat, Inc. 8 | Copyright (c) 2023, NVIDIA CORPORATION. All rights reserved. 9 | 10 | SPDX-License-Identifier: BSD-2-Clause-Patent 11 | **/ 12 | 13 | #include 14 | 15 | RETURN_STATUS 16 | EFIAPI 17 | PlatformIsPresiliconInitialize ( 18 | VOID 19 | ) 20 | { 21 | // 22 | // Do nothing, just imbue driver with a protocol dependency on 23 | // gNVIDIAIsPresiliconDeviceGuid. 24 | // 25 | return RETURN_SUCCESS; 26 | } 27 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/PlatformIsSiliconLib/PlatformIsSiliconLib.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | A hook-in library for drivers. 3 | 4 | Plugging this library instance into a driver makes it conditional on running 5 | on a silicon target 6 | 7 | Copyright (C) 2017, Red Hat, Inc. 8 | Copyright (c) 2023, NVIDIA CORPORATION. All rights reserved. 9 | 10 | SPDX-License-Identifier: BSD-2-Clause-Patent 11 | **/ 12 | 13 | #include 14 | 15 | RETURN_STATUS 16 | EFIAPI 17 | PlatformIsSiliconInitialize ( 18 | VOID 19 | ) 20 | { 21 | // 22 | // Do nothing, just imbue driver with a protocol dependency on 23 | // gNVIDIAIsSiliconDeviceGuid. 24 | // 25 | return RETURN_SUCCESS; 26 | } 27 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/PlatformResourceLibNull/PlatformResourceLibNull.inf: -------------------------------------------------------------------------------- 1 | # 2 | # SPDX-FileCopyrightText: Copyright (c) 2018-2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 3 | # 4 | # SPDX-License-Identifier: BSD-2-Clause-Patent 5 | # 6 | 7 | [Defines] 8 | INF_VERSION = 0x00010005 9 | BASE_NAME = PlatformResourceLib 10 | FILE_GUID = 579926b9-d1e4-49eb-a485-c45123d475e5 11 | MODULE_TYPE = BASE 12 | VERSION_STRING = 1.0 13 | LIBRARY_CLASS = PlatformResourceLib 14 | 15 | [Packages] 16 | MdePkg/MdePkg.dec 17 | Silicon/NVIDIA/NVIDIA.dec 18 | 19 | [Sources.common] 20 | PlatformResourceLibNull.c 21 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/PldmBaseLib/PldmBaseLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # PLDM base protocol and helper functions 4 | # 5 | # Copyright (c) 2022, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | ## 10 | 11 | [Defines] 12 | INF_VERSION = 1.25 13 | BASE_NAME = PldmBaseLib 14 | FILE_GUID = 6ac4f865-7260-4a37-9bdc-3bddee77de99 15 | MODULE_TYPE = BASE 16 | VERSION_STRING = 1.0 17 | LIBRARY_CLASS = PldmBaseLib 18 | 19 | [Sources.common] 20 | PldmBaseLib.c 21 | 22 | [Packages] 23 | MdePkg/MdePkg.dec 24 | Silicon/NVIDIA/NVIDIA.dec 25 | 26 | [LibraryClasses] 27 | DebugLib 28 | MctpBaseLib 29 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/PldmFwUpdateLib/PldmFwUpdateLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # PLDM FW update library 4 | # 5 | # Copyright (c) 2022-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | ## 10 | 11 | [Defines] 12 | INF_VERSION = 1.25 13 | BASE_NAME = PldmFwUpdateLib 14 | FILE_GUID = fade19c4-4b22-4880-971d-d08a090516d8 15 | MODULE_TYPE = BASE 16 | VERSION_STRING = 1.0 17 | LIBRARY_CLASS = PldmFwUpdateLib 18 | 19 | [Sources.common] 20 | PldmFwUpdateLib.c 21 | 22 | [Packages] 23 | MdePkg/MdePkg.dec 24 | Silicon/NVIDIA/NVIDIA.dec 25 | 26 | [LibraryClasses] 27 | BaseMemoryLib 28 | DebugLib 29 | PldmBaseLib 30 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/PldmFwUpdatePkgLib/PldmFwUpdatePkgLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # PLDM FW update package library 4 | # 5 | # Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | ## 10 | 11 | [Defines] 12 | INF_VERSION = 1.25 13 | BASE_NAME = PldmFwUpdatePkgLib 14 | FILE_GUID = f4f74d26-e173-4d29-8f6a-091abf5ba68b 15 | MODULE_TYPE = BASE 16 | VERSION_STRING = 1.0 17 | LIBRARY_CLASS = PldmFwUpdatePkgLib 18 | 19 | [Sources.common] 20 | PldmFwUpdatePkgLib.c 21 | 22 | [Packages] 23 | MdePkg/MdePkg.dec 24 | Silicon/NVIDIA/NVIDIA.dec 25 | 26 | [LibraryClasses] 27 | BaseLib 28 | BaseMemoryLib 29 | DebugLib 30 | PldmFwUpdateLib 31 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/PldmFwUpdateTaskLib/PldmFwUpdateTaskLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # PLDM FW update task lib 4 | # 5 | # Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | ## 10 | 11 | [Defines] 12 | INF_VERSION = 1.25 13 | BASE_NAME = PldmFwUpdateTaskLib 14 | FILE_GUID = ca1082ad-d38a-4f73-a023-03675713e4bd 15 | MODULE_TYPE = DXE_DRIVER 16 | VERSION_STRING = 1.0 17 | LIBRARY_CLASS = PldmFwUpdateTaskLib 18 | 19 | [Sources.common] 20 | PldmFwUpdateTaskLib.c 21 | 22 | [Packages] 23 | MdePkg/MdePkg.dec 24 | Silicon/NVIDIA/NVIDIA.dec 25 | 26 | [LibraryClasses] 27 | DebugLib 28 | BaseMemoryLib 29 | MctpBaseLib 30 | PldmBaseLib 31 | PldmFwUpdateLib 32 | PldmFwUpdatePkgLib 33 | MemoryAllocationLib 34 | TimerLib 35 | 36 | [Protocols] 37 | gNVIDIAMctpProtocolGuid 38 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/PrePiDefaultExceptionHandlerLib/PrePiDefaultExceptionHandlerUefi.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Copyright (c) 2008 - 2009, Apple Inc. All rights reserved.
4 | Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | 6 | SPDX-License-Identifier: BSD-2-Clause-Patent 7 | 8 | **/ 9 | 10 | #include 11 | #include 12 | 13 | /** 14 | Return the base address of the PrePi image. 15 | 16 | @param FaultAddress Ignored. 17 | @param ImageBase PcdFvBaseAddress. 18 | **/ 19 | VOID 20 | GetImageBase ( 21 | OUT UINTN *ImageBase 22 | ) 23 | { 24 | *ImageBase = PatchPcdGet64 (PcdFvBaseAddress); 25 | } 26 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/QspiControllerLib/QspiControllerLib.inf: -------------------------------------------------------------------------------- 1 | #/** @file 2 | # 3 | # QSPI Controller library 4 | # 5 | # Copyright (c) 2019, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | #**/ 10 | 11 | [Defines] 12 | INF_VERSION = 0x00010005 13 | BASE_NAME = QspiControllerLib 14 | FILE_GUID = 9f338a4c-5624-489e-8450-b23bacdee411 15 | MODULE_TYPE = BASE 16 | VERSION_STRING = 1.0 17 | LIBRARY_CLASS = QspiControllerLib 18 | 19 | [Sources.common] 20 | QspiControllerLib.c 21 | 22 | [Packages] 23 | MdePkg/MdePkg.dec 24 | Silicon/NVIDIA/NVIDIA.dec 25 | 26 | [LibraryClasses] 27 | BaseMemoryLib 28 | IoLib 29 | DebugLib 30 | TimerLib 31 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/RedfishPlatformHostInterfaceOemLib/UnitTest/RedfishHostInterfaceUnitTest.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 4 | 5 | SPDX-License-Identifier: BSD-2-Clause-Patent 6 | **/ 7 | #include 8 | #include 9 | #include 10 | #include 11 | #include 12 | #include 13 | #include 14 | #include 15 | #include 16 | #include 17 | #include 18 | #include 19 | #include 20 | #include 21 | #include "../RedfishPlatformHostInterfaceIpmi.h" 22 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/SeRngLib/SeRngLib.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // Instance of RNG (Random Number Generator) Library. 3 | // 4 | // BaseRng Library that uses SE AES operations to provide 5 | // high-quality random numbers. 6 | // 7 | // Copyright (c) 2019, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 8 | // Copyright (c) 2015, Intel Corporation. All rights reserved.
9 | // 10 | // SPDX-License-Identifier: BSD-2-Clause-Patent 11 | // 12 | // **/ 13 | 14 | 15 | #string STR_MODULE_ABSTRACT #language en-US "Instance of RNG Library" 16 | 17 | #string STR_MODULE_DESCRIPTION #language en-US "BaseRng Library that uses SE AES operations to provide high-quality random numbers" 18 | 19 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/SmmuLib/SmmuLib.inf: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | SPDX-FileCopyrightText: Copyright (c) 2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 4 | 5 | SPDX-License-Identifier: BSD-2-Clause-Patent 6 | 7 | **/ 8 | 9 | [Defines] 10 | INF_VERSION = 0x00010005 11 | BASE_NAME = SmmuLib 12 | FILE_GUID = 80d62086-8cc2-4ec8-aa53-3003b96ab4f4 13 | MODULE_TYPE = BASE 14 | VERSION_STRING = 1.0 15 | LIBRARY_CLASS = SmmuLib 16 | 17 | [Sources.common] 18 | SmmuLib.c 19 | 20 | [Packages] 21 | MdePkg/MdePkg.dec 22 | MdeModulePkg/MdeModulePkg.dec 23 | Silicon/NVIDIA/NVIDIA.dec 24 | 25 | 26 | [LibraryClasses] 27 | MemoryAllocationLib 28 | BaseLib 29 | UefiBootServicesTableLib 30 | DebugLib 31 | 32 | [Protocols] 33 | gNVIDIAPciRootBridgeConfigurationIoProtocolGuid ## CONSUMES 34 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/StatusRegLib/StatusRegLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Status register library 4 | # 5 | # SPDX-FileCopyrightText: Copyright (c) 2023 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | ## 10 | 11 | [Defines] 12 | INF_VERSION = 1.25 13 | BASE_NAME = StatusRegLib 14 | FILE_GUID = 6ec302b3-aea5-453f-b275-69b0150ab469 15 | MODULE_TYPE = DXE_DRIVER 16 | VERSION_STRING = 1.0 17 | LIBRARY_CLASS = StatusRegLib 18 | 19 | [Sources.common] 20 | StatusRegLib.c 21 | 22 | [Packages] 23 | MdePkg/MdePkg.dec 24 | Silicon/NVIDIA/NVIDIA.dec 25 | 26 | [LibraryClasses] 27 | DebugLib 28 | IoLib 29 | TegraPlatformInfoLib 30 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/StatusRegLibNull/StatusRegLibNull.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Null Status register library 4 | 5 | SPDX-FileCopyrightText: Copyright (c) 2023-2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | 7 | SPDX-License-Identifier: BSD-2-Clause-Patent 8 | 9 | **/ 10 | 11 | #include 12 | #include 13 | #include 14 | 15 | VOID 16 | EFIAPI 17 | StatusRegSetPhase ( 18 | UINT32 Phase, 19 | UINT32 Bits 20 | ) 21 | { 22 | return; 23 | } 24 | 25 | VOID 26 | EFIAPI 27 | StatusRegSetBits ( 28 | UINT32 Bits 29 | ) 30 | { 31 | return; 32 | } 33 | 34 | VOID 35 | EFIAPI 36 | StatusRegClearBits ( 37 | UINT32 Bits 38 | ) 39 | { 40 | return; 41 | } 42 | 43 | UINT32 44 | EFIAPI 45 | StatusRegGet ( 46 | VOID 47 | ) 48 | { 49 | return 0; 50 | } 51 | 52 | VOID 53 | EFIAPI 54 | StatusRegReset ( 55 | VOID 56 | ) 57 | { 58 | return; 59 | } 60 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/StatusRegLibNull/StatusRegLibNull.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Null Status register library 4 | # 5 | # SPDX-FileCopyrightText: Copyright (c) 2023-2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | ## 10 | 11 | [Defines] 12 | INF_VERSION = 1.25 13 | BASE_NAME = StatusRegLib 14 | FILE_GUID = f0f684fd-a35d-4844-8b08-45d9c21849c1 15 | MODULE_TYPE = DXE_DRIVER 16 | VERSION_STRING = 1.0 17 | LIBRARY_CLASS = StatusRegLib 18 | 19 | [Sources.common] 20 | StatusRegLibNull.c 21 | 22 | [Packages] 23 | MdePkg/MdePkg.dec 24 | Silicon/NVIDIA/NVIDIA.dec 25 | 26 | [LibraryClasses] 27 | DebugLib 28 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/SystemContextLib/SystemContextLib.inf: -------------------------------------------------------------------------------- 1 | #/** @file 2 | # 3 | # SPDX-FileCopyrightText: Copyright (c) 2023 NVIDIA CORPORATION. All rights reserved. 4 | # 5 | # SPDX-License-Identifier: BSD-2-Clause-Patent 6 | # 7 | #**/ 8 | 9 | [Defines] 10 | INF_VERSION = 0x0001001A 11 | BASE_NAME = SystemContextLib 12 | FILE_GUID = 61c79fb5-bafd-4028-9e6e-5d58f4813f53 13 | MODULE_TYPE = BASE 14 | VERSION_STRING = 1.0 15 | LIBRARY_CLASS = SystemContextLib 16 | 17 | 18 | [Sources.AARCH64] 19 | AArch64/SystemContextLib.S 20 | 21 | [Packages] 22 | ArmPkg/ArmPkg.dec 23 | MdePkg/MdePkg.dec 24 | Silicon/NVIDIA/NVIDIA.dec 25 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/SystemResourceLib/SystemResourceLib.inf: -------------------------------------------------------------------------------- 1 | # 2 | # Copyright (c) 2018-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 3 | # 4 | # SPDX-License-Identifier: BSD-2-Clause-Patent 5 | # 6 | 7 | [Defines] 8 | INF_VERSION = 0x00010005 9 | BASE_NAME = SystemResourceLib 10 | FILE_GUID = 8a59b8c9-9481-48c4-99cd-38d885a3a701 11 | MODULE_TYPE = BASE 12 | VERSION_STRING = 1.0 13 | LIBRARY_CLASS = SystemResourceLib 14 | 15 | [Packages] 16 | MdePkg/MdePkg.dec 17 | EmbeddedPkg/EmbeddedPkg.dec 18 | Silicon/NVIDIA/NVIDIA.dec 19 | 20 | [LibraryClasses] 21 | HobLib 22 | DebugLib 23 | DramCarveoutLib 24 | FdtLib 25 | PlatformResourceLib 26 | TegraPlatformInfoLib 27 | TegraDeviceTreeOverlayLib 28 | 29 | [Guids] 30 | gFdtHobGuid 31 | gNVIDIAPlatformResourceDataGuid 32 | 33 | [Sources.common] 34 | SystemResourceLib.c 35 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/TegraCombinedSerialPort/TegraStandaloneMmCombinedSerialPortLib.inf: -------------------------------------------------------------------------------- 1 | #/** @file 2 | # 3 | # Component description file for PL011SerialPortLib module 4 | # 5 | # Copyright (c) 2022, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | #**/ 10 | 11 | [Defines] 12 | INF_VERSION = 0x00010019 13 | BASE_NAME = TegraCombinedSerialPortLib 14 | FILE_GUID = f7ed5487-2411-49f1-883a-b8cec26a8919 15 | MODULE_TYPE = BASE 16 | VERSION_STRING = 1.0 17 | LIBRARY_CLASS = TegraCombinedSerialPortLib 18 | 19 | [Sources.common] 20 | TegraStandaloneMmCombinedSerialPortLib.c 21 | 22 | [LibraryClasses] 23 | BaseLib 24 | BaseMemoryLib 25 | PcdLib 26 | IoLib 27 | 28 | [Packages] 29 | EmbeddedPkg/EmbeddedPkg.dec 30 | MdePkg/MdePkg.dec 31 | MdeModulePkg/MdeModulePkg.dec 32 | Silicon/NVIDIA/NVIDIA.dec 33 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/TegraCpuFreqHelperLib/TegraCpuFreqHelper.S: -------------------------------------------------------------------------------- 1 | /** @file 2 | This module is a helper function to get the CPU Freq 3 | 4 | Copyright (c) 2021, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | 6 | SPDX-License-Identifier: BSD-2-Clause-Patent 7 | 8 | **/ 9 | 10 | #include 11 | #include 12 | #include 13 | #include 14 | 15 | ASM_FUNC(NvReadPmCntr) 16 | mrs x0, s3_0_c15_c0_5 17 | ret 18 | 19 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/TegraCpuFreqHelperLib/TegraCpuFreqHelper.inf: -------------------------------------------------------------------------------- 1 | #/** @file 2 | # 3 | # Component description file for Tegra CPU frequency computation module 4 | # 5 | # Copyright (c) 2022, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | #**/ 10 | 11 | [Defines] 12 | INF_VERSION = 0x00010019 13 | BASE_NAME = TegraCpuFreqHelperLib 14 | FILE_GUID = 682139f6-4287-413e-a6db-d140331bfa0a 15 | MODULE_TYPE = BASE 16 | VERSION_STRING = 1.0 17 | LIBRARY_CLASS = TegraCpuFreqHelperLib 18 | 19 | [Sources.common] 20 | TegraCpuFreqHelper.S 21 | 22 | [LibraryClasses] 23 | 24 | [Packages] 25 | ArmPkg/ArmPkg.dec 26 | MdePkg/MdePkg.dec 27 | MdeModulePkg/MdeModulePkg.dec 28 | Silicon/NVIDIA/NVIDIA.dec 29 | 30 | [FixedPcd] 31 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/TegraDeviceTreeOverlayLib/TegraDeviceTreeOverlayLibCommon.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | * 3 | * Copyright (c) 2021-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 4 | * 5 | * SPDX-License-Identifier: BSD-2-Clause-Patent 6 | * 7 | **/ 8 | 9 | #ifndef __TEGRA_DEVICE_TREE_OVERLAY_LIB_COMMON_H__ 10 | #define __TEGRA_DEVICE_TREE_OVERLAY_LIB_COMMON_H__ 11 | 12 | #include 13 | #include 14 | 15 | typedef struct { 16 | UINTN FuseBaseAddr; 17 | TEGRA_FUSE_INFO *FuseList; 18 | UINTN FuseCount; 19 | EEPROM_PART_NUMBER *ProductIds; 20 | UINTN IdCount; 21 | } OVERLAY_BOARD_INFO; 22 | 23 | EFI_STATUS 24 | ApplyTegraDeviceTreeOverlayCommon ( 25 | VOID *FdtBase, 26 | VOID *FdtOverlay, 27 | CHAR8 *SWModule, 28 | OVERLAY_BOARD_INFO *BoardInfo 29 | ); 30 | 31 | #endif //__TEGRA_DEVICE_TREE_OVERLAY_LIB_COMMON_H__ 32 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/TegraUsbNullLib/TegraUsbNullLib.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Tegra USB Null Library 4 | 5 | SPDX-FileCopyrightText: Copyright (c) 2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | 7 | SPDX-License-Identifier: BSD-2-Clause-Patent 8 | 9 | **/ 10 | 11 | #include 12 | 13 | EFI_STATUS 14 | EFIAPI 15 | TegraUsbNullLibConstructor ( 16 | VOID 17 | ) 18 | { 19 | return EFI_SUCCESS; 20 | } 21 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/TegraUsbNullLib/TegraUsbNullLib.inf: -------------------------------------------------------------------------------- 1 | #/** @file 2 | # 3 | # Tegra USB Null Library 4 | # 5 | # SPDX-FileCopyrightText: Copyright (c) 2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | #**/ 10 | 11 | [Defines] 12 | INF_VERSION = 0x00010005 13 | BASE_NAME = TegraUsbNullLib 14 | FILE_GUID = 26dc3638-1e14-4bdc-9cc5-2805f9be8f27 15 | MODULE_TYPE = BASE 16 | VERSION_STRING = 1.0 17 | LIBRARY_CLASS = NULL|UEFI_DRIVER 18 | CONSTRUCTOR = TegraUsbNullLibConstructor 19 | 20 | [Sources] 21 | TegraUsbNullLib.c 22 | 23 | [Packages] 24 | MdePkg/MdePkg.dec 25 | EmbeddedPkg/EmbeddedPkg.dec 26 | 27 | [Depex] 28 | gUsbDeviceProtocolGuid 29 | 30 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/TegraUtcSerialPortLib/TegraUtcSerialPortLib.inf: -------------------------------------------------------------------------------- 1 | #/** @file 2 | # 3 | # SerialPortLib instance for UTC. 4 | # 5 | # SPDX-FileCopyrightText: Copyright (c) 2023-2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | #**/ 10 | 11 | [Defines] 12 | INF_VERSION = 0x00010005 13 | BASE_NAME = TegraUtcSerialPortLib 14 | FILE_GUID = c0586dcc-9cce-4176-8998-b6fa519ceb44 15 | MODULE_TYPE = BASE 16 | VERSION_STRING = 1.1 17 | LIBRARY_CLASS = TegraUtcSerialPortLib 18 | 19 | [Sources.common] 20 | TegraUtcSerialPortLib.c 21 | 22 | [LibraryClasses] 23 | PcdLib 24 | IoLib 25 | 26 | [Packages] 27 | EmbeddedPkg/EmbeddedPkg.dec 28 | MdePkg/MdePkg.dec 29 | MdeModulePkg/MdeModulePkg.dec 30 | Silicon/NVIDIA/NVIDIA.dec 31 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/UiMenuStartupLib/UiMenuStartupLib.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | UI menu startup lib 4 | 5 | Copyright (c) 2023 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | 7 | SPDX-License-Identifier: BSD-2-Clause-Patent 8 | 9 | **/ 10 | 11 | #include 12 | #include 13 | #include 14 | 15 | EFI_STATUS 16 | EFIAPI 17 | UiMenuStartupLibConstructor ( 18 | IN EFI_HANDLE ImageHandle, 19 | IN EFI_SYSTEM_TABLE *SystemTable 20 | ) 21 | { 22 | EfiSignalEventReadyToBoot (); 23 | 24 | return EFI_SUCCESS; 25 | } 26 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/UiMenuStartupLib/UiMenuStartupLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # UI menu startup lib 4 | # 5 | # Copyright (c) 2023 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | ## 10 | 11 | [Defines] 12 | INF_VERSION = 1.25 13 | BASE_NAME = UiMenuStartupLib 14 | FILE_GUID = a6378dce-b641-4771-b1d7-beaa4432259a 15 | MODULE_TYPE = DXE_DRIVER 16 | VERSION_STRING = 1.0 17 | LIBRARY_CLASS = NULL|DXE_DRIVER UEFI_APPLICATION 18 | CONSTRUCTOR = UiMenuStartupLibConstructor 19 | 20 | [Sources.common] 21 | UiMenuStartupLib.c 22 | 23 | [Packages] 24 | MdePkg/MdePkg.dec 25 | Silicon/NVIDIA/NVIDIA.dec 26 | 27 | [LibraryClasses] 28 | DebugLib 29 | UefiLib 30 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/VerPartitionLib/VerPartitionLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # VerPartitionLib - VER partition library 4 | # 5 | # Copyright (c) 2022 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | ## 10 | 11 | [Defines] 12 | INF_VERSION = 0x00010005 13 | BASE_NAME = VerPartitionLib 14 | FILE_GUID = db1e9b21-9a9c-4519-8961-8a274825614d 15 | MODULE_TYPE = BASE 16 | VERSION_STRING = 1.0 17 | LIBRARY_CLASS = VerPartitionLib 18 | 19 | [Sources.common] 20 | VerPartitionLib.c 21 | 22 | [Packages] 23 | MdePkg/MdePkg.dec 24 | Silicon/NVIDIA/NVIDIA.dec 25 | 26 | [LibraryClasses] 27 | BaseLib 28 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/WildcardStringLib/UnitTest/WildcardStringLibGoogleTest.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Unit test suite for the WildcardStringLib using Google Test 3 | # 4 | # SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | # SPDX-License-Identifier: BSD-2-Clause-Patent 6 | ## 7 | 8 | [Defines] 9 | INF_VERSION = 0x00010017 10 | BASE_NAME = WildcardStringLibGoogleTest 11 | FILE_GUID = 21e1ca95-4ae4-4eec-9d91-18fd19f340ee 12 | VERSION_STRING = 1.0 13 | MODULE_TYPE = HOST_APPLICATION 14 | 15 | [Sources] 16 | WildcardStringLibGoogleTest.cpp 17 | 18 | [Packages] 19 | MdePkg/MdePkg.dec 20 | UnitTestFrameworkPkg/UnitTestFrameworkPkg.dec 21 | Silicon/NVIDIA/NVIDIA.dec 22 | 23 | [LibraryClasses] 24 | GoogleTestLib 25 | WildcardStringLib 26 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Library/WildcardStringLib/WildcardStringLib.inf: -------------------------------------------------------------------------------- 1 | /** @file 2 | * 3 | * SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 4 | * 5 | * SPDX-License-Identifier: BSD-2-Clause-Patent 6 | * 7 | **/ 8 | 9 | [Defines] 10 | INF_VERSION = 0x00010019 11 | BASE_NAME = WildcardStringLib 12 | FILE_GUID = 2b3c32bb-1302-4980-a6f8-910715ac79f3 13 | MODULE_TYPE = BASE 14 | VERSION_STRING = 1.0 15 | LIBRARY_CLASS = WildcardStringLib 16 | 17 | [Sources] 18 | WildcardStringLib.c 19 | 20 | [Packages] 21 | MdePkg/MdePkg.dec 22 | Silicon/NVIDIA/NVIDIA.dec 23 | 24 | [LibraryClasses] 25 | BaseLib 26 | BaseMemoryLib 27 | MemoryAllocationLib 28 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/PrePi/Scripts/PrePi-PIE.lds: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | Copyright (c) 2021, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 4 | Copyright (c) 2015, Linaro Ltd. All rights reserved.
5 | 6 | SPDX-License-Identifier: BSD-2-Clause-Patent 7 | 8 | **/ 9 | 10 | SECTIONS 11 | { 12 | PROVIDE(__reloc_base = .); 13 | 14 | . = PECOFF_HEADER_SIZE; 15 | .text : ALIGN(CONSTANT(COMMONPAGESIZE)) { 16 | *(.text .text*) 17 | *(.got .got*) 18 | *(.rodata .rodata*) 19 | *(.data .data*) 20 | *(.bss .bss*) 21 | 22 | . = ALIGN(0x20); 23 | PROVIDE(__reloc_start = .); 24 | *(.rel .rel.*) 25 | *(.rela .rela.*) 26 | PROVIDE(__reloc_end = .); 27 | } 28 | 29 | .note (INFO) : { *(.note.gnu.build-id) } 30 | 31 | /DISCARD/ : { 32 | *(.note.GNU-stack) 33 | *(.gnu.hash) 34 | *(.gnu_debuglink) 35 | *(.interp) 36 | *(.dynamic) 37 | *(.dynsym) 38 | *(.dynstr) 39 | *(.hash) 40 | *(.comment) 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Server/TH500/Drivers/ApeiDxe/AArch64/FfaSmc.S: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (c) 2012-2014, ARM Limited. All rights reserved. 3 | // Copyright (c) 2021-2022, NVIDIA CORPORATION. All rights reserved. 4 | // 5 | // SPDX-License-Identifier: BSD-2-Clause-Patent 6 | // 7 | // 8 | 9 | #include 10 | 11 | ASM_FUNC(CallFfaSmc) 12 | // Push x0 on the stack - The stack must always be quad-word aligned 13 | str x0, [sp, #-16]! 14 | 15 | // Load the SMC arguments values into the appropriate registers 16 | ldp x6, x7, [x0, #48] 17 | ldp x4, x5, [x0, #32] 18 | ldp x2, x3, [x0, #16] 19 | ldp x0, x1, [x0, #0] 20 | 21 | smc #0 22 | 23 | // Pop the ARM_SMC_ARGS structure address from the stack into x9 24 | ldr x9, [sp], #16 25 | 26 | // Store the SMC returned values into the ARM_SMC_ARGS structure. 27 | stp x6, x7, [x9, #48] 28 | stp x4, x5, [x9, #32] 29 | stp x2, x3, [x9, #16] 30 | stp x0, x1, [x9, #0] 31 | 32 | mov x0, x9 33 | 34 | ret 35 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Server/TH500/Drivers/OemPartitionDxeMm/OemPartitionDxe.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Header file for Oem partition Dxe Sample driver. 3 | 4 | Copyright (c) 2019, Intel Corporation. All rights reserved.
5 | SPDX-FileCopyrightText: Copyright (c) 2023 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | 7 | SPDX-License-Identifier: BSD-2-Clause-Patent 8 | 9 | **/ 10 | 11 | #ifndef _OEM_PARTITION_DXE_H_ 12 | #define _OEM_PARTITION_DXE_H_ 13 | 14 | #include 15 | #include 16 | #include 17 | #include 18 | #include 19 | #include 20 | #include 21 | #include 22 | 23 | #endif 24 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Server/TH500/Drivers/TH500GpuDxe/core/blackwell/GPUSupportMemSize.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | NVIDIA GPU support structures and prototypes. 4 | 5 | SPDX-FileCopyrightText: Copyright (c) 2022-2024, NVIDIA CORPORATION. All rights reserved. 6 | 7 | SPDX-License-Identifier: BSD-2-Clause-Patent 8 | **/ 9 | 10 | /// 11 | /// GPUSupportMemSize.h: GPU Memory Size Support routine. 12 | /// 13 | 14 | #ifndef __BLACKWELL_GPU_SUPPORT_MEM_SIZE_H__ 15 | #define __BLACKWELL_GPU_SUPPORT_MEM_SIZE_H__ 16 | 17 | #include 18 | 19 | /** Returns the Memory Size for the GPU 20 | 21 | @param[in] ControllerHandle - Controller Handle to obtain the GPU Memory Information from 22 | 23 | @retval UINT64 containing the GPU MemSize 24 | */ 25 | UINT64 26 | EFIAPI 27 | GetGPUMemSizeSupport ( 28 | IN EFI_HANDLE ControllerHandle 29 | ); 30 | 31 | #endif // __BLACKWELL_GPU_SUPPORT_MEM_SIZE_H__ 32 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Server/TH500/Drivers/TH500GpuDxe/core/hopper/GPUSupportMemSizeLegacy.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | 3 | NVIDIA GPU support structures and prototypes. 4 | 5 | SPDX-FileCopyrightText: Copyright (c) 2022-2024, NVIDIA CORPORATION. All rights reserved. 6 | 7 | SPDX-License-Identifier: BSD-2-Clause-Patent 8 | **/ 9 | 10 | /// 11 | /// GPUSupportMemSizeLegacy.h: GPU Memory Size Support routine. 12 | /// 13 | 14 | #ifndef __HOPPER_GPU_SUPPORT_MEM_SIZE_LEGACY_H__ 15 | #define __HOPPER_GPU_SUPPORT_MEM_SIZE_LEGACY_H__ 16 | 17 | #include 18 | 19 | /** Returns the Memory Size for the GPU 20 | 21 | @param[in] ControllerHandle - Controller Handle to obtain the GPU Memory Information from 22 | 23 | @retval UINT64 containing the GPU MemSize 24 | */ 25 | UINT64 26 | EFIAPI 27 | GetGPUMemSizeSupportLegacy ( 28 | IN EFI_HANDLE ControllerHandle 29 | ); 30 | 31 | #endif // __HOPPER_GPU_SUPPORT_MEM_SIZE_LEGACY_H__ 32 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/StandaloneMm/Manifest/Manifest.inf: -------------------------------------------------------------------------------- 1 | #/** @file 2 | # 3 | # Copyright (c) 2022-2023, NVIDIA CORPORATION. All rights reserved. 4 | # SPDX-License-Identifier: BSD-2-Clause-Patent 5 | # 6 | #**/ 7 | 8 | [Defines] 9 | INF_VERSION = 0x0001001A 10 | BASE_NAME = Manifest 11 | FILE_GUID = 61fe79b1-abc4-496d-aa34-fa7b277eeac7 12 | MODULE_TYPE = USER_DEFINED 13 | VERSION_STRING = 1.0 14 | 15 | [Sources] 16 | StandaloneMm.dts 17 | StmmDeviceRegions.dtsi 18 | 19 | [Packages] 20 | MdePkg/MdePkg.dec 21 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/StandaloneMm/Manifest/ManifestStmmJetson.inf: -------------------------------------------------------------------------------- 1 | #/** @file 2 | # 3 | # Partition Manifest file for StandaloneMmJetson. 4 | # SPDX-FileCopyrightText: Copyright (c) 2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | # SPDX-License-Identifier: BSD-2-Clause-Patent 6 | # 7 | #**/ 8 | 9 | [Defines] 10 | INF_VERSION = 0x0001001A 11 | BASE_NAME = ManifestJetson 12 | FILE_GUID = f5190cb2-c4f5-4db9-8556-4bbc28b06907 13 | MODULE_TYPE = USER_DEFINED 14 | VERSION_STRING = 1.0 15 | 16 | [Sources] 17 | StandaloneMmJetson.dts 18 | StmmJetsonDeviceRegions.dtsi 19 | 20 | [Packages] 21 | MdePkg/MdePkg.dec 22 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Tegra/DeviceTree/AcpiBoot.dts: -------------------------------------------------------------------------------- 1 | /** @file 2 | * 3 | * Copyright (c) 2022, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 4 | * 5 | * SPDX-License-Identifier: BSD-2-Clause-Patent 6 | * 7 | **/ 8 | 9 | /dts-v1/; 10 | /plugin/; 11 | 12 | / { 13 | overlay-name = "UEFI default to ACPI"; 14 | 15 | fragment@0 { 16 | target-path = "/"; 17 | board_config { 18 | sw-modules = "uefi"; 19 | }; 20 | 21 | __overlay__ { 22 | firmware { 23 | uefi { 24 | variables { 25 | gDtPlatformFormSetGuid { 26 | DtAcpiPref { 27 | data = [01 00 00 00]; 28 | non-volatile; 29 | }; 30 | }; 31 | }; 32 | }; 33 | }; 34 | }; 35 | }; 36 | }; 37 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Tegra/DeviceTree/AndroidConfiguration.dts: -------------------------------------------------------------------------------- 1 | /** @file 2 | * 3 | * SPDX-FileCopyrightText: Copyright (c) 2022-2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 4 | * 5 | * SPDX-License-Identifier: BSD-2-Clause-Patent 6 | * 7 | **/ 8 | 9 | /dts-v1/; 10 | /plugin/; 11 | 12 | / { 13 | overlay-name = "Android Configuration Settings"; 14 | 15 | fragment@0 { 16 | target-path = "/"; 17 | board_config { 18 | sw-modules = "uefi"; 19 | }; 20 | 21 | __overlay__ { 22 | firmware { 23 | uefi { 24 | variables { 25 | gNVIDIAPublicVariableGuid { 26 | QuickBootEnabled { 27 | data = [00]; 28 | non-volatile; 29 | }; 30 | NewDeviceHierarchy { 31 | data = [01]; 32 | non-volatile; 33 | }; 34 | }; 35 | 36 | gNVIDIATokenSpaceGuid { 37 | DefaultBootPriority { 38 | data = "boot.img"; 39 | locked; 40 | }; 41 | }; 42 | }; 43 | }; 44 | }; 45 | }; 46 | }; 47 | }; 48 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Tegra/DeviceTree/BootOrderEmmc.dts: -------------------------------------------------------------------------------- 1 | /** @file 2 | * 3 | * Copyright (c) 2022, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 4 | * 5 | * SPDX-License-Identifier: BSD-2-Clause-Patent 6 | * 7 | **/ 8 | 9 | /dts-v1/; 10 | /plugin/; 11 | 12 | / { 13 | overlay-name = "UEFI Boot order emmc default"; 14 | 15 | fragment@0 { 16 | target-path = "/"; 17 | board_config { 18 | sw-modules = "uefi"; 19 | }; 20 | 21 | __overlay__ { 22 | firmware { 23 | uefi { 24 | variables { 25 | gNVIDIATokenSpaceGuid { 26 | DefaultBootPriority { 27 | data = "emmc"; 28 | locked; 29 | }; 30 | }; 31 | }; 32 | }; 33 | }; 34 | }; 35 | }; 36 | }; 37 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Tegra/DeviceTree/BootOrderHttp.dts: -------------------------------------------------------------------------------- 1 | /** @file 2 | * 3 | * Copyright (c) 2022, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 4 | * 5 | * SPDX-License-Identifier: BSD-2-Clause-Patent 6 | * 7 | **/ 8 | 9 | /dts-v1/; 10 | /plugin/; 11 | 12 | / { 13 | overlay-name = "UEFI Boot order httpv4 default"; 14 | 15 | fragment@0 { 16 | target-path = "/"; 17 | board_config { 18 | sw-modules = "uefi"; 19 | }; 20 | 21 | __overlay__ { 22 | firmware { 23 | uefi { 24 | variables { 25 | gNVIDIATokenSpaceGuid { 26 | DefaultBootPriority { 27 | data = "httpv4"; 28 | locked; 29 | }; 30 | }; 31 | }; 32 | }; 33 | }; 34 | }; 35 | }; 36 | }; 37 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Tegra/DeviceTree/BootOrderNvme.dts: -------------------------------------------------------------------------------- 1 | /** @file 2 | * 3 | * Copyright (c) 2022, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 4 | * 5 | * SPDX-License-Identifier: BSD-2-Clause-Patent 6 | * 7 | **/ 8 | 9 | /dts-v1/; 10 | /plugin/; 11 | 12 | / { 13 | overlay-name = "UEFI Boot order nvme default"; 14 | 15 | fragment@0 { 16 | target-path = "/"; 17 | board_config { 18 | sw-modules = "uefi"; 19 | }; 20 | 21 | __overlay__ { 22 | firmware { 23 | uefi { 24 | variables { 25 | gNVIDIATokenSpaceGuid { 26 | DefaultBootPriority { 27 | data = "nvme"; 28 | locked; 29 | }; 30 | }; 31 | }; 32 | }; 33 | }; 34 | }; 35 | }; 36 | }; 37 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Tegra/DeviceTree/BootOrderPxe.dts: -------------------------------------------------------------------------------- 1 | /** @file 2 | * 3 | * Copyright (c) 2022, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 4 | * 5 | * SPDX-License-Identifier: BSD-2-Clause-Patent 6 | * 7 | **/ 8 | 9 | /dts-v1/; 10 | /plugin/; 11 | 12 | / { 13 | overlay-name = "UEFI Boot order pxe default"; 14 | 15 | fragment@0 { 16 | target-path = "/"; 17 | board_config { 18 | sw-modules = "uefi"; 19 | }; 20 | 21 | __overlay__ { 22 | firmware { 23 | uefi { 24 | variables { 25 | gNVIDIATokenSpaceGuid { 26 | DefaultBootPriority { 27 | data = "pxev4"; 28 | locked; 29 | }; 30 | }; 31 | }; 32 | }; 33 | }; 34 | }; 35 | }; 36 | }; 37 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Tegra/DeviceTree/BootOrderSD.dts: -------------------------------------------------------------------------------- 1 | /** @file 2 | UEFI Boot Order overlay for using sd card as default boot device. 3 | 4 | SPDX-FileCopyrightText: Copyright (c) 2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | SPDX-License-Identifier: BSD-2-Clause-Patent 6 | **/ 7 | 8 | /dts-v1/; 9 | /plugin/; 10 | 11 | / { 12 | overlay-name = "UEFI Boot order sd default"; 13 | 14 | fragment@0 { 15 | target-path = "/"; 16 | board_config { 17 | sw-modules = "uefi"; 18 | }; 19 | 20 | __overlay__ { 21 | firmware { 22 | uefi { 23 | variables { 24 | gNVIDIATokenSpaceGuid { 25 | DefaultBootPriority { 26 | data = "sd"; 27 | locked; 28 | }; 29 | }; 30 | }; 31 | }; 32 | }; 33 | }; 34 | }; 35 | }; -------------------------------------------------------------------------------- /Silicon/NVIDIA/Tegra/DeviceTree/BootOrderSata.dts: -------------------------------------------------------------------------------- 1 | /** @file 2 | * 3 | * Copyright (c) 2022, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 4 | * 5 | * SPDX-License-Identifier: BSD-2-Clause-Patent 6 | * 7 | **/ 8 | 9 | /dts-v1/; 10 | /plugin/; 11 | 12 | / { 13 | overlay-name = "UEFI Boot order sata default"; 14 | 15 | fragment@0 { 16 | target-path = "/"; 17 | board_config { 18 | sw-modules = "uefi"; 19 | }; 20 | 21 | __overlay__ { 22 | firmware { 23 | uefi { 24 | variables { 25 | gNVIDIATokenSpaceGuid { 26 | DefaultBootPriority { 27 | data = "sata"; 28 | locked; 29 | }; 30 | }; 31 | }; 32 | }; 33 | }; 34 | }; 35 | }; 36 | }; 37 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Tegra/DeviceTree/BootOrderShell.dts: -------------------------------------------------------------------------------- 1 | /** @file 2 | * 3 | * SPDX-FileCopyrightText: Copyright (c) 2022-2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 4 | * 5 | * SPDX-License-Identifier: BSD-2-Clause-Patent 6 | * 7 | **/ 8 | 9 | /dts-v1/; 10 | /plugin/; 11 | 12 | / { 13 | overlay-name = "UEFI Boot order shell default"; 14 | 15 | fragment@0 { 16 | target-path = "/"; 17 | board_config { 18 | sw-modules = "uefi"; 19 | }; 20 | 21 | __overlay__ { 22 | firmware { 23 | uefi { 24 | variables { 25 | gNVIDIATokenSpaceGuid { 26 | DefaultBootPriority { 27 | data = "shell"; 28 | locked; 29 | }; 30 | }; 31 | }; 32 | }; 33 | }; 34 | }; 35 | }; 36 | }; 37 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Tegra/DeviceTree/BootOrderUfs.dts: -------------------------------------------------------------------------------- 1 | /** @file 2 | * 3 | * Copyright (c) 2022, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 4 | * 5 | * SPDX-License-Identifier: BSD-2-Clause-Patent 6 | * 7 | **/ 8 | 9 | /dts-v1/; 10 | /plugin/; 11 | 12 | / { 13 | overlay-name = "UEFI Boot order ufs default"; 14 | 15 | fragment@0 { 16 | target-path = "/"; 17 | board_config { 18 | sw-modules = "uefi"; 19 | }; 20 | 21 | __overlay__ { 22 | firmware { 23 | uefi { 24 | variables { 25 | gNVIDIATokenSpaceGuid { 26 | DefaultBootPriority { 27 | data = "ufs"; 28 | locked; 29 | }; 30 | }; 31 | }; 32 | }; 33 | }; 34 | }; 35 | }; 36 | }; 37 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Tegra/DeviceTree/BootOrderUsb.dts: -------------------------------------------------------------------------------- 1 | /** @file 2 | * 3 | * Copyright (c) 2022, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 4 | * 5 | * SPDX-License-Identifier: BSD-2-Clause-Patent 6 | * 7 | **/ 8 | 9 | /dts-v1/; 10 | /plugin/; 11 | 12 | / { 13 | overlay-name = "UEFI Boot order usb default"; 14 | 15 | fragment@0 { 16 | target-path = "/"; 17 | board_config { 18 | sw-modules = "uefi"; 19 | }; 20 | 21 | __overlay__ { 22 | firmware { 23 | uefi { 24 | variables { 25 | gNVIDIATokenSpaceGuid { 26 | DefaultBootPriority { 27 | data = "usb"; 28 | locked; 29 | }; 30 | }; 31 | }; 32 | }; 33 | }; 34 | }; 35 | }; 36 | }; 37 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Tegra/DeviceTree/DeviceTree.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Default variable device tree description of the Tegra platforms 4 | # 5 | # SPDX-FileCopyrightText: Copyright (c) 2022-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 6 | # SPDX-License-Identifier: BSD-2-Clause-Patent 7 | # 8 | ## 9 | 10 | [Defines] 11 | INF_VERSION = 0x0001001A 12 | BASE_NAME = TegraDeviceTree 13 | FILE_GUID = 5340d452-9676-433a-93a0-0c7e03062642 14 | MODULE_TYPE = USER_DEFINED 15 | VERSION_STRING = 1.0 16 | 17 | [Sources] 18 | AcpiBoot.dts 19 | T234AcpiWinBoot.dts 20 | BootOrderEmmc.dts 21 | BootOrderHttp.dts 22 | BootOrderNvme.dts 23 | BootOrderPxe.dts 24 | BootOrderSata.dts 25 | BootOrderSD.dts 26 | BootOrderShell.dts 27 | BootOrderUfs.dts 28 | BootOrderUsb.dts 29 | L4TConfiguration.dts 30 | AndroidConfiguration.dts 31 | DgpuDtEfifbSupport.dts 32 | 33 | [Packages] 34 | MdePkg/MdePkg.dec 35 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Tegra/DeviceTree/DgpuDtEfifbSupport.dts: -------------------------------------------------------------------------------- 1 | /** @file 2 | * 3 | * Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 4 | * 5 | * SPDX-License-Identifier: BSD-2-Clause-Patent 6 | * 7 | **/ 8 | 9 | /dts-v1/; 10 | /plugin/; 11 | 12 | / { 13 | overlay-name = "dGPU EFIFB Support (DT Mode)"; 14 | 15 | fragment@0 { 16 | target-path = "/"; 17 | board_config { 18 | sw-modules = "uefi"; 19 | }; 20 | 21 | __overlay__ { 22 | firmware { 23 | uefi { 24 | variables { 25 | gNVIDIAPublicVariableGuid { 26 | DgpuDtEfifbSupport { 27 | data = [01]; 28 | runtime; 29 | non-volatile; 30 | }; 31 | }; 32 | }; 33 | }; 34 | }; 35 | }; 36 | }; 37 | }; 38 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Tegra/DeviceTree/T234AcpiWinBoot.dts: -------------------------------------------------------------------------------- 1 | /** @file 2 | * 3 | * Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 4 | * 5 | * SPDX-License-Identifier: BSD-2-Clause-Patent 6 | * 7 | **/ 8 | 9 | /dts-v1/; 10 | /plugin/; 11 | 12 | / { 13 | overlay-name = "T234 WIN UEFI default to ACPI"; 14 | 15 | fragment@0 { 16 | target-path = "/"; 17 | board_config { 18 | sw-modules = "uefi"; 19 | }; 20 | 21 | __overlay__ { 22 | firmware { 23 | uefi { 24 | variables { 25 | gDtPlatformFormSetGuid { 26 | DtAcpiPref { 27 | data = [01 00 00 00]; 28 | non-volatile; 29 | }; 30 | }; 31 | 32 | gNVIDIATokenSpaceGuid { 33 | IortTableGen { 34 | data = [01 00 00 00]; 35 | non-volatile; 36 | }; 37 | }; 38 | }; 39 | }; 40 | }; 41 | }; 42 | }; 43 | }; 44 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/TegraVirt/PrePi/AArch64/ArchPrePi.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | * 3 | * Copyright (c) 2011-2013, ARM Limited. All rights reserved. 4 | * SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | * 6 | * SPDX-License-Identifier: BSD-2-Clause-Patent 7 | * 8 | **/ 9 | 10 | #include "PrePi.h" 11 | 12 | #include 13 | 14 | VOID 15 | ArchInitialize ( 16 | VOID 17 | ) 18 | { 19 | // Enable Floating Point 20 | if (FixedPcdGet32 (PcdVFPEnabled)) { 21 | ArmEnableVFP (); 22 | } 23 | 24 | if (ArmReadCurrentEL () == AARCH64_EL2) { 25 | // Trap General Exceptions. All exceptions that would be routed to EL1 are routed to EL2 26 | ArmWriteHcr (ARM_HCR_TGE); 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Test/Mock/Include/GoogleTest/Library/MockSmmVarProto.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Google Test mocks SmmVariable Prototcol 3 | 4 | SPDX-FileCopyrightText: Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | SPDX-License-Identifier: BSD-2-Clause-Patent 6 | **/ 7 | 8 | #ifndef MOCK_SMM_VAR_PROTO_LIB_H_ 9 | #define MOCK_SMM_VAR_PROTO_LIB_H_ 10 | 11 | #include 12 | #include 13 | extern "C" { 14 | #include 15 | #include 16 | } 17 | 18 | struct MockSmmVarProto { 19 | MOCK_INTERFACE_DECLARATION (MockSmmVarProto); 20 | 21 | MOCK_FUNCTION_DECLARATION ( 22 | EFI_STATUS, 23 | SmmVarProto_SmmGetVariable, 24 | (IN CHAR16 *VariableName, 25 | IN EFI_GUID *VendorGuid, 26 | OUT UINT32 *Attributes OPTIONAL, 27 | IN OUT UINTN *DataSize, 28 | OUT VOID *Data) 29 | ); 30 | }; 31 | 32 | #endif 33 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Test/Mock/Include/GoogleTest/Library/MockVarIntProto.h: -------------------------------------------------------------------------------- 1 | /** @file 2 | Google Test mocks SmmVariable Prototcol 3 | 4 | SPDX-FileCopyrightText: Copyright (c) 2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | SPDX-License-Identifier: BSD-2-Clause-Patent 6 | **/ 7 | 8 | #ifndef MOCK_SMM_VAR_PROTO_LIB_H_ 9 | #define MOCK_SMM_VAR_PROTO_LIB_H_ 10 | 11 | #include 12 | #include 13 | extern "C" { 14 | #include 15 | #include 16 | } 17 | 18 | struct MockSmmVarProto { 19 | MOCK_INTERFACE_DECLARATION (MockSmmVarProto); 20 | 21 | MOCK_FUNCTION_DECLARATION ( 22 | EFI_STATUS, 23 | SmmVarProto_SmmGetVariable, 24 | (IN CHAR16 *VariableName, 25 | IN EFI_GUID *VendorGuid, 26 | OUT UINT32 *Attributes OPTIONAL, 27 | IN OUT UINTN *DataSize, 28 | OUT VOID *Data) 29 | ); 30 | }; 31 | 32 | #endif 33 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Test/Mock/Library/ArmSvcStubLib/ArmSvcStub.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | This file provides a mock for the SVC Library. 3 | 4 | SPDX-FileCopyrightText: Copyright (c) 2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | SPDX-License-Identifier: BSD-2-Clause-Patent 6 | 7 | **/ 8 | 9 | #include 10 | #include 11 | #include 12 | 13 | #define MDE_CPU_AARCH64 14 | 15 | VOID 16 | ArmCallSvc ( 17 | IN OUT ARM_SVC_ARGS *Args 18 | ) 19 | { 20 | ZeroMem (Args, sizeof (ARM_SVC_ARGS)); 21 | } 22 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Test/Mock/Library/ArmSvcStubLib/ArmSvcStubLib.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # Mock of the ARM SVC Library. 3 | # 4 | # SPDX-FileCopyrightText: Copyright (c) 2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | # Copyright (c) 2016 - 2017, ARM Ltd. All rights reserved. 6 | # 7 | # SPDX-License-Identifier: BSD-2-Clause-Patent 8 | # 9 | ## 10 | [Defines] 11 | INF_VERSION = 0x0001001A 12 | BASE_NAME = ArmSvcStubLib 13 | FILE_GUID = 8e592e43-1f03-459d-9e89-689e533d0ab5 14 | MODULE_TYPE = BASE 15 | VERSION_STRING = 1.0 16 | LIBRARY_CLASS = ArmSvcLib 17 | 18 | [Sources] 19 | ArmSvcStub.c 20 | 21 | [LibraryClasses] 22 | DebugLib 23 | BaseMemoryLib 24 | 25 | [Packages] 26 | ArmPkg/ArmPkg.dec 27 | MdePkg/MdePkg.dec 28 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Test/Mock/Library/GoogleTest/MockHashApiLib/MockHashApiLib.cpp: -------------------------------------------------------------------------------- 1 | /** @file 2 | Google Test mocks for HashApiLib 3 | 4 | SPDX-FileCopyrightText: Copyright (c) 2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | SPDX-License-Identifier: BSD-2-Clause-Patent 6 | **/ 7 | #include 8 | 9 | MOCK_INTERFACE_DEFINITION(MockHashApiLib); 10 | 11 | MOCK_FUNCTION_DEFINITION(MockHashApiLib, HashApiGetContextSize, 0, EFIAPI); 12 | MOCK_FUNCTION_DEFINITION(MockHashApiLib, HashApiInit, 1, EFIAPI); 13 | MOCK_FUNCTION_DEFINITION(MockHashApiLib, HashApiUpdate, 3, EFIAPI); 14 | MOCK_FUNCTION_DEFINITION(MockHashApiLib, HashApiFinal, 2, EFIAPI); 15 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Test/Mock/Library/GoogleTest/MockMmVarLib/MockMmVarLib.cpp: -------------------------------------------------------------------------------- 1 | /** @file 2 | Google Test mocks for Standalone MM MmVarLib 3 | 4 | SPDX-FileCopyrightText: Copyright (c) 2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | SPDX-License-Identifier: BSD-2-Clause-Patent 6 | **/ 7 | #include 8 | 9 | MOCK_INTERFACE_DEFINITION(MockMmVarLib); 10 | 11 | MOCK_FUNCTION_DEFINITION(MockMmVarLib, DoesVariableExist, 4, EFIAPI); 12 | MOCK_FUNCTION_DEFINITION(MockMmVarLib, MmGetVariable3, 5, EFIAPI); 13 | MOCK_FUNCTION_DEFINITION(MockMmVarLib, MmGetVariable2, 4, EFIAPI); 14 | MOCK_FUNCTION_DEFINITION(MockMmVarLib, MmGetVariable, 4, EFIAPI); 15 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Test/Mock/Library/GoogleTest/MockNvVarIntLib/MockNvVarIntLib.cpp: -------------------------------------------------------------------------------- 1 | /** @file 2 | Google Test mocks for UefiLib 3 | 4 | SPDX-FileCopyrightText: Copyright (c) 2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | SPDX-License-Identifier: BSD-2-Clause-Patent 6 | **/ 7 | #include 8 | 9 | MOCK_INTERFACE_DEFINITION(MockNvVarIntLib); 10 | 11 | MOCK_FUNCTION_DEFINITION(MockNvVarIntLib, ComputeVarMeasurement, 6, EFIAPI); 12 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Test/Mock/Library/GoogleTest/MockRamDiskProto/MockRamDiskProto.cpp: -------------------------------------------------------------------------------- 1 | /** @file 2 | Google Test mocks for RamDisk Protocol 3 | 4 | SPDX-FileCopyrightText: Copyright (c) 2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | SPDX-License-Identifier: BSD-2-Clause-Patent 6 | **/ 7 | #include 8 | 9 | MOCK_INTERFACE_DEFINITION(MockRamDiskProto); 10 | 11 | MOCK_FUNCTION_DEFINITION(MockRamDiskProto, Register, 5, EFIAPI); 12 | 13 | static EFI_RAM_DISK_PROTOCOL localRamDiskProtocol = { 14 | Register, // mock version of EFI_RAM_DISK_PROTOCOL.Register 15 | NULL, // Unregister currently not implemented 16 | }; 17 | 18 | extern "C" { 19 | EFI_RAM_DISK_PROTOCOL* gMockRamDiskProtocol = &localRamDiskProtocol; 20 | } 21 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Test/Mock/Library/GoogleTest/MockSmmVarProto/MockSmmVarProto.cpp: -------------------------------------------------------------------------------- 1 | /** @file 2 | Google Test mocks for SmmVariable Protocol 3 | 4 | SPDX-FileCopyrightText: Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | SPDX-License-Identifier: BSD-2-Clause-Patent 6 | **/ 7 | #include 8 | 9 | MOCK_INTERFACE_DEFINITION(MockSmmVarProto); 10 | 11 | MOCK_FUNCTION_DEFINITION(MockSmmVarProto, SmmVarProto_SmmGetVariable, 5, EFIAPI); 12 | 13 | static EFI_SMM_VARIABLE_PROTOCOL localSmmVar = { 14 | SmmVarProto_SmmGetVariable, // EFI_GET_VARIABLE 15 | NULL, // EFI_GET_NEXT_VARIABLE_NAME 16 | NULL, // EFI_SET_VARIABLE 17 | NULL, // EFI_QUERY_VARIABLE_INFO 18 | }; 19 | 20 | extern "C" { 21 | EFI_SMM_VARIABLE_PROTOCOL* MockSmmVar = &localSmmVar; 22 | } 23 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Test/Mock/Library/GoogleTest/MockVarIntProto/MockSmmVarProto.cpp: -------------------------------------------------------------------------------- 1 | /** @file 2 | Google Test mocks for SmmVariable Protocol 3 | 4 | SPDX-FileCopyrightText: Copyright (c) 2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | SPDX-License-Identifier: BSD-2-Clause-Patent 6 | **/ 7 | #include 8 | 9 | MOCK_INTERFACE_DEFINITION(MockSmmVarProto); 10 | 11 | MOCK_FUNCTION_DEFINITION(MockSmmVarProto, SmmVarProto_SmmGetVariable, 5, EFIAPI); 12 | 13 | static EFI_SMM_VARIABLE_PROTOCOL localSmmVar = { 14 | SmmVarProto_SmmGetVariable, // EFI_GET_VARIABLE 15 | NULL, // EFI_GET_NEXT_VARIABLE_NAME 16 | NULL, // EFI_SET_VARIABLE 17 | NULL, // EFI_QUERY_VARIABLE_INFO 18 | }; 19 | 20 | extern "C" { 21 | EFI_SMM_VARIABLE_PROTOCOL* MockSmmVar = &localSmmVar; 22 | } 23 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/Test/ShellTest/UefiMemMapTest/UefiMemMapTestUefiShell.inf: -------------------------------------------------------------------------------- 1 | # 2 | # Copyright (c) 2020-2022, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 3 | # 4 | # SPDX-License-Identifier: BSD-2-Clause-Patent 5 | # 6 | 7 | [Defines] 8 | INF_VERSION = 0x00010005 9 | BASE_NAME = UefiMemMapTestUefiShell 10 | FILE_GUID = DF865E3F-0EA0-43D8-8BD9-2F74F110D30D 11 | MODULE_TYPE = UEFI_APPLICATION 12 | VERSION_STRING = 1.0 13 | ENTRY_POINT = UefiMemMapTestDxe 14 | 15 | # 16 | # The following information is for reference only and not required by the build tools. 17 | # 18 | # VALID_ARCHITECTURES = ARM AARCH64 19 | # 20 | [Sources] 21 | UefiMemMapTest.c 22 | 23 | [Packages] 24 | MdePkg/MdePkg.dec 25 | 26 | [LibraryClasses] 27 | BaseLib 28 | BaseMemoryLib 29 | DebugLib 30 | HobLib 31 | PrintLib 32 | UefiApplicationEntryPoint 33 | UefiBootServicesTableLib 34 | UefiLib 35 | UnitTestLib 36 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/edk2nv/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2021 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 2 | # 3 | # SPDX-License-Identifier: BSD-2-Clause-Patent 4 | 5 | ''' 6 | Package containing Python-based tools developed by NVIDIA for EDK2. 7 | ''' 8 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/edk2nv/stuart/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2021 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 2 | # 3 | # SPDX-License-Identifier: BSD-2-Clause-Patent 4 | 5 | 6 | ''' 7 | Package containing NVIDIA's extensions to EDK2's stuart build system. 8 | ''' 9 | 10 | from .builder import * # noqa 11 | from .settings import * # noqa 12 | -------------------------------------------------------------------------------- /Silicon/NVIDIA/tools_def.inc: -------------------------------------------------------------------------------- 1 | # 2 | # NVIDIA tool overrides 3 | # 4 | # SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 | # 6 | # SPDX-License-Identifier: BSD-2-Clause-Patent 7 | 8 | *_*_*_LZMA_FLAGS = d 27 9 | --------------------------------------------------------------------------------