I agree. These additions make sense.  Perhaps you can format the submission per 
https://github.com/tianocore/tianocore.github.io/wiki/EDK-II-Code-First-Process 
 in order to have this included in a future UEFI PI specification 
https://uefi.org/specs/PI/1.8/V3_Status_Codes.html. I can help you w/ the 
process of submission into the uefi forum platform initialization working 
group, too.
Vincent

-----Original Message-----
From: r...@edk2.groups.io <r...@edk2.groups.io> On Behalf Of Isaac Oram
Sent: Thursday, June 1, 2023 10:34 AM
To: devel@edk2.groups.io; nick...@nvidia.com; r...@edk2.groups.io
Cc: Simon Wang (SW-GPU) <simow...@nvidia.com>; Chang, Abner 
<abner.ch...@amd.com>; Nick Ramirez <nrami...@nvidia.com>
Subject: Re: [edk2-rfc] [RFC] Introduce new status code for ManageabilityPkg 
and Redfish*Pkg

Nickle,

This looks reasonable to me.  I can see an argument that suggests these align 
more with the peripheral class errors, but your proposal looks better to me.

Regards,
Isaac

From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Nickle Wang via 
groups.io
Sent: Wednesday, May 31, 2023 9:23 PM
To: r...@edk2.groups.io
Cc: devel@edk2.groups.io; Simon Wang (SW-GPU) <simow...@nvidia.com>; Chang, 
Abner <abner.ch...@amd.com>; Nick Ramirez <nrami...@nvidia.com>
Subject: [edk2-devel] [RFC] Introduce new status code for ManageabilityPkg and 
Redfish*Pkg

Hi edk2 community,

I like to introduce EFI_COMPUTING_UNIT_MANAGEABILITY status code to 
PiStatusCode.h. EFI_COMPUTING_UNIT_MANAGEABILITY will be used in edk2 
RedfishPkg and edk2-redfish-client RedfishClientPkg to report Redfish operation 
errors. It will also be used to report errors in edk2-platforms 
ManageabilityPkg.

EFI_COMPUTING_UNIT_MANAGEABILITY is created as one of the subclasses in 
computing unit class.

#define EFI_COMPUTING_UNIT_CACHE               (EFI_COMPUTING_UNIT | 0x00040000)
#define EFI_COMPUTING_UNIT_MEMORY              (EFI_COMPUTING_UNIT | 0x00050000)
#define EFI_COMPUTING_UNIT_CHIPSET             (EFI_COMPUTING_UNIT | 0x00060000)
+ #define EFI_COMPUTING_UNIT_MANAGEABILITY       (EFI_COMPUTING_UNIT | 
0x00070000)

Below operation values are defined to report failure in manageability related 
operations. I only provide the definitions for Redfish functions but the 
failure case like in MCTP, IPMI and KCS can be created in the future.

+///
+/// Computing Unit Manageability Subclass Error Code definitions.
+/// The detail information is reported by REPORT_STATUS_CODE_WITH_EXTENDED_DATA
+//  with ASCII string in EFI_STATUS_CODE_STRING_DATA.
+///@{
+#define EFI_MANAGEABILITY_EC_REDFISH_COMMUNICATION_ERROR        
(EFI_SUBCLASS_SPECIFIC | 0x00000000)
+#define EFI_MANAGEABILITY_EC_REDFISH_HOST_INTERFACE_ERROR       
(EFI_SUBCLASS_SPECIFIC | 0x00000001)
+#define EFI_MANAGEABILITY_EC_REDFISH_BOOTSTRAP_CREDENTIAL_ERROR 
(EFI_SUBCLASS_SPECIFIC | 0x00000002)

* EFI_MANAGEABILITY_EC_REDFISH_COMMUNICATION_ERROR will be used to report 
communication failure between host and Redfish service providers (or BMC).
* EFI_MANAGEABILITY_EC_REDFISH_HOST_INTERFACE_ERROR is reported when host 
system can not create Redfish host interface due to some errors.
* EFI_MANAGEABILITY_EC_REDFISH_BOOTSTRAP_CREDENTIAL_ERROR is reported when host 
system cannot get bootstrap credentials by following the Host Interface 
standard.

Detail reason will be provided in ASCII string by calling 
REPORT_STATUS_CODE_WITH_EXTENDED_DATA().

The pull request is here for reference: 
https://github.com/nicklela/edk2/pull/4/files  Any feedback is welcome.

Thanks,
Nickle









-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#105804): https://edk2.groups.io/g/devel/message/105804
Mute This Topic: https://groups.io/mt/99365673/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: 
https://edk2.groups.io/g/devel/leave/9847357/21656/1706620634/xyzzy 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-


Reply via email to