15.03.2015 Views

SetupDesignGuide.pdf - Firmware Encoding Index

SetupDesignGuide.pdf - Firmware Encoding Index

SetupDesignGuide.pdf - Firmware Encoding Index

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Setup Design Guide<br />

DRAFT<br />

STRING_REF Option; // The string token describing the option<br />

UINT16 Value; // The value associated with this option that is stored in<br />

// the NVRAM if chosen<br />

UINT8 Flags; // For now, if non-zero, means that it is the default<br />

// option, - further definition likely above<br />

UINT16 Key; // Value to be passed to caller to identify this particular<br />

// op-code<br />

} EFI_IFR_ONE_OF_OPTION;<br />

If Text command:<br />

An update for the second text parameter<br />

Each encoding is as follows:<br />

CHAR16<br />

*UpdateString<br />

If StringOp command:<br />

Each encoding is as follows:<br />

typedef struct {<br />

CHAR16 *UpdateString; // String to print as a status (May be NULL)<br />

BOOLEAN PopUp; // Create a PopUp box for the UpdateString<br />

} EFI_IFR_STRING_MESSAGE;<br />

If NumericOp command:<br />

Each encoding is as follows:<br />

UINT16<br />

NumericValue;<br />

Status Codes Returned<br />

EFI_SUCCESS<br />

EFI_NOT_FOUND<br />

EFI_BUFFER_TOO_SMALL<br />

EFI_INVALID_PARAMETER<br />

EFI_DEVICE_ERROR<br />

The function completed successfully<br />

The variable was not found.<br />

The DataSize is too small for the result. DataSize has<br />

been updated with the size needed to complete the<br />

request.<br />

One of the parameters has an invalid value.<br />

The variable could not be saved due to a hardware failure.<br />

•<br />

71

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!