Post by tdoedline on Oct 10, 2024 2:14:11 GMT
Hi,
I work for a hardware company that develops storage and network HBAs. We already expose a set of HII configuration utilities for display and modification of settings and health data for our adapters in UEFI. We are looking to add some of these features and functionality to the system's exposed Redfish interface to allow user configuration through additional means. Specifically, we are interested in the section "Bridging HII and Redfish" in the following presentation:
In order understand better how this works we attempted to use the DriverSampleDxe in the edk2 as an example of what we should expect to see when something with a REST_STYLE flag is presented to a system. Specifically, looking at examples like the x-UEFI HII options, like this one:
#string STR_ONE_OF_PROMPT_X_UEFI #language en-US "x-UEFI HII Option"
#language fr-FR "x-UEFI HII Option"
#language x-UEFI-ns "xUefiHiiOption"
#string STR_ONE_OF_PROMPT_X_UEFI_HELP #language en-US "This is an HII option which has REST_STYLE flag and x-UEFI namespace UNI string associated. This HII option could be configured by either in-band edk2 setup browser or the remote management in out-of-band such as Redfish service. This HII option is configured through EFI_KEYWORD_HANDLER_PROTOCOL."
#language fr-FR "x-UEFI HII Option"
#language x-UEFI-ns "xUefiHiiOption"
#string STR_ONE_OF_PROMPT_X_UEFI_HELP #language en-US "This is an HII option which has REST_STYLE flag and x-UEFI namespace UNI string associated. This HII option could be configured by either in-band edk2 setup browser or the remote management in out-of-band such as Redfish service. This HII option is configured through EFI_KEYWORD_HANDLER_PROTOCOL."
We built and loaded the DriverSampleDxe driver on example servers from three different vendors, and while the HII forms show up correctly in the System Setup when booting the system (including these fields that are flagged as REST_STYLE with help text saying that they should be present in Redfish), nothing new shows up under $(IP)/redfish/v1/Systems/1/Bios. To be clear, what we did was boot to a UEFI shell, load the DriverSampleDxe, exit back to the System Setup tp confirm that the HII forms are loaded successfully, then attempted to query the Redfish data looking for additional fields.
Is the expected behavior of the sample driver? Is our issue that the information about the BIOS settings has already been queried by / pushed to the BMC, so any changes once we boot to the shell are not reflected in the BMC? Or are we not looking in the correct location for fields that are presented by an add-in driver? Or is this model not really supported for add-in drivers and the REST_STYLE functionality is reserved for drivers present in the system firmware itself? Is there another example or methodology to do what we want to do, which is to populate Redfish data / configuration parameters for our HBAs using our UEFI driver?
Thank you for any help on this matter.
Is the expected behavior of the sample driver? Is our issue that the information about the BIOS settings has already been queried by / pushed to the BMC, so any changes once we boot to the shell are not reflected in the BMC? Or are we not looking in the correct location for fields that are presented by an add-in driver? Or is this model not really supported for add-in drivers and the REST_STYLE functionality is reserved for drivers present in the system firmware itself? Is there another example or methodology to do what we want to do, which is to populate Redfish data / configuration parameters for our HBAs using our UEFI driver?
Thank you for any help on this matter.