summaryrefslogtreecommitdiff
path: root/Features/Intel
AgeCommit message (Collapse)AuthorFilesLines
2025-08-23Features: fix missing EFIAPI for PlatformPayloadFeaturePkgGuo Dong1-0/+1
When register a root SMI handler, it is expected to use windows calling convention for the SMI handler. This patch adds missing EFIAPI for the SMI handler SmmSwDispatcher to avoid potential issue from Linux build. Signed-off-by: Guo Dong <guo.dong@intel.com>
2025-07-22NetworkFeaturePkg: fix build failureRay Ni1-2/+2
When NETWORK_ENABLE is TRUE and NETWORK_ALLOW_HTTP_CONNECTIONS is TRUE, NetworkPkg/NetworkFixedPcds.dsc.inc specifies gEfiNetworkPkgTokenSpaceGuid.PcdAllowHttpConnections as TRUE. But the PCD is set under [PcdsFixedAtBuild] section. The build.py will complain the following error: Pcd (gEfiNetworkPkgTokenSpaceGuid.PcdAllowHttpConnections) defined in DSC is not declared in DEC files referenced in INF files in FDF. Arch: ['IA32'] The commit fixes the failure by only setting the PCD in the [PcdsFixedAtBuild.$(DXE_ARCH)] section. Signed-off-by: Ray Ni <ray.ni@intel.com>
2025-05-06NetworkFeaturePkg: Fix Include PathsNate DeSimone1-1/+4
The NetworkPcds.dsc.inc include file have been broken out into 2 separate files: NetworkFixedPcds.dsc.inc and NetworkDynamicPcds.dsc.inc Fix NetworkFeaturePkg so it includes the correct paths. Signed-off-by: Nate DeSimone <nathaniel.l.desimone@intel.com>
2025-03-06IpmiFeaturePkg: FixUp FuctionPointer in gPeiIpmiTransportPpiGuid after ↵Ning Feng2-0/+15
MemoryDiscovered Description: Currently, a page fault (PF#) is observed when accessing the PEI_IPMI_TRANSPORT_PPI in the post-memory phase. The cause of this problem is that the PPI does not migrated from temporary RAM to permanent RAM. Solution: Register a memory shadow handler in the PeiGenericIpmi PEIM that performs pointer fixes for PEI_IPMI_TRANSPORT_PPI after MemoryDiscovered. Signed-off-by: Ning Feng <ning.feng@intel.com>
2024-11-28Pkg-Module: Features/VirtualKeyboardDxe PART 2Darbin Reyes1-1/+1
The Keyboard.c driver did not include ScanCodes like F1,F2,F12,etc. and UnicodeChars like Backspace, Tab in VK_NOTIFY NotifyList which is why these keys were not getting registered and not getting pushed in the KeyBuffer stack which resulted in undefined behavior of continuous backspace and not recognizing the relevant key push after the buffer overflow condition. Signed-off-by: Darbin Reyes <darbin.reyes@intel.com>
2024-11-28Pkg-Module: Features/VirtualKeyboardDxeDarbin Reyes1-11/+37
The Keyboard.c driver did not include ScanCodes like F1,F2,F12,etc. and UnicodeChars like Backspace, Tab in VK_NOTIFY NotifyList which is why these keys were not getting registered and not getting pushed in the KeyBuffer stack which resulted in undefined behavior of continuous backspace and not recognizing the relevant key push after the buffer overflow condition Signed-off-by: Contributor Name <darbin.reyes@intel.com>
2024-11-25Features/Intel|Platforms/Intel: Complete pending changes to [Components.{ARCH}]Mike Beaton11-60/+15
As noted in the code, it was intended to update various manually specified instances of [Components.IA32/X64] to [Components.$(DXE_ARCH)] or [Components.$(PEI_ARCH)] as appropriate, once macro expansion in the Components {ARCH} value was supported. This support was added some time ago[1], but the marked changes were never made. [1]: https://bugzilla.tianocore.org/show_bug.cgi?id=2308 Signed-off-by: Mike Beaton <mjsbeaton@gmail.com>
2024-09-16Update code to be more C11 compliant by using __func__Rebecca Cran1-2/+2
__FUNCTION__ is a pre-standard extension that gcc and Visual C++ among others support, while __func__ was standardized in C99. Since it's more standard, replace __FUNCTION__ with __func__ throughout edk2-platforms. Signed-off-by: Rebecca Cran <rebecca@bsdio.com>
2024-09-16Replace deprecated EFI_D_* with DEBUG_*Rebecca Cran4-5/+5
Replaced the deprecated EFI_D_{INFO,WARN,ERROR,VERBOSE} usage with DEBUG_{INFO,WARN,ERROR,VERBOSE}. Signed-off-by: Rebecca Cran <rebecca@bsdio.com>
2024-06-22IpmiFeaturePkg/GenericIpmi: add EFIAPI for driver entrypointsMike Maslenkin3-0/+3
Fix gcc build failure: IpmiFeaturePkg/GenericIpmi/Smm/SmmGenericIpmi.c:414:1: error: conflicting types for 'InitializeSmmGenericIpmi' 414 | InitializeSmmGenericIpmi ( | ^~~~~~~~~~~~~~~~~~~~~~~~ In file included from <command-line>: IpmiFeaturePkg/GenericIpmi/Smm/SmmGenericIpmi/DEBUG/AutoGen.h:138:1: note: previous declaration of 'InitializeSmmGenericIpmi' was here 138 | InitializeSmmGenericIpmi ( | ^~~~~~~~~~~~~~~~~~~~~~~~ Signed-off-by: Mike Maslenkin <mike.maslenkin@gmail.com> Reviewed-by: Nate DeSimone <nathaniel.l.desimone@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn>
2024-06-22IpmiFeaturePkg/GenericIpmi: add IpmiFeaturePkg.dec to packages listMike Maslenkin1-0/+1
GCC is unable to find a header file located into IpmiFeaturePkg: fatal error: Library/ServerMgmtRtLib.h: No such file or directory 11 | #include <Library/ServerMgmtRtLib.h> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ Signed-off-by: Mike Maslenkin <mike.maslenkin@gmail.com> Reviewed-by: Nate DeSimone <nathaniel.l.desimone@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn>
2024-04-15VirtualKeyboardFeaturePkg: Update the comments of ReadKeyStroke and ↵Qingyu2-0/+4
ReadKeyStrokeEx - mantis #2131 Refer to Uefi spec 2.10 section 12.3.3, Add a new retval EFI_UNSUPPORTED to EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL.ReadKeyStrokeEx and EFI_SIMPLE_TEXT_INPUT_PROTOCOL.ReadKeyStroke(). Cc: Dandan Bi <dandan.bi@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn> Signed-off-by: Qingyu <qingyu.shang@intel.com> Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn>
2024-03-26IpmiFeaturePkg: Add missed call to FreePoolPhanindraX Babu Pabba1-0/+1
Adding missed out call to FreePool API to free the allocated memory. Reviewed-by: Nate DeSimone <nathaniel.l.desimone@intel.com> Reviewed-by: Chasel Chiu <chasel.chiu@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn> Signed-off-by: PhanindraX Babu Pabba <phanindrax.babu.pabba@intel.com>
2024-02-23IpmiFeaturePkg/GenericIpmi:StandaloneMmGenericIpmiLixia Huang1-2/+2
StandaloneMmGenericIpmi driver is not loaded successfully due to wrong Depex. Set Depex to TRUE in StandaloneMmGenericImpi.inf. Reviewed-by: Nate DeSimone <nathaniel.l.desimone@intel.com> Signed-off-by: Lixia Huang <lisa.huang@intel.com>
2024-02-02IpmiFeaturePkg/ServerManagementLib: Fix a GCC compile errorWei6 Xu1-2/+2
The source file definition in INF file is ServerManagementELog.c, while the actual file name is ServerManagementElog.c. The case is mismatched. Correct the definition in INF file to fix this issue. Reviewed-by: Michael D Kinney <michael.d.kinney@intel.com> Cc: Abner Chang <Abner.Chang@amd.com> Reviewed-by: Nate DeSimone <nathaniel.l.desimone@intel.com> Signed-off-by: Wei6 Xu <wei6.xu@intel.com>
2023-12-21IpmiFeaturePkg/BmcElog: Support Standalone MMLixia Huang7-17/+119
Refactor BmcElog to support Standalone MM. Remove unused code. Cc: Abner Chang <Abner.Chang@amd.com> Reviewed-by: Nate DeSimone <nathaniel.l.desimone@intel.com> Signed-off-by: Lixia Huang <lisa.huang@intel.com>
2023-12-21IpmiFeaturePkg/GenericElog: Support Standalone MMLixia Huang7-48/+118
Refactor GenericElog to support Standalone MM. Remove unused function SmElogServiceInitialize. Cc: Abner Chang <Abner.Chang@amd.com> Reviewed-by: Nate DeSimone <nathaniel.l.desimone@intel.com> Signed-off-by: Lixia Huang <lisa.huang@intel.com>
2023-12-21IpmiFeaturePkg/BmcAcpiSwChild: Support Standalone MMWei Xu7-22/+113
Refactor BmcAcpiSwChild to support Standalone MM. Cc: Abner Chang <Abner.Chang@amd.com> Reviewed-by: Nate DeSimone <nathaniel.l.desimone@intel.com> Signed-off-by: Wei Xu <wei6.xu@intel.com>
2023-12-21IpmiFeaturePkg/ServerManagementLib: Support Standalone MMWei Xu5-221/+273
Split the ServerManagementLib.c into two source files: - ServerManagementELog.c to support Event Log functions. - ServerManagementTime.c to support GetTimeStamp function. - Replace gBS->Stall() with MicroSecondDelay() in TimerLib to remove dependency on gBS. Base Lib includes both of the two source files, StandaloneMm Lib only includes the ServerManagementTime.c Cc: Abner Chang <Abner.Chang@amd.com> Reviewed-by: Nate DeSimone <nathaniel.l.desimone@intel.com> Signed-off-by: Wei Xu <wei6.xu@intel.com>
2023-12-19IpmiFeaturePkg/GenericIpmi: Fix GCC compiler errorLixia Huang1-2/+0
Fix GCC compiler error in StandaloneMmGenericIpmi. Cc: Abner Chang <Abner.Chang@amd.com> Reviewed-by: Nate DeSimone <nathaniel.l.desimone@intel.com> Signed-off-by: Lixia Huang <lisa.huang@intel.com>
2023-12-12OutOfBandManagement/SpcrFeaturePkg: PCD based IRQ/GSIAbdul Lateef Attar4-3/+16
Create a new PCD to hold the IRQ or GSI number for SPCR, with default values of 4. Update the ACPI SPCR table's IRQ value based on PCD. Cc: Sai Chaganty <rangasai.v.chaganty@intel.com> Cc: Isaac Oram <isaac.w.oram@intel.com> Reviewed-by: Nate DeSimone <nathaniel.l.desimone@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn> Cc: Abner Chang <abner.chang@amd.com> Signed-off-by: Abdul Lateef Attar <AbdulLateef.Attar@amd.com> Change-Id: I7218903fa5572f8139ad45db598ab085f079713b
2023-12-12IpmiFeaturePkg/GenericIpmi: Sync change from SMMLixia Huang7-77/+326
Sync change from SMM to StandaloneMm GenericIpmi driver. Update SmmIpmbInterface and SmmSsifInterface Lib to support MM_STANDALONE. And Format code with uncrustify. Cc: Abner Chang <Abner.Chang@amd.com> Reviewed-by: Nate DeSimone <nathaniel.l.desimone@intel.com> Signed-off-by: Lixia Huang <lisa.huang@intel.com>
2023-12-01UserAuthFeaturePkg/UserAuthenticationSmm: Support Standalone MM.Wei6 Xu11-44/+363
Refactor UserAuthenticationSmm to support Standalone MM. - Factor out variable lock code logic that references boot services. - UserAuthenticationStandaloneMmDxe is added to lock the variables. It is only used for UserAuthenticationStandaloneMm. - UserAuthenticationStandaloneMm doesn't lock the variables, needs to rely on UserAuthenticationStandaloneMmDxe to do the lock. - UserAuthenticationSmm still locks the variables by itself, no need to include UserAuthenticationStandaloneMmDxe. - Register gEfiEventExitBootServicesGuid notify which is used by the StandaloneMmCore. Since gEdkiiVariableLockProtocolGuid is a deprecated interface, use gEdkiiVariablePolicyProtocolGuid to lock password variables instead. Cc: Dandan Bi <dandan.bi@intel.com> Reviewed-by: Nate DeSimone <nathaniel.l.desimone@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn> Signed-off-by: Wei6 Xu <wei6.xu@intel.com>
2023-11-30IpmiFeaturePkg: Fix BuildNate DeSimone1-0/+1
Add missing MemoryAllocationLib dependency Reviewed-by: Sai Chaganty <rangasai.v.chaganty@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn> Signed-off-by: Nate DeSimone <nathaniel.l.desimone@intel.com>
2023-11-30IpmiFeaturePkg/SmmIpmiBaseLib: Support Standalone MM.Wei6 Xu2-34/+12
Add MM_STANDALONE type support for SmmIpmiBaseLib instance. Replace Smst with Mmst. Remove unused UefiBootServicesTableLib reference. Reviewed-by: Abner Chang <Abner.Chang@amd.com> Reviewed-by: Nate DeSimone <nathaniel.l.desimone@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn> Signed-off-by: Wei6 Xu <wei6.xu@intel.com>
2023-11-17IpmiFeaturePkg/IpmiRedirFru: Switch to AfterConsole event for callbackZhen Gong3-9/+11
Use AfterConsole event instead of ReadyToBoot for callback so the driver can update SMBIOS table before booting to setup menu. Signed-off-by: Zhen Gong <zhen.gong@intel.com> Reviewed-by: Nate DeSimone <nathaniel.l.desimone@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn>
2023-11-10Features/IpmiFeaturePkg: Remove IpmiCommandLib from IpmiFeaturePkgAbner Chang7-913/+1
Remove IpmiCommandLib from IpmiFeaturePkg as it was migrated to ManageabilityPkg and has more IPMI commands support. Remove this IpmiFeaturePkg to avoid the confusion. Signed-off-by: Abner Chang <abner.chang@amd.com> Cc: Nate DeSimone <nathaniel.l.desimone@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn> Cc: Abdul Lateef Attar <AbdulLateef.Attar@amd.com> Cc: Nickle Wang <nicklew@nvidia.com> Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn>
2023-11-04IpmiFeaturePkg/GenericIpmi: Support Standalone MMLixia Huang3-0/+199
Add Standalone Mm Generic Impi driver. And add type 'PcdsFixedAtBuild' for PcdIpmiSmmIoBaseAddress to access in StandaloneMm driver Reviewed-by: Abner Chang <Abner.Chang@amd.com> Reviewed-by: Nate DeSimone <nathaniel.l.desimone@intel.com> Signed-off-by: Lixia Huang <lisa.huang@intel.com>
2023-11-03IpmiFeaturePkg: Add FRU driversZhen Gong15-105/+2141
Add GenericFruDriver and generate data based on SMBIOS data. Signed-off-by: Zhen Gong <zhen.gong@intel.com> Reviewed-by: Nate DeSimone <nathaniel.l.desimone@intel.com>
2023-11-03IpmiFeaturePkg: Add ACPI power state driversZhen Gong10-0/+505
Add DXE and SMM drivers that send "Set ACPI Power State" command to BMC. Signed-off-by: Zhen Gong <zhen.gong@intel.com> Reviewed-by: Nate DeSimone <nathaniel.l.desimone@intel.com>
2023-11-03IpmiFeaturePkg: Add ServerManagementLibZhen Gong6-0/+1061
Lightweight lib to support Server Management drivers. Signed-off-by: Zhen Gong <zhen.gong@intel.com> Reviewed-by: Nate DeSimone <nathaniel.l.desimone@intel.com>
2023-11-03IpmiFeaturePkg: Add Elog driversZhen Gong24-243/+3530
Add generic Elog driver and support BMC Elog operations. Signed-off-by: Zhen Gong <zhen.gong@intel.com> Reviewed-by: Nate DeSimone <nathaniel.l.desimone@intel.com>
2023-10-29OutOfBandManagement/IpmiFeaturePKg: Remove IpmiCommandLib.h from IpmiFeaturePkgAbner Chang9-314/+8
Remove duplicate IpmiCommandLib.h and use the one under MdeModulePKg instead. Signed-off-by: Abner Chang <abner.chang@amd.com> Cc: Abdul Lateef Attar <AbdulLateef.Attar@amd.com> Cc: Nickle Wang <nicklew@nvidia.com> Cc: Nate DeSimone <nathaniel.l.desimone@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn> Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn>
2023-09-19IpmiFeaturePkg: Refine code to avoid warning reportYanbo Huang3-61/+49
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=4522 "if (FixedPcdGet8 (PcdKcsInterfaceSupport) == 1) {" will not be executed in current code, put it within "case SysInterfaceKcs:" to avoid this issue. Reviewed-by: Nate DeSimone <nathaniel.l.desimone@intel.com> Cc: Isaac Oram <isaac.w.oram@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn> Signed-off-by: Yanbo Huang <yanbo.huang@intel.com>
2023-08-02IpmiFeaturePkg:Provided multiple IPMI interface support in DXE and SMMArun K8-280/+1120
Created IpmiTransport2 PPI/Protocol to support multiple IPMI BMC Interface support such as KCS/BT/SSIF/IPMB with 2 API's IpmiSubmitCommand2 & IpmiSubmitCommand2Ex. IpmiSubmitCommand2 - This API use the default interface (PcdDefaultSystemInterface) to send IPMI command. IpmiSubmitCommand2Ex - This API use the specific interface type to send IPMI command which is passed as an argument. Cc: Isaac Oram <isaac.w.oram@intel.com> Cc: Nate DeSimone <nathaniel.l.desimone@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn> Signed-off-by: Arun K <arunk@ami.com> Reviewed-by: Isaac Oram <isaac.w.oram@intel.com>
2023-08-02IpmiFeaturePkg:Provided multiple IPMI interface support in PEIArun K8-264/+1162
Created IpmiTransport2 PPI/Protocol to support multiple IPMI BMC Interface support such as KCS/BT/SSIF/IPMB with 2 API's IpmiSubmitCommand2 & IpmiSubmitCommand2Ex. IpmiSubmitCommand2 - This API use the default interface (PcdDefaultSystemInterface) to send IPMI command. IpmiSubmitCommand2Ex - This API use the specific interface type to send IPMI command which is passed as an argument. Cc: Isaac Oram <isaac.w.oram@intel.com> Cc: Nate DeSimone <nathaniel.l.desimone@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn> Signed-off-by: Arun K <arunk@ami.com> Reviewed-by: Isaac Oram <isaac.w.oram@intel.com>
2023-08-02IpmiFeaturePkg:Provided multiple IPMI interface support in LibraryArun K29-0/+3962
Created IpmiTransport2 PPI/Protocol to support multiple IPMI BMC Interface support such as KCS/BT/SSIF/IPMB with 2 API's IpmiSubmitCommand2 & IpmiSubmitCommand2Ex. IpmiSubmitCommand2 - This API use the default interface (PcdDefaultSystemInterface) to send IPMI command. IpmiSubmitCommand2Ex - This API use the specific interface type to send IPMI command which is passed as an argument. Cc: Isaac Oram <isaac.w.oram@intel.com> Cc: Nate DeSimone <nathaniel.l.desimone@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn> Signed-off-by: Arun K <arunk@ami.com> Reviewed-by: Isaac Oram <isaac.w.oram@intel.com>
2023-05-02SpcrFeaturePkg: Updated SPCR table based on PCD valuesAbdul Lateef Attar2-0/+39
Update the SPCR table based on PCD values, such as base address, register bit width, access size and address space id etc, along with OEM data. Cc: Abner Chang <abner.chang@amd.com> Cc: Sai Chaganty <rangasai.v.chaganty@intel.com> Cc: Isaac Oram <isaac.w.oram@intel.com> Cc: Nate DeSimone <nathaniel.l.desimone@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn> Signed-off-by: Abdul Lateef Attar <AbdulLateef.Attar@amd.com> Reviewed-by: Isaac Oram <isaac.w.oram@intel.com>
2023-03-22IpmiFeaturePkg: fix IpmiSendCommand response size in GetDeviceId functionMike Maslenkin1-0/+2
It is required to reinitialize DataSize variable before subsequent IpmiSendCommand calls. It is especially required after processing IpmiSendCommand with IPMI_GET_BMC_EXECUTION_CONTEXT because it returns only 2 bytes as a response. So to the next call of IpmiSendCommand with IPMI_APP_GET_DEVICE_ID DataSize=2 will be passed. Probably this call will fail because the expected size of returned data either 12 or 16 bytes depending on IPMI version supported. Signed-off-by: Mike Maslenkin <mike.maslenkin@gmail.com> Cc: Isaac Oram <isaac.w.oram@intel.com> Cc: Nate DeSimone <nathaniel.l.desimone@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn> Reviewed-by: Isaac Oram <isaac.w.oram@intel.com>
2023-03-22IpmiFeaturePkg: add missing update of BMC status after GetSelfTestMike Maslenkin1-0/+1
Signed-off-by: Mike Maslenkin <mike.maslenkin@gmail.com> Cc: Arunk <arunk@ami.com> Cc: Isaac Oram <isaac.w.oram@intel.com> Cc: Nate DeSimone <nathaniel.l.desimone@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn> Reviewed-by: Isaac Oram <isaac.w.oram@intel.com>
2023-03-21PlatformPayloadFeaturePkg.py: Add Linux supportPatrick Rudolph1-2/+2
- Use OS specific path seperator instead of hardcoding ';' - Fix case of build artifact FV/PLATFORMPAYLOAD.Fv Test: python Features/Intel/PlatformPayloadFeaturePkg/PlatformPayloadFeaturePkg.py works on Linux. Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=4358 Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com> Cc: Sai Chaganty <rangasai.v.chaganty@intel.com> Cc: Isaac Oram <isaac.w.oram@intel.com> Cc: Nate DeSimone <nathaniel.l.desimone@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn> Reviewed-by: Isaac Oram <isaac.w.oram@intel.com>
2023-03-21PlatformPayloadFeaturePkg.dsc: Add missing packagesPatrick Rudolph1-0/+3
Add package that are required to build PlatformPayloadFeaturePkg. Test: Running python Features/Intel/PlatformPayloadFeaturePkg/PlatformPayloadFeaturePkg.py generates a FV. Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=4359 Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com> Cc: Sai Chaganty <rangasai.v.chaganty@intel.com> Cc: Isaac Oram <isaac.w.oram@intel.com> Cc: Nate DeSimone <nathaniel.l.desimone@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn> Reviewed-by: Isaac Oram <isaac.w.oram@intel.com>
2023-03-09IpmiFeaturePkg: refine GetSelfTest functionMike Maslenkin1-6/+9
Use predefined type while accessing IPMI command returned data instead of raw byte array. Signed-off-by: Mike Maslenkin <mike.maslenkin@gmail.com> Cc: Isaac Oram <isaac.w.oram@intel.com> Cc: Nate DeSimone <nathaniel.l.desimone@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn> Reviewed-by: Isaac Oram <isaac.w.oram@intel.com>
2023-03-09IpmiFeaturePkg: remove buffer temporary buffer from BMC instance structureMike Maslenkin7-31/+36
There is no point to have temporary buffer in BMC instance data used only for synchronous IPMI command as a transfer buffer. Using local variables make things much simpler. Signed-off-by: Mike Maslenkin <mike.maslenkin@gmail.com> Cc: Isaac Oram <isaac.w.oram@intel.com> Cc: Nate DeSimone <nathaniel.l.desimone@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn> Reviewed-by: Isaac Oram <isaac.w.oram@intel.com>
2023-03-09IpmiFeaturePkg: fix IPMI GetSelfTest command response parsingMike Maslenkin1-3/+3
Byte 0 of a response contains completion code for the command. So, the examined data starts from byte 1. It's easy to make a mistake here since specification counts response data from 1. For the "Get Self Test Results" command Intelligent Platform Management Interface Specification v2.0 rev 1.1 paragraph 20.4 defines response as: +-----+---------------------------------------------------------------+ |byte | data field | +-----+---------------------------------------------------------------+ | 1 | Completion Code | | | | | 2 | 55h = No error. All Self Tests Passed. | | | 56h = Self Test function not implemented in this controller. | | | 57h = Corrupted or inaccessible data or devices | | | 58h = Fatal hardware error | | | | | 3 | For byte 2 = 55h, 56h, FFh: 00h | | | For byte 2 = 58h, all other: Device-specific | | | For byte 2 = 57h: self-test error bitfield. | +-----+---------------------------------------------------------------+ Signed-off-by: Mike Maslenkin <mike.maslenkin@gmail.com> Cc: Isaac Oram <Isaac.w.oram@intel.com> Cc: Nate DeSimone <nathaniel.l.desimone@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn> Reviewed-by: Isaac Oram <Isaac.w.oram@intel.com>
2023-02-09AdvancedFeaturePkg: Improve sample build instructionsIsaac Oram1-6/+8
V1: Make the Windows build example current working directory based instead of arbitrary. V2: Fix case mismatch in edk2 repo local name. Cc: Sai Chaganty <rangasai.v.chaganty@intel.com> Cc: Nate DeSimone <nathaniel.l.desimone@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn> Cc: Rebecca Cran <quic_rcran@quicinc.com> Signed-off-by: Isaac Oram <isaac.w.oram@intel.com> Reviewed-by: Rebecca Cran <rebecca@quicinc.com>
2023-01-13Features/Intel: Prepare for edk2-platforms CIIsaac Oram23-46/+119
Fix some build issues with GCC5 targets Add a Readme.md for AdvancedFeaturePkg Add VS2019, CLANGPDB, and GCC5 build targets to Readme.md for each feature Cc: Sai Chaganty <rangasai.v.chaganty@intel.com> Cc: Nate DeSimone <nathaniel.l.desimone@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn> Cc: Eric Dong <eric.dong@intel.com> Cc: Dandan Bi <dandan.bi@intel.com> Signed-off-by: Isaac Oram <isaac.w.oram@intel.com> Reviewed-by: Sai Chaganty <rangasai.v.chaganty@intel.com>
2023-01-05IpmiFeaturePkg: Add reference of IpmiBaseLibAbner Chang1-0/+5
Add reference of IpmiBaseLib Signed-off-by: Abner Chang <abner.chang@amd.com> Cc: Isaac Oram <isaac.w.oram@intel.com> Cc: Nate DeSimone <nathaniel.l.desimone@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn> Cc: Nickle Wang <nicklew@nvidia.com> Cc: Igor Kulchytskyy <igork@ami.com> Reviewed-by: Isaac Oram <isaac.w.oram@intel.com>
2023-01-05IpmiFeaturePkg/IpmiCommandLib: Add IPMI functionsAbner Chang2-0/+131
Add functions to get system UUID and LAN configuration parameter. Signed-off-by: Abner Chang <abner.chang@amd.com> Cc: Isaac Oram <isaac.w.oram@intel.com> Cc: Nate DeSimone <nathaniel.l.desimone@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn> Cc: Nickle Wang <nicklew@nvidia.com> Cc: Igor Kulchytskyy <igork@ami.com> Reviewed-by: Isaac Oram <isaac.w.oram@intel.com>
2023-01-05Features/IpmiFeaturePkg: Add IPMI functionsAbner Chang1-0/+62
Add functions to get system UUID and LAN configuration parameter. Signed-off-by: Abner Chang <abner.chang@amd.com> Cc: Isaac Oram <isaac.w.oram@intel.com> Cc: Nate DeSimone <nathaniel.l.desimone@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn> Cc: Nickle Wang <nicklew@nvidia.com> Cc: Igor Kulchytskyy <igork@ami.com> Reviewed-by: Isaac Oram <isaac.w.oram@intel.com>